X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSalomeApp%2FSalomeApp_Application.h;h=0da12339c6046a926c46f167ae720950190a4eb2;hb=8c1a275856402cfefde5ea45cbac277d17b4792e;hp=6d43f2a759640ac1be886012029aa56eaa111db6;hpb=2e750f9ded92337bc3c44e9d7388180974cc4a43;p=modules%2Fgui.git diff --git a/src/SalomeApp/SalomeApp_Application.h b/src/SalomeApp/SalomeApp_Application.h index 6d43f2a75..0da12339c 100644 --- a/src/SalomeApp/SalomeApp_Application.h +++ b/src/SalomeApp/SalomeApp_Application.h @@ -27,10 +27,14 @@ class QDockWindow; class LogWindow; class OB_Browser; +class PythonConsole; class SalomeApp_Module; +class SalomeApp_Preferences; class SalomeApp_SelectionMgr; class SalomeApp_WidgetContainer; +class SALOME_LifeCycleCORBA; + #ifdef WIN32 #pragma warning( disable:4251 ) #endif @@ -48,23 +52,36 @@ public: typedef enum { WT_ObjectBrowser, WT_PyConsole, WT_LogWindow, WT_User } WindowTypes; enum { ModulesListId = STD_Application::UserID, NewGLViewId, - NewPlot2dId, NewOCCViewId, NewVTKViewId, UserID }; + NewPlot2dId, NewOCCViewId, NewVTKViewId, LoadScriptId, + PropertiesId, PreferencesId, MRUId, UserID }; public: SalomeApp_Application(); virtual ~SalomeApp_Application(); virtual QString applicationName() const; + virtual QString applicationVersion() const; virtual CAM_Module* loadModule( const QString& ); virtual bool activateModule( const QString& ); SalomeApp_SelectionMgr* selectionMgr() const; - OB_Browser* objectBrowser(); LogWindow* logWindow(); + OB_Browser* objectBrowser(); + PythonConsole* pythonConsole(); + + virtual void updateObjectBrowser( const bool = true ); + + SalomeApp_Preferences* preferences() const; virtual QString getFileFilter() const; + virtual QString getFileName( bool open, const QString& initial, const QString& filters, + const QString& caption, QWidget* parent ); + virtual QString getDirectory( const QString& initial, const QString& caption, QWidget* parent ); + virtual QStringList getOpenFileNames( const QString& initial, const QString& filters, + const QString& caption, QWidget* parent ); + SUIT_ViewManager* getViewManager( const QString&, const bool ); void updateActions(); @@ -80,9 +97,12 @@ public: virtual void start(); + virtual void contextMenuPopup( const QString&, QPopupMenu*, QString& ); + static CORBA::ORB_var orb(); static SALOMEDSClient_StudyManager* studyMgr(); static SALOME_NamingService* namingService(); + static SALOME_LifeCycleCORBA* lcc(); static QString defaultEngineIOR(); signals: @@ -94,9 +114,11 @@ public slots: virtual void onNewDoc(); virtual void onOpenDoc(); virtual void onHelpAbout(); + virtual bool onOpenDoc( const QString& ); private slots: void onSelection(); + void onRefresh(); protected: virtual void createActions(); @@ -111,6 +133,16 @@ protected: virtual void onSelectionChanged(); + virtual void beforeCloseDoc( SUIT_Study* ); + virtual void afterCloseDoc(); + + virtual void moduleAdded( CAM_Module* ); + + SalomeApp_Preferences* preferences( const bool ) const; + + virtual void createPreferences( SalomeApp_Preferences* ); + virtual void preferencesChanged( const QString&, const QString& ); + private slots: void onNewWindow(); void onModuleActivation( QAction* ); @@ -120,6 +152,14 @@ private slots: void onStudyOpened( SUIT_Study* ); void onStudySaved( SUIT_Study* ); void onStudyClosed( SUIT_Study* ); + + void onProperties(); + void onLoadScript(); + + void onPreferences(); + void onMRUActivated( QString ); + + void onPreferenceChanged( QString&, QString&, QString& ); private: void updateWindows(); @@ -129,6 +169,8 @@ private: void loadWindowsGeometry(); void saveWindowsGeometry(); + void updatePreference( const QString&, const QString&, const QString& ); + QString defaultModule() const; void currentWindows( QMap& ) const; void currentViewManagers( QStringList& ) const; @@ -142,9 +184,12 @@ private: typedef QMap WindowMap; private: + SalomeApp_Preferences* myPrefs; SalomeApp_SelectionMgr* mySelMgr; ActionMap myActions; WindowMap myWindows; + + static SalomeApp_Preferences* _prefs_; }; #ifdef WIN32