X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSalomeApp%2FSalomeApp_Application.h;h=5a78e279ee3f6951017cf42827bf596cd388d455;hb=f2376a3d416ad43c5ad000a92deb0801f71ff4c4;hp=cf112abbfd312686895d7491eda1b26d6eb57279;hpb=580b61cb9fdeb6bf11cdc7cb13be97bbc53f2296;p=modules%2Fgui.git diff --git a/src/SalomeApp/SalomeApp_Application.h b/src/SalomeApp/SalomeApp_Application.h index cf112abbf..5a78e279e 100644 --- a/src/SalomeApp/SalomeApp_Application.h +++ b/src/SalomeApp/SalomeApp_Application.h @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2024 CEA, EDF, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -44,6 +44,8 @@ #include +#include + class LightApp_Preferences; class SalomeApp_Study; #ifndef DISABLE_PYCONSOLE @@ -62,14 +64,14 @@ class SALOME_LifeCycleCORBA; \brief Application containing SalomeApp module or LightApp module */ -class SALOMEAPP_EXPORT SalomeApp_Application : public LightApp_Application +class SALOMEAPPIMPL_EXPORT SalomeApp_Application : public LightApp_Application { Q_OBJECT public: enum { MenuToolsId = 5 }; enum { DumpStudyId = LightApp_Application::UserID, LoadScriptId, PropertiesId, - CatalogGenId, RegDisplayId, SaveGUIStateId, ConnectId, DisconnectId, + CatalogGenId, RegDisplayId, FindActionId, SaveGUIStateId, ConnectId, DisconnectId, UserID }; typedef enum { WT_NoteBook = LightApp_Application::WT_User, @@ -82,7 +84,7 @@ protected: enum { LoadStudyId = LightApp_Application::OpenStudyId + 1, NewAndScriptId }; public: - SalomeApp_Application(); + SalomeApp_Application(SALOME_NamingService_Abstract *ns = nullptr); virtual ~SalomeApp_Application(); virtual void updateObjectBrowser( const bool = true ); @@ -97,7 +99,7 @@ public: static CORBA::ORB_var orb(); static _PTR(Study) getStudy(); - static SALOME_NamingService* namingService(); + static SALOME_NamingService_Abstract* namingService(); static SALOME_LifeCycleCORBA* lcc(); SUIT_ViewManager* newViewManager(const QString&); @@ -117,11 +119,15 @@ public: virtual bool renameObject( const QString&, const QString& ); public slots: + virtual void onNewDoc(); virtual void onLoadDoc(); virtual void onNewWithScript(); virtual bool onLoadDoc( const QString& ); virtual void onUnloadDoc( bool ask = true); virtual void onCloseDoc( bool ask = true); + virtual void onOpenDoc(); + virtual bool onOpenDoc( const QString& ); + virtual bool onReopenDoc(); virtual void onExit(); virtual void onCopy(); @@ -169,8 +175,11 @@ protected: virtual PyConsole_Interp* createPyInterp(); #endif + virtual bool canOpenDoc( const QString& ); virtual void afterCloseDoc(); + virtual void addCatalogue( const QString&, const QString& ); + private slots: void onDeleteInvalidReferences(); void onDblClick( SUIT_DataObject* ); @@ -183,11 +192,13 @@ private slots: void onCatalogGen(); void onRegDisplay(); + void onFindAction(); void onOpenWith(); void onExtAction(); private: void createExtraActions(); + void ensureShaperIsActivated(); private: #ifndef DISABLE_PYCONSOLE @@ -196,12 +207,16 @@ private: QMap myExtActions; // Map bool myIsCloseFromExit; // "Close from Exit" flag + bool myToIgnoreMessages;// to ignore messages from SALOMEDS + signals: void dumpedStudyClosed( const QString& theDumpScript, const QString& theStudyName, bool theIsStudySaved ); void notebookVarUpdated( QString theVarName ); void objectDoubleClicked( SUIT_DataObject* ); +protected: + static std::unique_ptr _ns; }; #ifdef WIN32