itom  3.0.0
ito::AbstractFigure Class Referenceabstract
Inheritance diagram for ito::AbstractFigure:
ito::AbstractNode ito::AbstractDObjFigure ito::AbstractDObjPclFigure

Classes

struct  ToolBarItem
 
struct  ToolboxItem
 

Public Types

enum  WindowMode { ModeInItomFigure, ModeStandaloneInUi, ModeStandaloneWindow }
 
enum  CompilerFeatures { tOpenCV = 0x01, tPointCloudLib = 0x02 }
 
enum  tChildPlotStates {
  tNoChildPlot = 0x00, tExternChild = 0x01, tOwnChild = 0x02, tUninitilizedExtern = 0x10,
  tVisibleOnInit = 0x20
}
 
enum  UnitLabelStyle { UnitLabelSlash, UnitLabelKeywordIn, UnitLabelSquareBrackets }
 

Public Slots

int getPlotID ()
 
void refreshPlot ()
 

Public Member Functions

int getCompilerFeatures (void) const
 
 AbstractFigure (const QString &itomSettingsFile, WindowMode windowMode=ModeStandaloneInUi, QWidget *parent=0)
 
virtual bool event (QEvent *e)
 
void setApiFunctionGraphBasePtr (void **apiFunctionGraphBasePtr)
 
void setApiFunctionBasePtr (void **apiFunctionBasePtr)
 
void ** getApiFunctionGraphBasePtr (void)
 
void ** getApiFunctionBasePtr (void)
 
virtual RetVal addChannel (AbstractNode *child, ito::Param *parentParam, ito::Param *childParam, Channel::ChanDirection direction, bool deleteOnParentDisconnect, bool deleteOnChildDisconnect)
 
virtual RetVal addChannel (Channel *newChannel)
 
virtual RetVal removeChannelFromList (unsigned int uniqueID)
 
virtual RetVal removeChannel (Channel *delChannel)
 
virtual RetVal update (void)=0
 
virtual void setToolbarVisible (bool visible)
 
virtual bool getToolbarVisible () const
 
virtual void setContextMenuEnabled (bool show)=0
 
virtual bool getContextMenuEnabled () const =0
 
QDockWidget * getPropertyDockWidget () const
 
virtual bool getLegendRender () const
 
virtual void setLegendRender (const bool val)
 
QList< QMenu * > getMenus () const
 
QList< AbstractFigure::ToolBarItemgetToolbars () const
 
QList< AbstractFigure::ToolboxItemgetToolboxes () const
 
- Public Member Functions inherited from ito::AbstractNode
virtual RetVal applyUpdate (void)=0
 
RetVal updateParam (const ito::ParamBase *input, int isSource=0)
 
RetVal updateParam (const QHash< QString, ito::ParamBase * > *inputs)
 

this function must ONLY be used for the root of a tree. Sets several input parameters at once

More...
 
rttiNodeType getType () const
 
RetVal getUpdateStatus (void) const
 
RetVal updateChannels (const QList< QString > &paramNames)
 
bool isConnected () const
 
int getUniqueID (void) const
 
RetVal setUpdatePending (int uniqueID=-1)
 
ChannelgetInputChannel (const char *inpParamName) const
 
ito::ParamgetInputParam (const QString &paramName) const
 
ito::ParamgetOutputParam (const QString &paramName) const
 

Protected Member Functions

virtual RetVal init ()
 
virtual void importItomApi (void **apiPtr)=0
 
virtual void importItomApiGraph (void **apiPtr)=0
 
void addToolBar (QToolBar *toolbar, const QString &key, Qt::ToolBarArea area=Qt::TopToolBarArea, int section=1)
 
void addToolBarBreak (const QString &key, Qt::ToolBarArea area=Qt::TopToolBarArea)
 
void addToolbox (QDockWidget *toolbox, const QString &key, Qt::DockWidgetArea area=Qt::RightDockWidgetArea)
 
bool removeToolbox (const QString &key)
 
void showToolBar (const QString &key)
 
void hideToolBar (const QString &key)
 
void addMenu (QMenu *menu)
 
void updatePropertyDock ()
 
void setPropertyObservedObject (QObject *obj)
 
RetVal initialize ()
 
RetVal registerShortcutActions ()
 

Protected Attributes

WindowMode m_windowMode
 
QString m_itomSettingsFile
 
QWidget * m_mainParent
 
void ** m_apiFunctionsGraphBasePtr
 
void ** m_apiFunctionsBasePtr
 
ito::uint8 m_lineCutType
 
ito::uint8 m_zSliceType
 
ito::uint8 m_zoomCutType
 
- Protected Attributes inherited from ito::AbstractNode
rttiNodeType m_NodeType
 
