SUIT_Application Class Reference

#include <SUIT_Application.h>

Inheritance diagram for SUIT_Application:

Inheritance graph

Signals

void applicationClosed (SUIT_Application *)
void activated (SUIT_Application *)

Public Member Functions

 SUIT_Application ()
virtual ~SUIT_Application ()
virtual SUIT_Desktopdesktop ()
 Returns main widget (Desktop) of the application (if it exists).
virtual bool isPossibleToClose ()
virtual void closeApplication ()
virtual SUIT_StudyactiveStudy () const
 Returns active Study. If Application supports wirking with several studies this method should be redefined.
virtual QString applicationName () const =0
 Returns Name of application. Using is not defined.
virtual QString applicationVersion () const
virtual void start ()
 Shows the application's main widget. For non GUI application must be redefined.
virtual bool useFile (const QString &theFileName)
 Opens document <theFileName> into active Study. If Study is empty - creates it.
virtual bool useStudy (const QString &theName)
 Loads document <theName> into active Study. If Study is empty - creates it.
virtual void createEmptyStudy ()
 Creates new empty Study if active Study = 0.
virtual int getNbStudies () const
SUIT_ResourceMgrresourceMgr () const
virtual SUIT_ConvertorgetConvertor (const SUIT_ViewModel *theViewer)
void putInfo (const QString &, const int=0)
 Puts the message to the status bar.
virtual QString getFileName (bool open, const QString &initial, const QString &filters, const QString &caption, QWidget *parent)=0
 Invokes application-specific "Open/Save File" dialog and returns the selected file name.
virtual QString getDirectory (const QString &initial, const QString &caption, QWidget *parent)=0
 Invokes application-specific "Select Directory" dialog and returns the selected directory name.

Protected Slots

virtual void onDesktopActivated ()

Protected Member Functions

SUIT_ApplicationstartApplication (int, char **) const
SUIT_ApplicationstartApplication (const QString &, int, char **) const
virtual void setDesktop (SUIT_Desktop *)
virtual SUIT_StudycreateNewStudy ()
 Creates a new Study instance. Must be redefined in new application according to its Study type.
virtual void setActiveStudy (SUIT_Study *)
void setActionShown (QAction *, const bool)
void setActionShown (const int, const bool)
QActionaction (const int) const
int actionId (const QAction *) const
int registerAction (const int, QAction *)
QActioncreateAction (const int, const QString &, const QIconSet &, const QString &, const QString &, const int, QObject *=0, const bool=false, QObject *=0, const char *=0)
Create tool functions
int createTool (const QString &)
int createTool (const int, const int, const int=-1)
int createTool (const int, const QString &, const int=-1)
int createTool (QAction *, const int, const int=-1, const int=-1)
int createTool (QAction *, const QString &, const int=-1, const int=-1)
Create menu functions
int createMenu (const QString &, const int, const int=-1, const int=-1, const int=-1)
int createMenu (const QString &, const QString &, const int=-1, const int=-1, const int=-1)
int createMenu (const int, const int, const int=-1, const int=-1)
int createMenu (const int, const QString &, const int=-1, const int=-1)
int createMenu (QAction *, const int, const int=-1, const int=-1, const int=-1)
int createMenu (QAction *, const QString &, const int=-1, const int=-1, const int=-1)
Set menu shown functions
void setMenuShown (QAction *, const bool)
void setMenuShown (const int, const bool)
Set tool shown functions
void setToolShown (QAction *, const bool)
void setToolShown (const int, const bool)

Static Protected Member Functions

static QActionseparator ()

Private Attributes

SUIT_StudymyStudy
SUIT_DesktopmyDesktop
QMap< int, QAction * > myActionMap
QLabelmyStatusLabel

Detailed Description

An Application is a class which defines application configuration and behaviour. For example Application object defines what Viewers are used in this application, what auxilliary windows are present, how user can dial with them. Also Application object defines an sertain type of data structure by holding of pointer on an instance of SUIT_Study class (which represents Document data structure). In other words Application defines type of sata structure, type of used Viewers, type of main GUI widget (Desktop), and other auxilliary tools.


Constructor & Destructor Documentation

SUIT_Application::SUIT_Application  ) 
 

Default constructor

SUIT_Application::~SUIT_Application  )  [virtual]
 

Destructor


Member Function Documentation

SUIT_Desktop * SUIT_Application::desktop  )  [virtual]
 

Returns:
main window of application (desktop)

bool SUIT_Application::isPossibleToClose  )  [virtual]
 

Returns FALSE if application can not be closed (because of non saved data for example). This method called by SUIT_Session whin closing of application was requested.

Reimplemented in STD_Application.

void SUIT_Application::closeApplication  )  [virtual]
 

Performs some finalization of life cycle of this application. For instance, the application can force its documents(s) to close.

Reimplemented in STD_Application.

SUIT_Study * SUIT_Application::activeStudy  )  const [virtual]
 

Returns:
active Study. If Application supports wirking with several studies this method should be redefined

