Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
CustomScene Class Reference
+ Inheritance diagram for CustomScene:
+ Collaboration diagram for CustomScene:

Public Member Functions

 CustomScene ()
 
void drawItems (QPainter *painter, int numItems, QGraphicsItem *items[], const QStyleOptionGraphicsItem options[], QWidget *widget=nullptr) override
 [0]
 
- Public Member Functions inherited from QGraphicsScene
 QGraphicsScene (QObject *parent=nullptr)
 Constructs a QGraphicsScene object.
 
 QGraphicsScene (const QRectF &sceneRect, QObject *parent=nullptr)
 Constructs a QGraphicsScene object, using sceneRect for its scene rectangle.
 
 QGraphicsScene (qreal x, qreal y, qreal width, qreal height, QObject *parent=nullptr)
 Constructs a QGraphicsScene object, using the rectangle specified by (x, y), and the given width and height for its scene rectangle.
 
virtual ~QGraphicsScene ()
 Removes and deletes all items from the scene object before destroying the scene object.
 
QRectF sceneRect () const
 
qreal width () const
 This convenience function is equivalent to calling sceneRect().width().
 
qreal height () const
 This convenience function is equivalent to calling sceneRect().height().
 
void setSceneRect (const QRectF &rect)
 
void setSceneRect (qreal x, qreal y, qreal w, qreal h)
 
void render (QPainter *painter, const QRectF &target=QRectF(), const QRectF &source=QRectF(), Qt::AspectRatioMode aspectRatioMode=Qt::KeepAspectRatio)
 Renders the source rect from scene into target, using painter.
 
ItemIndexMethod itemIndexMethod () const
 
void setItemIndexMethod (ItemIndexMethod method)
 
int bspTreeDepth () const
 
void setBspTreeDepth (int depth)
 
QRectF itemsBoundingRect () const
 Calculates and returns the bounding rect of all items on the scene.
 
QList< QGraphicsItem * > items (Qt::SortOrder order=Qt::DescendingOrder) const
 Returns an ordered list of all items on the scene.
 
QList< QGraphicsItem * > items (const QPointF &pos, Qt::ItemSelectionMode mode=Qt::IntersectsItemShape, Qt::SortOrder order=Qt::DescendingOrder, const QTransform &deviceTransform=QTransform()) const
 Returns all visible items that, depending on mode, are at the specified pos in a list sorted using order. In this case, "visible" defines items for which: isVisible() returns true, effectiveOpacity() returns a value greater than 0.0 (which is fully transparent) and the parent item does not clip it.
 
QList< QGraphicsItem * > items (const QRectF &rect, Qt::ItemSelectionMode mode=Qt::IntersectsItemShape, Qt::SortOrder order=Qt::DescendingOrder, const QTransform &deviceTransform=QTransform()) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QList< QGraphicsItem * > items (const QPolygonF &polygon, Qt::ItemSelectionMode mode=Qt::IntersectsItemShape, Qt::SortOrder order=Qt::DescendingOrder, const QTransform &deviceTransform=QTransform()) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QList< QGraphicsItem * > items (const QPainterPath &path, Qt::ItemSelectionMode mode=Qt::IntersectsItemShape, Qt::SortOrder order=Qt::DescendingOrder, const QTransform &deviceTransform=QTransform()) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QList< QGraphicsItem * > items (qreal x, qreal y, qreal w, qreal h, Qt::ItemSelectionMode mode, Qt::SortOrder order, const QTransform &deviceTransform=QTransform()) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QList< QGraphicsItem * > collidingItems (const QGraphicsItem *item, Qt::ItemSelectionMode mode=Qt::IntersectsItemShape) const
 Returns a list of all items that collide with item.
 
QGraphicsItemitemAt (const QPointF &pos, const QTransform &deviceTransform) const
 
QGraphicsItemitemAt (qreal x, qreal y, const QTransform &deviceTransform) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QList< QGraphicsItem * > selectedItems () const
 Returns a list of all currently selected items.
 
