Developer Documentation
VSI::SceneElement Class Reference

#include <Plugin-VSI/scene/sceneElement.hh>

Inheritance diagram for VSI::SceneElement:

Public Member Functions

 SceneElement (GraphicsScene *_scene, Element *_element)
 Constructor. More...
 
 ~SceneElement ()
 Destructor. More...
 
void paint (QPainter *_painter, const QStyleOptionGraphicsItem *_option, QWidget *_widget=0)
 Background painting. More...
 
Elementelement () const
 Context VSI::Element. More...
 
QVector< ElementInput * > inputs ()
 Inputs. More...
 
QVector< ElementOutput * > outputs ()
 Outputs. More...
 
QVector< ElementFunction * > functions ()
 Functions. More...
 
ElementInputdataIn ()
 Scene input. More...
 
ElementOutputdataOut ()
 Scene output. More...
 
void resetCodeGeneration ()
 Reset code block for code generation. More...
 
void replaceCodeBlock (const QString &_name, const QString &_id, const QString &_value)
 Replace block with name _name and id _id with _value. More...
 
QString variableId ()
 Unique variable name for code generation. More...
 
int id ()
 Unique id for identification. More...
 
QString code ()
 Code block. More...
 
bool isBefore (SceneElement *_e)
 Will this element be executed before _e bacause of its connections? More...
 
bool isAfter (SceneElement *_e)
 Will this element be executed after _e bacause of its connections? More...
 
void saveToXml (QDomDocument &_doc, QDomElement &_root)
 Save to xml. More...
 
void loadFromXml (QDomElement &_domElement, std::vector< QString > &_connections)
 Load one scene Element from xml. More...
 
GraphicsScenegraphicsScene ()
 Scene. More...
 

Protected Member Functions

void mousePressEvent (QGraphicsSceneMouseEvent *_event)
 
void mouseMoveEvent (QGraphicsSceneMouseEvent *_event)
 
void mouseReleaseEvent (QGraphicsSceneMouseEvent *_event)
 
void mouseDoubleClickEvent (QGraphicsSceneMouseEvent *_event)
 Double click occured. We can't use mouseDoubleClickEvent because we won't get one for the ConecctionPoints. More...
 
void moveEvent (QGraphicsSceneMoveEvent *_event)
 

Private Slots

void showInputConfig ()
 

Private Member Functions

void invalidateConnections ()
 

Private Attributes

GraphicsScenescene_
 
Elementelement_
 
QVector< ElementInput * > inputs_
 
QVector< ElementOutput * > outputs_
 
ElementInputdataIn_
 
ElementOutputdataOut_
 
QVector< ElementFunction * > functions_
 
QVector< ElementInput * > configInputs_
 
QString code_
 
int id_
 
Textname_
 
TextelementName_
 
QGraphicsLinearLayout * nameLayout_
 

Detailed Description

Widget that represents an context element in the scene

Definition at line 72 of file sceneElement.hh.

Constructor & Destructor Documentation

◆ SceneElement()

VSI::SceneElement::SceneElement ( GraphicsScene _scene,
Element _element 
)

Constructor.

Definition at line 97 of file sceneElement.cc.

◆ ~SceneElement()

VSI::SceneElement::~SceneElement ( )

Destructor.

Definition at line 339 of file sceneElement.cc.

Member Function Documentation

◆ code()

QString VSI::SceneElement::code ( )
inline

Code block.

Definition at line 117 of file sceneElement.hh.

◆ dataIn()

ElementInput * VSI::SceneElement::dataIn ( )
inline

Scene input.

Definition at line 99 of file sceneElement.hh.

◆ dataOut()

ElementOutput * VSI::SceneElement::dataOut ( )
inline

Scene output.

Definition at line 102 of file sceneElement.hh.

◆ element()

Element * VSI::SceneElement::element ( ) const
inline

Context VSI::Element.

Definition at line 87 of file sceneElement.hh.

◆ functions()

QVector< ElementFunction * > VSI::SceneElement::functions ( )
inline

Functions.

Definition at line 96 of file sceneElement.hh.

◆ graphicsScene()

GraphicsScene * VSI::SceneElement::graphicsScene ( )
inline

Scene.

Definition at line 138 of file sceneElement.hh.

◆ id()

int VSI::SceneElement::id ( )
inline

Unique id for identification.

Definition at line 114 of file sceneElement.hh.

◆ inputs()

QVector< ElementInput * > VSI::SceneElement::inputs ( )
inline

Inputs.

Definition at line 90 of file sceneElement.hh.

◆ invalidateConnections()

void VSI::SceneElement::invalidateConnections ( )
private

Definition at line 673 of file sceneElement.cc.

◆ isAfter()

bool VSI::SceneElement::isAfter ( SceneElement _e)

Will this element be executed after _e bacause of its connections?