virtual QString SUIT_Application.applicationName  )  const [pure virtual]
 

Implemented in CAF_Application, LightApp_Application, and STD_Application.

QString SUIT_Application::applicationVersion  )  const [virtual]
 

Returns:
version of application

Reimplemented in LightApp_Application.

void SUIT_Application::start  )  [virtual]
 

Shows the application's main widget. For non GUI application must be redefined.

Reimplemented in CAM_Application, LightApp_Application, SalomeApp_Application, and STD_Application.

bool SUIT_Application::useFile const QString &  theFileName  )  [virtual]
 

Opens document into active Study. If Study is empty - creates it.

Parameters:
theFileName - name of document file

Reimplemented in STD_Application.

bool SUIT_Application::useStudy const QString &  theName  )  [virtual]
 

Opens other study into active Study. If Study is empty - creates it.

Parameters:
theName - name of study

Reimplemented in LightApp_Application.

void SUIT_Application::createEmptyStudy  )  [virtual]
 

Creates new empty Study if active Study = 0

Reimplemented in CAM_Application, LightApp_Application, and STD_Application.

int SUIT_Application::getNbStudies  )  const [virtual]
 

Returns number of Studies. Must be redefined in Applications which support several studies for one Application instance.

SUIT_ResourceMgr * SUIT_Application::resourceMgr  )  const
 

Returns:
global resource manager

virtual SUIT_Convertor* SUIT_Application.getConvertor const SUIT_ViewModel theViewer  )  [virtual]
 

Returns instance of data object Convertor class according to given Viewer. If convertation is not supported returns 0.

void SUIT_Application::putInfo const QString &  msg,
const   int = 0
 

Puts the message to the status bar

Parameters:
msg - text of message
msec - time in milliseconds, after that the status label will be cleared

virtual QString SUIT_Application.getFileName bool  open,
const QString &  initial,
const QString &  filters,
const QString &  caption,
QWidget parent
[pure virtual]
 

Implemented in LightApp_Application, and STD_Application.

virtual QString SUIT_Application.getDirectory const QString &  initial,
const QString &  caption,
QWidget parent
[pure virtual]
 

Implemented in LightApp_Application, and STD_Application.

void SUIT_Application.applicationClosed SUIT_Application  )  [signal]
 

void SUIT_Application.activated SUIT_Application  )  [signal]
 

SUIT_Application * SUIT_Application::startApplication int  argc,
char **  argv
const [protected]
 

Initialize with application arguments

Parameters:
argc - number of application arguments
argv - array of application arguments

SUIT_Application * SUIT_Application::startApplication const QString &  name,
int  argc,
char **  argv
const [protected]
 

Initialize with application name and arguments

Parameters:
name - name of application
argc - number of application arguments
argv - array of application arguments

void SUIT_Application::setDesktop SUIT_Desktop desk  )  [protected, virtual]
 

Sets the main window of application

Parameters:
desk - new main window (desktop)

Reimplemented in STD_Application.

SUIT_Study * SUIT_Application::createNewStudy  )  [protected, virtual]
 

Creates new instance of study. By default, it is called from createEmptyStudy()

See also:
createEmptyStudy()

Reimplemented in CAF_Application, CAM_Application, LightApp_Application, and SalomeApp_Application.

void SUIT_Application::setActiveStudy SUIT_Study study  )  [protected, virtual]
 

Sets study as active

Parameters:
study - instance of study to be set as active

Reimplemented in CAM_Application, and LightApp_Application.

int SUIT_Application::createTool const QString &  name  )  [protected]
 

Creates new toolbar

Returns:
identificator of new toolbar in tool manager
Parameters:
name - name of new toolbar

int SUIT_Application::createTool const   int,
const   int,
const   int = -1
[protected]
 

Creates new toolbutton

Returns:
"id" if all right or -1 otherwise
Parameters:
id - SUIT identificator of action
tBar - identificator of toolbar
idx - index in toolbar

int SUIT_Application::createTool const   int,
const QString &  tBar,
const   int = -1
[protected]
 

Creates new toolbutton

Returns:
"id" if all right or -1 otherwise
Parameters:
id - SUIT identificator of action
tBar - name of toolbar
idx - index in toolbar

int SUIT_Application::createTool QAction a,
const   int,
const   int = -1,
const   int = -1
[protected]
 

Creates new toolbutton

Returns:
SUIT identificator of new action
Parameters:
a - action
tBar - identificator of toolbar
id - proposed SUIT identificator of action (if it is -1, then must be use any free)
idx - index in toolbar

int SUIT_Application::createTool QAction a,
const QString &  tBar,
const   int = -1,
const   int = -1
[protected]
 

Creates new toolbutton

Returns:
SUIT identificator of new action
Parameters:
a - action
tBar - name of toolbar
id - proposed SUIT identificator of action (if it is -1, then must be use any free)
idx - index in toolbar

