-// File : SMESHGUI_Preferences_ScalarBarDlg.h
-// Created : Tue Jun 11 17:23:15 2002
-// Author : Nicolas REJNERI
-
-// Project : SALOME
-// Module : SMESH
-// Copyright : Open CASCADE 2002
-// $Header$
-
+// Copyright (C) 2007-2008 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
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// SMESH SMESHGUI : GUI for SMESH component
+// File : SMESHGUI_Preferences_ScalarBarDlg.h
+// Author : Nicolas REJNERI, Open CASCADE S.A.S.
+//
#ifndef SMESHGUI_PREFERENCES_SCALARBARDLG_H
#define SMESHGUI_PREFERENCES_SCALARBARDLG_H
-#include <qvariant.h>
-#include <qdialog.h>
-class QVBoxLayout;
-class QHBoxLayout;
-class QGridLayout;
-class QButtonGroup;
+// SMESH includes
+#include "SMESH_SMESHGUI.hxx"
+
+// Qt includes
+#include <QDialog>
+
class QCheckBox;
class QComboBox;
class QGroupBox;
-class QLabel;
class QLineEdit;
class QPushButton;
+class QToolButton;
class QRadioButton;
class QSpinBox;
-class SMESHGUI_Preferences_ScalarBarDlg : public QDialog
+class SMESHGUI;
+class SMESH_Actor;
+class QtxDoubleSpinBox;
+class QtxColorButton;
+class LightApp_SelectionMgr;
+
+class SMESHGUI_EXPORT SMESHGUI_Preferences_ScalarBarDlg : public QDialog
{
- Q_OBJECT
+ Q_OBJECT
+
+private:
+ SMESHGUI_Preferences_ScalarBarDlg( SMESHGUI* );
+
+ static SMESHGUI_Preferences_ScalarBarDlg* myDlg;
public:
- SMESHGUI_Preferences_ScalarBarDlg( QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 );
- ~SMESHGUI_Preferences_ScalarBarDlg();
-
- QButtonGroup* ButtonGroup_Orientation;
- QRadioButton* RadioHoriz;
- QRadioButton* RadioVert;
- QGroupBox* Properties;
- QLabel* NumberLabels;
- QLabel* NumberColors;
- QSpinBox* SpinBoxLabels;
- QSpinBox* SpinBoxColors;
- QLabel* TextLabel2;
- QComboBox* ComboBox1;
- QCheckBox* Shadow;
- QCheckBox* Italic;
- QCheckBox* Bold;
- QGroupBox* GroupBox5;
- QLineEdit* LineEditWidth;
- QLineEdit* LineEditHeight;
- QLabel* Height;
- QLabel* Width;
- QPushButton* buttonCancel;
- QPushButton* buttonOk;
-
-protected:
- QGridLayout* grid;
- QGridLayout* grid_2;
- QGridLayout* grid_3;
- QGridLayout* grid_4;
- QGridLayout* grid_5;
- QGridLayout* grid_6;
- QGridLayout* grid_7;
- QGridLayout* grid_8;
- QGridLayout* grid_9;
- QGridLayout* grid_10;
- QGridLayout* grid_11;
- QGridLayout* grid_12;
- QGridLayout* grid_13;
- QGridLayout* grid_14;
- QGridLayout* grid_15;
+ ~SMESHGUI_Preferences_ScalarBarDlg();
+
+ static void ScalarBarProperties( SMESHGUI* );
+
+ void closeEvent( QCloseEvent* );
+ void setOriginAndSize( const double,
+ const double,
+ const double,
+ const double );
+ void initScalarBarFromResources();
+
+protected slots:
+ void onOk();
+ bool onApply();
+ void onCancel();
+ void onHelp();
+ void onSelectionChanged();
+ void onXYChanged();
+ void onOrientationChanged();
+
+private:
+ SMESHGUI* mySMESHGUI;
+ LightApp_SelectionMgr* mySelectionMgr;
+ SMESH_Actor* myActor;
+ double myIniX, myIniY, myIniW, myIniH;
+ int myIniOrientation;
+ double DEF_VER_X, DEF_VER_Y, DEF_VER_H, DEF_VER_W;
+ double DEF_HOR_X, DEF_HOR_Y, DEF_HOR_H, DEF_HOR_W;
+
+ QGroupBox* myRangeGrp;
+ QLineEdit* myMinEdit;
+ QLineEdit* myMaxEdit;
+
+ QGroupBox* myFontGrp;
+ QtxColorButton* myTitleColorBtn;
+ QComboBox* myTitleFontCombo;
+ QCheckBox* myTitleBoldCheck;
+ QCheckBox* myTitleItalicCheck;
+ QCheckBox* myTitleShadowCheck;
+ QtxColorButton* myLabelsColorBtn;
+ QComboBox* myLabelsFontCombo;
+ QCheckBox* myLabelsBoldCheck;
+ QCheckBox* myLabelsItalicCheck;
+ QCheckBox* myLabelsShadowCheck;
+
+ QGroupBox* myLabColorGrp;
+ QSpinBox* myColorsSpin;
+ QSpinBox* myLabelsSpin;
+
+ QGroupBox* myOrientationGrp;
+ QRadioButton* myVertRadioBtn;
+ QRadioButton* myHorizRadioBtn;
+
+ QGroupBox* myOriginDimGrp;
+ QtxDoubleSpinBox* myXSpin;
+ QtxDoubleSpinBox* myYSpin;
+ QtxDoubleSpinBox* myWidthSpin;
+ QtxDoubleSpinBox* myHeightSpin;
+
+ QGroupBox* myButtonGrp;
+ QPushButton* myOkBtn;
+ QPushButton* myApplyBtn;
+ QPushButton* myCancelBtn;
+ QPushButton* myHelpBtn;
+
+ QString myHelpFileName;
};
#endif // SMESHGUI_PREFERENCES_SCALARBARDLG_H