2 // Author: Sergey TELKOV
11 #include <qvaluelist.h>
18 #pragma warning( disable:4251 )
21 class QTX_EXPORT QtxDialog : public QDialog
29 typedef enum { Position, Expand, Uniform } PlacePolicy;
30 typedef enum { TopArea, BottomArea, LeftArea, RightArea } ButtonArea;
31 typedef enum { Left, Right, Center, Top = Left, Bottom = Right } ButtonPosition;
33 typedef enum { None = 0x00000000,
41 OKCancel = OK | Cancel,
43 Standard = OK | Cancel | Help,
44 All = Standard | YesNo | Apply | Close } ButtonFlags;
46 typedef enum { Accept = 0x000001,
49 SetFocus = 0x000008 } DialogFlags;
52 QtxDialog( QWidget* = 0, const char* = 0, bool = false,
53 bool = false, const int = Standard, WFlags = 0 );
56 void setDialogFlags( const int );
57 void clearDialogFlags( const int );
58 bool testDialogFlags( const int ) const;
60 void setButtonFlags( const int );
61 void clearButtonFlags( const int );
62 bool testButtonFlags( const int ) const;
64 int buttonPosition( const int ) const;
65 void setButtonPosition( const int, const int = -1 );
66 void setPlacePosition( const int, const int );
68 int placePolicy( const int ) const;
69 void setPlacePolicy( const int, const int );
70 void setButtonPlace( const int, const int );
72 QString buttonText( const int );
73 void setButtonText( const int, const QString& text );
75 void setButtonFocus( const int );
76 bool hasButtonFocus( const int ) const;
78 bool isButtonEnabled( const int ) const;
79 void setButtonEnabled( const bool, const int );
81 bool isBorderEnabled( const int ) const;
82 void setBorderEnabled( const bool, const int );
84 void removeButton( const int );
85 int insertButton( const QString&, const int = BottomArea );
87 QValueList<int> userButtonIds() const;
88 QButton* userButton( const int ) const;
93 uint setAlignment( uint align );
94 static void setUnits( QLabel*, const QString& );
97 void dlgButton( int );
98 void dlgParamChanged();
113 virtual void accept();
114 virtual void reject();
120 void onSizeGripDestroyed();
121 void onDestroyed( QObject* );
124 typedef QMap<int, QButton*> ButtonMap;
127 QFrame* mainFrame() const;
129 virtual bool acceptData() const;
130 virtual bool rejectData() const;
132 virtual QButton* createButton( QWidget* );
134 QButton* button( const int ) const;
135 ButtonMap buttons( const int = All ) const;
136 int buttonId( const QButton* ) const;
137 int buttonPosition( QButton* ) const;
139 virtual void showEvent( QShowEvent* );
140 virtual void hideEvent( QHideEvent* );
141 virtual void closeEvent( QCloseEvent* );
142 virtual void childEvent( QChildEvent* );
143 virtual void keyPressEvent( QKeyEvent* );
146 void adjustButtons();
150 typedef QMap<int, Area*> AreaMap;
151 typedef QMap<int, int> PositionMap;
158 PositionMap myPosition;
161 const QObject* mySender;
169 #pragma warning( default:4251 )