Salome HOME
Merge branch 'master' into V9_dev
[modules/gui.git] / src / SALOME_PYQT / SalomePyQt / SalomePyQt.h
index 68be1fafcdec7d4e9629dd94d6fab7cbaf0f6510..58634fedd15fc58b4d416b08c434a8163290df77 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2014  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2016  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -37,7 +37,9 @@
 #include <SalomeApp_Application.h>
 #endif
 #include <LightApp_Preferences.h>
+#ifndef DISABLE_PLOT2DVIEWER
 #include <Plot2d_ViewFrame.h>
+#endif
 
 class LightApp_SelectionMgr;
 class QMenuBar;
@@ -46,7 +48,9 @@ class QWidget;
 class QAction;
 class QTreeView;
 class QtxActionGroup;
+#ifndef DISABLE_PLOT2DVIEWER
 class Plot2d_Curve;
+#endif
 
 class SALOME_Selection : public QObject
 {
@@ -110,6 +114,23 @@ enum {
   PT_Font     = LightApp_Preferences::Font, 
   PT_DirList  = LightApp_Preferences::DirList, 
   PT_File     = LightApp_Preferences::File, 
+  PT_Slider       = LightApp_Preferences::Slider, 
+  PT_Shortcut     = LightApp_Preferences::Shortcut, 
+  PT_ShortcutTree = LightApp_Preferences::ShortcutTree, 
+  PT_BiColor      = LightApp_Preferences::BiColor, 
+  PT_Background   = LightApp_Preferences::Background, 
+  PT_UserDefined  = LightApp_Preferences::UserDefined, 
+};
+
+class UserDefinedContent: public QWidget
+{
+  Q_OBJECT
+
+public:
+  explicit UserDefinedContent();
+
+  virtual void store();
+  virtual void retrieve();
 };
 
 //! Orientation
@@ -125,6 +146,7 @@ enum Action {
   SplitAt      = 2  //!< the view area is splitted in such a way, that specified view and all views which follow it, are moved to the new area
 };
 
+#ifndef DISABLE_PLOT2DVIEWER
 //! Type of titles in Plot3d View
 enum ObjectType
 {
@@ -136,6 +158,7 @@ enum ObjectType
   YAxis = Plot2d_ViewFrame::YAxis,
   Y2Axis = Plot2d_ViewFrame::Y2Axis
 };
+#endif
 
 enum VisibilityState 
 {
@@ -144,12 +167,14 @@ enum VisibilityState
   UnpresentableState      //!< Unpresentable object    
 };
 
+#ifndef DISABLE_PLOT2DVIEWER
 enum Axis {
   yLeft    = QwtPlot::yLeft,
   yRight   = QwtPlot::yRight,
   xBottom  = QwtPlot::xBottom,
   xTop     = QwtPlot::xTop,
 };     
+#endif
 
 class SalomePyQt
 {
@@ -160,13 +185,15 @@ public:
   static QMenu*            getPopupMenu( const MenuName );
   static QMenu*            getPopupMenu( const QString& );
   static QTreeView*        getObjectBrowser();
+  static void              enableSelector();
+  static void              disableSelector();
   static SALOME_Selection* getSelection();
-  static int               getStudyId();
+  static void              setSelection( const QStringList& );
   static void              putInfo( const QString&, const int = 0 );
   static const QString     getActiveComponent();
   static PyObject*         getActivePythonModule();
   static bool              activateModule( const QString& );
-  static void              updateObjBrowser( const int = 0, bool = true );
+  static void              updateObjBrowser();
 
   static bool              isModified();
   static void              setModified( bool );
@@ -175,6 +202,7 @@ public:
   static QStringList       getOpenFileNames    ( QWidget*, const QString&, const QStringList&, const QString& );
   static QString           getExistingDirectory( QWidget*, const QString&, const QString& );
 
+  static void              createRoot();
   static QString           createObject( const QString& parent = QString() );
   static QString           createObject( const QString&, const QString&, const QString&, const QString& = QString() );
 
@@ -238,18 +266,26 @@ public:
   static QAction*          action( const int );
   static int               actionId( const QAction* );
 
+  static QString           constant      ( const QString& );
+  static void              setConstant   ( const QString&, const QString& );
   static void              addSetting    ( const QString&, const QString&, const double );
   static void              addSetting    ( const QString&, const QString&, const int );
   static void              addSetting    ( const QString&, const QString&, const bool, const int );
   static void              addSetting    ( const QString&, const QString&, const QString& );
   static void              addSetting    ( const QString&, const QString&, const QColor& );
+  static void              addSetting    ( const QString&, const QString&, const QByteArray& );
+  static void              addSetting    ( const QString&, const QString&, const QFont& );
   static int               integerSetting( const QString&, const QString&, const int = 0 );
   static double            doubleSetting ( const QString&, const QString&, const double = 0 );
   static bool              boolSetting   ( const QString&, const QString&, const bool = 0 );
-  static QString           stringSetting ( const QString&, const QString&, const QString& = QString("") );
+  static QString           stringSetting ( const QString&, const QString&, const QString& = QString(""), const bool = true );
   static QColor            colorSetting  ( const QString&, const QString&, const QColor& = QColor() );
+  static QByteArray        byteArraySetting( const QString&, const QString&, const QByteArray& = QByteArray() );
+  static QFont             fontSetting( const QString&, const QString&, const QFont& = QFont() );
   static void              removeSetting ( const QString&, const QString& );
   static bool              hasSetting    ( const QString&, const QString& );
+  static QStringList       parameters    ( const QString& );
+  static QStringList       parameters    ( const QStringList& );
 
   static int               addGlobalPreference( const QString& );
   static int               addPreference( const QString& );
@@ -259,6 +295,7 @@ public:
                                           const QString& = QString() );
   static QVariant          preferenceProperty( const int, const QString& );
   static void              setPreferenceProperty( const int, const QString&, const QVariant& );
+  static void              setPreferencePropertyWg( const int, const QString&, UserDefinedContent* );
   static void              addPreferenceProperty( const int, const QString&, const int, const QVariant& );
 
   static void              message( const QString&, bool = true );
@@ -269,9 +306,12 @@ public:
   static QString           getViewType( const int );
   static bool              setViewTitle( const int, const QString& );
   static QString           getViewTitle( const int );
+  static bool              setViewSize( const int, const int, const int = 0 );
   static QList<int>        findViews( const QString& );
   static bool              activateView( const int );
-  static int               createView( const QString&, bool visible = true, const int width = 0, const int height = 0 );
+  static bool              activateViewManagerAndView( const int );
+  static QWidget*          getViewWidget( const int );
+  static int               createView( const QString&, bool visible = true, const int width = 0, const int height = 0, bool detached = false );
   static int               createView( const QString&, QWidget* );
   static bool              closeView( const int );
   static int               cloneView( const int );
@@ -285,6 +325,7 @@ public:
   static bool              moveView( const int, const int, const bool );
   static QList<int>        neighbourViews( const int );
 
+#ifndef DISABLE_PLOT2DVIEWER
   static void              displayCurve(const int, Plot2d_Curve*);
   static void              eraseCurve(const int, Plot2d_Curve*);
   static void              eraseCurve(Plot2d_Curve*);
@@ -294,6 +335,10 @@ public:
   static QList<double>     getPlot2dFitRangeByCurves(const int);
   static QList<double>     getPlot2dFitRangeCurrent(const int);
   static void              setPlot2dFitRange(const int, const double XMin, const double XMax, const double YMin, const double YMax);
+#endif
+
+//  static void              initializeParaViewGUI();
+  static void              processEvents();
 
   // the following methods are obsolete
   static void              addStringSetting( const QString&, const QString&, bool = true );
@@ -307,6 +352,7 @@ public:
 
   static void              startPyLog(const QString&);
   static void              stopPyLog();
+
 };
 
 #endif // SALOME_PYQT_H