CAM_Application Class Reference

#include <CAM_Application.h>

Inheritance diagram for CAM_Application:

Inheritance graph

Activate module group.

virtual bool activateModule (const QString &)
virtual bool activateModule (CAM_Module *=0)

Public Types

typedef QPtrList< CAM_ModuleModuleList
typedef QPtrListIterator<
CAM_Module
ModuleListIterator

Public Slots

virtual void onNewDoc ()
virtual void onCloseDoc (bool ask=true)
virtual void onSaveDoc ()
virtual bool onSaveAsDoc ()
virtual void onOpenDoc ()
virtual bool onOpenDoc (const QString &)
virtual void onLoadDoc ()
virtual bool onLoadDoc (const QString &)
virtual void onExit ()
virtual void onCopy ()
virtual void onPaste ()
virtual void onViewStatusBar (bool)
virtual void onHelpAbout ()
virtual void onDesktopClosing (SUIT_Desktop *, QCloseEvent *)
virtual void onConnectPopupRequest (SUIT_PopupClient *, QContextMenuEvent *)

Signals

void viewManagerAdded (SUIT_ViewManager *)
void viewManagerRemoved (SUIT_ViewManager *)
void viewManagerActivated (SUIT_ViewManager *)
void applicationClosed (SUIT_Application *)
void activated (SUIT_Application *)

Public Member Functions

 CAM_Application (const bool=true)
virtual ~CAM_Application ()
virtual void start ()
CAM_ModuleactiveModule () const
CAM_Modulemodule (const QString &) const
virtual void addModule (CAM_Module *)
virtual void loadModules ()
virtual CAM_ModuleloadModule (const QString &)
virtual void contextMenuPopup (const QString &, QPopupMenu *, QString &)
QString moduleName (const QString &) const
QString moduleTitle (const QString &) const
virtual void createEmptyStudy ()
virtual QString applicationName () const
virtual bool isPossibleToClose ()
virtual bool useFile (const QString &)
void setEditEnabled (const bool)
bool isEditEnabled () const
void clearViewManagers ()
virtual void addViewManager (SUIT_ViewManager *)
virtual void removeViewManager (SUIT_ViewManager *)
SUIT_ViewManageractiveViewManager () const
SUIT_ViewManagerviewManager (const QString &) const
bool containsViewManager (SUIT_ViewManager *) const
ViewManagerList viewManagers () const
void viewManagers (ViewManagerList &) const
void viewManagers (const QString &, ViewManagerList &) const
virtual QString getFileFilter () const
virtual QString getFileName (bool open, const QString &initial, const QString &filters, const QString &caption, QWidget *parent)
QString getDirectory (const QString &initial, const QString &caption, QWidget *parent)
virtual void closeApplication ()
virtual SUIT_Desktopdesktop ()
 Returns main widget (Desktop) of the application (if it exists).
virtual SUIT_StudyactiveStudy () const
 Returns active Study. If Application supports wirking with several studies this method should be redefined.
virtual QString applicationVersion () const
virtual bool useStudy (const QString &theName)
 Loads document <theName> into active Study. If Study is empty - creates it.
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.
Modules lists.
ModuleListIterator modules () const
void modules (ModuleList &) const
void modules (QStringList &, const bool loaded=true) const

Protected Types

enum  { MenuFileId = 1, MenuViewId = 2, MenuEditId = 3, MenuHelpId = 7 }
enum  {
  FileNewId, FileOpenId, FileLoadId, FileCloseId,
  FileSaveId, FileSaveAsId, FileExitId, ViewStatusBarId,
  ViewWindowsId, NewWindowId, EditCutId, EditCopyId,
  EditPasteId, HelpAboutId, UserID
}

Protected Slots

virtual void onDesktopActivated ()

Protected Member Functions

