]> Creatis software - cpPlugins.git/blob - lib/cpPlugins/ParametersQtDialog.h
0d732d798f4aad8de943bf3f6869c5789b853900
[cpPlugins.git] / lib / cpPlugins / ParametersQtDialog.h
1 #ifndef __CPPLUGINS__PARAMETERSQTDIALOG__H__
2 #define __CPPLUGINS__PARAMETERSQTDIALOG__H__
3
4 #include <cpPlugins/Config.h>
5
6 #ifdef cpPlugins_QT4
7
8 #include <cpPlugins/ProcessObject.h>
9
10 #include <set>
11
12 #include <QApplication>
13 #include <QDialog>
14 #include <QDialogButtonBox>
15 #include <QGridLayout>
16 #include <QLabel>
17 #include <QVBoxLayout>
18
19 namespace cpPlugins
20 {
21   /**
22    */
23   class cpPlugins_EXPORT ParametersQtDialog
24     : public QDialog
25   {
26     Q_OBJECT;
27
28   public:
29     ParametersQtDialog(
30       QWidget* parent = 0, Qt::WindowFlags f = 0, bool manual = false
31       );
32     virtual ~ParametersQtDialog( );
33
34     ProcessObject* getProcessObject( ) const;
35     virtual bool setProcessObject( ProcessObject* obj );
36
37     virtual int exec( );
38
39     virtual void updateParameters( );
40     virtual void updateView( );
41
42   protected:
43     virtual void _addButtons( );
44     virtual void _updateWidgets( );
45
46   protected slots:
47     virtual void _dlg_OpenSingleFile( );
48     virtual void _dlg_SaveSingleFile( );
49     virtual void _dlg_OpenSinglePath( );
50     virtual void _dlg_OpenMultipleFiles( );
51     virtual void _dlg_AddInt( );
52     virtual void _dlg_AddUint( );
53     virtual void _dlg_AddReal( );
54
55   protected:
56     ProcessObject* m_ProcessObject;
57     bool m_WidgetsUpdated;
58     bool m_Manual;
59     QLabel* m_Title;
60     QGridLayout* m_MainLayout;
61     QVBoxLayout* m_ToolsLayout;
62     QDialogButtonBox* m_Buttons;
63   };
64
65 } // ecapseman
66
67 #endif // cpPlugins_QT4
68
69 #endif // __CPPLUGINS__PARAMETERSQTDIALOG__H__
70
71 // eof - $RCSfile$