VoltAir
|
Base class for visual elements which are part of the game scene, and are rendered through Renderer. More...
Classes | |
struct | RenderParameters |
Struct containing the accumulated result of getFlattenedRenderParameters(). More... | |
Public Member Functions | |
Graphic (QQuickItem *parent=nullptr) | |
Construct a Graphic. More... | |
virtual void | synchronizeForRendering (RenderList *renderList) |
Synchronize this Graphic for rendering, adding any RenderNodes to renderList , and buffering any data that will be needed on the render thread for rendering. More... | |
![]() | |
QQuickItem (QQuickItem *parent) | |
QQuickWindow * | window () const |
QQuickItem * | parentItem () const |
void | setParentItem (QQuickItem *parent) |
void | stackBefore (const QQuickItem *sibling) |
void | stackAfter (const QQuickItem *sibling) |
QRectF | childrenRect () |
QList< QQuickItem * > | childItems () const |
bool | clip () const |
void | setClip (bool) |
QString | state () const |
void | setState (const QString &) |
qreal | baselineOffset () const |
void | setBaselineOffset (qreal) |
qreal | x () const |
qreal | y () const |
void | setX (qreal) |
void | setY (qreal) |
qreal | width () const |
void | setWidth (qreal) |
void | resetWidth () |
void | setImplicitWidth (qreal) |
qreal | implicitWidth () const |
qreal | height () const |
void | setHeight (qreal) |
void | resetHeight () |
void | setImplicitHeight (qreal) |
qreal | implicitHeight () const |
TransformOrigin | transformOrigin () const |
void | setTransformOrigin (TransformOrigin) |
qreal | z () const |
void | setZ (qreal) |
qreal | rotation () const |
void | setRotation (qreal) |
qreal | scale () const |
void | setScale (qreal) |
qreal | opacity () const |
void | setOpacity (qreal) |
bool | isVisible () const |
void | setVisible (bool) |
bool | isEnabled () const |
void | setEnabled (bool) |
bool | smooth () const |
void | setSmooth (bool) |
bool | activeFocusOnTab () const |
void | setActiveFocusOnTab (bool) |
bool | antialiasing () const |
void | setAntialiasing (bool) |
void | resetAntialiasing () |
Flags | flags () const |
void | setFlag (Flag flag, bool enabled) |
void | setFlags (QFlags< QQuickItem::Flag > flags) |
bool | hasActiveFocus () const |
bool | hasFocus () const |
void | setFocus (bool) |
void | setFocus (bool focus, Qt::FocusReason reason) |
bool | isFocusScope () const |
QQuickItem * | scopedFocusItem () const |
Qt::MouseButtons | acceptedMouseButtons () const |
void | setAcceptedMouseButtons (Qt::MouseButtons buttons) |
bool | acceptHoverEvents () const |
void | setAcceptHoverEvents (bool enabled) |
QCursor | cursor () const |
void | setCursor (const QCursor &cursor) |
void | unsetCursor () |
void | grabMouse () |
void | ungrabMouse () |
bool | keepMouseGrab () const |
void | setKeepMouseGrab (bool keep) |
bool | filtersChildMouseEvents () const |
void | setFiltersChildMouseEvents (bool filter) |
void | grabTouchPoints (const QVector< int > &ids) |
void | ungrabTouchPoints () |
bool | keepTouchGrab () const |
void | setKeepTouchGrab (bool keep) |
virtual bool | contains (const QPointF &point) const |
QPointF | mapToItem (const QQuickItem *item, const QPointF &point) const |
QPointF | mapToScene (const QPointF &point) const |
QRectF | mapRectToItem (const QQuickItem *item, const QRectF &rect) const |
QRectF | mapRectToScene (const QRectF &rect) const |
QPointF | mapFromItem (const QQuickItem *item, const QPointF &point) const |
QPointF | mapFromScene (const QPointF &point) const |
QRectF | mapRectFromItem (const QQuickItem *item, const QRectF &rect) const |
QRectF | mapRectFromScene (const QRectF &rect) const |
void | polish () |
void | forceActiveFocus () |
void | forceActiveFocus (Qt::FocusReason reason) |
QQuickItem * | nextItemInFocusChain (bool forward) |
QQuickItem * | childAt (qreal x, qreal y) const |
virtual QVariant | inputMethodQuery (Qt::InputMethodQuery query) const |
virtual bool | isTextureProvider () const |
virtual QSGTextureProvider * | textureProvider () const |
void | update () |
void | windowChanged (QQuickWindow *window) |
![]() | |
QObject (QObject *parent) | |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
virtual const QMetaObject * | metaObject () const |
QString | objectName () const |
void | setObjectName (const QString &name) |
bool | isWidgetType () const |
bool | isWindowType () const |
bool | signalsBlocked () const |
bool | blockSignals (bool block) |
QThread * | thread () const |
void | moveToThread (QThread *targetThread) |
int | startTimer (int interval, Qt::TimerType timerType) |
void | killTimer (int id) |
T | findChild (const QString &name, QFlags< Qt::FindChildOption > options) const |
QList< T > | findChildren (const QString &name, QFlags< Qt::FindChildOption > options) const |
QList< T > | findChildren (const QRegExp ®Exp, QFlags< Qt::FindChildOption > options) const |
QList< T > | findChildren (const QRegularExpression &re, QFlags< Qt::FindChildOption > options) const |
const QObjectList & | children () const |
void | setParent (QObject *parent) |
void | installEventFilter (QObject *filterObj) |
void | removeEventFilter (QObject *obj) |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const |
bool | disconnect (const char *signal, const QObject *receiver, const char *method) const |
bool | disconnect (const QObject *receiver, const char *method) const |
void | dumpObjectTree () |
void | dumpObjectInfo () |
bool | setProperty (const char *name, const QVariant &value) |
QVariant | property (const char *name) const |
QList< QByteArray > | dynamicPropertyNames () const |
void | destroyed (QObject *obj) |
void | objectNameChanged (const QString &objectName) |
QObject * | parent () const |
bool | inherits (const char *className) const |
void | deleteLater () |
![]() | |
virtual void | classBegin ()=0 |
virtual void | componentComplete ()=0 |
Protected Member Functions | |
void | getFlattenedRenderParameters (RenderParameters *parameters) |
Compute the rendering parameters and transform of this Graphic by moving up the QQuickItem tree and accumulating results. More... | |
![]() | |
virtual bool | event (QEvent *ev) |
bool | isComponentComplete () const |
virtual void | itemChange (ItemChange change, const ItemChangeData &value) |
void | updateInputMethod (Qt::InputMethodQueries queries) |
bool | widthValid () const |
bool | heightValid () const |
virtual void | classBegin () |
virtual void | componentComplete () |
virtual void | keyPressEvent (QKeyEvent *event) |
virtual void | keyReleaseEvent (QKeyEvent *event) |
virtual void | inputMethodEvent (QInputMethodEvent *event) |
virtual void | focusInEvent (QFocusEvent *event) |
virtual void | focusOutEvent (QFocusEvent *event) |
virtual void | mousePressEvent (QMouseEvent *event) |
virtual void | mouseMoveEvent (QMouseEvent *event) |
virtual void | mouseReleaseEvent (QMouseEvent *event) |
virtual void | mouseDoubleClickEvent (QMouseEvent *event) |
virtual void | mouseUngrabEvent () |
virtual void | touchUngrabEvent () |
virtual void | wheelEvent (QWheelEvent *event) |
virtual void | touchEvent (QTouchEvent *event) |
virtual void | hoverEnterEvent (QHoverEvent *event) |
virtual void | hoverMoveEvent (QHoverEvent *event) |
virtual void | hoverLeaveEvent (QHoverEvent *event) |
virtual void | dragEnterEvent (QDragEnterEvent *event) |
virtual void | dragMoveEvent (QDragMoveEvent *event) |
virtual void | dragLeaveEvent (QDragLeaveEvent *event) |
virtual void | dropEvent (QDropEvent *event) |
virtual bool | childMouseEventFilter (QQuickItem *item, QEvent *event) |
virtual void | geometryChanged (const QRectF &newGeometry, const QRectF &oldGeometry) |
virtual QSGNode * | updatePaintNode (QSGNode *oldNode, UpdatePaintNodeData *updatePaintNodeData) |
virtual void | releaseResources () |
virtual void | updatePolish () |
![]() | |
QObject * | sender () const |
int | senderSignalIndex () const |
int | receivers (const char *signal) const |
bool | isSignalConnected (const QMetaMethod &signal) const |
virtual void | timerEvent (QTimerEvent *event) |
virtual void | childEvent (QChildEvent *event) |
virtual void | customEvent (QEvent *event) |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
Additional Inherited Members | |
![]() | |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
QString | trUtf8 (const char *sourceText, const char *disambiguation, int n) |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
bool | disconnect (const QMetaObject::Connection &connection) |
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
![]() | |
typedef | Flags |
![]() | |
parent | |
x | |
y | |
z | |
width | |
height | |
opacity | |
enabled | |
visible | |
state | |
childrenRect | |
baselineOffset | |
clip | |
focus | |
activeFocus | |
activeFocusOnTab | |
rotation | |
scale | |
transformOrigin | |
smooth | |
antialiasing | |
implicitWidth | |
implicitHeight | |
![]() | |
objectName | |
Base class for visual elements which are part of the game scene, and are rendered through Renderer.
Graphic serves as the main bridge between Renderer and the Qml item tree, which contains our Actors. It provides a clean synchronization point where RenderNodes can be queued, and render resources buffered.
|
explicit |
Construct a Graphic.
parent | Parent item |
|
protected |
Compute the rendering parameters and transform of this Graphic by moving up the QQuickItem
tree and accumulating results.
Position, rotation, and opacity are computed by multiplying together and collapsing parent transforms and values. Z-depth is computed by adding together parent z
property values.
z
differs from QtQuick. QtQuick normally uses z
to sort items among siblings. By adding together parent z
values, sorting becomes global, and each child's z
value becomes a z-offset. parameters | RenderParameters struct to write results to |
|
virtual |
Synchronize this Graphic for rendering, adding any RenderNodes to renderList
, and buffering any data that will be needed on the render thread for rendering.
renderList | RenderList to add RenderNodes to for rendering in sorted order |
Reimplemented in AnimatedImageRenderer, ImageRenderer, ParticleRendererItem, and TerrainMeshRenderer.