virtual SUIT_StudycreateNewStudy ()
virtual void updateCommandsStatus ()
virtual void moduleAdded (CAM_Module *)
virtual void beforeCloseDoc (SUIT_Study *)
virtual void setActiveStudy (SUIT_Study *)
QString moduleLibrary (const QString &, const bool=true) const
virtual void createActions ()
virtual void updateDesktopTitle ()
virtual void setDesktop (SUIT_Desktop *)
virtual void loadPreferences ()
virtual void savePreferences ()
virtual void studySaved (SUIT_Study *)
virtual void studyOpened (SUIT_Study *)
virtual void studyCreated (SUIT_Study *)
virtual void afterCloseDoc ()
virtual void setActiveViewManager (SUIT_ViewManager *)
SUIT_ApplicationstartApplication (int, char **) const
SUIT_ApplicationstartApplication (const QString &, int, char **) const
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 Types

typedef QValueList< ModuleInfoModuleInfoList

Private Member Functions

void readModuleList ()

Private Attributes

CAM_ModulemyModule
ModuleList myModules
ModuleInfoList myInfoList
bool myAutoLoad

Data Structures

struct  ModuleInfo

Detailed Description

Defines application configuration and behaviour for application with modules. Every module has own data model, necessary windows and viewers, etc. Application provides all necessary functionality for module management (loading of modules/activation/deactivation, etc)


Member Typedef Documentation

typedef QPtrList<CAM_Module> CAM_Application.ModuleList
 

typedef QPtrListIterator<CAM_Module> CAM_Application.ModuleListIterator
 

typedef QValueList<ModuleInfo> CAM_Application.ModuleInfoList [private]
 


Member Enumeration Documentation

anonymous enum [protected, inherited]
 

Enumerator:
MenuFileId 
MenuViewId 
MenuEditId 
MenuHelpId 

anonymous enum [protected, inherited]
 

Enumerator:
FileNewId 
FileOpenId 
FileLoadId 
FileCloseId 
FileSaveId 
FileSaveAsId 
FileExitId 
ViewStatusBarId 
ViewWindowsId 
NewWindowId 
EditCutId 
EditCopyId 
EditPasteId 
HelpAboutId 
UserID 


Constructor & Destructor Documentation

CAM_Application::CAM_Application const   bool = true  ) 
 

Constructor. read module list.

Parameters:
autoLoad - auto load flag.

CAM_Application::~CAM_Application  )  [virtual]
 

Destructor. Do nothing.


Member Function Documentation

void CAM_Application::start  )  [virtual]
 

Load modules, if myAutoLoad flag is true.
Start application - call start() method from parent class.

Reimplemented from STD_Application.

Reimplemented in LightApp_Application, and SalomeApp_Application.

CAM_Module * CAM_Application::activeModule  )  const
 

Get active module.

Return values:
CAM_Module - active module.

CAM_Module * CAM_Application::module const QString &  modName  )  const
 

Get module with name modName from modules list.

Return values:
CAM_Module pointer - module.

CAM_Application::ModuleListIterator CAM_Application::modules  )  const
 

Gets modules iterator.

void CAM_Application::modules CAM_Application::ModuleList out  )  const
 

Gets modules list.

Parameters:
out - output list of modules.

void CAM_Application::modules QStringList &  lst,
const bool  loaded = true
const
 

Gets list of names for modules.
Get loaded modules names, if loaded is true, else
get names from information list.

Parameters:
lst - output list of names.
loaded - boolean flag.

void CAM_Application::addModule CAM_Module mod  )  [virtual]
 

Adding module mod to list.

Parameters:
mod - module.

void CAM_Application::loadModules  )  [virtual]
 

Load modules from information list.

Warning:
If some of modules not loaded, error message appear on desktop.

CAM_Module * CAM_Application::loadModule const QString &  modName  )  [virtual]
 

Load module with name modName.

Parameters:
modName - module name for loading.
Warning:
If information list is empty.

If module library (for module with modName) is empty.

If module library is not loaded.

Reimplemented in LightApp_Application.

bool CAM_Application::activateModule const QString &  modName  )  [virtual]
 

Activate module with name modName.

Parameters:
modName - module name. true, if module loaded and activated successful, else false.

Reimplemented in LightApp_Application.

void CAM_Application::contextMenuPopup const QString &  type,
QPopupMenu thePopup,
QString &  title
[virtual]
 

Add common items for popup menu ( if they are exist )

Parameters:
type - type of popup menu
thePopup - popup menu
title - title of popup menu

Reimplemented from STD_Application.

