void PitchBendSequenceDialog::accept() { /* The user has finished the dialog, other than aborting. */ // We don't enable "OK" if the interval isn't sensible, so // something's badly wrong if this test fails. Q_ASSERT_X(m_startTime < m_endTime, "accept", "got a zero or negative time interval"); /* Save current settings. They'll be the defaults next time. */ saveSettings(); // TRANSLATORS: The arg value will be either a controller name or // Pitchbend, so the resulting text is like "Pitchbend Sequence", // "Expression Sequence", etc. QString controllerName(m_control.getName().data()); QString commandName(tr("%1 Sequence").arg(controllerName)); MacroCommand *macro = new MacroCommand(commandName); if (getReplaceMode() != OnlyAdd) { // Selection initially contains no event, and we add all the // relevant ones. EventSelection *selection = new EventSelection(*m_segment); for (Segment::const_iterator i = m_segment->findTime(m_startTime); i != m_segment->findTime(m_endTime); ++i) { Event *e = *i; if (m_control.matches(e)) { selection->addEvent(e, false); } } // EraseCommand takes ownership of "selection". macro->addCommand(new EraseCommand(*selection)); } if (getReplaceMode() != OnlyErase) { if ((getRampMode() == Linear) && (getStepSizeCalculation() == StepSizeByCount)) { addLinearCountedEvents(macro); } else { addStepwiseEvents(macro); } } CommandHistory::getInstance()->addCommand(macro); QDialog::accept(); }
void PhotoFrameController::handleDropEvent(PlexyDesk::AbstractDesktopWidget *widget, QDropEvent *event) { if ( event->mimeData()->urls().count() >= 0 ) { const QString droppedFile = event->mimeData()->urls().value(0).toLocalFile(); QFileInfo info(droppedFile); QPixmap droppedPixmap(droppedFile); if ( !info.isDir() && !droppedPixmap.isNull() ) { mFrameParentitem->setContentImage(droppedPixmap); if (viewport()) { viewport()->sessionDataForController(controllerName(),"src", droppedFile); } else qDebug() << Q_FUNC_INFO << "Saving session Failed"; } } }