QPainterPath selectionArea () const
 Returns the selection area that was previously set with setSelectionArea(), or an empty QPainterPath if no selection area has been set.
 
void setSelectionArea (const QPainterPath &path, const QTransform &deviceTransform)
 
void setSelectionArea (const QPainterPath &path, Qt::ItemSelectionOperation selectionOperation=Qt::ReplaceSelection, Qt::ItemSelectionMode mode=Qt::IntersectsItemShape, const QTransform &deviceTransform=QTransform())
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QGraphicsItemGroupcreateItemGroup (const QList< QGraphicsItem * > &items)
 Groups all items in items into a new QGraphicsItemGroup, and returns a pointer to the group.
 
void destroyItemGroup (QGraphicsItemGroup *group)
 Reparents all items in group to group's parent item, then removes group from the scene, and finally deletes it.
 
void addItem (QGraphicsItem *item)
 Adds or moves the item and all its children to this scene.
 
QGraphicsEllipseItemaddEllipse (const QRectF &rect, const QPen &pen=QPen(), const QBrush &brush=QBrush())
 Creates and adds an ellipse item to the scene, and returns the item pointer.
 
QGraphicsLineItemaddLine (const QLineF &line, const QPen &pen=QPen())
 Creates and adds a line item to the scene, and returns the item pointer.
 
QGraphicsPathItemaddPath (const QPainterPath &path, const QPen &pen=QPen(), const QBrush &brush=QBrush())
 Creates and adds a path item to the scene, and returns the item pointer.
 
QGraphicsPixmapItemaddPixmap (const QPixmap &pixmap)
 Creates and adds a pixmap item to the scene, and returns the item pointer.
 
QGraphicsPolygonItemaddPolygon (const QPolygonF &polygon, const QPen &pen=QPen(), const QBrush &brush=QBrush())
 Creates and adds a polygon item to the scene, and returns the item pointer.
 
QGraphicsRectItemaddRect (const QRectF &rect, const QPen &pen=QPen(), const QBrush &brush=QBrush())
 Creates and adds a rectangle item to the scene, and returns the item pointer.
 
QGraphicsTextItemaddText (const QString &text, const QFont &font=QFont())
 Creates and adds a text item to the scene, and returns the item pointer.
 
QGraphicsSimpleTextItemaddSimpleText (const QString &text, const QFont &font=QFont())
 Creates and adds a QGraphicsSimpleTextItem to the scene, and returns the item pointer.
 
QGraphicsProxyWidgetaddWidget (QWidget *widget, Qt::WindowFlags wFlags=Qt::WindowFlags())
 Creates a new QGraphicsProxyWidget for widget, adds it to the scene, and returns a pointer to the proxy.
 
QGraphicsEllipseItemaddEllipse (qreal x, qreal y, qreal w, qreal h, const QPen &pen=QPen(), const QBrush &brush=QBrush())
 
QGraphicsLineItemaddLine (qreal x1, qreal y1, qreal x2, qreal y2, const QPen &pen=QPen())
 
QGraphicsRectItemaddRect (qreal x, qreal y, qreal w, qreal h, const QPen &pen=QPen(), const QBrush &brush=QBrush())
 
void removeItem (QGraphicsItem *item)
 Removes the item item and all its children from the scene.
 
QGraphicsItemfocusItem () const
 When the scene is active, this functions returns the scene's current focus item, or \nullptr if no item currently has focus.
 
void setFocusItem (QGraphicsItem *item, Qt::FocusReason focusReason=Qt::OtherFocusReason)
 Sets the scene's focus item to item, with the focus reason focusReason, after removing focus from any previous item that may have had focus.
 
bool hasFocus () const
 Returns true if the scene has focus; otherwise returns false.
 
void setFocus (Qt::FocusReason focusReason=Qt::OtherFocusReason)
 Sets focus on the scene by sending a QFocusEvent to the scene, passing focusReason as the reason.
 
void clearFocus ()
 Clears focus from the scene.
 
void setStickyFocus (bool enabled)
 