Reimplemented in LightApp_Application, and SalomeApp_Application.

QString CAM_Application::moduleName const QString &  title  )  const
 

Gets module name by title title

Parameters:
title - title name
Return values:
QString module name.

QString CAM_Application::moduleTitle const QString &  name  )  const
 

Gets module title by module name name

Parameters:
name - module name
Return values:
QString module title.

void CAM_Application::createEmptyStudy  )  [virtual]
 

Create empty study.

Reimplemented from STD_Application.

Reimplemented in LightApp_Application.

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

Create new study for current application.

Return values:
study pointer.

Reimplemented from SUIT_Application.

Reimplemented in LightApp_Application, and SalomeApp_Application.

void CAM_Application::updateCommandsStatus  )  [protected, virtual]
 

Update commands status for parent class and for current class(if module is active)

Reimplemented from STD_Application.

Reimplemented in LightApp_Application, and SalomeApp_Application.

void CAM_Application::moduleAdded CAM_Module mod  )  [protected, virtual]
 

Do nothing.

Reimplemented in LightApp_Application.

void CAM_Application::beforeCloseDoc SUIT_Study theDoc  )  [protected, virtual]
 

Close all modules in study theDoc.

Parameters:
theDoc - study

Reimplemented from STD_Application.

Reimplemented in LightApp_Application.

bool CAM_Application::activateModule CAM_Module mod = 0  )  [protected, virtual]
 

Activate module mod

Parameters:
mod - module for activation.
Return values:
true - if all sucessful.
Warning:
Error message if module not activated in active study.

Reimplemented in LightApp_Application.

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

Sets active study for parent class.

Parameters:
study - study.

Reimplemented from SUIT_Application.

Reimplemented in LightApp_Application.

QString CAM_Application::moduleLibrary const QString &  title,
const   bool = true
const [protected]
 

Get library name for module with title title.

Parameters:
title - module title name.
full - boolean flag (if true - return full library name, else internal name)
Return values:
QString - library name.

void CAM_Application::readModuleList  )  [private]
 

Read modules list

QString STD_Application::applicationName  )  const [virtual, inherited]
 

Return values:
QString "StdApplication"

Implements SUIT_Application.

Reimplemented in CAF_Application, and LightApp_Application.

bool STD_Application::isPossibleToClose  )  [virtual, inherited]
 

Check the application on closing.

Return values:
true if possible, else false

Reimplemented from SUIT_Application.

bool STD_Application::useFile const QString &  theFileName  )  [virtual, inherited]
 

Return values:
true,if document opened successful, else false.

Reimplemented from SUIT_Application.

void STD_Application::setEditEnabled const   bool  )  [inherited]
 

Sets theEnable for menu manager and for tool manager.

bool STD_Application.isEditEnabled  )  const [inherited]
 

void STD_Application::clearViewManagers  )  [inherited]
 

Remove all view managers from view managers list.

void STD_Application::addViewManager SUIT_ViewManager vm  )  [virtual, inherited]
 

Add view manager to view managers list, if it not already there.

Reimplemented in LightApp_Application.

void STD_Application::removeViewManager SUIT_ViewManager vm  )  [virtual, inherited]
 

Remove view manager from view managers list.

Reimplemented in LightApp_Application.

SUIT_ViewManager * STD_Application::activeViewManager  )  const [inherited]
 

Return values:
SUIT_ViewManager - return pointer to active view manager.

SUIT_ViewManager * STD_Application::viewManager const QString &  vmType  )  const [inherited]
 

Return values:
SUIT_ViewManager by viewer manager type name.

bool STD_Application::containsViewManager SUIT_ViewManager vm  )  const [inherited]
 

Return values:
TRUE,if view manager vm, already in view manager list (myViewMgrs).

ViewManagerList STD_Application::viewManagers  )  const [inherited]
 

Return values:
ViewManagerList - const list of all view managers.

void STD_Application::viewManagers ViewManagerList lst  )  const [inherited]
 

Parameters:
lst - output list of all view managers.

void STD_Application::viewManagers const QString &  vmType,
ViewManagerList lst
const [inherited]
 

Parameters:
vmType - input view manager type name
lst - output list of view managers with types vmType.

