コード例 #1
0
void SettingsWidget::slotDetAdjustmentByClockPhoto()
{
    // Determine the currently selected item and preselect it as clock photo
    QUrl defaultUrl;

    if (d->imageList)
    {
        defaultUrl = d->imageList->getCurrentUrl();
    }

    /* When user press the clock photo button, a dialog is displayed and set the
     * results to the proper widgets.
     */
    QPointer<ClockPhotoDialog> dlg = new ClockPhotoDialog(this, defaultUrl);
    const int result               = dlg->exec();

    if (result == QDialog::Accepted)
    {
        DeltaTime dvalues = dlg->deltaValues();

        if (dvalues.isNull())
        {
            d->adjTypeChooser->setCurrentIndex(TimeAdjustSettings::COPYVALUE);
        }
        else if (dvalues.deltaNegative)
        {
            d->adjTypeChooser->setCurrentIndex(TimeAdjustSettings::SUBVALUE);
        }
        else
        {
            d->adjTypeChooser->setCurrentIndex(TimeAdjustSettings::ADDVALUE);
        }

        d->adjDaysInput->setValue(dvalues.deltaDays);
        QTime deltaTime;
        deltaTime.setHMS(dvalues.deltaHours, dvalues.deltaMinutes, dvalues.deltaSeconds);
        d->adjTimeInput->setTime(deltaTime);
    }

    delete dlg;
}