C++ main module for gpm Package
1.0
|
this class describes a Rule Graphs Draw Panel. More...
#include <GPMG_RuleGraphDrawPanel.h>
Public Member Functions | |
void | showRule (GPM_ModelFunction &function) |
show the rule More... | |
void | clearGraphs () |
clear the graphs of the rules More... | |
virtual tFlag | getGraphType (const GPM_Graph *graph) const |
return the graph type of the graph More... | |
virtual void | createPopupMenus () |
create popup menus More... | |
virtual void | popupMenuClicked (const tString &name, const int &x, const int &y) |
method called when ab item of a popup menu is clicked on component More... | |
virtual GUI_AlonePopupMenu * | getPopupMenu (const int &x, const int &y, GUI2D_Item *item) |
get the popup menu More... | |
virtual void | loadFromUIClass (const UI_Class &mclass) |
how to load the object from a Meta Model class More... | |
virtual void | saveToUIClass (UI_Class &mclass) const |
how to save the object from a mate model class More... | |
virtual void | toDoAfterThisSetting () |
method called after thi ssetting More... | |
void | setIsReadOnly (const tBoolean &isReadOnly) |
set is read only More... | |
void | setAreNodesShown (const tBoolean &v) |
set if the nodes are shown More... | |
void | setArePortsShown (const tBoolean &v) |
set if the ports are shown More... | |
void | setAreEdgesShown (const tBoolean &v) |
set if the edges are shown More... | |
virtual void | setIsMovingEnabled (const tBoolean &v) |
set zoom selection enabled More... | |
void | setSelectedVertex (SP::GPM_Vertex obj) |
set the selected vertex More... | |
void | setSelectedEdge (SP::GPM_Edge obj) |
set the selected edge More... | |
void | resetSelectedVertex () |
reset the selected vertex object More... | |
void | resetSelectedEdge () |
reset the selected edge object More... | |
void | setVertexSize (const int &v) |
set the vertex size More... | |
void | setEdgeWidth (const int &v) |
set the vertex width More... | |
void | setNodeVariableNameToShow (const tString &name) |
set node variable name to show More... | |
void | setPortVariableNameToShow (const tString &name) |
set port variable name to show More... | |
void | setEdgeVariableNameToShow (const tString &name) |
set edge variable name to show More... | |
void | setAreObjectsClickabled (const tBoolean &v) |
set if the object are clickabled More... | |
tString | getNodeStateNameToShow () const |
get the node state to show More... | |
tString | getPortStateNameToShow () const |
get the port state to show More... | |
tString | getEdgeStateNameToShow () const |
get the port state to show More... | |
SP::CORE_Object | getPopupObject () |
get the popup object More... | |
int | getToNodeEdgeMenuIndex () const |
get the index of the menu item More... | |
int | getToPortEdgeMenuIndex () const |
get the index of the menu item More... | |
int | getEdgeMenuIndex () const |
get the index of the menu item More... | |
int | getTau () const |
get Tau More... | |
int | getEdgeWidth () const |
get edge width More... | |
void | getProjection (tFlag &projX, tFlag &projY) const |
get project More... | |
CORE_Color & | getSelectedObjectColor () const |
get the selected object color More... | |
GPM_Vertex * | getSelectedVertex () const |
get the selected vertex object More... | |
GPM_Edge * | getSelectedEdge () const |
get the selected edge object More... | |
tBoolean | isReadOnly () const |
return true if the read only mode is on More... | |
tBoolean | areNodesShown () const |
get if the nodes are shown More... | |
tBoolean | arePortsShown () const |
get if the ports are shown More... | |
tBoolean | areEdgesShown () const |
get if the edges are shown More... | |
Static Public Member Functions | |
static SP::GPMG_RuleGraphDrawPanel | New () |
create a 2D plotter panel More... | |
Protected Member Functions | |
GPMG_RuleGraphDrawPanel () | |
build a GPMG_RuleGraphDrawPanel More... | |
virtual | ~GPMG_RuleGraphDrawPanel (void) |
destroy a GPMG_RuleGraphDrawPanel More... | |
virtual void | initAttributes () |
init attributes of the draw panel More... | |
virtual void | objectIsClickedOn (SP::CORE_Object item) |
method called when the object is double clicked on More... | |
virtual tBoolean | paintElements () |
paint the element in the drawing area More... | |
virtual void | computeVertexBounds (double &xMin, double &yMin, double &xMax, double &yMax) const |
recompute the vertex bounds More... | |
virtual void | computeNodesScale () |
compute the node scale More... | |
virtual void | computePortsScale () |
compute the port scale More... | |
virtual void | computeEdgesScale () |
compute the edge scale More... | |
virtual SP::GPM_Edge | addEdge (SP::GPM_Vertex source, SP::GPM_Vertex target) |
add edge between vertices source & target More... | |
virtual void | deleteEdge (GPM_Edge &edge) |
delete an edge More... | |
virtual void | deleteVertex (GPM_Vertex &vertex) |
delete a vertex More... | |
virtual void | computeBoundingBox (GUI2D_Box &box) const |
compute the bounding box of the object to see More... | |
virtual void | mouseHasChanged (SP::GUI_Mouse mouse) |
method called when the mouse changed More... | |
void | computeNodesScale (GPM_PortGraph &graph, double &minValue, double &maxValue) |
compute the node scale More... | |
void | computePortsScale (GPM_PortGraph &graph, double &minValue, double &maxValue) |
compute the port scale More... | |
void | computeEdgesScale (GPM_PortGraph &graph, double &minValue, double &maxValue) |
compute the edges scale More... | |
virtual void | objectIsMovedTo (SP::CORE_Object item, const tReal &x, const tReal &y) |
method called when the object is moved to More... | |
void | getCoordinates (const GPM_PortGraph &graph, GPM_Vertex &vertex, tReal &x, tReal &y) |
get the coordinates of the vertex from graph in (x,y) More... | |
void | drawVertex (GPM_Node &node, const CORE_Color &color, const tString &label, const tReal &Cx, const tReal &Cy, const tReal &w, const tReal &h) |
draw a node with color & label at (Cx,Cy) with size (w,h) More... | |
void | drawVertex (GPM_Port &port, const CORE_Color &color, const tString &label, const tReal &Cx, const tReal &Cy, const tReal &w, const tReal &h) |
draw a port with color & label at (Cx,Cy) with size (w,h) More... | |
void | drawEdge (GPM_Edge *edge, const CORE_Color &color, const tString &label, const tReal &Sx, const tReal &Sy, const tReal &Tx, const tReal &Ty, const tReal &width) |
draw an edge with color & label from (Sx,Sy)->(Tx,Ty) More... | |
SP::GPM_Vertex | addPort (const tReal &x, const tReal &y, GPM_PortGraph &graph) |
add port in graph More... | |
SP::GPM_Vertex | addNode (const tReal &x, const tReal &y, GPM_PortGraph &graph) |
add port in graph More... | |
void | addEdgeToPort (SP::GPM_Vertex source, SP::GPM_Port target) |
draw an edge between source & target vertices from graph More... | |
void | addEdgeToNode (SP::GPM_Vertex source, SP::GPM_Node target) |
draw an edge between source & target vertices from graph More... | |
Static Protected Attributes | |
static const tFlag | X =0 |
static const tFlag | Y =1 |
static const tFlag | Z =2 |
static const tFlag | NODE_COLOR_SCALE =0 |
static const tFlag | PORT_COLOR_SCALE =1 |
static const tFlag | EDGE_COLOR_SCALE =2 |
this class describes a Rule Graphs Draw Panel.
It draws data
|
protected |
|
protectedvirtual |
destroy a GPMG_RuleGraphDrawPanel
|
protectedvirtual |
add edge between vertices source & target
Reimplemented from GPMG_DrawPanel.
References GPMG_DrawPanel::addEdge(), GPMG_DrawPanel::deleteEdge(), GPMG_Project::EDGE_ENVIRONMENT, GPMG_Project::getEnvironment(), GPM_Graph::newEdge(), and null.
|
protectedinherited |
draw an edge between source & target vertices from graph
References GPM_Graph::addEdge(), GPMG_DrawPanel::addEdge(), GPM_PortGraph::addPort(), GPMG_Project::EDGE_ENVIRONMENT, GPM_Graph::getEdge(), GPMG_Project::getEnvironment(), GPM_Graph::getVertex(), GPM_Graph::getVertexIID(), null, GPM_Graph::NULL_VERTEX, and GPMG_Project::PORT_ENVIRONMENT.
Referenced by GPMG_DrawPanel::mouseHasChanged().
|
protectedinherited |
draw an edge between source & target vertices from graph
References GPMG_DrawPanel::addEdge().
Referenced by GPMG_DrawPanel::mouseHasChanged().
|
protectedinherited |
add port in graph
graph | : the graph to add the vertex |
References GPM_Graph::addNode(), GPMG_Project::getEnvironment(), GPM_Graph::getVertex(), GPMG_Project::NODE_ENVIRONMENT, GPM_Graph::NULL_VERTEX, tReal, and GPMG_DrawPanel::X.
Referenced by GPMG_DrawPanel::mouseHasChanged(), GPMG_ShowGraphDrawPanel::popupMenuClicked(), and popupMenuClicked().
|
protectedinherited |
add port in graph
graph | : the graph to add the vertex |
References GPM_PortGraph::addPort(), GPMG_Project::getEnvironment(), GPM_Graph::getVertex(), GPM_Graph::NULL_VERTEX, GPMG_Project::PORT_ENVIRONMENT, tReal, and GPMG_DrawPanel::X.
Referenced by GPMG_DrawPanel::mouseHasChanged(), GPMG_ShowGraphDrawPanel::popupMenuClicked(), and popupMenuClicked().
|
inlineinherited |
get if the edges are shown
|
inlineinherited |
get if the nodes are shown
|
inlineinherited |
get if the ports are shown
void GPMG_RuleGraphDrawPanel::clearGraphs | ( | ) |
clear the graphs of the rules
References null.
Referenced by GPMG_RuleGraphPanel::clearGraphs().
|
protectedvirtualinherited |
compute the bounding box of the object to see
box | the bounding box of the object to see |
References GPMG_DrawPanel::computeVertexBounds().
|
inlineprotectedvirtual |
compute the edge scale
Implements GPMG_DrawPanel.
References GPMG_DrawPanel::computeEdgesScale(), and REAL_INFINITY.
Referenced by showRule().
|
protectedinherited |
compute the edges scale
References GPMG_DrawPanel::EDGE_COLOR_SCALE, GPM_Graph::getEdges(), GPM_GraphElement::getVariableValue(), null, and tString.
|
inlineprotectedvirtual |
compute the node scale
Implements GPMG_DrawPanel.
References GPMG_DrawPanel::computeNodesScale(), and REAL_INFINITY.
Referenced by showRule().
|
protectedinherited |
compute the node scale
References GPM_GraphElement::getVariableValue(), GPM_Graph::getVertices(), GPMG_DrawPanel::NODE_COLOR_SCALE, and null.
|
inlineprotectedvirtual |
compute the port scale
Implements GPMG_DrawPanel.
References GPMG_DrawPanel::computePortsScale(), and REAL_INFINITY.
Referenced by showRule().
|
protectedinherited |
compute the port scale
References GPM_GraphElement::getVariableValue(), GPM_Graph::getVertices(), null, and GPMG_DrawPanel::PORT_COLOR_SCALE.
|
protectedvirtual |
recompute the vertex bounds
Implements GPMG_DrawPanel.
References GPM_Vertex::getCoordinates(), GPMG_DrawPanel::getProjection(), GPM_Graph::getVertices(), null, REAL_INFINITY, GPM_GraphElement::setGraph(), tFlag, tReal, and GPMG_DrawPanel::X.
|
virtual |
create popup menus
Reimplemented from GPMG_DrawPanel.
References GPMG_DrawPanel::createPopupMenus().
|
protectedvirtual |
delete an edge
Reimplemented from GPMG_DrawPanel.
References GPMG_DrawPanel::deleteEdge(), GPM_GraphElement::getGraph(), GPM_Edge::getSource(), GPM_Edge::getTarget(), and null.
|
protectedvirtual |
delete a vertex
Reimplemented from GPMG_DrawPanel.
References GPMG_DrawPanel::deleteVertex(), GPM_GraphElement::getGraph(), and GPM_GraphElement::getId().
|
protectedinherited |
draw an edge with color & label from (Sx,Sy)->(Tx,Ty)
References tReal.
|
protectedinherited |
draw a node with color & label at (Cx,Cy) with size (w,h)
|
protectedinherited |
draw a port with color & label at (Cx,Cy) with size (w,h)
|
protectedinherited |
get the coordinates of the vertex from graph in (x,y)
References GPM_Port::areCoordinatesComputedByDefault(), GPM_PortGraph::getConnectedNodesToPort(), GPM_Vertex::getCoordinates(), GPM_GraphElement::getId(), GPM_Graph::getVertex(), GPM_Graph::getVertexIID(), null, GPM_Graph::NULL_VERTEX, GPM_Vertex::setCoordinates(), and tReal.
|
inlineinherited |
get the index of the menu item
|
inlineinherited |
get the port state to show
Referenced by GPMG_MovieGraphDrawPanel::computeEdgesScale().
|
inlineinherited |
get edge width
return the graph type of the graph
Implements GPMG_DrawPanel.
References GPMG_Project::PATTERN_GRAPH, GPMG_Project::PT_CONNECTION, and GPMG_Project::TRANSFORMER_GRAPH.
Referenced by objectIsClickedOn(), and popupMenuClicked().
|
inlineinherited |
get the node state to show
Referenced by GPMG_MovieGraphDrawPanel::computeNodesScale().
|
virtual |
get the popup menu
Reimplemented from GPMG_DrawPanel.
References GPM_Graph::getEdgeIID(), GPM_GraphElement::getGraph(), GPM_GraphElement::getId(), GPMG_DrawPanel::getPopupMenu(), GPM_Graph::getVertexIID(), null, and GPM_Graph::NULL_VERTEX.
|
inlineinherited |
|
inlineinherited |
get the port state to show
Referenced by GPMG_MovieGraphDrawPanel::computePortsScale().
get project
Referenced by GPMG_ShowGraphDrawPanel::computeVertexBounds(), computeVertexBounds(), GPMG_MovieGraphDrawPanel::computeVertexBounds(), GPMG_ShowGraphDrawPanel::popupMenuClicked(), GPMG_ShowGraphDrawPanel::showGraph(), and showRule().
|
inlineinherited |
get the selected edge object
|
inlineinherited |
get the selected object color
|
inlineinherited |
get the selected vertex object
|
inlineinherited |
get Tau
|
inlineinherited |
get the index of the menu item
Referenced by GPMG_ShowGraphDrawPanel::getPopupMenu().
|
inlineinherited |
get the index of the menu item
Referenced by GPMG_ShowGraphDrawPanel::getPopupMenu().
|
protectedvirtual |
init attributes of the draw panel
Reimplemented from GPMG_DrawPanel.
References GPMG_DrawPanel::initAttributes(), and CORE_Color::New().
|
inlineinherited |
return true if the read only mode is on
Referenced by GPMG_DrawPanel::initAttributes(), objectIsClickedOn(), GPMG_DrawPanel::objectIsClickedOn(), popupMenuClicked(), GPMG_DrawPanel::popupMenuClicked(), GPMG_DrawPanel::setIsMovingEnabled(), and GPMG_DrawPanel::setIsReadOnly().
|
virtual |
how to load the object from a Meta Model class
Reimplemented from GPMG_DrawPanel.
References GPMG_DrawPanel::loadFromUIClass(), and tString.
|
protectedvirtualinherited |
method called when the mouse changed
References GPMG_DrawPanel::addEdge(), GPMG_DrawPanel::addEdgeToNode(), GPMG_DrawPanel::addEdgeToPort(), GPMG_DrawPanel::addNode(), GPMG_DrawPanel::addPort(), and null.
|
inlinestatic |
create a 2D plotter panel
References GPMG_RuleGraphDrawPanel().
Referenced by GPMG_RuleGraphPanel::NewGraphDrawPanel().
|
protectedvirtual |
method called when the object is double clicked on
Reimplemented from GPMG_DrawPanel.
References getGraphType(), GPMG_DrawPanel::isReadOnly(), null, GPMG_MainWindow::showEdge(), and GPMG_MainWindow::showVertex().
|
protectedvirtualinherited |
method called when the object is moved to
References null, GPM_Vertex::setCoordinates(), and tReal.
|
protectedvirtual |
paint the element in the drawing area
Reimplemented from GPMG_DrawPanel.
References GPMG_Application::getRuleGraphColors(), GPMG_DrawPanel::paintElements(), and tString.
|
virtual |
method called when ab item of a popup menu is clicked on component
Reimplemented from GPMG_DrawPanel.
References GPMG_DrawPanel::addNode(), GPMG_DrawPanel::addPort(), getGraphType(), GPMG_DrawPanel::getPopupObject(), GPMG_DrawPanel::isReadOnly(), null, GPMG_DrawPanel::popupMenuClicked(), GPMG_MainWindow::showEdge(), and GPMG_MainWindow::showVertex().
|
inlineinherited |
reset the selected edge object
References GPMG_DrawPanel::computeEdgesScale().
|
inlineinherited |
reset the selected vertex object
References GPMG_DrawPanel::computeNodesScale(), and GPMG_DrawPanel::computePortsScale().
|
virtual |
how to save the object from a mate model class
Reimplemented from GPMG_DrawPanel.
References GPMG_DrawPanel::saveToUIClass().
|
inlineinherited |
set if the edges are shown
|
inlineinherited |
set if the nodes are shown
|
inlineinherited |
set if the object are clickabled
Referenced by GPMG_MovieGraphDrawPanel::initAttributes().
|
inlineinherited |
set if the ports are shown
|
inlineinherited |
set edge variable name to show
References GPMG_DrawPanel::computeEdgesScale().
|
inlineinherited |
set the vertex width
|
virtualinherited |
set zoom selection enabled
References GPMG_DrawPanel::isReadOnly(), null, GPMG_GraphPanel::setIsReadOnly(), and GPMG_DrawPanel::setIsReadOnly().
|
inherited |
set is read only
References GPMG_DrawPanel::isReadOnly(), null, GPMG_GraphWindowInterface::setIsMovingEnabled(), and tBoolean.
Referenced by GPMG_DrawPanel::setIsMovingEnabled().
|
inlineinherited |
set node variable name to show
References GPMG_DrawPanel::computeNodesScale().
|
inlineinherited |
set port variable name to show
References GPMG_DrawPanel::computePortsScale().
|
inlineinherited |
set the selected edge
|
inlineinherited |
set the selected vertex
|
inlineinherited |
set the vertex size
void GPMG_RuleGraphDrawPanel::showRule | ( | GPM_ModelFunction & | function | ) |
show the rule
References computeEdgesScale(), computeNodesScale(), computePortsScale(), GPM_Graph::getEdges(), GPMG_DrawPanel::getProjection(), CORE_Object::getSharedPointer(), GPM_Graph::getVertices(), null, GPM_GraphElement::setGraph(), tFlag, GPMG_DrawPanel::X, GPMG_DrawPanel::Y, and GPMG_DrawPanel::Z.
Referenced by GPMG_RuleGraphPanel::showRule().
|
inlinevirtualinherited |
method called after thi ssetting
Reimplemented in GPMG_MovieGraphDrawPanel, and GPMG_ShowGraphDrawPanel.
References GPMG_DrawPanel::createPopupMenus(), and GPMG_DrawPanel::initAttributes().
Referenced by GPMG_ShowGraphDrawPanel::toDoAfterThisSetting(), and GPMG_MovieGraphDrawPanel::toDoAfterThisSetting().
|
staticprotectedinherited |
|
staticprotectedinherited |
|
staticprotectedinherited |
|
staticprotectedinherited |
|
staticprotectedinherited |
Referenced by GPMG_DrawPanel::initAttributes(), GPMG_ShowGraphDrawPanel::showGraph(), and showRule().
|
staticprotectedinherited |
Referenced by GPMG_ShowGraphDrawPanel::showGraph(), and showRule().