- if ( !name )
- setName( "SMESHGUI_Preferences_ColorDlg" );
- setCaption( tr( "Preferences - Set Color" ) );
- setSizeGripEnabled( TRUE );
- QGridLayout* SMESHGUI_Preferences_ColorDlgLayout = new QGridLayout( this );
- SMESHGUI_Preferences_ColorDlgLayout->setSpacing( 6 );
- SMESHGUI_Preferences_ColorDlgLayout->setMargin( 11 );
-
- ButtonGroup1 = new QButtonGroup( tr( "Elements" ), this, "ButtonGroup1" );
- ButtonGroup1->setColumnLayout(0, Qt::Vertical );
- ButtonGroup1->layout()->setSpacing( 0 );
- ButtonGroup1->layout()->setMargin( 0 );
- QGridLayout* ButtonGroup1Layout = new QGridLayout( ButtonGroup1->layout() );
- ButtonGroup1Layout->setAlignment( Qt::AlignTop );
- ButtonGroup1Layout->setSpacing( 6 );
- ButtonGroup1Layout->setMargin( 11 );
-
- TextLabel_Fill = new QLabel( tr( "Fill" ), ButtonGroup1, "TextLabel_2D_Fill" );
- ButtonGroup1Layout->addWidget( TextLabel_Fill, 0, 0 );
-
- btnFillColor = new QPushButton( ButtonGroup1, "btnFillColor" );
- btnFillColor->setFixedSize( QSize( 25, 25 ) );
- ButtonGroup1Layout->addWidget( btnFillColor, 0, 1 );
-
- TextLabel_Outine = new QLabel( tr( "Outline" ), ButtonGroup1, "TextLabel_2D_Outine" );
- ButtonGroup1Layout->addWidget( TextLabel_Outine, 0, 2 );
-
- btnOutlineColor = new QPushButton( ButtonGroup1, "btnOutlineColor" );
- btnOutlineColor->setFixedSize( QSize( 25, 25 ) );
- ButtonGroup1Layout->addWidget( btnOutlineColor, 0, 3 );
-
- TextLabel_Width = new QLabel( tr( "Width" ), ButtonGroup1, "TextLabel_2D_Width" );
- ButtonGroup1Layout->addWidget( TextLabel_Width, 0, 4 );
-
- SpinBox_Width = new QSpinBox( 0, 5, 1, ButtonGroup1, "SpinBox_Width" );
- SpinBox_Width->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
- SpinBox_Width->setWrapping( FALSE );
- SpinBox_Width->setButtonSymbols( QSpinBox::PlusMinus );
- ButtonGroup1Layout->addWidget( SpinBox_Width, 0, 5 );
-
- TextLabel_BackFace = new QLabel( tr( "Back Face" ), ButtonGroup1, "TextLabel_BackFace" );
- ButtonGroup1Layout->addWidget( TextLabel_BackFace, 1, 0 );
-
- btnBackFaceColor = new QPushButton( ButtonGroup1, "btnBackFaceColor" );
- btnBackFaceColor->setFixedSize( QSize( 25, 25 ) );
- ButtonGroup1Layout->addWidget( btnBackFaceColor, 1, 1 );
-
- TextLabel_ShrinkCoeff = new QLabel( tr( "Shrink coef." ), ButtonGroup1, "TextLabel_ShrinkCoeff" );
- ButtonGroup1Layout->addWidget( TextLabel_ShrinkCoeff, 2, 0 );
-
- SpinBox_Shrink = new QSpinBox( 20, 100, 1, ButtonGroup1, "SpinBox_Shrink" );
- SpinBox_Shrink->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
- SpinBox_Shrink->setButtonSymbols( QSpinBox::PlusMinus );
- ButtonGroup1Layout->addMultiCellWidget( SpinBox_Shrink, 2, 2, 1, 5);
-
- SMESHGUI_Preferences_ColorDlgLayout->addWidget( ButtonGroup1, 0, 0 );
-
- ButtonGroup2 = new QButtonGroup( tr( "Nodes" ), this, "ButtonGroup2" );
- ButtonGroup2->setColumnLayout(0, Qt::Vertical );
- ButtonGroup2->layout()->setSpacing( 0 );
- ButtonGroup2->layout()->setMargin( 0 );
- QGridLayout* ButtonGroup2Layout = new QGridLayout( ButtonGroup2->layout() );
- ButtonGroup2Layout->setAlignment( Qt::AlignTop );
- ButtonGroup2Layout->setSpacing( 6 );
- ButtonGroup2Layout->setMargin( 11 );
-
- TextLabel_Nodes_Color = new QLabel( tr( "Color" ), ButtonGroup2, "TextLabel_Nodes_Color" );
- ButtonGroup2Layout->addWidget( TextLabel_Nodes_Color, 0, 0 );
-
- btnNodeColor = new QPushButton( ButtonGroup2, "btnNodeColor" );
- btnNodeColor->setFixedSize( QSize( 25, 25 ) );
- ButtonGroup2Layout->addWidget( btnNodeColor, 0, 1 );
-
- TextLabel_Nodes_Size = new QLabel( tr( "Size" ), ButtonGroup2, "TextLabel_Nodes_Size" );
- ButtonGroup2Layout->addWidget( TextLabel_Nodes_Size, 0, 2 );
-
- SpinBox_Nodes_Size = new QSpinBox( 0, 5, 1, ButtonGroup2, "SpinBox_Nodes_Size" );
- SpinBox_Nodes_Size->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
- SpinBox_Nodes_Size->setWrapping( FALSE );
- SpinBox_Nodes_Size->setButtonSymbols( QSpinBox::PlusMinus );
- ButtonGroup2Layout->addWidget( SpinBox_Nodes_Size, 0, 3 );
-
- SMESHGUI_Preferences_ColorDlgLayout->addWidget( ButtonGroup2, 1, 0 );
-
- GroupButtons = new QButtonGroup( this, "GroupButtons" );
- GroupButtons->setColumnLayout(0, Qt::Vertical );
- GroupButtons->layout()->setSpacing( 0 );
- GroupButtons->layout()->setMargin( 0 );
- QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() );
- GroupButtonsLayout->setAlignment( Qt::AlignTop );
- GroupButtonsLayout->setSpacing( 6 );
- GroupButtonsLayout->setMargin( 11 );
-
- buttonOk = new QPushButton( tr( "&OK" ), GroupButtons, "buttonOk" );
- buttonOk->setAutoDefault( TRUE );
- buttonOk->setDefault( TRUE );
- GroupButtonsLayout->addWidget( buttonOk, 0, 0 );
-
- GroupButtonsLayout->addItem( new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
-
- buttonCancel = new QPushButton( tr( "&Cancel" ), GroupButtons, "buttonCancel" );
- buttonCancel->setAutoDefault( TRUE );
- GroupButtonsLayout->addWidget( buttonCancel, 0, 2 );
-
- SMESHGUI_Preferences_ColorDlgLayout->addWidget( GroupButtons, 2, 0 );
-
- Init();
+ setModal( true );
+ setWindowTitle( tr( "DIALOG_TITLE" ) );
+ setSizeGripEnabled( true );
+
+ // -------------------------------
+ QVBoxLayout* topLayout = new QVBoxLayout( this );
+ topLayout->setSpacing( SPACING );
+ topLayout->setMargin( MARGIN );
+
+ // -------------------------------
+ QGroupBox* ButtonGroup1 = new QGroupBox( tr( "GRP_ELEMENTS" ), this );
+ QGridLayout* ButtonGroup1Layout = new QGridLayout( ButtonGroup1 );
+ ButtonGroup1Layout->setSpacing( SPACING );
+ ButtonGroup1Layout->setMargin( MARGIN );
+
+ QLabel* TextLabel_Fill = new QLabel( tr( "SURFACE_COLOR_LBL" ), ButtonGroup1 );
+
+ toolSurfColor = new QtxBiColorTool(ButtonGroup1);
+ toolSurfColor->setText( tr( "BACKSURFACE_COLOR_LBL" ));
+
+ QLabel* TextLabel_Outline = new QLabel( tr( "OUTLINE_COLOR_LBL" ), ButtonGroup1 );
+ btnOutlineColor = new QtxColorButton( ButtonGroup1 );
+
+ QLabel* TextLabel_Wireframe = new QLabel( tr( "WIREFRAME_COLOR_LBL" ), ButtonGroup1 );
+ btnWireframeColor = new QtxColorButton( ButtonGroup1 );
+
+ QLabel* TextLabel_0DElements_Color = new QLabel( tr( "0D_ELEMENTS_COLOR_LBL" ), ButtonGroup1 );
+ btn0DElementsColor = new QtxColorButton( ButtonGroup1 );
+
+ QLabel* TextLabel_0DElements_Size = new QLabel( tr( "0D_ELEMENTS_SIZE_LBL" ), ButtonGroup1 );
+ SpinBox_0DElements_Size = new SalomeApp_IntSpinBox( ButtonGroup1 );
+ SpinBox_0DElements_Size->setAcceptNames( false ); // No Notebook variables allowed
+ SpinBox_0DElements_Size->setRange( 1, 10 );
+ SpinBox_0DElements_Size->setSingleStep( 1 );
+ SpinBox_0DElements_Size->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+ SpinBox_0DElements_Size->setButtonSymbols( QSpinBox::PlusMinus );
+
+ QLabel* TextLabel_BallElem_Color = new QLabel( tr( "0D_ELEMENTS_COLOR_LBL" ), ButtonGroup1 );
+ btnBallElemColor = new QtxColorButton( ButtonGroup1 );
+
+ QLabel* TextLabel_BallElem_Size = new QLabel( tr( "BALLELEM_SIZE_LBL" ), ButtonGroup1 );
+ SpinBox_BallElem_Size = new SalomeApp_IntSpinBox( ButtonGroup1 );
+ SpinBox_BallElem_Size->setAcceptNames( false ); // No Notebook variables allowed
+ SpinBox_BallElem_Size->setRange( 1, 10 );
+ SpinBox_BallElem_Size->setSingleStep( 1 );
+ SpinBox_BallElem_Size->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+ SpinBox_BallElem_Size->setButtonSymbols( QSpinBox::PlusMinus );
+
+ QLabel* TextLabel_Width = new QLabel( tr( "LINE_WIDTH_LBL" ), ButtonGroup1 );
+ SpinBox_Width = new SalomeApp_IntSpinBox( ButtonGroup1 );
+ SpinBox_Width->setAcceptNames( false ); // No Notebook variables allowed
+ SpinBox_Width->setRange( 1, 5 );
+ SpinBox_Width->setSingleStep( 1 );
+ SpinBox_Width->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+ SpinBox_Width->setButtonSymbols( QSpinBox::PlusMinus );
+
+ QLabel* TextLabel_ShrinkCoeff = new QLabel( tr( "SHRINK_COEF_LBL" ), ButtonGroup1 );
+ SpinBox_Shrink = new SalomeApp_IntSpinBox( ButtonGroup1 );
+ SpinBox_Shrink->setAcceptNames( false ); // No Notebook variables allowed
+ SpinBox_Shrink->setRange( 20, 100 );
+ SpinBox_Shrink->setSingleStep( 1 );
+ SpinBox_Shrink->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+ SpinBox_Shrink->setButtonSymbols( QSpinBox::PlusMinus );
+
+ ButtonGroup1Layout->addWidget( TextLabel_Fill, 0, 0 );
+ ButtonGroup1Layout->addWidget( toolSurfColor, 0, 1, 1, 3 );
+
+ ButtonGroup1Layout->addWidget( TextLabel_Outline, 1, 0 );
+ ButtonGroup1Layout->addWidget( btnOutlineColor, 1, 1 );
+ ButtonGroup1Layout->addWidget( TextLabel_Wireframe, 1, 2 );
+ ButtonGroup1Layout->addWidget( btnWireframeColor, 1, 3 );
+
+ ButtonGroup1Layout->addWidget( TextLabel_0DElements_Color, 2, 0 );
+ ButtonGroup1Layout->addWidget( btn0DElementsColor, 2, 1 );
+
+ ButtonGroup1Layout->addWidget( TextLabel_0DElements_Size, 2, 2 );
+ ButtonGroup1Layout->addWidget( SpinBox_0DElements_Size, 2, 3 );
+
+ ButtonGroup1Layout->addWidget( TextLabel_BallElem_Color, 2, 0 );
+ ButtonGroup1Layout->addWidget( btnBallElemColor, 2, 1 );
+
+ ButtonGroup1Layout->addWidget( TextLabel_BallElem_Size, 2, 2 );
+ ButtonGroup1Layout->addWidget( SpinBox_BallElem_Size, 2, 3 );
+
+ ButtonGroup1Layout->addWidget( TextLabel_Width, 3, 0 );
+ ButtonGroup1Layout->addWidget( SpinBox_Width, 3, 1 );
+ ButtonGroup1Layout->addWidget( TextLabel_ShrinkCoeff, 3, 2 );
+ ButtonGroup1Layout->addWidget( SpinBox_Shrink, 3, 3 );
+
+ // -------------------------------
+ QGroupBox* ButtonGroup2 = new QGroupBox( tr( "GRP_NODES" ), this );
+ QGridLayout* ButtonGroup2Layout = new QGridLayout( ButtonGroup2 );
+ ButtonGroup2Layout->setSpacing( SPACING );
+ ButtonGroup2Layout->setMargin( MARGIN );
+
+ QLabel* TextLabel_Nodes_Color = new QLabel( tr( "NODES_COLOR_LBL" ), ButtonGroup2 );
+ btnNodeColor = new QtxColorButton( ButtonGroup2 );
+
+ QGroupBox* MarkerGroup = new QGroupBox( tr( "NODES_MARKER_LBL" ), ButtonGroup2 );
+ QVBoxLayout* MarkerGroupLayout = new QVBoxLayout( MarkerGroup );
+ MarkerGroupLayout->setSpacing( 0 );
+ MarkerGroupLayout->setMargin( 0 );
+
+ MarkerWidget = new VTKViewer_MarkerWidget( MarkerGroup );
+
+ MarkerGroupLayout->addWidget( MarkerWidget );
+
+ ButtonGroup2Layout->addWidget( TextLabel_Nodes_Color, 0, 0 );
+ ButtonGroup2Layout->addWidget( btnNodeColor, 0, 1 );
+ ButtonGroup2Layout->addWidget( MarkerGroup, 1, 0, 1, 3 );
+ ButtonGroup2Layout->setColumnStretch( 2, 1 );
+
+ // -------------------------------
+ QGroupBox* ButtonGroup3 = new QGroupBox( tr( "GRP_ORIENTATION" ), this );
+ QGridLayout* ButtonGroup3Layout = new QGridLayout( ButtonGroup3 );
+ ButtonGroup3Layout->setSpacing( SPACING );
+ ButtonGroup3Layout->setMargin( MARGIN );
+
+ QLabel* TextLabel_Orientation_Color = new QLabel( tr( "ORIENTATION_COLOR_LBL" ), ButtonGroup3 );
+ btnOrientationColor = new QtxColorButton( ButtonGroup3 );
+
+ QLabel* TextLabel_Orientation_Scale = new QLabel( tr( "ORIENTATION_SCALE_LBL" ), ButtonGroup3 );
+ SpinBox_Orientation_Scale = new SMESHGUI_SpinBox( ButtonGroup3 );
+ SpinBox_Orientation_Scale->setAcceptNames( false ); // No Notebook variables allowed
+ SpinBox_Orientation_Scale->RangeStepAndValidator( .05, .5, .05, "parametric_precision" );
+ SpinBox_Orientation_Scale->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+ SpinBox_Orientation_Scale->setButtonSymbols( QSpinBox::PlusMinus );
+
+ CheckBox_Orientation_3DVectors = new QCheckBox( tr( "3D_VECTORS_LBL" ), ButtonGroup3 );
+
+ ButtonGroup3Layout->addWidget( TextLabel_Orientation_Color, 0, 0 );
+ ButtonGroup3Layout->addWidget( btnOrientationColor, 0, 1 );
+ ButtonGroup3Layout->addWidget( TextLabel_Orientation_Scale, 0, 2 );
+ ButtonGroup3Layout->addWidget( SpinBox_Orientation_Scale, 0, 3 );
+ ButtonGroup3Layout->addWidget( CheckBox_Orientation_3DVectors, 1, 0, 1, 4 );
+
+ // -------------------------------
+ QGroupBox* ButtonGroup4 = new QGroupBox( tr( "GRP_SELECTION" ), this );
+ QGridLayout* ButtonGroup4Layout = new QGridLayout( ButtonGroup4 );
+ ButtonGroup3Layout->setSpacing( SPACING );
+ ButtonGroup3Layout->setMargin( MARGIN );
+
+ QLabel* TextLabel_Selection_Color = new QLabel( tr( "SELECTION_COLOR_LBL" ), ButtonGroup4 );
+ btnSelectionColor = new QtxColorButton( ButtonGroup4 );
+
+ QLabel* TextLabel_Preselection_Color = new QLabel( tr( "PRESELECTION_COLOR_LBL" ), ButtonGroup4 );
+ btnPreselectionColor = new QtxColorButton( ButtonGroup4 );
+
+ ButtonGroup4Layout->addWidget( TextLabel_Selection_Color, 0, 0 );
+ ButtonGroup4Layout->addWidget( btnSelectionColor, 0, 1 );
+ ButtonGroup4Layout->addWidget( TextLabel_Preselection_Color, 0, 2 );
+ ButtonGroup4Layout->addWidget( btnPreselectionColor, 0, 3 );
+
+ // -------------------------------
+ QGroupBox* GroupButtons = new QGroupBox( this );
+ QHBoxLayout* GroupButtonsLayout = new QHBoxLayout( GroupButtons );
+ GroupButtonsLayout->setSpacing( SPACING );
+ GroupButtonsLayout->setMargin( MARGIN );
+
+ QPushButton* buttonOk = new QPushButton( tr( "SMESH_BUT_OK" ), GroupButtons );
+ buttonOk->setAutoDefault( true );
+ buttonOk->setDefault( true );
+
+ QPushButton* buttonCancel = new QPushButton( tr( "SMESH_BUT_CANCEL" ), GroupButtons );
+ buttonCancel->setAutoDefault( true );
+
+ QPushButton* buttonHelp = new QPushButton( tr( "SMESH_BUT_HELP" ), GroupButtons );
+ buttonHelp->setAutoDefault( true );
+
+ GroupButtonsLayout->addWidget( buttonOk );
+ GroupButtonsLayout->addSpacing( 10 );
+ GroupButtonsLayout->addStretch();
+ GroupButtonsLayout->addWidget( buttonCancel );
+ GroupButtonsLayout->addWidget( buttonHelp );
+
+ // -------------------------------
+ topLayout->addWidget( ButtonGroup1 );
+ topLayout->addWidget( ButtonGroup2 );
+ topLayout->addWidget( ButtonGroup3 );
+ // rnv: Selection and preselection colors are defined only in the Preferences
+ // topLayout->addWidget( ButtonGroup4 );
+ ButtonGroup4->hide();
+ topLayout->addWidget( GroupButtons );
+
+ // -------------------------------
+ mySMESHGUI->SetActiveDialogBox( this );
+
+ myHelpFileName = "colors_size_page.html";
+
+ /* signals and slots connections */
+ connect( buttonOk, SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) );
+ connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( ClickOnCancel() ) );
+ connect( buttonHelp, SIGNAL( clicked() ), this, SLOT( ClickOnHelp() ) );
+
+ connect( mySMESHGUI, SIGNAL ( SignalDeactivateActiveDialog() ),
+ this, SLOT( DeactivateActiveDialog() ) );
+ /* to close dialog if study change */
+ connect( mySMESHGUI, SIGNAL ( SignalCloseAllDialogs() ),
+ this, SLOT( ClickOnCancel() ) );