1 // File: QtxWorkspaceAction.h
2 // Author: Sergey TELKOV
4 #ifndef QTXWORKSPACEACTION_H
5 #define QTXWORKSPACEACTION_H
12 #pragma warning( disable:4251 )
15 class QTX_EXPORT QtxWorkspaceAction : public QtxAction
20 enum { Cascade = 0x0001,
25 Standard = Cascade | Tile | Windows,
26 Operations = Cascade | Tile | VTile | HTile,
27 All = Standard | HTile | VTile };
30 QtxWorkspaceAction( QWorkspace*, QObject* = 0, const char* = 0 );
31 virtual ~QtxWorkspaceAction();
33 QWorkspace* workspace() const;
36 void setItems( const int );
37 bool hasItems( const int ) const;
39 int accel( const int ) const;
40 QIconSet iconSet( const int ) const;
41 QString menuText( const int ) const;
42 QString statusTip( const int ) const;
44 void setAccel( const int, const int );
45 void setIconSet( const int, const QIconSet& );
46 void setMenuText( const int, const QString& );
47 void setStatusTip( const int, const QString& );
49 virtual bool addTo( QWidget* );
50 virtual bool addTo( QWidget*, const int );
51 virtual bool removeFrom( QWidget* );
53 void perform( const int );
59 void tileHorizontal();
63 void onItemActivated( int );
64 void onPopupDestroyed( QObject* );
67 void checkPopup( QPopupMenu* );
68 void updatePopup( QPopupMenu* );
70 int clearPopup( QPopupMenu* );
71 void fillPopup( QPopupMenu*, const int );
74 typedef QMap<QPopupMenu*, QIntList> MenuMap;
75 typedef QMap<int, QtxAction*> ItemMap;
81 QWorkspace* myWorkspace;
85 #pragma warning( default:4251 )