]> Creatis software - cpPlugins.git/blobdiff - lib/cpPlugins/QT/ParametersDialog.h
yet another refactoring
[cpPlugins.git] / lib / cpPlugins / QT / ParametersDialog.h
diff --git a/lib/cpPlugins/QT/ParametersDialog.h b/lib/cpPlugins/QT/ParametersDialog.h
new file mode 100644 (file)
index 0000000..37a6863
--- /dev/null
@@ -0,0 +1,69 @@
+#ifndef __cpPlugins__QT__ParametersDialog__h__
+#define __cpPlugins__QT__ParametersDialog__h__
+
+#include <cpPlugins/Config.h>
+#include <cpPlugins/Pipeline/ProcessObject.h>
+
+#include <QApplication>
+#include <QDialog>
+#include <QDialogButtonBox>
+#include <QGridLayout>
+#include <QLabel>
+#include <QVBoxLayout>
+
+namespace cpPlugins
+{
+  namespace QT
+  {
+    /**
+     */
+    class cpPlugins_EXPORT ParametersDialog
+      : public QDialog
+    {
+      Q_OBJECT;
+
+    public:
+      ParametersDialog(
+        QWidget* parent = 0, Qt::WindowFlags f = 0, bool manual = false
+        );
+      virtual ~ParametersDialog( );
+
+      cpPlugins::Pipeline::ProcessObject* getProcessObject( ) const;
+      virtual bool setProcessObject(
+        cpPlugins::Pipeline::ProcessObject* obj
+        );
+
+      virtual void updateParameters( );
+      virtual void updateView( );
+
+    protected:
+      virtual void _addButtons( );
+      virtual void _updateWidgets( );
+
+    protected slots:
+      virtual void _dlg_Accepted( );
+      virtual void _dlg_OpenSingleFile( );
+      virtual void _dlg_SaveSingleFile( );
+      virtual void _dlg_OpenSinglePath( );
+      virtual void _dlg_OpenMultipleFiles( );
+      virtual void _dlg_AddInt( );
+      virtual void _dlg_AddUint( );
+      virtual void _dlg_AddReal( );
+
+    protected:
+      cpPlugins::Pipeline::ProcessObject* m_ProcessObject;
+      bool m_WidgetsUpdated;
+      bool m_Manual;
+      QLabel* m_Title;
+      QGridLayout* m_MainLayout;
+      QVBoxLayout* m_ToolsLayout;
+      QDialogButtonBox* m_Buttons;
+    };
+
+  } // ecapseman
+
+} // ecapseman
+
+#endif // __cpPlugins__QT__ParametersDialog__h__
+
+// eof - $RCSfile$