9 #include "CubePlotCurveConfigureDialog.h"
14 #include <QColorDialog>
16 #include <QGridLayout>
19 #include <QPushButton>
21 #include "CubePlotCurve.h"
22 #include "IException.h"
42 connect( parent, SIGNAL( plotChanged() ),
43 this, SLOT( updateCurvesList() ) );
50 QGridLayout *optionsLayout =
new QGridLayout;
55 QLabel *curvesLabel =
new QLabel(
"Curves: ");
58 this, SLOT( updateComboIndex(
int) ) );
59 optionsLayout->addWidget(curvesLabel, row, 0);
64 QLabel *nameLabel =
new QLabel(
"Curve Name: ");
66 optionsLayout->addWidget(nameLabel, row, 0);
70 QLabel *colorLabel =
new QLabel(
"Color: ");
75 optionsLayout->addWidget(colorLabel, row, 0);
79 QLabel *styleLabel =
new QLabel(
"Style:");
81 m_styleCombo->addItem(
"No Line",
static_cast<int>(Qt::NoPen));
82 m_styleCombo->addItem(
"Solid Line",
static_cast<int>(Qt::SolidLine));
83 m_styleCombo->addItem(
"Dash Line",
static_cast<int>(Qt::DashLine));
84 m_styleCombo->addItem(
"Dot Line",
static_cast<int>(Qt::DotLine));
85 m_styleCombo->addItem(
"Dash Dot Line",
static_cast<int>(Qt::DashDotLine));
86 m_styleCombo->addItem(
"Dash Dot Dot Line",
static_cast<int>(Qt::DashDotDotLine));
87 optionsLayout->addWidget(styleLabel, row, 0);
91 QLabel *sizeLabel =
new QLabel(
"Size:");
97 optionsLayout->addWidget(sizeLabel, row, 0);
101 QLabel *symbolLabel =
new QLabel(
"Symbol:");
110 m_symbolCombo->addItem(
"Down Facing Triangle", QwtSymbol::UTriangle);
111 m_symbolCombo->addItem(
"Up Facing Triangle", QwtSymbol::DTriangle);
112 m_symbolCombo->addItem(
"Left Facing Triangle", QwtSymbol::RTriangle);
113 m_symbolCombo->addItem(
"Right Facing Triangle", QwtSymbol::LTriangle);
116 m_symbolCombo->addItem(
"Diagonal Cross (X)", QwtSymbol::XCross);
117 m_symbolCombo->addItem(
"Eight-Pointed Star", QwtSymbol::Star1);
122 m_symbolCombo->addItem(
"Six-Pointed Star", QwtSymbol::Star2);
124 optionsLayout->addWidget(symbolLabel, row, 0);
128 QHBoxLayout *applyButtonsLayout =
new QHBoxLayout;
129 applyButtonsLayout->addStretch();
131 QPushButton *okay =
new QPushButton(
"&Ok");
132 okay->setIcon( QIcon::fromTheme(
"dialog-ok") );
133 connect( okay, SIGNAL( clicked() ),
135 connect( okay, SIGNAL( clicked() ),
136 this, SLOT( close() ) );
137 applyButtonsLayout->addWidget(okay);
139 QPushButton *apply =
new QPushButton(
"&Apply");
140 apply->setIcon( QIcon::fromTheme(
"dialog-ok-apply") );
141 connect( apply, SIGNAL( clicked() ),
143 applyButtonsLayout->addWidget(apply);
145 QPushButton *cancel =
new QPushButton(
"&Cancel");
146 cancel->setIcon( QIcon::fromTheme(
"dialog-cancel") );
147 connect( cancel, SIGNAL( clicked() ),
148 this, SLOT( close() ) );
149 applyButtonsLayout->addWidget(cancel);
152 optionsHolder->setLayout(optionsLayout);
155 applyButtonsHolder->setLayout(applyButtonsLayout);
157 QVBoxLayout *mainLayout =
new QVBoxLayout;
158 mainLayout->addWidget(optionsHolder);
159 mainLayout->addWidget(applyButtonsHolder);
161 setLayout(mainLayout);
191 curvePen.setColor( colorPalette.color(QPalette::Button) );
194 curvePen.setWidth(penWidth);
196 Qt::PenStyle penStyle = (Qt::PenStyle)
m_styleCombo->itemData(
198 curvePen.setStyle(penStyle);
201 m_plotCurve->setColor( colorPalette.color(QPalette::Button) );
204 QwtSymbol::Style symbolStyle = (QwtSymbol::Style)
m_symbolCombo->itemData(
230 setWindowTitle(
"Configure " +
m_plotCurve->title().text() );
248 QPalette colorPalette;
249 colorPalette.setColor( QPalette::Button,
m_plotCurve->pen().color() );
279 void CubePlotCurveConfigureDialog::updateComboIndex(
int selected) {
285 void CubePlotCurveConfigureDialog::updateCurvesList() {
309 QColor newColor = QColorDialog::getColor(
310 colorPalette.color(QPalette::Button),
this);
312 if( newColor.isValid() ) {
313 colorPalette.setColor(QPalette::Button, newColor);