- m_ui.setupUi(this);
- m_ui.label->setText(name);
- m_ui.horizontalSlider->setRange(min, max);
- connect(m_ui.horizontalSlider, SIGNAL(valueChanged(int)), this, SLOT(slotUpdateTimecode()));
- connect(m_ui.krestrictedline, SIGNAL(editingFinished()), this, SLOT(slotUpdatePosition()));
- m_ui.horizontalSlider->setValue(pos);
- if (m_frameDisplay) {
- QValidator *valid = new QIntValidator();
- m_ui.krestrictedline->setInputMask("");
- m_ui.krestrictedline->setValidator(valid);
- }
- m_ui.krestrictedline->setText(m_tc.getDisplayTimecodeFromFrames(pos, m_frameDisplay));
+ QHBoxLayout *layout = new QHBoxLayout(this);
+
+ QLabel *label = new QLabel(name, this);
+
+ m_slider = new QSlider(Qt::Horizontal);
+ m_slider->setSizePolicy(QSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred));
+ m_slider->setRange(min, max);
+
+ m_display = new TimecodeDisplay(tc, this);
+ m_display->setSizePolicy(QSizePolicy(QSizePolicy::Maximum, QSizePolicy::Preferred));
+ m_display->setRange(min, max);
+
+ layout->addWidget(label);
+ layout->addWidget(m_slider);
+ layout->addWidget(m_display);
+
+ connect(m_slider, SIGNAL(valueChanged(int)), m_display, SLOT(setValue(int)));
+ connect(m_slider, SIGNAL(valueChanged(int)), this, SIGNAL(parameterChanged(int)));
+ connect(m_display, SIGNAL(timeCodeEditingFinished()), this, SLOT(slotUpdatePosition()));
+ m_slider->setValue(pos);
+}
+
+PositionEdit::~PositionEdit()
+{
+ m_display->blockSignals(true);
+ m_slider->blockSignals(true);
+ delete m_slider;
+ delete m_display;
+}
+
+void PositionEdit::updateTimecodeFormat()
+{
+ m_display->slotUpdateTimeCodeFormat();