virtual QString STD_Application.getFileFilter  )  const [virtual, inherited]
 

Reimplemented in CAF_Application, LightApp_Application, and SalomeApp_Application.

QString STD_Application::getFileName bool  open,
const QString &  initial,
const QString &  filters,
const QString &  caption,
QWidget parent
[virtual, inherited]
 

Return values:
QString - return file name from dialog.

Implements SUIT_Application.

Reimplemented in LightApp_Application.

QString STD_Application::getDirectory const QString &  initial,
const QString &  caption,
QWidget parent
[virtual, inherited]
 

Return values:
QString - return directory name from dialog.

Implements SUIT_Application.

Reimplemented in LightApp_Application.

void STD_Application::closeApplication  )  [virtual, inherited]
 

Close the Application

Reimplemented from SUIT_Application.

void STD_Application.viewManagerAdded SUIT_ViewManager  )  [signal, inherited]
 

emit that view manager added

void STD_Application.viewManagerRemoved SUIT_ViewManager  )  [signal, inherited]
 

emit that view manager removed

void STD_Application.viewManagerActivated SUIT_ViewManager  )  [signal, inherited]
 

emit that view manager activated

void STD_Application::onNewDoc  )  [virtual, slot, inherited]
 

Opens new application

Reimplemented in LightApp_Application.

void STD_Application::onCloseDoc bool  ask = true  )  [virtual, slot, inherited]
 

Close document, if it's possible.

void STD_Application::onSaveDoc  )  [virtual, slot, inherited]
 

Save document if all ok, else error message.

bool STD_Application::onSaveAsDoc  )  [virtual, slot, inherited]
 

Return values:
TRUE,if doument saved successful, else FALSE.

void STD_Application::onOpenDoc  )  [virtual, slot, inherited]
 

Put file name from file dialog to onOpenDoc(const QString&) function

Reimplemented in LightApp_Application.

bool STD_Application::onOpenDoc const QString &  aName  )  [virtual, slot, inherited]
 

Return values:
true,if document was opened successful, else false.

Reimplemented in LightApp_Application, and SalomeApp_Application.

void STD_Application::onLoadDoc  )  [virtual, slot, inherited]
 

called on loading the existent study

Reimplemented in SalomeApp_Application.

bool STD_Application::onLoadDoc const QString &  aName  )  [virtual, slot, inherited]
 

Return values:
true,if document was loaded successful, else false.

Reimplemented in LightApp_Application, and SalomeApp_Application.

void STD_Application::onExit  )  [virtual, slot, inherited]
 

Closing session.

void STD_Application::onCopy  )  [virtual, slot, inherited]
 

Virtual slot. Not implemented here.

Reimplemented in SalomeApp_Application.

void STD_Application::onPaste  )  [virtual, slot, inherited]
 

Virtual slot. Not implemented here.

Reimplemented in SalomeApp_Application.

void STD_Application::onViewStatusBar bool  on  )  [virtual, slot, inherited]
 

Sets status bar show, if = true, else status bar hide.

void STD_Application::onHelpAbout  )  [virtual, slot, inherited]
 

Call SUIT_MessageBox.info1(...) with about information.

Reimplemented in CAF_Application, and LightApp_Application.

void STD_Application::onDesktopClosing SUIT_Desktop ,
QCloseEvent *  e
[virtual, slot, inherited]
 

Event on closing desktop

void STD_Application::onConnectPopupRequest SUIT_PopupClient client,
QContextMenuEvent *  e
[virtual, slot, inherited]
 

Public slot.

void STD_Application::createActions  )  [protected, virtual, inherited]
 

Create actions, menus and tools

Reimplemented in CAF_Application, LightApp_Application, and SalomeApp_Application.

void STD_Application::updateDesktopTitle  )  [protected, virtual, inherited]
 

Update desktop title.

Reimplemented in LightApp_Application, and SalomeApp_Application.

void STD_Application::setDesktop SUIT_Desktop desk  )  [protected, virtual, inherited]
 

Changes desktop

Parameters:
desk - new desktop

Reimplemented from SUIT_Application.

void STD_Application::loadPreferences  )  [protected, virtual, inherited]
 

Allow to load preferences before the desktop will be shown.