void VCFrame::addSlider(QPoint at) { VCSlider* slider = new VCSlider(this); Q_ASSERT(slider != NULL); slider->init(); slider->show(); if (at.isNull() == false) slider->move(at); else slider->move(m_mousePressPoint); _app->virtualConsole()->setSelectedWidget(slider); _app->doc()->setModified(); }
void VirtualConsole::slotAddSlider() { VCWidget* parent(closestParent()); if (parent == NULL) return; VCSlider* slider = new VCSlider(parent, m_doc); Q_ASSERT(slider != NULL); slider->show(); slider->move(parent->lastClickPoint()); clearWidgetSelection(); setWidgetSelected(slider, true); m_doc->setModified(); }
void VirtualConsole::slotAddSliderMatrix() { VCWidget* parent(closestParent()); if (parent == NULL) return; AddVCSliderMatrix avsm(this); if (avsm.exec() == QDialog::Rejected) return; int width = VCSlider::defaultSize.width(); int height = avsm.height(); int count = avsm.amount(); VCFrame* frame = new VCFrame(parent, m_doc); Q_ASSERT(frame != NULL); // Resize the parent frame to fit the sliders nicely frame->resize(QSize((count * width) + 20, height + 20)); frame->setAllowResize(false); for (int i = 0; i < count; i++) { VCSlider* slider = new VCSlider(frame, m_doc); Q_ASSERT(slider != NULL); slider->move(QPoint(10 + (width * i), 10)); slider->resize(QSize(width, height)); slider->show(); } // Show the frame after adding buttons to prevent flickering frame->show(); frame->move(parent->lastClickPoint()); frame->setAllowChildren(false); // Don't allow more children clearWidgetSelection(); setWidgetSelected(frame, true); m_doc->setModified(); }