bool stickyFocus () const
 
QGraphicsItemmouseGrabberItem () const
 Returns the current mouse grabber item, or \nullptr if no item is currently grabbing the mouse.
 
QBrush backgroundBrush () const
 
void setBackgroundBrush (const QBrush &brush)
 
QBrush foregroundBrush () const
 
void setForegroundBrush (const QBrush &brush)
 
virtual QVariant inputMethodQuery (Qt::InputMethodQuery query) const
 This method is used by input methods to query a set of properties of the scene to be able to support complex input method operations as support for surrounding text and reconversions.
 
QList< QGraphicsView * > views () const
 Returns a list of all the views that display this scene.
 
void update (qreal x, qreal y, qreal w, qreal h)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
void invalidate (qreal x, qreal y, qreal w, qreal h, SceneLayers layers=AllLayers)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QStylestyle () const
 
void setStyle (QStyle *style)
 
QFont font () const
 
void setFont (const QFont &font)
 
QPalette palette () const
 
void setPalette (const QPalette &palette)
 
bool isActive () const
 
QGraphicsItemactivePanel () const
 
void setActivePanel (QGraphicsItem *item)
 
QGraphicsWidgetactiveWindow () const
 
void setActiveWindow (QGraphicsWidget *widget)
 
bool sendEvent (QGraphicsItem *item, QEvent *event)
 
qreal minimumRenderSize () const
 
void setMinimumRenderSize (qreal minSize)
 
bool focusOnTouch () const
 
void setFocusOnTouch (bool enabled)
 
- Public Member Functions inherited from QObject
Q_INVOKABLE QObject (QObject *parent=nullptr)
 Constructs an object with parent object parent.
 
virtual ~QObject ()
 Destroys the object, deleting all its child objects.
 
QString objectName () const
 
Q_WEAK_OVERLOAD void setObjectName (const QString &name)
 Sets the object's name to name.
 
void setObjectName (QAnyStringView name)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QBindable< QStringbindableObjectName ()
 
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false.
 
bool isWindowType () const
 Returns true if the object is a window; otherwise returns false.
 
bool isQuickItemType () const
 Returns true if the object is a QQuickItem; otherwise returns false.
 
bool signalsBlocked () const noexcept
 Returns true if signals are blocked; otherwise returns false.
 
bool blockSignals (bool b) noexcept
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it).
 
QThreadthread () const
 Returns the thread in which the object lives.
 
bool moveToThread (QThread *thread QT6_DECL_NEW_OVERLOAD_TAIL)
 Changes the thread affinity for this object and its children and returns true on success.
 
int startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer)
 This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds.
 
int startTimer (std::chrono::nanoseconds time, Qt::TimerType timerType=Qt::CoarseTimer)
 
void killTimer (int id)
 Kills the timer with timer identifier, id.
 
void killTimer (Qt::TimerId id)
 
