Vuo
0.7.0
|
Represents the compact form of a "Make List" node.
Public Member Functions | |
VuoRendererMakeListNode (VuoNode *baseNode, VuoRendererSignaler *signaler) | |
Creates a collapsed "Make List" node, which takes the form of an input drawer. | |
void | paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) |
Draws a collapsed "Make List" node. | |
QRectF | boundingRect (void) const |
Returns the bounding rectangle of this collapsed "Make List" node. | |
QRectF | getNodeTitleBoundingRect () const |
Returns the bounding rect for the node title box. | |
QPainterPath | shape () const |
Returns the shape of the rendered "Make List" node, for use in collision detection, hit tests, and QGraphicsScene::items() functions. | |
vector< VuoRendererPort * > | getDrawerPorts (void) const |
Returns the vector of the input ports whose values will be incorporated into the output list. | |
VuoRendererPort * | getHostInputPort (void) const |
Returns the input port to which this collapsed "Make List" node is attached. | |
qreal | getMaxDrawerLabelWidth (void) const |
Returns the maximum width in pixels of the port labels within this drawer. | |
qreal | getMaxDrawerChainedLabelWidth (void) const |
Returns the maximum width in pixels of the port labels within this drawer, also accounting for the width of the child port as well as any constant flags or collapsed typecasts attached to the child port. | |
void | setHorizontalDrawerOffset (qreal offset) |
Sets the distance, in pixels, left of its attached port that the rightmost point of this drawer should be rendered. | |
void | setDragInProgress (bool inProgress) |
Sets the boolean indicating whether this node's drag handle is currently being dragged. | |
![]() | |
VuoRendererNode (VuoNode *baseNode, VuoRendererSignaler *signaler) | |
Creates a renderer detail for the specified base node. | |
vector< VuoRendererMakeListNode * > | getAttachedInputDrawers (void) const |
Returns a vector containing all of the drawers attached to any of this node's input ports. | |
qreal | getInputDrawerOffset (unsigned int portIndex) const |
Returns the horizontal offset necessary to prevent the drawer at portIndex from overlapping any drawers beneath it. | |
void | updateNodeFrameRect (void) |
Calculates and updates the cached inner frame of a node based on its current attributes. | |
void | setMissingImplementation (bool missingImplementation) |
Sets whether the node is rendered as though its implementation is missing. | |
void | setProxyNode (VuoRendererNode *proxyNode) |
If set, this node will not be drawn; its drawing will be handled by proxyNode . | |
VuoRendererNode * | getProxyNode (void) const |
Returns this node's rendering proxy. | |
VuoRendererTypecastPort * | getProxyCollapsedTypecast (void) const |
Returns the collapsed typecast port rendered in place of this node, or NULL if none. | |
QVariant | itemChange (GraphicsItemChange change, const QVariant &value) |
Updates the node and its connected cables to reflect changes in state. | |
void | updateGeometry (void) |
Schedules a redraw of this node. | |
void | updateConnectedCableGeometry (void) |
Schedules a redraw of this node's connected cables. | |
set< VuoCable * > | getConnectedCables (bool includePublishedCables) |
Returns the set of cables connected to this node. | |
set< VuoCable * > | getConnectedInputCables (bool includePublishedCables) |
Returns the set of input cables connected to this node. | |
set< VuoCable * > | getConnectedOutputCables (bool includePublishedCables) |
Returns the set of output cables connected to this node. | |
VuoRendererPortList * | getInputPorts (void) |
Returns this node's input ports, as a VuoRendererPortList . | |
VuoRendererPortList * | getOutputPorts (void) |
Returns this node's output ports, as a VuoRendererPortList . | |
vector< pair< QString, json_object * > > | getConstantPortValues () |
Returns an ordered list of port name-value pairs for the ports that belong to this node and whose values are currently constant. | |
void | replaceInputPort (VuoRendererPort *oldPort, VuoRendererPort *newPort) |
Replaces input port old with new . | |
void | addInputPort (VuoRendererPort *newPort) |
Adds input port port to the node. | |
bool | hasGenericPort (void) |
Returns a boolean indicating whether this node has any ports with generic data types. | |
void | setTitle (string title) |
Sets the title for this node; re-lays-out its ports to accommodate the new name. | |
void | resetTimeLastExecuted () |
Resets the time last executed to a value that causes the node to be painted as if activity-rendering were disabled. | |
void | setExecutionEnded () |
Updates the node's execution state to indicate that it has just finished executing. | |
void | setExecutionBegun () |
Updates the node's execution state to indicate that it is currently executing. | |
qint64 | getTimeLastExecutionEnded () |
Returns the time, in ms since epoch, that this node's most recent node execution ended, or if applicable, a special VuoRendererItem::activityState. | |
void | layoutConnectedInputDrawers (void) |
Calculates and sets the positions of the node's connected input drawers relative to the node. | |
void | layoutConnectedInputDrawersAtAndAbovePort (VuoRendererPort *port) |
Calculates and sets the positions of any input drawers connected to this node's ports beginning with the provided port and iterating through the ports rendered above (i.e., with indices lower than) that port. | |
void | setCacheModeForNodeAndPorts (QGraphicsItem::CacheMode mode) |
Sets the cache mode of this node and its child ports to mode . | |
void | setCacheModeForConnectedCables (QGraphicsItem::CacheMode mode) |
Sets the cache mode of this node's connected cables to mode . | |
![]() | |
VuoBaseDetail (string description, VuoNode *base) | |
Creates a VuoNode detail class. | |
VuoNode * | getBase (void) const |
Returns the VuoNode detail class instance's base class instance. | |
void | setBase (VuoNode *base) |
Sets the VuoNode detail class instance's base class instance. | |
Static Public Attributes | |
static const qreal | drawerHorizontalSpacing = VuoRendererFonts::thickPenWidth*1./4. |
The amount of space, in pixels, left as horizontal padding between underhangs of drawers attached to ports of the same node. | |
![]() | |
static const qreal | nodeTitleHeight = round(VuoRendererFonts::nodeTitleFontSize + VuoRendererFonts::thickPenWidth*1./8.) |
The height of the node's title. | |
Additional Inherited Members | |
![]() | |
enum | Type { node, detachedConstant, detachedDrawer, detachedTypecast } |
Specifies how this node is graphically represented. More... | |
![]() | |
static QPair< QPainterPath, QPainterPath > | getNodeFrames (QRectF nodeInnerFrameRect, QPainterPath portsPath, QPainterPath portsInsetPath, QPainterPath statefulIndicatorOutline, bool isSubcomposition) |
Returns the outer and inner node frames, in that order, for a node with the provided nodeInnerFrameRect , portsPath , portsInsetPath , statefulIndicatorOutline , and isSubcomposition attribute values. | |
static QVector< QPainterPath > | getStatefulIndicatorOutlines (QRectF nodeInnerFrameRect, bool isStateful) |
Returns the (cableOutline, highlightOutline, cableOutline.subtracted(highlightOutline)) paths, in that order, required to paint a stateful indicator for a node with the provided nodeInnerFrameRect , or empty paths if isStateful is false. | |
static QPainterPath | getAntennaPath (QRectF nodeInnerFrameRect, bool isInterface) |
Returns the path of the "Antenna" icon for a node with the provided nodeInnerFrameRect , or an empty path if isInterface is false. | |
static QPair< QPainterPath, QPainterPath > | getPortPaths (VuoRendererPortList *inputPorts, VuoRendererPortList *outputPorts) |
Returns the port path and portInset path, in that order, for a node with the provided inputPorts and outputPorts lists. | |
static QString | generateNodeClassToolTipTitle (VuoNodeClass *nodeClass, VuoNode *node) |
Generates a formatted title to be incorporated into the tooltip for the input nodeClass . | |
static QString | generateNodeClassToolTipTextBody (VuoNodeClass *nodeClass) |
Generates a formatted description to be incorporated into the tooltip for the input nodeClass . | |
![]() | |
void | mouseDoubleClickEvent (QGraphicsSceneMouseEvent *event) |
Handle mouse double-click events. | |
void | keyPressEvent (QKeyEvent *event) |
Handle key-press events. | |
![]() | |
static void | addRoundedCorner (QPainterPath &path, bool drawLine, QPointF sharpCornerPoint, qreal radius, bool isTop, bool isLeft) |
Appends a line (or move) and curve to path , to produce a clockwise-wound rounded corner near sharpCornerPoint . | |
![]() | |
VuoRendererSignaler * | signaler |
The object that sends signals on behalf of this renderer node. | |
VuoRendererPortList * | inputPorts |
The list of input renderer ports belonging to this renderer node. | |
VuoRendererPortList * | outputPorts |
The list of output renderer ports belonging to this renderer node. | |
qint64 | timeLastExecutionEnded |
The time at which this node's running counterpart last completed an execution. | |
![]() | |
static const qreal | cornerRadius = VuoRendererFonts::thickPenWidth/8.0 |
The radius of rounded corners. | |
VuoRendererMakeListNode::VuoRendererMakeListNode | ( | VuoNode * | baseNode, |
VuoRendererSignaler * | signaler | ||
) |
Creates a collapsed "Make List" node, which takes the form of an input drawer.
|
virtual |
Returns the bounding rectangle of this collapsed "Make List" node.
Reimplemented from VuoRendererNode.
vector< VuoRendererPort * > VuoRendererMakeListNode::getDrawerPorts | ( | void | ) | const |
Returns the vector of the input ports whose values will be incorporated into the output list.
VuoRendererPort * VuoRendererMakeListNode::getHostInputPort | ( | void | ) | const |
Returns the input port to which this collapsed "Make List" node is attached.
qreal VuoRendererMakeListNode::getMaxDrawerChainedLabelWidth | ( | void | ) | const |
Returns the maximum width in pixels of the port labels within this drawer, also accounting for the width of the child port as well as any constant flags or collapsed typecasts attached to the child port.
qreal VuoRendererMakeListNode::getMaxDrawerLabelWidth | ( | void | ) | const |
Returns the maximum width in pixels of the port labels within this drawer.
|
virtual |
Returns the bounding rect for the node title box.
Since MakeList nodes don't display their titles, return the entire node boundingRect instead.
Reimplemented from VuoRendererNode.
|
virtual |
Draws a collapsed "Make List" node.
The node is drawn with (0,0) as the top left inner margin, so you should use a QPainter transform if you want to position the node.
Reimplemented from VuoRendererNode.
void VuoRendererMakeListNode::setDragInProgress | ( | bool | inProgress | ) |
Sets the boolean indicating whether this node's drag handle is currently being dragged.
void VuoRendererMakeListNode::setHorizontalDrawerOffset | ( | qreal | offset | ) |
Sets the distance, in pixels, left of its attached port that the rightmost point of this drawer should be rendered.
QPainterPath VuoRendererMakeListNode::shape | ( | ) | const |
Returns the shape of the rendered "Make List" node, for use in collision detection, hit tests, and QGraphicsScene::items() functions.
|
static |
The amount of space, in pixels, left as horizontal padding between underhangs of drawers attached to ports of the same node.