Definition at line 643 of file sceneElement.cc.

◆ isBefore()

bool VSI::SceneElement::isBefore ( SceneElement _e)

Will this element be executed before _e bacause of its connections?

Definition at line 613 of file sceneElement.cc.

◆ loadFromXml()

void VSI::SceneElement::loadFromXml ( QDomElement &  _domElement,
std::vector< QString > &  _connections 
)

Load one scene Element from xml.

Load from xml.

Load one scene element from an xml dom.

Parameters
_domElementThe element that should be loaded
_connectionsInfo about the connections returned for this element. The function appends the information to the vector

Definition at line 750 of file sceneElement.cc.

◆ mouseDoubleClickEvent()

void VSI::SceneElement::mouseDoubleClickEvent ( QGraphicsSceneMouseEvent *  _event)
protected

Double click occured. We can't use mouseDoubleClickEvent because we won't get one for the ConecctionPoints.

Definition at line 470 of file sceneElement.cc.

◆ mouseMoveEvent()

void VSI::SceneElement::mouseMoveEvent ( QGraphicsSceneMouseEvent *  _event)
protected

Definition at line 453 of file sceneElement.cc.

◆ mousePressEvent()

void VSI::SceneElement::mousePressEvent ( QGraphicsSceneMouseEvent *  _event)
protected

Definition at line 444 of file sceneElement.cc.

◆ mouseReleaseEvent()

void VSI::SceneElement::mouseReleaseEvent ( QGraphicsSceneMouseEvent *  _event)
protected

Definition at line 461 of file sceneElement.cc.

◆ moveEvent()

void VSI::SceneElement::moveEvent ( QGraphicsSceneMoveEvent *  _event)
protected

Definition at line 532 of file sceneElement.cc.

◆ outputs()

QVector< ElementOutput * > VSI::SceneElement::outputs ( )
inline

Outputs.

Definition at line 93 of file sceneElement.hh.

◆ paint()

void VSI::SceneElement::paint ( QPainter *  _painter,
const QStyleOptionGraphicsItem *  _option,
QWidget *  _widget = 0 
)

Background painting.

Definition at line 355 of file sceneElement.cc.

◆ replaceCodeBlock()

void VSI::SceneElement::replaceCodeBlock ( const QString &  _name,
const QString &  _id,
const QString &  _value 
)

Replace block with name _name and id _id with _value.

Definition at line 573 of file sceneElement.cc.

◆ resetCodeGeneration()

void VSI::SceneElement::resetCodeGeneration ( )

Reset code block for code generation.

Definition at line 560 of file sceneElement.cc.

◆ saveToXml()

void VSI::SceneElement::saveToXml ( QDomDocument &  _doc,
QDomElement &  _root 
)

Save to xml.

Definition at line 698 of file sceneElement.cc.

◆ showInputConfig

void VSI::SceneElement::showInputConfig ( )
privateslot

Definition at line 590 of file sceneElement.cc.

◆ variableId()

QString VSI::SceneElement::variableId ( )

Unique variable name for code generation.

Definition at line 582 of file sceneElement.cc.

Member Data Documentation

◆ code_

QString VSI::SceneElement::code_
private

Definition at line 176 of file sceneElement.hh.

◆ configInputs_

QVector<ElementInput *> VSI::SceneElement::configInputs_
private

Definition at line 174 of file sceneElement.hh.

◆ dataIn_

ElementInput* VSI::SceneElement::dataIn_
private

Definition at line 169 of file sceneElement.hh.

◆ dataOut_

ElementOutput* VSI::SceneElement::dataOut_
private

Definition at line 170 of file sceneElement.hh.

◆ element_

Element* VSI::SceneElement::element_
private

Definition at line 164 of file sceneElement.hh.

◆ elementName_

Text* VSI::SceneElement::elementName_
private

Definition at line 181 of file sceneElement.hh.

◆ functions_

QVector<ElementFunction *> VSI::SceneElement::functions_
private

Definition at line 172 of file sceneElement.hh.

◆ id_

int VSI::SceneElement::id_
private

Definition at line 178 of file sceneElement.hh.

◆ inputs_

QVector<ElementInput *> VSI::SceneElement::inputs_
private

Definition at line 166 of file sceneElement.hh.

◆ name_

Text* VSI::SceneElement::name_
private

Definition at line 180 of file sceneElement.hh.

◆ nameLayout_

QGraphicsLinearLayout* VSI::SceneElement::nameLayout_
private

Definition at line 182 of file sceneElement.hh.

◆ outputs_

QVector<ElementOutput *> VSI::SceneElement::outputs_
private

Definition at line 167 of file sceneElement.hh.

◆ scene_

GraphicsScene* VSI::SceneElement::scene_
private

Definition at line 163 of file sceneElement.hh.


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