Implementation Guide for own ROSE-widgets

Utility classes

Model-View classes

Qt provides a powerful Model-View Framework. You should read the documentation for that before looking at the ROSE specific implementations of it:

The following two classes are helper classes for implementing the QAbstractItemModel for a tree like datastructure.

Common base classes for Rose-Widgets


AstBrowserWidget which uses RoseTreeView

Tree and Graph Drawing


Call Graph View

If you are planning to implement widgets which use Tree/Graph drawing on a QGraphicsView the following classes may help you:

Display information for an edge.

used to render a edge, each edge has a source and destination node The nodes notifiy the edge when they have changed position Each edge may have a caption which is printed at the "center" of the edge


Filtering mechanism for AST's which is supported in many ROSE widgets, to display only certain parts of the AST.
For a documentation of the filter interface have a look at the following classes


Autotools scripts

There are script for automatic generation in src/roseExtension/qtWidgets/scripts

cmake build

roseQtWidgets can also be build with cmake. Therefore you have to configure ROSE without Qt, install it and build the qtWidgets and the RoseGUI separatly in the folder src/roseExtension/qtWidgets/cmakeEnvironment

Generated on Tue Sep 15 14:48:47 2009 for RoseQtWidgets by  doxygen 1.4.7