Salome HOME
Join modifications from branch BR_3_1_0deb
[modules/gui.git] / src / SalomeApp / SalomeApp_Application.h
1 // File:      SalomeApp_Application.h
2 // Created:   10/22/2004 3:37:25 PM
3 // Author:    Sergey LITONIN
4 // Copyright (C) CEA 2004
5
6 #ifndef SALOMEAPP_APPLICATION_H
7 #define SALOMEAPP_APPLICATION_H
8
9 #if _MSC_VER > 1000
10 #pragma once
11 #endif // _MSC_VER > 1000
12
13 #include "SalomeApp.h"
14 #include <LightApp_Application.h>
15
16 #include <CORBA.h>
17
18 #include <SALOMEconfig.h>
19 //#include CORBA_CLIENT_HEADER(SALOMEDS)
20 #include <SALOME_NamingService.hxx>
21
22 #include "SALOMEDSClient.hxx"
23
24 class QAction;
25 class QComboBox;
26 class QDockWindow;
27
28 class LightApp_Preferences;
29 class SalomeApp_Module;
30
31 class SALOME_LifeCycleCORBA;
32
33 class QListViewItem;
34
35 #ifdef WIN32
36 #pragma warning( disable:4251 )
37 #endif
38
39 /*!
40   Description : Application containing SalomeApp module or LightApp module
41 */
42
43 class SALOMEAPP_EXPORT SalomeApp_Application : public LightApp_Application
44 {
45   Q_OBJECT
46
47 public:
48   enum { DumpStudyId = LightApp_Application::UserID, LoadScriptId, PropertiesId,
49          CatalogGenId, RegDisplayId, UserID };
50
51 public:
52   SalomeApp_Application();
53   virtual ~SalomeApp_Application();
54
55   virtual void                        updateObjectBrowser( const bool = true );
56
57   virtual QString                     getFileFilter() const;
58
59   virtual void                        start();
60
61   virtual void                        contextMenuPopup( const QString&, QPopupMenu*, QString& );
62
63   static CORBA::ORB_var               orb();
64   static SALOMEDSClient_StudyManager* studyMgr();
65   static SALOME_NamingService*        namingService();
66   static SALOME_LifeCycleCORBA*       lcc();
67   static QString                      defaultEngineIOR();
68
69 public slots:
70   virtual bool                        onOpenDoc( const QString& );
71   virtual void                        onLoadDoc();
72   virtual bool                        onLoadDoc( const QString& );
73   virtual void                        onCopy();
74   virtual void                        onPaste();
75
76 protected:
77   virtual void                        createActions();
78   virtual SUIT_Study*                 createNewStudy();
79   virtual QWidget*                    createWindow( const int );
80
81   virtual void                        updateCommandsStatus();
82   virtual void                        onSelectionChanged();
83
84   virtual void                        createPreferences( LightApp_Preferences* );
85   virtual void                        updateDesktopTitle();
86
87 private slots:
88   void                                onDeleteInvalidReferences();
89   void                                onDblClick( QListViewItem* );
90   void                                onProperties();
91   void                                onDumpStudy();
92   void                                onLoadScript(); 
93
94   void                                onCatalogGen();
95   void                                onRegDisplay();
96   void                                onOpenWith();
97 };
98
99 #ifdef WIN32
100 #pragma warning( default:4251 )
101 #endif
102
103 #endif