QHash< QString, ito::Param * > m_pInput
 

the type of the actual node inheriting this abstract node


 
QHash< QString, ito::Param * > m_pOutput
 

the node's input parameters


 
QHash< unsigned int, Channel * > m_pChannels
 

the node's output parameters


 
int m_uniqueID
 >
 

Properties

bool toolbarVisible
 
bool contextMenuEnabled
 
bool renderLegend
 

Private Slots

void mnuShowToolbar (bool)
 
void mnuShowProperties (bool checked)
 
void toolBoxDestroyed (QObject *object)
 
void toolBarDestroyed (QObject *object)
 
void actionChanged ()
 

Private Attributes

AbstractFigurePrivated
 

Additional Inherited Members

- Static Protected Attributes inherited from ito::AbstractNode
static unsigned int UID = 1
 

Member Function Documentation

RetVal ito::AbstractFigure::addChannel ( AbstractNode child,
ito::Param parentParam,
ito::Param childParam,
Channel::ChanDirection  direction,
bool  deleteOnParentDisconnect,
bool  deleteOnChildDisconnect 
)
virtual

the addChannel and especially removeChannel are virtual since the Node might have to delete itself depending on the deleteOnDisconnect flag. As delete(this) is frowned upon, we need QObject::deleteLater() unavailable here as the class is not derived from QObject

Implements ito::AbstractNode.

void ito::AbstractFigure::addMenu ( QMenu *  menu)
protected

append a menu to the figure. AbstractFigure then takes care about the menu. Only use this method to add menus since the menu bar of figures is differently handled depending on the window mode of the figure.

void ito::AbstractFigure::addToolBar ( QToolBar *  toolbar,
const QString &  key,
Qt::ToolBarArea  area = Qt::TopToolBarArea,
int  section = 1 
)
protected

Register any toolbar of the plot widget using this method.

void ito::AbstractFigure::addToolBarBreak ( const QString &  key,
Qt::ToolBarArea  area = Qt::TopToolBarArea 
)
protected

Add a toolbar break, hence a new line for the following toolbars to the indicated area.

void ito::AbstractFigure::addToolbox ( QDockWidget *  toolbox,
const QString &  key,
Qt::DockWidgetArea  area = Qt::RightDockWidgetArea 
)
protected

Every plot widget is automatically equipped with a property toolbox. If you want to add further toolboxes (dock widgets), register and append them using this method.

void ito::AbstractFigure::hideToolBar ( const QString &  key)
protected

hide a toolbar with given key. This toolbar must first be registered using addToolBar.

virtual void ito::AbstractFigure::importItomApi ( void **  apiPtr)
protectedpure virtual

function to provide access to the itom API functions. this methods are implemented in the plugin itsself. Therefore put the macro DESIGNER_PLUGIN_ITOM_API before the public section in the designer plugin class.

virtual void ito::AbstractFigure::importItomApiGraph ( void **  apiPtr)
protectedpure virtual

function to provide access to the itom API functions. this methods are implemented in the plugin itsself. Therefore put the macro DESIGNER_PLUGIN_ITOM_API before the public section in the designer plugin class.

void ito::AbstractFigure::mnuShowProperties ( bool  checked)
privateslot

set the visibility of the property toolbox

void ito::AbstractFigure::mnuShowToolbar ( bool  )
inlineprivateslot

shows all registered toolbars

RetVal ito::AbstractFigure::registerShortcutActions ( )
protected

call this method once after all actions with shortcuts are created and after that the content widget has been created. The shortcuts of the actions will then be redirected to overall shortcuts that can be handled even if the plot is docked into the main window of itom

bool ito::AbstractFigure::removeToolbox ( const QString &  key)
protected

If you added further toolboxes (dock widgets), remove them using this method.

void ito::AbstractFigure::setPropertyObservedObject ( QObject *  obj)
protected

registeres obj for a property observation of the property toolbox. All readable properties are then listed in the property toolbox.

void ito::AbstractFigure::setToolbarVisible ( bool  visible)
virtual

Calls apply () and updates all children

void ito::AbstractFigure::showToolBar ( const QString &  key)
protected

show a toolbar with given key. This toolbar must first be registered using addToolBar.

virtual RetVal ito::AbstractFigure::update ( void  )
pure virtual

Performs the in INTERNAL operations necessary in updating the node and displaying the data. This has to implemented

in each final successor in the inheritance structure. Anyway the "displayed" parameter MUST be filled adequately as this can only be done by the node itself.

Implements ito::AbstractNode.

Implemented in ito::AbstractDObjPclFigure, and ito::AbstractDObjFigure.

void ito::AbstractFigure::updatePropertyDock ( )
protected

call this method if any property of the figure changed such that the property toolbox is synchronized and updated.


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