bool ossimPlanetTextureLayerGroup::swapLayers(osg::ref_ptr<ossimPlanetTextureLayer> layer1, osg::ref_ptr<ossimPlanetTextureLayer> layer2, bool notifyFlag) { ossim_int32 idx1 = findLayerIndex(layer1.get()); ossim_int32 idx2 = findLayerIndex(layer2.get()); if(idx1 < 0 || idx2 < 0) return false; return swapLayers(idx1, idx2, notifyFlag); }
LayerDialog::LayerDialog( QWidget* parent, Qt::WFlags fl ) : QDialog( parent, fl ) { setName("LayerDialog"); setWindowTitle(tr( "MantidPlot - Arrange Layers" )); QGroupBox *gb1 = new QGroupBox(tr("Layers")); QGridLayout *gl1 = new QGridLayout(gb1); gl1->addWidget(new QLabel(tr("Number")), 0, 0); layersBox = new QSpinBox(); layersBox->setRange(0, 100); gl1->addWidget(layersBox, 0, 1); fitBox = new QCheckBox(tr("Automatic &layout")); fitBox->setChecked(false); gl1->addWidget(fitBox, 1, 1); gl1->setRowStretch(2, 1); QGroupBox *gb2 = new QGroupBox(tr("Alignment")); QGridLayout *gl2 = new QGridLayout(gb2); gl2->addWidget(new QLabel(tr("Horizontal")), 0, 0); alignHorBox = new QComboBox( ); alignHorBox->insertItem( tr( "Center" ) ); alignHorBox->insertItem( tr( "Left" ) ); alignHorBox->insertItem( tr( "Right" ) ); gl2->addWidget(alignHorBox, 0, 1); gl2->addWidget(new QLabel( tr( "Vertical" )), 1, 0 ); alignVertBox = new QComboBox(); alignVertBox->insertItem( tr( "Center" ) ); alignVertBox->insertItem( tr( "Top" ) ); alignVertBox->insertItem( tr( "Bottom" ) ); gl2->addWidget(alignVertBox, 1, 1); gl2->setRowStretch(2, 1); GroupGrid = new QGroupBox(tr("Grid")); QGridLayout *gl3 = new QGridLayout(GroupGrid); gl3->addWidget(new QLabel(tr("Columns")), 0, 0); boxX = new QSpinBox(); boxX->setRange(1, 100); gl3->addWidget(boxX, 0, 1); gl3->addWidget(new QLabel( tr( "Rows" )), 1, 0); boxY = new QSpinBox(); boxY->setRange(1, 100); gl3->addWidget(boxY, 1, 1); GroupCanvasSize = new QGroupBox(tr("&Layer Canvas Size")); GroupCanvasSize->setCheckable(true); GroupCanvasSize->setChecked(false); QGridLayout *gl5 = new QGridLayout(GroupCanvasSize); gl5->addWidget(new QLabel(tr("Width")), 0, 0); boxCanvasWidth = new QSpinBox(); boxCanvasWidth->setRange(0, 10000); boxCanvasWidth->setSingleStep(50); boxCanvasWidth->setSuffix(tr(" pixels")); gl5->addWidget(boxCanvasWidth, 0, 1); gl5->addWidget(new QLabel( tr( "Height" )), 1, 0); boxCanvasHeight = new QSpinBox(); boxCanvasHeight->setRange(0, 10000); boxCanvasHeight->setSingleStep(50); boxCanvasHeight->setSuffix(tr(" pixels")); gl5->addWidget(boxCanvasHeight, 1, 1); QGroupBox *gb4 = new QGroupBox(tr("Spacing")); QGridLayout *gl4 = new QGridLayout(gb4); gl4->addWidget(new QLabel(tr("Columns gap")), 0, 0); boxColsGap = new QSpinBox(); boxColsGap->setRange(0, 1000); boxColsGap->setSingleStep(5); boxColsGap->setSuffix(tr(" pixels")); gl4->addWidget(boxColsGap, 0, 1); gl4->addWidget(new QLabel( tr( "Rows gap" )), 1, 0); boxRowsGap = new QSpinBox(); boxRowsGap->setRange(0, 1000); boxRowsGap->setSingleStep(5); boxRowsGap->setSuffix(tr(" pixels")); gl4->addWidget(boxRowsGap, 1, 1); gl4->addWidget(new QLabel( tr( "Left margin" )), 2, 0); boxLeftSpace = new QSpinBox(); boxLeftSpace->setRange(0, 1000); boxLeftSpace->setSingleStep(5); boxLeftSpace->setSuffix(tr(" pixels")); gl4->addWidget(boxLeftSpace, 2, 1); gl4->addWidget(new QLabel( tr( "Right margin" )), 3, 0); boxRightSpace = new QSpinBox(); boxRightSpace->setRange(0, 1000); boxRightSpace->setSingleStep(5); boxRightSpace->setSuffix(tr(" pixels")); gl4->addWidget(boxRightSpace, 3, 1); gl4->addWidget(new QLabel( tr( "Top margin" )), 4, 0); boxTopSpace = new QSpinBox(); boxTopSpace->setRange(0, 1000); boxTopSpace->setSingleStep(5); boxTopSpace->setSuffix(tr(" pixels")); gl4->addWidget(boxTopSpace, 4, 1); gl4->addWidget(new QLabel( tr( "Bottom margin") ), 5, 0); boxBottomSpace = new QSpinBox(); boxBottomSpace->setRange(0, 1000); boxBottomSpace->setSingleStep(5); boxBottomSpace->setSuffix(tr(" pixels")); gl4->addWidget(boxBottomSpace, 5, 1); QVBoxLayout *vbox1 = new QVBoxLayout(); vbox1->addWidget(GroupGrid); vbox1->addWidget(GroupCanvasSize); buttonApply = new QPushButton(tr( "&Apply" )); buttonOk = new QPushButton(tr( "&OK" )); buttonCancel = new QPushButton(tr( "&Cancel" )); QHBoxLayout *hbox1 = new QHBoxLayout(); hbox1->addStretch(); hbox1->addWidget(buttonApply); hbox1->addWidget(buttonOk); hbox1->addWidget(buttonCancel); QGroupBox *gb5 = new QGroupBox(tr("Swap Layers")); QHBoxLayout *hbox2 = new QHBoxLayout(gb5); hbox2->addWidget(new QLabel( tr( "Source Layer") )); boxLayerSrc = new QSpinBox(); hbox2->addWidget(boxLayerSrc); hbox2->addWidget(new QLabel( tr( "Destination Layer") )); boxLayerDest = new QSpinBox(); hbox2->addWidget(boxLayerDest); buttonSwapLayers = new QPushButton(tr( "&Swap" )); hbox2->addWidget(buttonSwapLayers); QGridLayout *gl6 = new QGridLayout(); gl6->addWidget(gb1, 0, 0); gl6->addWidget(gb2, 0, 1); gl6->addLayout(vbox1, 1, 0); gl6->addWidget(gb4, 1, 1); gl6->setRowStretch(2, 1); QVBoxLayout *vbox2 = new QVBoxLayout(this); vbox2->addLayout(gl6); vbox2->addWidget(gb5); vbox2->addStretch(); vbox2->addLayout(hbox1); connect( buttonSwapLayers, SIGNAL( clicked() ), this, SLOT( swapLayers() ) ); connect( buttonOk, SIGNAL( clicked() ), this, SLOT( accept() ) ); connect( buttonApply, SIGNAL( clicked() ), this, SLOT(update() ) ); connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( reject() ) ); connect( fitBox, SIGNAL( toggled(bool) ), this, SLOT(enableLayoutOptions(bool) ) ); }
LayerDialog::LayerDialog( QWidget* parent, bool okMode, Qt::WFlags fl ) : QDialog(parent, fl), multi_layer(NULL) { setName("LayerDialog"); setWindowTitle(tr( "QtiPlot - Arrange Layers" )); setAttribute(Qt::WA_DeleteOnClose); QGroupBox *gb1 = new QGroupBox(tr("Layers")); QGridLayout *gl1 = new QGridLayout(gb1); gl1->addWidget(new QLabel(tr("Number")), 0, 0); layersBox = new QSpinBox(); layersBox->setRange(0, 100); gl1->addWidget(layersBox, 0, 1); linkXAxesBox = new QCheckBox(tr("Link &X axes")); linkXAxesBox->setChecked(false); gl1->addWidget(linkXAxesBox, 1, 0); fitBox = new QCheckBox(tr("Automatic &layout")); fitBox->setChecked(false); gl1->addWidget(fitBox, 1, 1); gl1->setRowStretch(2, 1); QGroupBox *gb2 = new QGroupBox(tr("Alignment")); QGridLayout *gl2 = new QGridLayout(gb2); gl2->addWidget(new QLabel(tr("Horizontal")), 0, 0); alignHorBox = new QComboBox( false ); alignHorBox->insertItem( tr( "Center" ) ); alignHorBox->insertItem( tr( "Left" ) ); alignHorBox->insertItem( tr( "Right" ) ); gl2->addWidget(alignHorBox, 0, 1); gl2->addWidget(new QLabel( tr( "Vertical" )), 1, 0 ); alignVertBox = new QComboBox( false ); alignVertBox->insertItem( tr( "Center" ) ); alignVertBox->insertItem( tr( "Top" ) ); alignVertBox->insertItem( tr( "Bottom" ) ); gl2->addWidget(alignVertBox, 1, 1); gl2->setRowStretch(2, 1); GroupGrid = new QGroupBox(tr("Grid")); QGridLayout *gl3 = new QGridLayout(GroupGrid); gl3->addWidget(new QLabel(tr("Columns")), 0, 0); boxX = new QSpinBox(); boxX->setRange(1, 100); gl3->addWidget(boxX, 0, 1); gl3->addWidget(new QLabel( tr( "Rows" )), 1, 0); boxY = new QSpinBox(); boxY->setRange(1, 100); gl3->addWidget(boxY, 1, 1); gl3->setRowStretch(2, 1); GroupCanvasSize = new QGroupBox(tr("&Layer Canvas Size")); GroupCanvasSize->setCheckable(true); GroupCanvasSize->setChecked(false); QGridLayout *gl5 = new QGridLayout(GroupCanvasSize); gl5->addWidget(new QLabel(tr("Unit")), 0, 0); unitBox = new QComboBox(); unitBox->insertItem(tr("inch")); unitBox->insertItem(tr("mm")); unitBox->insertItem(tr("cm")); unitBox->insertItem(tr("point")); unitBox->insertItem(tr("pixel")); gl5->addWidget(unitBox, 0, 1); QLocale locale = QLocale(); gl5->addWidget(new QLabel(tr("Width")), 1, 0); boxCanvasWidth = new DoubleSpinBox(); boxCanvasWidth->setRange(0, 10000); boxCanvasWidth->setLocale(locale); boxCanvasWidth->setDecimals(6); gl5->addWidget(boxCanvasWidth, 1, 1); gl5->addWidget(new QLabel( tr( "Height" )), 2, 0); boxCanvasHeight = new DoubleSpinBox(); boxCanvasHeight->setRange(0, 10000); boxCanvasHeight->setLocale(locale); boxCanvasHeight->setDecimals(6); gl5->addWidget(boxCanvasHeight, 2, 1); keepRatioBox = new QCheckBox(tr("&Keep aspect ratio")); keepRatioBox->setChecked(true); gl5->addWidget(keepRatioBox, 3, 1); fixedSizeBox = new QCheckBox(tr("&Fixed size")); gl5->addWidget(fixedSizeBox, 3, 0); QGroupBox *gb4 = new QGroupBox(tr("Spacing")); QGridLayout *gl4 = new QGridLayout(gb4); gl4->addWidget(new QLabel(tr("Align")), 0, 0); alignPolicyBox = new QComboBox(); alignPolicyBox->addItem(tr("Layers")); alignPolicyBox->addItem(tr("Canvases")); gl4->addWidget(alignPolicyBox, 0, 1); gl4->addWidget(new QLabel(tr("Columns gap")), 1, 0); boxColsGap = new QSpinBox(); boxColsGap->setRange(0, 1000); boxColsGap->setSingleStep(5); boxColsGap->setSuffix(tr(" pixels")); gl4->addWidget(boxColsGap, 1, 1); gl4->addWidget(new QLabel( tr( "Rows gap" )), 2, 0); boxRowsGap = new QSpinBox(); boxRowsGap->setRange(0, 1000); boxRowsGap->setSingleStep(5); boxRowsGap->setSuffix(tr(" pixels")); gl4->addWidget(boxRowsGap, 2, 1); commonAxesBox = new QCheckBox(tr("Co&mmon axes")); commonAxesBox->hide(); gl4->addWidget(commonAxesBox, 3, 1); QGroupBox *gb7 = new QGroupBox(tr("Margins")); gl4 = new QGridLayout(gb7); gl4->addWidget(new QLabel( tr( "Left margin" )), 0, 0); boxLeftSpace = new QSpinBox(); boxLeftSpace->setRange(0, 1000); boxLeftSpace->setSingleStep(5); boxLeftSpace->setSuffix(tr(" pixels")); gl4->addWidget(boxLeftSpace, 0, 1); gl4->addWidget(new QLabel( tr( "Right margin" )), 1, 0); boxRightSpace = new QSpinBox(); boxRightSpace->setRange(0, 1000); boxRightSpace->setSingleStep(5); boxRightSpace->setSuffix(tr(" pixels")); gl4->addWidget(boxRightSpace, 1, 1); gl4->addWidget(new QLabel( tr( "Top margin" )), 2, 0); boxTopSpace = new QSpinBox(); boxTopSpace->setRange(0, 1000); boxTopSpace->setSingleStep(5); boxTopSpace->setSuffix(tr(" pixels")); gl4->addWidget(boxTopSpace, 2, 1); gl4->addWidget(new QLabel( tr( "Bottom margin") ), 3, 0); boxBottomSpace = new QSpinBox(); boxBottomSpace->setRange(0, 1000); boxBottomSpace->setSingleStep(5); boxBottomSpace->setSuffix(tr(" pixels")); gl4->addWidget(boxBottomSpace, 3, 1); gl4->setRowStretch(4, 1); buttonOk = new QPushButton(tr( "&OK" )); buttonCancel = new QPushButton(tr( "&Cancel" )); buttonApply = NULL; QHBoxLayout *hbox1 = new QHBoxLayout(); hbox1->addStretch(); if (!okMode){ buttonApply = new QPushButton(tr( "&Apply" )); connect( buttonApply, SIGNAL( clicked() ), this, SLOT(update() ) ); hbox1->addWidget(buttonApply); } hbox1->addWidget(buttonOk); hbox1->addWidget(buttonCancel); hbox1->addStretch(); QGroupBox *gb5 = new QGroupBox(tr("Swap Layers")); QHBoxLayout *hbox2 = new QHBoxLayout(gb5); hbox2->addWidget(new QLabel( tr( "Source Layer") )); boxLayerSrc = new QSpinBox(); hbox2->addWidget(boxLayerSrc); hbox2->addWidget(new QLabel( tr( "Destination Layer") )); boxLayerDest = new QSpinBox(); hbox2->addWidget(boxLayerDest); buttonSwapLayers = new QPushButton(tr( "&Swap" )); hbox2->addWidget(buttonSwapLayers); QGridLayout *gl6 = new QGridLayout(); gl6->addWidget(gb1, 0, 0); gl6->addWidget(gb2, 0, 1); gl6->addWidget(GroupGrid, 1, 0); gl6->addWidget(gb4, 1, 1); gl6->addWidget(GroupCanvasSize, 2, 0); gl6->addWidget(gb7, 2, 1); gl6->setRowStretch(3, 1); QVBoxLayout *vbox2 = new QVBoxLayout(this); vbox2->addLayout(gl6); vbox2->addWidget(gb5); vbox2->addStretch(); vbox2->addLayout(hbox1); connect( buttonSwapLayers, SIGNAL( clicked() ), this, SLOT( swapLayers() ) ); connect( buttonOk, SIGNAL( clicked() ), this, SLOT( accept() ) ); connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( reject() ) ); connect( fitBox, SIGNAL( toggled(bool) ), this, SLOT(enableLayoutOptions(bool) ) ); connect(unitBox, SIGNAL(activated(int)), this, SLOT(updateSizes(int))); connect(boxCanvasWidth, SIGNAL(valueChanged (double)), this, SLOT(adjustCanvasHeight(double))); connect(boxCanvasHeight, SIGNAL(valueChanged (double)), this, SLOT(adjustCanvasWidth(double))); connect(boxColsGap, SIGNAL(valueChanged(int)), this, SLOT(showCommonAxesBox())); connect(boxRowsGap, SIGNAL(valueChanged(int)), this, SLOT(showCommonAxesBox())); connect(alignPolicyBox, SIGNAL(activated(int)), this, SLOT(showCommonAxesBox())); }