beautypg.com

Ktam3874/pitx software guide – Kontron KTAM3874-pITX User Manual

Page 190

background image

KTD-S0057-I

Page 186 Linux® Programming Examples (DebianTM)


KTAM3874/pITX Software Guide


//

Values

for (int i = 0; i < items.count (); ++i)

{

Pixmap *item = items.at (i);

//

Ellipse

ellipseState->assignProperty (item, "pos", QPointF (cos ((i / 63.0) * 6.28) * 250,

sin ((i / 63.0) * 6.28) * 250));

// Figure 8

figure8State->assignProperty

(item,

"pos", QPointF (sin ((i / 63.0) * 6.28) * 250,

sin (((i * 2) / 63.0) * 6.28) * 250));

//

Random

randomState->assignProperty

(item, "pos", QPointF (-250 + qrand () % 500,

-250 + qrand () % 500));

//

Tiled

tiledState->assignProperty (item, "pos", QPointF (((i % 8) - 4) * kineticPix.width () + kineticPix.width () / 2,

((i / 8) - 4) * kineticPix.height () + kineticPix.height () / 2));

//

Centered

centeredState->assignProperty (item, "pos", QPointF ());

}

//

Ui

View *view = new View (&scene);

view->setWindowTitle

(QT_TRANSLATE_NOOP (QGraphicsView, "Animated Tiles"));

view->setViewportUpdateMode

(QGraphicsView::BoundingRectViewportUpdate);

/* view->setBackgroundBrush (bgPix); */

view->setCacheMode

(QGraphicsView::CacheBackground);

view->setRenderHints

(QPainter::Antialiasing | QPainter::SmoothPixmapTransform);

#ifdef Q_OS_SYMBIAN
view->showMaximized

();

#else
view->show();
#endif

QStateMachine

states;

states.addState

(rootState);

states.setInitialState

(rootState);

rootState->setInitialState

(centeredState);

QParallelAnimationGroup *group = new QParallelAnimationGroup;

for (int i = 0; i < items.count (); ++i)

{

QPropertyAnimation *anim = new QPropertyAnimation (items[i], "pos");

anim->setDuration (750 + i * 25);

anim->setEasingCurve

(QEasingCurve::InOutBack);

group->addAnimation

(anim);

}

QAbstractTransition *trans = rootState->addTransition (ellipseButton, SIGNAL (pressed ()), ellipseState);

trans->addAnimation

(group);

trans = rootState->addTransition (figure8Button, SIGNAL (pressed ()), figure8State);

trans->addAnimation

(group);

This manual is related to the following products: