From 1a6d2662df2eaeffca2933f35da1855d4499758f Mon Sep 17 00:00:00 2001 From: asl Date: Tue, 8 Nov 2005 09:03:24 +0000 Subject: [PATCH] Moving to VISU --- src/SPlot2d/SPlot2d_SetupPlot2dDlg.cxx | 687 ------------------------- src/SPlot2d/SPlot2d_SetupPlot2dDlg.h | 111 ---- 2 files changed, 798 deletions(-) delete mode 100644 src/SPlot2d/SPlot2d_SetupPlot2dDlg.cxx delete mode 100644 src/SPlot2d/SPlot2d_SetupPlot2dDlg.h diff --git a/src/SPlot2d/SPlot2d_SetupPlot2dDlg.cxx b/src/SPlot2d/SPlot2d_SetupPlot2dDlg.cxx deleted file mode 100644 index 128a8b2dd..000000000 --- a/src/SPlot2d/SPlot2d_SetupPlot2dDlg.cxx +++ /dev/null @@ -1,687 +0,0 @@ -// Copyright (C) 2003 CEA/DEN, EDF R&D -// -// -// -// File : Plot2d_SetupPlot2dDlg.cxx -// Author : Vadim SANDLER -// Module : SALOME -// $Header$ - -#include "SPlot2d_SetupPlot2dDlg.h" -#include "SPlot2d_Curve.h" - -#include "SUIT_Tools.h" -#include "SUIT_MessageBox.h" - -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -#include "utilities.h" - -using namespace std; - -#define DLG_SIZE_WIDTH 500 -#define DLG_SIZE_HEIGHT 400 -#define MAX_LINE_WIDTH 100 -#define MARGIN_SIZE 11 -#define SPACING_SIZE 6 - -/*! - Constructor -*/ -SPlot2d_SetupPlot2dDlg::SPlot2d_SetupPlot2dDlg( _PTR(SObject) object, QWidget* parent ) - : QDialog( parent, - "SPlot2d_SetupPlot2dDlg", - true, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu ) -{ - setCaption( tr("TLT_SETUP_PLOT2D") ); - setSizeGripEnabled( TRUE ); - QGridLayout* topLayout = new QGridLayout( this ); - topLayout->setSpacing( SPACING_SIZE ); - topLayout->setMargin( MARGIN_SIZE ); - - myItems.setAutoDelete( false ); - - myObject = object; - - /* Top scroll view */ - myView = new QScrollView( this ); - QFrame* frame = new QFrame( myView ); - frame->setFrameStyle( QFrame::Plain | QFrame::NoFrame ); - QGridLayout* frameLayout = new QGridLayout( frame, 1, 12 ); - frameLayout->setMargin( MARGIN_SIZE ); frameLayout->setSpacing( SPACING_SIZE ); - - QFrame* lin; - - QLabel* labAxis = new QLabel( tr( "AXIS_LBL" ), frame ); - QLabel* labData = new QLabel( tr( "DATA_LBL" ), frame ); - QLabel* labUnit = new QLabel( tr( "UNITS_LBL" ), frame ); - QLabel* labAttr = new QLabel( tr( "ATTRIBUTES_LBL" ), frame ); - labAxis->setAlignment( AlignCenter ); - labData->setAlignment( AlignCenter ); - labUnit->setAlignment( AlignCenter ); - labAttr->setAlignment( AlignCenter ); - QFont font = labAxis->font(); font.setBold( true ); - labAxis->setFont( font ); - labData->setFont( font ); - labUnit->setFont( font ); - labAttr->setFont( font ); - - frameLayout->addMultiCellWidget( labAxis, 0, 0, 0, 1 ); - lin = new QFrame( frame ); lin->setFrameStyle( QFrame::VLine | QFrame::Sunken ); - frameLayout->addWidget( lin, 0, 2 ); - frameLayout->addWidget( labData, 0, 3 ); - lin = new QFrame( frame ); lin->setFrameStyle( QFrame::VLine | QFrame::Sunken ); - frameLayout->addWidget( lin, 0, 4 ); - frameLayout->addWidget( labUnit, 0, 5 ); - lin = new QFrame( frame ); lin->setFrameStyle( QFrame::VLine | QFrame::Sunken ); - frameLayout->addWidget( lin, 0, 6 ); - frameLayout->addMultiCellWidget( labAttr, 0, 0, 7, 11 ); - frameLayout->setColStretch( 12, 5 ); - lin = new QFrame( frame ); lin->setFrameStyle( QFrame::HLine | QFrame::Sunken ); - frameLayout->addMultiCellWidget( lin, 1, 1, 0, 12 ); - - int row = 2; - _PTR(GenericAttribute) anAttr; - _PTR(AttributeTableOfInteger) tblIntAttr; - _PTR(AttributeTableOfReal) tblRealAttr; - - /* Try table of integer */ - if ( myObject->FindAttribute( anAttr, "AttributeTableOfInteger" ) ) { - tblIntAttr = anAttr; - if ( tblIntAttr ) { - try { - int nbRows = tblIntAttr->GetNbRows() ; - vector rowTitles = tblIntAttr->GetRowTitles(); - vector rowUnits = tblIntAttr->GetRowUnits(); - for ( int i = 0; i < nbRows; i++ ) { - SPlot2d_ItemContainer* item = new SPlot2d_ItemContainer( this ); - item->createWidgets( frame ); - frameLayout->addWidget( item->myHBtn, row, 0 ); - frameLayout->addWidget( item->myVBtn, row, 1 ); - frameLayout->addWidget( item->myTitleLab, row, 3 ); - if ( rowTitles.size() > 0 ) - item->myTitleLab->setText( QString( rowTitles[ i ].c_str() ) ); - frameLayout->addWidget( item->myUnitLab, row, 5 ); - if ( rowUnits.size() > 0 ) - item->myUnitLab->setText( QString( rowUnits[ i ].c_str() ) ); - frameLayout->addWidget( item->myAutoCheck, row, 7 ); - frameLayout->addWidget( item->myLineCombo, row, 8 ); - frameLayout->addWidget( item->myLineSpin, row, 9 ); - frameLayout->addWidget( item->myMarkerCombo, row, 10 ); - frameLayout->addWidget( item->myColorBtn, row, 11 ); - connect( item, SIGNAL( horToggled( bool ) ), this, SLOT( onHBtnToggled( bool ) ) ); - connect( item, SIGNAL( verToggled( bool ) ), this, SLOT( onVBtnToggled( bool ) ) ); - myItems.append( item ); - row++; - } - } - catch( ... ) { - MESSAGE("SPlot2d_SetupPlot2dDlg::SPlot2d_SetupPlot2dDlg : Exception has been caught (int)!!!"); - } - } - } - /* Try table of real */ - else if ( myObject->FindAttribute( anAttr, "AttributeTableOfReal" ) ) { - tblRealAttr = anAttr; - if ( tblRealAttr ) { - try { - int nbRows = tblRealAttr->GetNbRows() ; - vector rowTitles = tblRealAttr->GetRowTitles(); - vector rowUnits = tblRealAttr->GetRowUnits(); - for ( int i = 0; i < nbRows; i++ ) { - SPlot2d_ItemContainer* item = new SPlot2d_ItemContainer( this ); - item->createWidgets( frame ); - frameLayout->addWidget( item->myHBtn, row, 0 ); - frameLayout->addWidget( item->myVBtn, row, 1 ); - frameLayout->addWidget( item->myTitleLab, row, 3 ); - if ( rowTitles.size() > 0 ) - item->myTitleLab->setText( QString( rowTitles[ i ].c_str() ) ); - frameLayout->addWidget( item->myUnitLab, row, 5 ); - if ( rowUnits.size() > 0 ) - item->myUnitLab->setText( QString( rowUnits[ i ].c_str() ) ); - frameLayout->addWidget( item->myAutoCheck, row, 7 ); - frameLayout->addWidget( item->myLineCombo, row, 8 ); - frameLayout->addWidget( item->myLineSpin, row, 9 ); - frameLayout->addWidget( item->myMarkerCombo, row, 10 ); - frameLayout->addWidget( item->myColorBtn, row, 11 ); - connect( item, SIGNAL( horToggled( bool ) ), this, SLOT( onHBtnToggled( bool ) ) ); - connect( item, SIGNAL( verToggled( bool ) ), this, SLOT( onVBtnToggled( bool ) ) ); - myItems.append( item ); - row++; - } - } - catch( ... ) { - MESSAGE("SPlot2d_SetupPlot2dDlg::SPlot2d_SetupPlot2dDlg : Exception has been caught (real)!!!"); - } - } - } - lin = new QFrame( frame ); lin->setFrameStyle( QFrame::VLine | QFrame::Sunken ); - frameLayout->addMultiCellWidget( lin, 2, row+1, 2, 2 ); - lin = new QFrame( frame ); lin->setFrameStyle( QFrame::VLine | QFrame::Sunken ); - frameLayout->addMultiCellWidget( lin, 2, row+1, 4, 4 ); - lin = new QFrame( frame ); lin->setFrameStyle( QFrame::VLine | QFrame::Sunken ); - frameLayout->addMultiCellWidget( lin, 2, row+1, 6, 6 ); - frameLayout->setRowStretch( row+1, 5 ); - - myView->addChild( frame, 0, 0 ); - myView->setResizePolicy( QScrollView::AutoOneFit ); - - myView->setMinimumWidth( frame->sizeHint().width() + MARGIN_SIZE * 2 ); - - /* OK/Cancel buttons */ - myOkBtn = new QPushButton( tr( "BUT_OK" ), this, "buttonOk" ); - myOkBtn->setAutoDefault( TRUE ); - myOkBtn->setDefault( TRUE ); - myCancelBtn = new QPushButton( tr( "BUT_CANCEL" ), this, "buttonCancel" ); - myCancelBtn->setAutoDefault( TRUE ); - - topLayout->addMultiCellWidget( myView, 0, 0, 0, 2 ); - topLayout->addWidget( myOkBtn, 1, 0 ); - topLayout->setColStretch( 1, 5 ); - topLayout->addWidget( myCancelBtn, 1, 2 ); - - connect( myOkBtn, SIGNAL( clicked() ), this, SLOT( accept() ) ); - connect( myCancelBtn, SIGNAL( clicked() ), this, SLOT( reject() ) ); - - enableControls(); - - /* Center widget inside it's parent widget */ - resize( DLG_SIZE_WIDTH, DLG_SIZE_HEIGHT ); - SUIT_Tools::centerWidget( this, parentWidget() ); -} -/*! - Destructor -*/ -SPlot2d_SetupPlot2dDlg::~SPlot2d_SetupPlot2dDlg() -{ -} -/*! - Gets curves info ( indexes of row data in the table for horizontal and verical axes ) -*/ -void SPlot2d_SetupPlot2dDlg::getCurvesSource( int& horIndex, QValueList& verIndexes ) -{ - /* collecting horizontal and vertical axis items */ - horIndex = -1; - int i; - for ( i = 0; i < myItems.count(); i++ ) { - if ( myItems.at( i )->isHorizontalOn() ) { - horIndex = i; - } - else if ( myItems.at( i )->isVerticalOn() ) { - verIndexes.append( i ); - } - } -} -/*! - Gets curve attributes -*/ -bool SPlot2d_SetupPlot2dDlg::getCurveAttributes( const int vIndex, - bool& isAuto, - int& marker, - int& line, - int& lineWidth, - QColor& color) -{ - if ( vIndex >= 0 && vIndex < myItems.count() ) { - isAuto = myItems.at( vIndex )->isAutoAssign(); - marker = myItems.at( vIndex )->getMarker(); - line = myItems.at( vIndex )->getLine(); - lineWidth = myItems.at( vIndex )->getLineWidth(); - color = myItems.at( vIndex )->getColor(); - return true; - } - return false; -} -/*! - Creates and returns curves presentations -*/ -void SPlot2d_SetupPlot2dDlg::getCurves( QPtrList& container ) -{ - _PTR(GenericAttribute) anAttr; - _PTR(AttributeTableOfInteger) tblIntAttr; - _PTR(AttributeTableOfReal) tblRealAttr; - - /* clearing container contents */ - container.clear(); - - /* collecting horizontal and vertical axis items */ - int horIndex; - int i, j; - QValueList verIndex; - getCurvesSource( horIndex, verIndex ); - if ( horIndex < 0 || verIndex.isEmpty() ) /* no curves can be created */ - return; - - /* Try table of integer */ - if ( myObject->FindAttribute( anAttr, "AttributeTableOfInteger" ) ) { - tblIntAttr = anAttr; - if ( tblIntAttr ) { - try { - int nbCols = tblIntAttr->GetNbColumns() ; - vector rowTitles = tblIntAttr->GetRowTitles(); - vector rowUnits = tblIntAttr->GetRowUnits(); - - for ( i = 0; i < verIndex.count(); i++ ) { - SPlot2d_Curve* curve = new SPlot2d_Curve(); - // curve titles - if ( rowTitles.size() > 0 ) { - curve->setHorTitle( QString( rowTitles[ horIndex ].c_str() ) ); - curve->setVerTitle( QString( rowTitles[ verIndex[i] ].c_str() ) ); - } - // curve units - if ( rowUnits.size() > 0 ) { - curve->setHorUnits( QString( rowUnits[ horIndex ].c_str() ) ); - curve->setVerUnits( QString( rowUnits[ verIndex[i] ].c_str() ) ); - } - // curve data - int nbPoints = 0; - for ( j = 1; j <= nbCols; j++ ) { - if ( tblIntAttr->HasValue( horIndex+1, j ) && tblIntAttr->HasValue( verIndex[i]+1, j ) ) - nbPoints++; - } - if ( nbPoints > 0 ) { - double* xList = new double[ nbPoints ]; - double* yList = new double[ nbPoints ]; - for ( j = 1; j <= nbCols; j++ ) { - if ( tblIntAttr->HasValue( horIndex+1, j ) && tblIntAttr->HasValue( verIndex[i]+1, j ) ) { - xList[j-1] = tblIntAttr->GetValue( horIndex +1, j ); - yList[j-1] = tblIntAttr->GetValue( verIndex[i]+1, j ); - } - } - curve->setData( xList, yList, nbPoints ); - } - // curve attributes - curve->setLine( (Plot2d_Curve::LineType)myItems.at( verIndex[i] )->getLine(), myItems.at( verIndex[i] )->getLineWidth() ); - curve->setMarker( (Plot2d_Curve::MarkerType)myItems.at( verIndex[i] )->getMarker() ); - curve->setColor( myItems.at( verIndex[i] )->getColor() ); - curve->setAutoAssign( myItems.at( verIndex[i] )->isAutoAssign() ); - // add curve into container - container.append( curve ); - } - } - catch( ... ) { - MESSAGE("SPlot2d_SetupPlot2dDlg::getCurves : Exception has been caught (int)!!!"); - } - } - } - /* Try table of real */ - else if ( myObject->FindAttribute( anAttr, "AttributeTableOfReal" ) ) { - tblRealAttr = anAttr; - if ( tblRealAttr ) { - try { - int nbCols = tblRealAttr->GetNbColumns() ; - vector rowTitles = tblRealAttr->GetRowTitles(); - vector rowUnits = tblRealAttr->GetRowUnits(); - - for ( i = 0; i < verIndex.count(); i++ ) { - SPlot2d_Curve* curve = new SPlot2d_Curve(); - // curve titles - if ( rowTitles.size() > 0 ) { - curve->setHorTitle( QString( rowTitles[ horIndex ].c_str() ) ); - curve->setVerTitle( QString( rowTitles[ verIndex[i] ].c_str() ) ); - } - // curve units - if ( rowUnits.size() > 0 ) { - curve->setHorUnits( QString( rowUnits[ horIndex ].c_str() ) ); - curve->setVerUnits( QString( rowUnits[ verIndex[i] ].c_str() ) ); - } - // curve data - int nbPoints = 0; - for ( j = 1; j <= nbCols; j++ ) { - if ( tblRealAttr->HasValue( horIndex+1, j ) && tblRealAttr->HasValue( verIndex[i]+1, j ) ) - nbPoints++; - } - if ( nbPoints > 0 ) { - double* xList = new double[ nbPoints ]; - double* yList = new double[ nbPoints ]; - for ( j = 1; j <= nbCols; j++ ) { - if ( tblRealAttr->HasValue( horIndex+1, j ) && tblRealAttr->HasValue( verIndex[i]+1, j ) ) { - xList[j-1] = tblRealAttr->GetValue( horIndex +1, j ); - yList[j-1] = tblRealAttr->GetValue( verIndex[i]+1, j ); - } - } - curve->setData( xList, yList, nbPoints ); - } - // curve attributes - curve->setLine( (Plot2d_Curve::LineType)myItems.at( verIndex[i] )->getLine(), myItems.at( verIndex[i] )->getLineWidth() ); - curve->setMarker( (Plot2d_Curve::MarkerType)myItems.at( verIndex[i] )->getMarker() ); - curve->setColor( myItems.at( verIndex[i] )->getColor() ); - curve->setAutoAssign( myItems.at( verIndex[i] )->isAutoAssign() ); - // add curve into container - container.append( curve ); - } - } - catch( ... ) { - MESSAGE("SPlot2d_SetupPlot2dDlg::getCurves : Exception has been caught (real)!!!"); - } - } - } -} -/*! - Slot, called when any button is clicked -*/ -void SPlot2d_SetupPlot2dDlg::onHBtnToggled( bool on ) -{ - SPlot2d_ItemContainer* item = ( SPlot2d_ItemContainer* )sender(); - if ( on ) { - for ( int i = 0; i < myItems.count(); i++ ) { - if ( myItems.at( i ) != item ) - myItems.at( i )->setHorizontalOn( false ); - } - } - enableControls(); -} -/*! - Slot, called when any button is clicked -*/ -void SPlot2d_SetupPlot2dDlg::onVBtnToggled( bool on ) -{ - SPlot2d_ItemContainer* item = ( SPlot2d_ItemContainer* )sender(); - QPtrList itemList; - itemList.setAutoDelete( false ); - int i; - if ( on ) { - int totalOn = 0; - for ( i = 0; i < myItems.count(); i++ ) { - if ( myItems.at( i ) != item && !myItems.at( i )->isHorizontalOn() ) { - if ( myItems.at( i )->myUnitLab->text() == item->myUnitLab->text() ) { - if ( myItems.at( i )->isVerticalOn() ) - totalOn++; - else - itemList.append( myItems.at( i ) ); - } - else { - myItems.at( i )->setVerticalOn( false ); - } - } - } - if ( totalOn == 0 && !itemList.isEmpty() && - SUIT_MessageBox::info2( this, - this->caption(), - tr( "QUE_WANT_SAME_UNITS" ), - tr( "BUT_YES" ), - tr( "BUT_NO" ), - 0, 1, 1 ) == 0 ) { - for ( i = 0; i < itemList.count(); i++ ) { - itemList.at( i )->blockSignals( true ); - itemList.at( i )->setVerticalOn( true ); - itemList.at( i )->blockSignals( false ); - } - } - } - enableControls(); -} -/*! - Enables/disables buttons -*/ -void SPlot2d_SetupPlot2dDlg::enableControls() -{ - bool bHSet = false; - bool bVSet = false; - for ( int i = 0; i < myItems.count(); i++ ) { - if ( myItems.at( i )->isHorizontalOn() ) { - bHSet = true; - break; - } - } -#ifndef WNT - for ( int i = 0; i < myItems.count(); i++ ) { -#else - for ( i = 0; i < myItems.count(); i++ ) { -#endif - if ( myItems.at( i )->isVerticalOn() ) - bVSet = true; - myItems.at( i )->enableWidgets( bHSet && myItems.at( i )->isVerticalOn() ); - } - myOkBtn->setEnabled( bHSet && bVSet ); -} - -// ==================================================================================== -/*! - Constructor -*/ -SPlot2d_ItemContainer::SPlot2d_ItemContainer( QObject* parent, const char* name ) - : QObject( parent, name ), - myEnabled( true ) -{ -} -/*! - Creates widgets -*/ -void SPlot2d_ItemContainer::createWidgets( QWidget* parentWidget ) -{ - myHBtn = new QToolButton( parentWidget ); - myHBtn->setText( tr( "H" ) ); - myHBtn->setToggleButton( true ); - myHBtn->setOn( false ); - - myVBtn = new QToolButton( parentWidget ); - myVBtn->setText( tr( "V" ) ); - myVBtn->setToggleButton( true ); - myVBtn->setOn( false ); - - myTitleLab = new QLabel( parentWidget ); - myUnitLab = new QLabel( parentWidget ); - myUnitLab->setAlignment( AlignCenter); - - myAutoCheck = new QCheckBox( tr( "AUTO_CHECK_LBL" ), parentWidget ); - myAutoCheck->setChecked( true ); - - myLineCombo = new QComboBox( false, parentWidget ); - myLineCombo->insertItem( tr( "NONE_LINE_LBL" ) ); - myLineCombo->insertItem( tr( "SOLID_LINE_LBL" ) ); - myLineCombo->insertItem( tr( "DASH_LINE_LBL" ) ); - myLineCombo->insertItem( tr( "DOT_LINE_LBL" ) ); - myLineCombo->insertItem( tr( "DASHDOT_LINE_LBL" ) ); - myLineCombo->insertItem( tr( "DAHSDOTDOT_LINE_LBL" ) ); - myLineCombo->setCurrentItem( 1 ); // SOLID by default - - myLineSpin = new QSpinBox( 0, MAX_LINE_WIDTH, 1, parentWidget ); - myLineSpin->setValue( 0 ); // width = 0 by default - - myMarkerCombo = new QComboBox( false, parentWidget ); - myMarkerCombo->insertItem( tr( "NONE_MARKER_LBL" ) ); - myMarkerCombo->insertItem( tr( "CIRCLE_MARKER_LBL" ) ); - myMarkerCombo->insertItem( tr( "RECTANGLE_MARKER_LBL" ) ); - myMarkerCombo->insertItem( tr( "DIAMOND_MARKER_LBL" ) ); - myMarkerCombo->insertItem( tr( "DTRIANGLE_MARKER_LBL" ) ); - myMarkerCombo->insertItem( tr( "UTRIANGLE_MARKER_LBL" ) ); - myMarkerCombo->insertItem( tr( "LTRIANGLE_MARKER_LBL" ) ); - myMarkerCombo->insertItem( tr( "RTRIANGLE_MARKER_LBL" ) ); - myMarkerCombo->insertItem( tr( "CROSS_MARKER_LBL" ) ); - myMarkerCombo->insertItem( tr( "XCROSS_MARKER_LBL" ) ); - myMarkerCombo->setCurrentItem( 1 ); // CIRCLE by default - - myColorBtn = new QToolButton( parentWidget ); - myColorBtn->setMinimumWidth( 20 ); - - connect( myAutoCheck, SIGNAL( clicked() ), this, SLOT( onAutoChanged() ) ); - connect( myColorBtn, SIGNAL( clicked() ), this, SLOT( onColorChanged() ) ); - connect( myHBtn, SIGNAL( toggled( bool ) ), this, SLOT( onHVToggled( bool ) ) ); - connect( myVBtn, SIGNAL( toggled( bool ) ), this, SLOT( onHVToggled( bool ) ) ); - setColor( QColor( 0, 0, 0 ) ); - updateState(); -} -/*! - Enables attributes widgets -*/ -void SPlot2d_ItemContainer::enableWidgets( bool enable ) -{ - myEnabled = enable; - updateState(); -} -/*! - Sets horizontal button's state on -*/ -void SPlot2d_ItemContainer::setHorizontalOn( bool on ) -{ - myHBtn->setOn( on ); -} -/*! - Gets horizontal button's state -*/ -bool SPlot2d_ItemContainer::isHorizontalOn() const -{ - return myHBtn->isOn(); -} -/*! - Sets vertical button's state on -*/ -void SPlot2d_ItemContainer::setVerticalOn( bool on ) -{ - myVBtn->setOn( on ); -} -/*! - Gets vertical button's state -*/ -bool SPlot2d_ItemContainer::isVerticalOn() const -{ - return myVBtn->isOn(); -} -/*! - Sets item AutoAssign flag state -*/ -void SPlot2d_ItemContainer::setAutoAssign( bool on ) -{ - myAutoCheck->setChecked( on ); - updateState(); -} -/*! - Gets item AutoAssign flag state -*/ -bool SPlot2d_ItemContainer::isAutoAssign() const -{ - return myAutoCheck->isChecked(); -} -/*! - Sets item line type and width -*/ -void SPlot2d_ItemContainer::setLine( const int line, const int width ) -{ - myLineCombo->setCurrentItem( line ); -} -/*! - Gets item line type -*/ -int SPlot2d_ItemContainer::getLine() const -{ - return myLineCombo->currentItem(); -} -/*! - Gets item line width -*/ -int SPlot2d_ItemContainer::getLineWidth() const -{ - return myLineSpin->value(); -} -/*! - Sets item marker type -*/ -void SPlot2d_ItemContainer::setMarker( const int marker ) -{ - myMarkerCombo->setCurrentItem( marker ); -} -/*! - Gets item marker type -*/ -int SPlot2d_ItemContainer::getMarker() const -{ - return myMarkerCombo->currentItem(); -} -/*! - Sets item color -*/ -void SPlot2d_ItemContainer::setColor( const QColor& color ) -{ - QPalette pal = myColorBtn->palette(); - QColorGroup ca = pal.active(); - ca.setColor( QColorGroup::Button, color ); - QColorGroup ci = pal.inactive(); - ci.setColor( QColorGroup::Button, color ); - pal.setActive( ca ); - pal.setInactive( ci ); - myColorBtn->setPalette( pal ); -} -/*! - Gets item color -*/ -QColor SPlot2d_ItemContainer::getColor() const -{ - return myColorBtn->palette().active().button(); -} -/*! - Enables/disables widgets -*/ -void SPlot2d_ItemContainer::updateState() -{ - myAutoCheck->setEnabled( myEnabled ); - myLineCombo->setEnabled( myEnabled && !myAutoCheck->isChecked() ); - myLineSpin->setEnabled( myEnabled && !myAutoCheck->isChecked() ); - myMarkerCombo->setEnabled( myEnabled && !myAutoCheck->isChecked() ); - myColorBtn->setEnabled( myEnabled && !myAutoCheck->isChecked() ); -} -/*! - Slot, called when user clickes check box -*/ -void SPlot2d_ItemContainer::onAutoChanged() -{ - updateState(); - emit( autoClicked() ); -} -/*! - button slot, invokes color selection dialog box -*/ -void SPlot2d_ItemContainer::onColorChanged() -{ - QColor color = QColorDialog::getColor( getColor() ); - if ( color.isValid() ) { - setColor( color ); - } -} -/*! - and buttons slot -*/ -void SPlot2d_ItemContainer::onHVToggled( bool on ) -{ - const QObject* snd = sender(); - if ( snd == myHBtn ) { - if ( on ) { - if ( myVBtn->isOn() ) { -// blockSignals( true ); - myVBtn->setOn( false ); -// blockSignals( false ); - } - } - emit horToggled( on ); - } - else { - if ( on ) { - if ( myHBtn->isOn() ) { -// blockSignals( true ); - myHBtn->setOn( false ); -// blockSignals( false ); - } - } - emit verToggled( on ); - } -} - - - - - diff --git a/src/SPlot2d/SPlot2d_SetupPlot2dDlg.h b/src/SPlot2d/SPlot2d_SetupPlot2dDlg.h deleted file mode 100644 index 99e3ae824..000000000 --- a/src/SPlot2d/SPlot2d_SetupPlot2dDlg.h +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright (C) 2003 CEA/DEN, EDF R&D -// -// -// -// File : SPlot2d_SetupPlot2dDlg.h -// Author : Vadim SANDLER -// Module : SALOME -// $Header$ - -#ifndef SPlot2d_SetupPlot2dDlg_H -#define SPlot2d_SetupPlot2dDlg_H - -#include "Plot2d_Curve.h" - -#include - -#include -#include - -//================================================================================= -// class : SPlot2d_SetupPlot2dDlg -// purpose : Dialog box for setup Plot2d view -//================================================================================= - -class QScrollView; -class QPushButton; -class QLabel; -class QCheckBox; -class QComboBox; -class QSpinBox; -class QToolButton; -class SPlot2d_ItemContainer; - -class SPlot2d_SetupPlot2dDlg : public QDialog -{ - Q_OBJECT - -public: - SPlot2d_SetupPlot2dDlg( _PTR(SObject) object, QWidget* parent = 0 ); - ~SPlot2d_SetupPlot2dDlg(); - - void getCurves( QPtrList& container ); - void getCurvesSource( int& horIndex, QValueList& verIndexes ); - bool getCurveAttributes( const int vIndex, bool& isAuto, int& marker, int& line, int& lineWidth, QColor& color); - -private slots: - void onHBtnToggled( bool ); - void onVBtnToggled( bool ); - void enableControls(); - -private: - QScrollView* myView; - QPushButton* myOkBtn; - QPushButton* myCancelBtn; - QPtrList myItems; - - _PTR(SObject) myObject; -}; - -class SPlot2d_ItemContainer : public QObject -{ - Q_OBJECT - -public: - SPlot2d_ItemContainer( QObject* parent = 0, const char* name = 0 ); - - void createWidgets( QWidget* parentWidget ); - void enableWidgets( bool enable ); - - void setHorizontalOn( bool on ); - bool isHorizontalOn() const; - void setVerticalOn( bool on ); - bool isVerticalOn() const; - bool isAutoAssign() const; - void setAutoAssign( bool on ); - void setLine( const int line, const int width ); - int getLine() const; - int getLineWidth() const; - void setMarker( const int marker ); - int getMarker() const; - void setColor( const QColor& color ); - QColor getColor() const; - -protected: - void updateState(); - -signals: - void autoClicked(); - void horToggled( bool ); - void verToggled( bool ); - -public slots: - void onAutoChanged(); - void onColorChanged(); - void onHVToggled( bool ); - -public: - bool myEnabled; - QToolButton* myHBtn; - QToolButton* myVBtn; - QLabel* myTitleLab; - QLabel* myUnitLab; - QCheckBox* myAutoCheck; - QComboBox* myLineCombo; - QSpinBox* myLineSpin; - QComboBox* myMarkerCombo; - QToolButton* myColorBtn; -}; - -#endif // SPlot2d_SetupPlot2dDlg_H - -- 2.39.2