int SUIT_Application::createMenu const QString &  subMenu,
const   int,
const   int = -1,
const   int = -1,
const   int = -1
[protected]
 

Creates new menu item

Returns:
identificator of new action in menu manager
Parameters:
subMenu - menu text of new item
menu - identificator of parent menu item
id - proposed identificator of action
group - group in menu manager
index - index in menu

int SUIT_Application::createMenu const QString &  subMenu,
const QString &  menu,
const   int = -1,
const   int = -1,
const   int = -1
[protected]
 

Creates new menu item

Returns:
identificator of new action in menu manager
Parameters:
subMenu - menu text of new item
menu - menu text of parent menu item
id - proposed identificator of action
group - group in menu manager
index - index in menu

int SUIT_Application::createMenu const   int,
const   int,
const   int = -1,
const   int = -1
[protected]
 

Creates new menu item

Returns:
identificator of new action in menu manager
Parameters:
id - SUIT identificator of action
menu - menu text of parent menu item
group - group in menu manager
index - index in menu

int SUIT_Application::createMenu const   int,
const QString &  menu,
const   int = -1,
const   int = -1
[protected]
 

Creates new menu item

Returns:
identificator of new action in menu manager
Parameters:
id - SUIT identificator of action
menu - menu text of parent menu item
group - group in menu manager
index - index in menu

int SUIT_Application::createMenu QAction a,
const   int,
const   int = -1,
const   int = -1,
const   int = -1
[protected]
 

Creates new menu item

Returns:
SUIT identificator of new action
Parameters:
a - action
menu - identificator of parent menu item
id - proposed SUIT identificator of action
group - group in menu manager
index - index in menu

int SUIT_Application::createMenu QAction a,
const QString &  menu,
const   int = -1,
const   int = -1,
const   int = -1
[protected]
 

Creates new menu item

Returns:
SUIT identificator of new action
Parameters:
a - action
menu - menu text of parent menu item
id - proposed SUIT identificator of action
group - group in menu manager
index - index in menu

void SUIT_Application::setMenuShown QAction a,
const   bool
[protected]
 

Show/hide menu item corresponding to action

Parameters:
a - action
on - if it is true, the item will be shown, otherwise it will be hidden

void SUIT_Application::setMenuShown const   int,
const   bool
[protected]
 

Show/hide menu item corresponding to action

Parameters:
id - identificator of action in menu manager
on - if it is true, the item will be shown, otherwise it will be hidden

void SUIT_Application::setToolShown QAction a,
const   bool
[protected]
 

Show/hide tool button corresponding to action

Parameters:
a - action
on - if it is true, the button will be shown, otherwise it will be hidden

void SUIT_Application::setToolShown const   int,
const   bool
[protected]
 

Show/hide menu item corresponding to action

Parameters:
id - identificator of action in tool manager
on - if it is true, the button will be shown, otherwise it will be hidden

void SUIT_Application::setActionShown QAction a,
const   bool
[protected]
 

Show/hide both menu item and tool button corresponding to action

Parameters:
a - action
on - if it is true, the item will be shown, otherwise it will be hidden

void SUIT_Application::setActionShown const   int,
const   bool
[protected]
 

Show/hide both menu item and tool button corresponding to action

Parameters:
id - identificator in both menu manager and tool manager
on - if it is true, the item will be shown, otherwise it will be hidden

QAction * SUIT_Application::separator  )  [static, protected]
 

Returns:
global action used as separator

QAction * SUIT_Application::action const   int  )  const [protected]
 

Returns:
action by it's SUIT identificator
Parameters:
id - SUIT identificator

int SUIT_Application::actionId const QAction a  )  const [protected]
 

Returns:
SUIT identificator of action
Parameters:
a - action

int SUIT_Application::registerAction const   int,
QAction a
[protected]
 

Registers action both in menu manager and tool manager

Parameters:
id - proposed SUIT identificator (if it is -1, auto generated one is used)
a - action

QAction * SUIT_Application::createAction const   int,
const QString &  text,
const QIconSet &  icon,
const QString &  menu,
const QString &  tip,
const   int,
QObject parent = 0,
const   bool = false,
QObject reciever = 0,
const char *  member = 0
[protected]
 

Creates action and registers it both in menu manager and tool manager

Returns:
new instance of action
Parameters:
id - proposed SUIT identificator
text - description
icon - icon for toolbar
menu - menu text
tip - tool tip
key - shortcut
parent - parent object
toggle - if it is TRUE the action will be a toggle action, otherwise it will be a command action
reciever - object that contains slot
member - slot to be called when action is activated

void SUIT_Application::onDesktopActivated  )  [protected, virtual, slot]
 

SLOT: it is called when desktop is activated

Reimplemented in LightApp_Application.


Field Documentation

SUIT_Study* SUIT_Application.myStudy [private]
 

SUIT_Desktop* SUIT_Application.myDesktop [private]
 

QMap<int, QAction*> SUIT_Application.myActionMap [private]
 

QLabel* SUIT_Application.myStatusLabel [private]