Version: 6.3.1
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Attributes

SUIT_ViewModel Class Reference

#include <SUIT_ViewModel.h>

Inheritance diagram for SUIT_ViewModel:
Inheritance graph

Public Types

enum  HotOperation { PAN, ZOOM, ROTATE, FIT_AREA }
enum  InteractionStyle { STANDARD, KEY_FREE }
typedef QMap< HotOperation,
Qt::KeyboardModifiers > 
StatesMap
typedef QMap< HotOperation,
Qt::MouseButtons > 
ButtonsMap
typedef QMap< InteractionStyle,
StatesMap
InteractionStyle2StatesMap
typedef QMap< InteractionStyle,
ButtonsMap
InteractionStyle2ButtonsMap

Public Member Functions

 SUIT_ViewModel ()
virtual ~SUIT_ViewModel ()
virtual SUIT_ViewWindowcreateView (SUIT_Desktop *theDesktop)
virtual void setViewManager (SUIT_ViewManager *theViewManager)
SUIT_ViewManagergetViewManager () const
virtual QString getType () const
virtual void contextMenuPopup (QMenu *)

Static Public Member Functions

static void setHotButton (InteractionStyle theInteractionStyle, HotOperation theOper, Qt::KeyboardModifiers theState, Qt::MouseButtons theButton)
static void getHotButton (InteractionStyle theInteractionStyle, HotOperation theOper, Qt::KeyboardModifiers &theState, Qt::MouseButtons &theButton)

Static Public Attributes

static InteractionStyle2StatesMap myStateMap
static InteractionStyle2ButtonsMap myButtonMap

Protected Attributes

SUIT_ViewManagermyViewManager

Detailed Description

This object manages the definition and behaviour of a View Window.
In case of definition of this object in an external lib that lib must
have an exported function "createViewModel" which returns newly created
instance of SUIT_ViewModel.


Member Typedef Documentation

typedef QMap<HotOperation, Qt::KeyboardModifiers> SUIT_ViewModel.StatesMap
typedef QMap<HotOperation, Qt::MouseButtons> SUIT_ViewModel.ButtonsMap

Member Enumeration Documentation

Enumerator:
PAN 
ZOOM 
ROTATE 
FIT_AREA 
Enumerator:
STANDARD 
KEY_FREE 

Constructor & Destructor Documentation

SUIT_ViewModel::SUIT_ViewModel ( )
SUIT_ViewModel::~SUIT_ViewModel ( ) [virtual]

Destructor..


Member Function Documentation

SUIT_ViewWindow * SUIT_ViewModel::createView ( SUIT_Desktop theDesktop) [virtual]

Create new instance of view window on desktop theDesktop.

Return values:
SUIT_ViewWindow*- created view window pointer.

Reimplemented in GLViewer_Viewer2d, LightApp_WgViewModel, OCCViewer_Viewer, Plot2d_Viewer, QxGraph_Viewer, QxScene_Viewer, SPlot2d_Viewer, SUPERVGraph_Viewer, SVTK_Viewer, and VTKViewer_Viewer.

void SUIT_ViewModel::setViewManager ( SUIT_ViewManager theViewManager) [virtual]

Set view manager.

Parameters:
theViewManagerview manager

Reimplemented in GLViewer_Viewer, OCCViewer_Viewer, Plot2d_Viewer, QxScene_Viewer, SVTK_Viewer, and VTKViewer_Viewer.

References myViewManager.

SUIT_ViewManager * SUIT_ViewModel::getViewManager ( ) const

Get view manager.

Returns:
view manager

References myViewManager.

virtual QString SUIT_ViewModel.getType ( ) const [virtual]
virtual void SUIT_ViewModel.contextMenuPopup ( QMenu ) [virtual]
void SUIT_ViewModel::setHotButton ( InteractionStyle  theInteractionStyle,
HotOperation  theOper,
Qt::KeyboardModifiers  theState,
Qt::MouseButtons  theButton 
) [static]

Sets hot button

Parameters:
theOper- hot operation
theState- adding state to state map operations.
theButton- adding state to button map operations.

References myButtonMap, and myStateMap.

void SUIT_ViewModel::getHotButton ( InteractionStyle  theInteractionStyle,
HotOperation  theOper,
Qt::KeyboardModifiers &  theState,
Qt::MouseButtons &  theButton 
) [static]

Gets hot button for operation theOper.

Parameters:
theOper- input hot operation
theState- output state from state map operations.
theButton- output state from button map operations.

References myButtonMap, and myStateMap.


Field Documentation

Copyright © 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS