Salome HOME
Fix a bug of SALOME_PYQT package - to work properly with Sip and PyQt libraries addit...
[modules/gui.git] / src / STD / STD_MDIDesktop.h
1 #ifndef STD_MDIDESKTOP_H
2 #define STD_MDIDESKTOP_H
3
4 #include "STD.h"
5
6 #include <SUIT_Desktop.h>
7
8 class QtxAction;
9 class QPopupMenu;
10 class QWorkspace;
11 class QtxWorkspaceAction;
12
13 #if defined WNT
14 #pragma warning( disable: 4251 )
15 #endif
16
17 class STD_EXPORT STD_MDIDesktop: public SUIT_Desktop 
18 {
19   Q_OBJECT
20
21 public:
22   enum { Cascade, Tile, HTile, VTile };
23
24 public:
25   STD_MDIDesktop();
26   virtual ~STD_MDIDesktop();
27
28   virtual SUIT_ViewWindow* activeWindow() const;
29   virtual QPtrList<SUIT_ViewWindow> windows() const;
30
31   void                     windowOperation( const int );
32
33   void                     setWindowOperations( const int, ... );
34   void                     setWindowOperations( const QValueList<int>& );
35
36   QWorkspace*              workspace() const;
37
38 private slots:
39   void                     onWindowActivated( QWidget* );
40
41 protected:
42   void                     createActions();
43   virtual QWidget*         parentArea() const;
44
45 private:
46   int                      operationFlag( const int ) const;
47
48 private:
49   QWorkspace*              myWorkspace;
50   QtxWorkspaceAction*      myWorkspaceAction;
51 };
52
53 #if defined WNT
54 #pragma warning( default: 4251 )
55 #endif
56
57 #endif