template<typename T >
findChild (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object.
 
template<typename T >
QList< T > findChildren (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects.
 
template<typename T >
findChild (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
template<typename T >
QList< T > findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
const QObjectListchildren () const
 Returns a list of child objects.
 
void setParent (QObject *parent)
 Makes the object a child of parent.
 
void installEventFilter (QObject *filterObj)
 Installs an event filter filterObj on this object.
 
void removeEventFilter (QObject *obj)
 Removes an event filter object obj from this object.
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const
 
bool disconnect (const QObject *receiver, const char *member=nullptr) const
 
void dumpObjectTree () const
 Dumps a tree of children to the debug output.
 
void dumpObjectInfo () const
 Dumps information about signal connections, etc.
 
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value.
 
bool setProperty (const char *name, QVariant &&value)
 
QVariant property (const char *name) const
 Returns the value of the object's name property.
 
QList< QByteArraydynamicPropertyNames () const
 
QBindingStoragebindingStorage ()
 
const QBindingStoragebindingStorage () const
 
QObjectparent () const
 Returns a pointer to the parent object.
 
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false.
 

Additional Inherited Members

- Public Types inherited from QGraphicsScene
enum  ItemIndexMethod { BspTreeIndex , NoIndex = -1 }
 This enum describes the indexing algorithms QGraphicsScene provides for managing positional information about items on the scene. More...
 
enum  SceneLayer { ItemLayer = 0x1 , BackgroundLayer = 0x2 , ForegroundLayer = 0x4 , AllLayers = 0xffff }
 
- Public Slots inherited from QGraphicsScene
void update (const QRectF &rect=QRectF())
 Schedules a redraw of the area rect on the scene.
 
void invalidate (const QRectF &rect=QRectF(), SceneLayers layers=AllLayers)
 Invalidates and schedules a redraw of the layers in rect on the scene.
 
void advance ()
 This slot advances the scene by one step, by calling QGraphicsItem::advance() for all items on the scene.
 
void clearSelection ()
 Clears the current selection.
 
void clear ()
 
- Public Slots inherited from QObject
void deleteLater ()
 \threadsafe
 
- Signals inherited from QGraphicsScene
void changed (const QList< QRectF > &region)
 This signal is emitted by QGraphicsScene when control reaches the event loop, if the scene content changes.
 
void sceneRectChanged (const QRectF &rect)
 This signal is emitted by QGraphicsScene whenever the scene rect changes.
 
void selectionChanged ()
 
void focusItemChanged (QGraphicsItem *newFocus, QGraphicsItem *oldFocus, Qt::FocusReason reason)
 This signal is emitted by QGraphicsScene whenever focus changes in the scene (i.e., when an item gains or loses input focus, or when focus passes from one item to another).
 
- Signals inherited from QObject
void destroyed (QObject *=nullptr)
 This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked.
 
void objectNameChanged (const QString &objectName, QPrivateSignal)
 This signal is emitted after the object's name has been changed.
 
- Static Public Member Functions inherited from QObject
static QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 \threadsafe
 
static QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 \threadsafe
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static bool disconnect (const QMetaObject::Connection &)
 Disconnect a connection.
 
template<typename Func1 , typename Func2 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot)
 
template<typename Func1 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero)
 
- Protected Slots inherited from QGraphicsScene
virtual bool focusNextPrevChild (bool next)
 
- Protected Member Functions inherited from QGraphicsScene
bool event (QEvent *event) override
 Processes the event event, and dispatches it to the respective event handlers.
 
bool eventFilter (QObject *watched, QEvent *event) override
 \reimp
 
virtual void contextMenuEvent (QGraphicsSceneContextMenuEvent *event)
 This event handler, for event contextMenuEvent, can be reimplemented in a subclass to receive context menu events.
 
virtual void dragEnterEvent (QGraphicsSceneDragDropEvent *event)
 This event handler, for event event, can be reimplemented in a subclass to receive drag enter events for the scene.
 
virtual void dragMoveEvent (QGraphicsSceneDragDropEvent *event)
 This event handler, for event event, can be reimplemented in a subclass to receive drag move events for the scene.
 
virtual void dragLeaveEvent (QGraphicsSceneDragDropEvent *event)
 This event handler, for event event, can be reimplemented in a subclass to receive drag leave events for the scene.
 
virtual void dropEvent (QGraphicsSceneDragDropEvent *event)
 This event handler, for event event, can be reimplemented in a subclass to receive drop events for the scene.
 
virtual void focusInEvent (QFocusEvent *event)
 This event handler, for event focusEvent, can be reimplemented in a subclass to receive focus in events.
 
virtual void focusOutEvent (QFocusEvent *event)
 This event handler, for event focusEvent, can be reimplemented in a subclass to receive focus out events.
 
virtual void helpEvent (QGraphicsSceneHelpEvent *event)
 This event handler, for event helpEvent, can be reimplemented in a subclass to receive help events.
 
virtual void keyPressEvent (QKeyEvent *event)
 This event handler, for event keyEvent, can be reimplemented in a subclass to receive keypress events.
 
virtual void keyReleaseEvent (QKeyEvent *event)
 This event handler, for event keyEvent, can be reimplemented in a subclass to receive key release events.
 
virtual void mousePressEvent (QGraphicsSceneMouseEvent *event)
 This event handler, for event mouseEvent, can be reimplemented in a subclass to receive mouse press events for the scene.
 
virtual void mouseMoveEvent (QGraphicsSceneMouseEvent *event)
 This event handler, for event mouseEvent, can be reimplemented in a subclass to receive mouse move events for the scene.
 
virtual void mouseReleaseEvent (QGraphicsSceneMouseEvent *event)
 This event handler, for event mouseEvent, can be reimplemented in a subclass to receive mouse release events for the scene.
 
virtual void mouseDoubleClickEvent (QGraphicsSceneMouseEvent *event)
 This event handler, for event mouseEvent, can be reimplemented in a subclass to receive mouse double-click events for the scene.
 
virtual void wheelEvent (QGraphicsSceneWheelEvent *event)
 This event handler, for event wheelEvent, can be reimplemented in a subclass to receive mouse wheel events for the scene.
 
virtual void inputMethodEvent (QInputMethodEvent *event)
 This event handler, for event event, can be reimplemented in a subclass to receive input method events for the scene.
 
virtual void drawBackground (QPainter *painter, const QRectF &rect)
 Draws the background of the scene using painter, before any items and the foreground are drawn.
 
virtual void drawForeground (QPainter *painter, const QRectF &rect)
 Draws the foreground of the scene using painter, after the background and all items have been drawn.
 
- Protected Member Functions inherited from QObject
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr.
 
int senderSignalIndex () const
 
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal.
 
bool isSignalConnected (const QMetaMethod &signal) const
 
virtual void timerEvent (QTimerEvent *event)
 This event handler can be reimplemented in a subclass to receive timer events for the object.
 
virtual void childEvent (QChildEvent *event)
 This event handler can be reimplemented in a subclass to receive child events.
 
virtual void customEvent (QEvent *event)
 This event handler can be reimplemented in a subclass to receive custom events.
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
 QObject (QObjectPrivate &dd, QObject *parent=nullptr)
 
- Protected Attributes inherited from QObject
QScopedPointer< QObjectDatad_ptr
 
- Properties inherited from QGraphicsScene
QBrush backgroundBrush
 the background brush of the scene.
 
QBrush foregroundBrush
 the foreground brush of the scene.
 
ItemIndexMethod itemIndexMethod
 the item indexing method.
 
QRectF sceneRect
 the scene rectangle; the bounding rectangle of the scene
 
int bspTreeDepth
 the depth of QGraphicsScene's BSP index tree
 
QPalette palette
 the scene's default palette
 
QFont font
 the scene's default font
 
bool stickyFocus
 whether clicking into the scene background will clear focus
 
qreal minimumRenderSize
 the minimal view-transformed size an item must have to be drawn
 
bool focusOnTouch
 whether items gain focus when receiving a {touch begin} event.
 
- Properties inherited from QObject
QString objectName
 the name of this object
 

Detailed Description

Definition at line 9 of file graphicssceneadditemsnippet.cpp.

Constructor & Destructor Documentation

◆ CustomScene()

CustomScene::CustomScene ( )
inline

Definition at line 12 of file graphicssceneadditemsnippet.cpp.

References QGraphicsScene::addItem().

+ Here is the call graph for this function:

Member Function Documentation

◆ drawItems()

void CustomScene::drawItems ( QPainter * painter,
int numItems,
QGraphicsItem * items[],
const QStyleOptionGraphicsItem options[],
QWidget * widget = nullptr )
overridevirtual

[0]

Reimplemented from QGraphicsScene.

Definition at line 21 of file graphicssceneadditemsnippet.cpp.

References i, items, painter, QPainter::restore(), QPainter::save(), sceneTransform(), QPainter::setTransform(), and widget.

+ Here is the call graph for this function:

The documentation for this class was generated from the following file: