Overview | Modules | Class Hierarchy | Classes | Members
# tlp::MainController Class Reference `#include <MainController.h>` Inherits tlp::ControllerViewsManager. Inheritance diagram for tlp::MainController: [legend] Collaboration diagram for tlp::MainController: [legend] List of all members. ## Detailed Description Default controller of Tulip. This Controller create a GUI like the old Tulip On left : Property, and hierarchical view In view menu you have access to all view plugins ## Public Slots void editCut () void editCopy () void editPaste () void editFind () void editCreateGroup () void editCreateSubgraph () void editDelSelection () void editReverseSelection () void editSelectAll () void editDeselectAll () ## Public Member Functions MainController () virtual ~MainController () void attachMainWindow (MainWindowFacade facade) void setData (Graph *graph=0, DataSet dataSet=DataSet()) void getData (Graph **graph, DataSet *dataSet) ## Protected Types typedef std::set< tlp::Observable * >::iterator ObserverIterator ## Protected Slots virtual bool changeGraph (Graph *graph) void graphAboutToBeRemove (Graph *graph) virtual bool windowActivated (QWidget *w) virtual bool changeInteractor (QAction *action) void showElementProperties (unsigned int eltId, bool isNode) void showGraphEditor () void showViewEditor () void viewRequestChangeGraph (View *view, Graph *graph) virtual void widgetWillBeClosed (QObject *object) void isAcyclic () void isSimple () void isConnected () void isBiconnected () void isTriconnected () void isTree () void isFreeTree () void isPlanar () void isOuterPlanar () void makeAcyclic () void makeBiconnected () void makeSimple () void makeConnected () void makeDirected () void reverseSelectedEdgeDirection () void changeMetric () void changeString () void changeSizes () void changeColors () void changeInt () void changeSelection () void changeLayout () void applyAlgorithm () void updateUndoRedoInfos () void undo () void redo () ## Protected Member Functions void initializeGraph (Graph *graph) void loadGUI () void buildMenu () View * initMainView (DataSet dataSet) virtual View * createView (const std::string &name, Graph *graph, DataSet dataSet, bool forceWidgetSize=true, const QRect &rect=QRect(0, 0, 0, 0), bool maximized=false) virtual void drawViews (bool init=false) void observableDestroyed (Observable *) void update (ObserverIterator begin, ObserverIterator end) void initObservers () void clearObservers () void addSubGraph (Graph *, Graph *) void delSubGraph (Graph *, Graph *) void addLocalProperty (Graph *, const std::string &) void delLocalProperty (Graph *, const std::string &) void afterSetAttribute (Graph *, const std::string &) void updateCurrentGraphInfos () void afterChangeProperty () GraphState * constructGraphState () void applyMorphing (GraphState *graphState) ## Protected Attributes std::map< View *, int > lastConfigTabIndexOnView Graph * copyCutPasteGraph unsigned int currentGraphNbNodes unsigned int currentGraphNbEdges Graph * graphToReload bool blockUpdate bool inAlgorithm Morphing * morph QDockWidget * tabWidgetDock QDockWidget * configWidgetDock QTabWidget * configWidgetTab SGHierarchyWidget * clusterTreeWidget PropertyDialog * propertiesWidget ElementPropertiesWidget * eltProperties QMenu * editMenu QMenu * algorithmMenu QMenu * viewMenu QMenu * optionsMenu QMenu * graphMenu QAction * forceRatioAction QAction * mapMetricAction QAction * morphingAction QAction * undoAction QAction * redoAction QAction * editUndoAction QAction * editRedoAction QMenu * intMenu QMenu * stringMenu QMenu * sizesMenu QMenu * colorsMenu QMenu * layoutMenu QMenu * metricMenu QMenu * selectMenu QMenu * generalMenu ## Member Typedef Documentation
typedef std::set< tlp::Observable * >::iterator tlp::MainController::ObserverIterator`[protected]`
## Constructor & Destructor Documentation
tlp::MainController::MainController | ( |  | ) |
| Default constructor
virtual tlp::MainController::~MainController | ( |  | ) | `[virtual]`
| Default destructor
## Member Function Documentation
void tlp::MainController::addLocalProperty | ( | Graph * | ,
|  | const std::string & |
| ) | `[protected]`
| Call when a local property is add
void tlp::MainController::addSubGraph | ( | Graph * | ,
|  | Graph * |
| ) | `[protected]`
| Call when a subgraph is add
void tlp::MainController::afterChangeProperty | ( |  | ) | `[protected]`
| Activate undo/redo button, reload propertyWidget and redrawViews after we have change a property
void tlp::MainController::afterSetAttribute | ( | Graph * | ,
|  | const std::string & |
| ) | `[protected]`
| Call when an attribute is set on a graph
void tlp::MainController::applyAlgorithm | ( |  | ) | `[protected, slot]`
void tlp::MainController::applyMorphing | ( | GraphState * | graphState | ) | `[protected]`
| Do a morphing between current state and the given GraphState
void tlp::MainController::attachMainWindow | ( | MainWindowFacade | facade | ) | `[virtual]`
| Attach the QMainWindow to the controller Reimplemented from tlp::ControllerViewsManager.
void tlp::MainController::buildMenu | ( |  | ) | `[protected]`
| Construct main menu
void tlp::MainController::changeColors | ( |  | ) | `[protected, slot]`
virtual bool tlp::MainController::changeGraph | ( | Graph * | graph | ) | `[protected, virtual, slot]`
| Change the graph and load it in left part of the GUI Reimplemented from tlp::ControllerViewsManager.
void tlp::MainController::changeInt | ( |  | ) | `[protected, slot]`
virtual bool tlp::MainController::changeInteractor | ( | QAction * | action | ) | `[protected, virtual, slot]`
| Load the interactor (referenced by the given QAction) in current View Reimplemented from tlp::ControllerViewsManager.
void tlp::MainController::changeLayout | ( |  | ) | `[protected, slot]`
void tlp::MainController::changeMetric | ( |  | ) | `[protected, slot]`
void tlp::MainController::changeSelection | ( |  | ) | `[protected, slot]`
void tlp::MainController::changeSizes | ( |  | ) | `[protected, slot]`
void tlp::MainController::changeString | ( |  | ) | `[protected, slot]`
void tlp::MainController::clearObservers | ( |  | ) | `[protected]`
| Clear all observers
GraphState* tlp::MainController::constructGraphState | ( |  | ) | `[protected]`
| Store current view in a GraphState to use it with applyMorphing function
virtual View* tlp::MainController::createView | ( | const std::string & | name,
|  | Graph * | graph,
|  | DataSet | dataSet,
|  | bool | forceWidgetSize = `true`,
|  | const QRect & | rect = `QRect(0, 0, 0, 0)`,
|  | bool | maximized = `false`
| ) | `[protected, virtual]`
| Create a view with name : name Reimplemented from tlp::ControllerViewsManager.
void tlp::MainController::delLocalProperty | ( | Graph * | ,
|  | const std::string & |
| ) | `[protected]`
| Call when a local property is delete
void tlp::MainController::delSubGraph | ( | Graph * | ,
|  | Graph * |
| ) | `[protected]`
| Call when a subgraph is remove
virtual void tlp::MainController::drawViews | ( | bool | init = `false` | ) | `[protected, virtual]`
| Draw/Init all views Reimplemented from tlp::ControllerViewsManager.
void tlp::MainController::editCopy | ( |  | ) | `[slot]`
void tlp::MainController::editCreateGroup | ( |  | ) | `[slot]`
void tlp::MainController::editCreateSubgraph | ( |  | ) | `[slot]`
void tlp::MainController::editCut | ( |  | ) | `[slot]`
void tlp::MainController::editDelSelection | ( |  | ) | `[slot]`
void tlp::MainController::editDeselectAll | ( |  | ) | `[slot]`
void tlp::MainController::editFind | ( |  | ) | `[slot]`
void tlp::MainController::editPaste | ( |  | ) | `[slot]`
void tlp::MainController::editReverseSelection | ( |  | ) | `[slot]`
void tlp::MainController::editSelectAll | ( |  | ) | `[slot]`
void tlp::MainController::getData | ( | Graph ** | graph,
|  | DataSet * | dataSet
| ) | `[virtual]`
| Return the graph and the dataSet of the controller Implements tlp::Controller.
void tlp::MainController::graphAboutToBeRemove | ( | Graph * | graph | ) | `[protected, slot]`
| Clear observers when a graph is about to be remove
void tlp::MainController::initializeGraph | ( | Graph * | graph | ) | `[protected]`
| Set the default initialization of the graph
View* tlp::MainController::initMainView | ( | DataSet | dataSet | ) | `[protected]`
| Create and init the main view (NodeLinkDiagramComponent)
void tlp::MainController::initObservers | ( |  | ) | `[protected]`
| Init all observers (graph and properties)
void tlp::MainController::isAcyclic | ( |  | ) | `[protected, slot]`
void tlp::MainController::isBiconnected | ( |  | ) | `[protected, slot]`
void tlp::MainController::isConnected | ( |  | ) | `[protected, slot]`
void tlp::MainController::isFreeTree | ( |  | ) | `[protected, slot]`
void tlp::MainController::isOuterPlanar | ( |  | ) | `[protected, slot]`
void tlp::MainController::isPlanar | ( |  | ) | `[protected, slot]`
void tlp::MainController::isSimple | ( |  | ) | `[protected, slot]`
void tlp::MainController::isTree | ( |  | ) | `[protected, slot]`
void tlp::MainController::isTriconnected | ( |  | ) | `[protected, slot]`
void tlp::MainController::loadGUI | ( |  | ) | `[protected]`
| Load the GUI
void tlp::MainController::makeAcyclic | ( |  | ) | `[protected, slot]`
void tlp::MainController::makeBiconnected | ( |  | ) | `[protected, slot]`
void tlp::MainController::makeConnected | ( |  | ) | `[protected, slot]`
void tlp::MainController::makeDirected | ( |  | ) | `[protected, slot]`
void tlp::MainController::makeSimple | ( |  | ) | `[protected, slot]`
void tlp::MainController::observableDestroyed | ( | Observable * |  | ) | `[protected]`
| This function is call when an observable is destroyed
void tlp::MainController::redo | ( |  | ) | `[protected, slot]`
void tlp::MainController::reverseSelectedEdgeDirection | ( |  | ) | `[protected, slot]`
void tlp::MainController::setData | ( | Graph * | graph = `0`,
|  | DataSet | dataSet = `DataSet()`
| ) | `[virtual]`
| Set graph and dataSet to the controller Implements tlp::Controller.
void tlp::MainController::showElementProperties | ( | unsigned int | eltId,
|  | bool | isNode
| ) | `[protected, slot]`
| This slot is call when a view emit elementSelected Show the element in left part of the GUI
void tlp::MainController::showGraphEditor | ( |  | ) | `[protected, slot]`
| This slot is call to ensure the Graph Editor is visible
void tlp::MainController::showViewEditor | ( |  | ) | `[protected, slot]`
| This slot is call to ensure the View Editor is visible
void tlp::MainController::undo | ( |  | ) | `[protected, slot]`
void tlp::MainController::update | ( | ObserverIterator | begin,
|  | ObserverIterator | end
| ) | `[protected]`
| This function is call when an observable is update
void tlp::MainController::updateCurrentGraphInfos | ( |  | ) | `[protected]`
| Call to update number of nodes/edges
void tlp::MainController::updateUndoRedoInfos | ( |  | ) | `[protected, slot]`
void tlp::MainController::viewRequestChangeGraph | ( | View * | view,
|  | Graph * | graph
| ) | `[protected, slot]`
| This slot is call when a view want to change its graph
virtual void tlp::MainController::widgetWillBeClosed | ( | QObject * | object | ) | `[protected, virtual, slot]`
| This slot is call went a view will be closed Reimplemented from tlp::ControllerViewsManager.
virtual bool tlp::MainController::windowActivated | ( | QWidget * | w | ) | `[protected, virtual, slot]`
| This function is call when a view is activated Return true if view can be activated (ie this view exist) Reimplemented from tlp::ControllerViewsManager.
## Member Data Documentation
QMenu* tlp::MainController::algorithmMenu`[protected]`
bool tlp::MainController::blockUpdate`[protected]`
SGHierarchyWidget* tlp::MainController::clusterTreeWidget`[protected]`
QMenu* tlp::MainController::colorsMenu`[protected]`
QDockWidget* tlp::MainController::configWidgetDock`[protected]`
QTabWidget* tlp::MainController::configWidgetTab`[protected]`
Graph* tlp::MainController::copyCutPasteGraph`[protected]`
unsigned int tlp::MainController::currentGraphNbEdges`[protected]`
unsigned int tlp::MainController::currentGraphNbNodes`[protected]`
QMenu* tlp::MainController::editMenu`[protected]`
QAction* tlp::MainController::editRedoAction`[protected]`
QAction* tlp::MainController::editUndoAction`[protected]`
ElementPropertiesWidget* tlp::MainController::eltProperties`[protected]`
QAction* tlp::MainController::forceRatioAction`[protected]`
QMenu* tlp::MainController::generalMenu`[protected]`
QMenu* tlp::MainController::graphMenu`[protected]`
Graph* tlp::MainController::graphToReload`[protected]`
bool tlp::MainController::inAlgorithm`[protected]`
QMenu* tlp::MainController::intMenu`[protected]`
std::map<View *, int> tlp::MainController::lastConfigTabIndexOnView`[protected]`
QMenu* tlp::MainController::layoutMenu`[protected]`
QAction* tlp::MainController::mapMetricAction`[protected]`
QMenu* tlp::MainController::metricMenu`[protected]`
Morphing* tlp::MainController::morph`[protected]`
QAction* tlp::MainController::morphingAction`[protected]`
QMenu* tlp::MainController::optionsMenu`[protected]`
PropertyDialog* tlp::MainController::propertiesWidget`[protected]`
QAction* tlp::MainController::redoAction`[protected]`
QMenu* tlp::MainController::selectMenu`[protected]`
QMenu* tlp::MainController::sizesMenu`[protected]`
QMenu* tlp::MainController::stringMenu`[protected]`
QDockWidget* tlp::MainController::tabWidgetDock`[protected]`
QAction* tlp::MainController::undoAction`[protected]`
QMenu* tlp::MainController::viewMenu`[protected]`

Tulip Software by LaBRI Visualization Team 2001 - 2010