/*
midi sync
configuration dialog
*/

/********************************************************************************
** Form generated from reading UI file 'midisync.ui'
**
** Created by: Qt User Interface Compiler version 5.15.19
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/

#ifndef UI_MIDISYNC_H
#define UI_MIDISYNC_H

#include <QtCore/QVariant>
#include <QtWidgets/QApplication>
#include <QtWidgets/QCheckBox>
#include <QtWidgets/QComboBox>
#include <QtWidgets/QDialog>
#include <QtWidgets/QDoubleSpinBox>
#include <QtWidgets/QGridLayout>
#include <QtWidgets/QGroupBox>
#include <QtWidgets/QHBoxLayout>
#include <QtWidgets/QHeaderView>
#include <QtWidgets/QLabel>
#include <QtWidgets/QPushButton>
#include <QtWidgets/QSpacerItem>
#include <QtWidgets/QSpinBox>
#include <QtWidgets/QTreeWidget>
#include <QtWidgets/QVBoxLayout>

QT_BEGIN_NAMESPACE

class Ui_MidiSyncConfigBase
{
public:
    QGridLayout *gridLayout;
    QHBoxLayout *hboxLayout;
    QSpacerItem *Spacer1_2;
    QPushButton *applyButton;
    QPushButton *okButton;
    QPushButton *cancelButton;
    QGroupBox *GroupBox13;
    QVBoxLayout *vboxLayout;
    QHBoxLayout *hboxLayout1;
    QLabel *textLabel2;
    QComboBox *mtcSyncType;
    QLabel *textLabel1;
    QSpinBox *mtcOffH;
    QLabel *TextLabel2;
    QSpinBox *mtcOffM;
    QLabel *TextLabel3;
    QSpinBox *mtcOffS;
    QLabel *TextLabel4;
    QSpinBox *mtcOffF;
    QLabel *TextLabel5;
    QSpinBox *mtcOffSf;
    QGroupBox *syncGen;
    QGridLayout *gridLayout1;
    QHBoxLayout *hboxLayout2;
    QSpinBox *syncDelaySpinBox;
    QLabel *syncDelayLabel;
    QCheckBox *extSyncCheckbox;
    QLabel *toBeDoneLabel;
    QHBoxLayout *hboxLayout3;
    QDoubleSpinBox *syncRecTempoValQuant;
    QLabel *syncRecTempoValQuantLabel;
    QTreeWidget *devicesListView;
    QHBoxLayout *hboxLayout4;
    QComboBox *syncRecFilterPreset;
    QLabel *syncRecFilterLabel;

    void setupUi(QDialog *MidiSyncConfigBase)
    {
        if (MidiSyncConfigBase->objectName().isEmpty())
            MidiSyncConfigBase->setObjectName(QString::fromUtf8("MidiSyncConfigBase"));
        MidiSyncConfigBase->resize(927, 621);
        gridLayout = new QGridLayout(MidiSyncConfigBase);
        gridLayout->setSpacing(6);
        gridLayout->setContentsMargins(11, 11, 11, 11);
        gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
        hboxLayout = new QHBoxLayout();
        hboxLayout->setSpacing(6);
        hboxLayout->setObjectName(QString::fromUtf8("hboxLayout"));
        hboxLayout->setContentsMargins(0, 0, 0, 0);
        Spacer1_2 = new QSpacerItem(20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);

        hboxLayout->addItem(Spacer1_2);

        applyButton = new QPushButton(MidiSyncConfigBase);
        applyButton->setObjectName(QString::fromUtf8("applyButton"));

        hboxLayout->addWidget(applyButton);

        okButton = new QPushButton(MidiSyncConfigBase);
        okButton->setObjectName(QString::fromUtf8("okButton"));

        hboxLayout->addWidget(okButton);

        cancelButton = new QPushButton(MidiSyncConfigBase);
        cancelButton->setObjectName(QString::fromUtf8("cancelButton"));

        hboxLayout->addWidget(cancelButton);


        gridLayout->addLayout(hboxLayout, 2, 0, 1, 1);

        GroupBox13 = new QGroupBox(MidiSyncConfigBase);
        GroupBox13->setObjectName(QString::fromUtf8("GroupBox13"));
        GroupBox13->setEnabled(true);
        vboxLayout = new QVBoxLayout(GroupBox13);
        vboxLayout->setSpacing(6);
        vboxLayout->setContentsMargins(11, 11, 11, 11);
        vboxLayout->setObjectName(QString::fromUtf8("vboxLayout"));
        vboxLayout->setContentsMargins(6, 2, 6, 2);
        hboxLayout1 = new QHBoxLayout();
        hboxLayout1->setSpacing(6);
        hboxLayout1->setObjectName(QString::fromUtf8("hboxLayout1"));
        textLabel2 = new QLabel(GroupBox13);
        textLabel2->setObjectName(QString::fromUtf8("textLabel2"));
        textLabel2->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
        textLabel2->setWordWrap(false);

        hboxLayout1->addWidget(textLabel2);

        mtcSyncType = new QComboBox(GroupBox13);
        mtcSyncType->addItem(QString());
        mtcSyncType->addItem(QString());
        mtcSyncType->addItem(QString());
        mtcSyncType->addItem(QString());
        mtcSyncType->setObjectName(QString::fromUtf8("mtcSyncType"));
        QSizePolicy sizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
        sizePolicy.setHorizontalStretch(0);
        sizePolicy.setVerticalStretch(0);
        sizePolicy.setHeightForWidth(mtcSyncType->sizePolicy().hasHeightForWidth());
        mtcSyncType->setSizePolicy(sizePolicy);

        hboxLayout1->addWidget(mtcSyncType);

        textLabel1 = new QLabel(GroupBox13);
        textLabel1->setObjectName(QString::fromUtf8("textLabel1"));
        textLabel1->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
        textLabel1->setWordWrap(false);

        hboxLayout1->addWidget(textLabel1);

        mtcOffH = new QSpinBox(GroupBox13);
        mtcOffH->setObjectName(QString::fromUtf8("mtcOffH"));
        mtcOffH->setEnabled(false);
        mtcOffH->setMaximum(23);

        hboxLayout1->addWidget(mtcOffH);

        TextLabel2 = new QLabel(GroupBox13);
        TextLabel2->setObjectName(QString::fromUtf8("TextLabel2"));
        TextLabel2->setWordWrap(false);

        hboxLayout1->addWidget(TextLabel2);

        mtcOffM = new QSpinBox(GroupBox13);
        mtcOffM->setObjectName(QString::fromUtf8("mtcOffM"));
        mtcOffM->setEnabled(false);
        mtcOffM->setMaximum(59);

        hboxLayout1->addWidget(mtcOffM);

        TextLabel3 = new QLabel(GroupBox13);
        TextLabel3->setObjectName(QString::fromUtf8("TextLabel3"));
        TextLabel3->setWordWrap(false);

        hboxLayout1->addWidget(TextLabel3);

        mtcOffS = new QSpinBox(GroupBox13);
        mtcOffS->setObjectName(QString::fromUtf8("mtcOffS"));
        mtcOffS->setEnabled(false);
        mtcOffS->setMaximum(59);

        hboxLayout1->addWidget(mtcOffS);

        TextLabel4 = new QLabel(GroupBox13);
        TextLabel4->setObjectName(QString::fromUtf8("TextLabel4"));
        TextLabel4->setWordWrap(false);

        hboxLayout1->addWidget(TextLabel4);

        mtcOffF = new QSpinBox(GroupBox13);
        mtcOffF->setObjectName(QString::fromUtf8("mtcOffF"));
        mtcOffF->setEnabled(false);
        mtcOffF->setMaximum(30);

        hboxLayout1->addWidget(mtcOffF);

        TextLabel5 = new QLabel(GroupBox13);
        TextLabel5->setObjectName(QString::fromUtf8("TextLabel5"));
        TextLabel5->setWordWrap(false);

        hboxLayout1->addWidget(TextLabel5);

        mtcOffSf = new QSpinBox(GroupBox13);
        mtcOffSf->setObjectName(QString::fromUtf8("mtcOffSf"));
        mtcOffSf->setEnabled(false);

        hboxLayout1->addWidget(mtcOffSf);


        vboxLayout->addLayout(hboxLayout1);


        gridLayout->addWidget(GroupBox13, 1, 0, 1, 1);

        syncGen = new QGroupBox(MidiSyncConfigBase);
        syncGen->setObjectName(QString::fromUtf8("syncGen"));
        gridLayout1 = new QGridLayout(syncGen);
        gridLayout1->setSpacing(6);
        gridLayout1->setContentsMargins(11, 11, 11, 11);
        gridLayout1->setObjectName(QString::fromUtf8("gridLayout1"));
        hboxLayout2 = new QHBoxLayout();
        hboxLayout2->setSpacing(6);
        hboxLayout2->setObjectName(QString::fromUtf8("hboxLayout2"));
        syncDelaySpinBox = new QSpinBox(syncGen);
        syncDelaySpinBox->setObjectName(QString::fromUtf8("syncDelaySpinBox"));
        syncDelaySpinBox->setMinimum(0);
        syncDelaySpinBox->setMaximum(60000);
        syncDelaySpinBox->setSingleStep(1);
        syncDelaySpinBox->setValue(1);

        hboxLayout2->addWidget(syncDelaySpinBox);

        syncDelayLabel = new QLabel(syncGen);
        syncDelayLabel->setObjectName(QString::fromUtf8("syncDelayLabel"));
        syncDelayLabel->setAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter);
        syncDelayLabel->setWordWrap(false);

        hboxLayout2->addWidget(syncDelayLabel);


        gridLayout1->addLayout(hboxLayout2, 3, 0, 1, 1);

        extSyncCheckbox = new QCheckBox(syncGen);
        extSyncCheckbox->setObjectName(QString::fromUtf8("extSyncCheckbox"));
        extSyncCheckbox->setEnabled(true);
        extSyncCheckbox->setChecked(false);

        gridLayout1->addWidget(extSyncCheckbox, 0, 0, 1, 2);

        toBeDoneLabel = new QLabel(syncGen);
        toBeDoneLabel->setObjectName(QString::fromUtf8("toBeDoneLabel"));
        toBeDoneLabel->setAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter);
        toBeDoneLabel->setWordWrap(false);

        gridLayout1->addWidget(toBeDoneLabel, 5, 0, 1, 1);

        hboxLayout3 = new QHBoxLayout();
        hboxLayout3->setSpacing(6);
        hboxLayout3->setObjectName(QString::fromUtf8("hboxLayout3"));
        syncRecTempoValQuant = new QDoubleSpinBox(syncGen);
        syncRecTempoValQuant->setObjectName(QString::fromUtf8("syncRecTempoValQuant"));
        syncRecTempoValQuant->setMinimum(0.000000000000000);
        syncRecTempoValQuant->setMaximum(100.000000000000000);
        syncRecTempoValQuant->setSingleStep(0.010000000000000);
        syncRecTempoValQuant->setValue(1.000000000000000);

        hboxLayout3->addWidget(syncRecTempoValQuant);

        syncRecTempoValQuantLabel = new QLabel(syncGen);
        syncRecTempoValQuantLabel->setObjectName(QString::fromUtf8("syncRecTempoValQuantLabel"));
        syncRecTempoValQuantLabel->setAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter);
        syncRecTempoValQuantLabel->setWordWrap(false);

        hboxLayout3->addWidget(syncRecTempoValQuantLabel);


        gridLayout1->addLayout(hboxLayout3, 2, 0, 1, 1);

        devicesListView = new QTreeWidget(syncGen);
        QTreeWidgetItem *__qtreewidgetitem = new QTreeWidgetItem();
        __qtreewidgetitem->setText(0, QString::fromUtf8("1"));
        devicesListView->setHeaderItem(__qtreewidgetitem);
        devicesListView->setObjectName(QString::fromUtf8("devicesListView"));

        gridLayout1->addWidget(devicesListView, 4, 0, 1, 1);

        hboxLayout4 = new QHBoxLayout();
        hboxLayout4->setSpacing(6);
        hboxLayout4->setObjectName(QString::fromUtf8("hboxLayout4"));
        syncRecFilterPreset = new QComboBox(syncGen);
        syncRecFilterPreset->setObjectName(QString::fromUtf8("syncRecFilterPreset"));

        hboxLayout4->addWidget(syncRecFilterPreset);

        syncRecFilterLabel = new QLabel(syncGen);
        syncRecFilterLabel->setObjectName(QString::fromUtf8("syncRecFilterLabel"));
        syncRecFilterLabel->setAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter);
        syncRecFilterLabel->setWordWrap(false);

        hboxLayout4->addWidget(syncRecFilterLabel);


        gridLayout1->addLayout(hboxLayout4, 1, 0, 1, 1);


        gridLayout->addWidget(syncGen, 0, 0, 1, 1);

        QWidget::setTabOrder(mtcOffH, mtcOffM);
        QWidget::setTabOrder(mtcOffM, mtcOffS);
        QWidget::setTabOrder(mtcOffS, mtcOffF);
        QWidget::setTabOrder(mtcOffF, mtcOffSf);
        QWidget::setTabOrder(mtcOffSf, applyButton);
        QWidget::setTabOrder(applyButton, okButton);
        QWidget::setTabOrder(okButton, cancelButton);

        retranslateUi(MidiSyncConfigBase);

        okButton->setDefault(true);


        QMetaObject::connectSlotsByName(MidiSyncConfigBase);
    } // setupUi

    void retranslateUi(QDialog *MidiSyncConfigBase)
    {
        MidiSyncConfigBase->setWindowTitle(QCoreApplication::translate("MidiSyncConfigBase", "MusE: Midi Sync", nullptr));
        applyButton->setText(QCoreApplication::translate("MidiSyncConfigBase", "Apply", nullptr));
        okButton->setText(QCoreApplication::translate("MidiSyncConfigBase", "Ok", nullptr));
        cancelButton->setText(QCoreApplication::translate("MidiSyncConfigBase", "Cancel", nullptr));
        GroupBox13->setTitle(QCoreApplication::translate("MidiSyncConfigBase", "MTC", nullptr));
        textLabel2->setText(QCoreApplication::translate("MidiSyncConfigBase", "Type:", nullptr));
        mtcSyncType->setItemText(0, QCoreApplication::translate("MidiSyncConfigBase", "24", nullptr));
        mtcSyncType->setItemText(1, QCoreApplication::translate("MidiSyncConfigBase", "25", nullptr));
        mtcSyncType->setItemText(2, QCoreApplication::translate("MidiSyncConfigBase", "30D", nullptr));
        mtcSyncType->setItemText(3, QCoreApplication::translate("MidiSyncConfigBase", "30N", nullptr));

        textLabel1->setText(QCoreApplication::translate("MidiSyncConfigBase", "Offset:", nullptr));
#if QT_CONFIG(tooltip)
        mtcOffH->setToolTip(QCoreApplication::translate("MidiSyncConfigBase", "hour", nullptr));
#endif // QT_CONFIG(tooltip)
        TextLabel2->setText(QCoreApplication::translate("MidiSyncConfigBase", "h", nullptr));
#if QT_CONFIG(tooltip)
        mtcOffM->setToolTip(QCoreApplication::translate("MidiSyncConfigBase", "minute", nullptr));
#endif // QT_CONFIG(tooltip)
        TextLabel3->setText(QCoreApplication::translate("MidiSyncConfigBase", "m", nullptr));
#if QT_CONFIG(tooltip)
        mtcOffS->setToolTip(QCoreApplication::translate("MidiSyncConfigBase", "second", nullptr));
#endif // QT_CONFIG(tooltip)
        TextLabel4->setText(QCoreApplication::translate("MidiSyncConfigBase", "s", nullptr));
#if QT_CONFIG(tooltip)
        mtcOffF->setToolTip(QCoreApplication::translate("MidiSyncConfigBase", "frame", nullptr));
#endif // QT_CONFIG(tooltip)
        TextLabel5->setText(QCoreApplication::translate("MidiSyncConfigBase", "f", nullptr));
#if QT_CONFIG(tooltip)
        mtcOffSf->setToolTip(QCoreApplication::translate("MidiSyncConfigBase", "subframe", nullptr));
#endif // QT_CONFIG(tooltip)
        syncGen->setTitle(QCoreApplication::translate("MidiSyncConfigBase", "Sync receiving and sending", nullptr));
#if QT_CONFIG(tooltip)
        syncDelaySpinBox->setToolTip(QCoreApplication::translate("MidiSyncConfigBase", "Send start to first clock delay", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(whatsthis)
        syncDelaySpinBox->setWhatsThis(QCoreApplication::translate("MidiSyncConfigBase", "Allows 'slow sync' devices time\n"
" to synchronize to MusE. This value is the\n"
" delay from sending start to sending\n"
" the first clock.", nullptr));
#endif // QT_CONFIG(whatsthis)
        syncDelaySpinBox->setSuffix(QCoreApplication::translate("MidiSyncConfigBase", "ms", nullptr));
        syncDelayLabel->setText(QCoreApplication::translate("MidiSyncConfigBase", "Send sync delay", nullptr));
#if QT_CONFIG(tooltip)
        extSyncCheckbox->setToolTip(QCoreApplication::translate("MidiSyncConfigBase", "Control MusE timing by external midi clock or MTC sync", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(whatsthis)
        extSyncCheckbox->setWhatsThis(QCoreApplication::translate("MidiSyncConfigBase", "When in slave mode, tempo is\n"
" controlled externally.\n"
"MusE can sync to midi clock, or MTC quarter frame sync. \n"
"Enabled inputs in the list will\n"
" be in effect (RMC, RMMC, RMTC).", nullptr));
#endif // QT_CONFIG(whatsthis)
        extSyncCheckbox->setText(QCoreApplication::translate("MidiSyncConfigBase", "Slave to external sync", nullptr));
        toBeDoneLabel->setText(QCoreApplication::translate("MidiSyncConfigBase", "Note: Sync delay and MTC sync currently not fully implemented", nullptr));
#if QT_CONFIG(tooltip)
        syncRecTempoValQuant->setToolTip(QString());
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(whatsthis)
        syncRecTempoValQuant->setWhatsThis(QString());
#endif // QT_CONFIG(whatsthis)
        syncRecTempoValQuant->setSuffix(QCoreApplication::translate("MidiSyncConfigBase", "bpm", nullptr));
        syncRecTempoValQuantLabel->setText(QCoreApplication::translate("MidiSyncConfigBase", "Tempo record quantization", nullptr));
#if QT_CONFIG(tooltip)
        syncRecFilterPreset->setToolTip(QCoreApplication::translate("MidiSyncConfigBase", "Averaging applied to recorded external tempo changes.", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(whatsthis)
        syncRecFilterPreset->setWhatsThis(QCoreApplication::translate("MidiSyncConfigBase", "External midi clock can be very jittery.\n"
"Tempo is derived from it and recorded.\n"
"It is usually desirable to average it and \n"
" limit the number of recorded changes.\n"
"\n"
"Tiny: 2 section 4/4 = 8 stages.\n"
"1/8T note averaging, may produce jitter.\n"
"\n"
"Small: 3 section 12/8/4 = 24 stages.\n"
"1/4 note averaging, may still produce jitter.\n"
"\n"
"Medium: 3 section 28/12/8 = 48 stages.\n"
"1/2 note averaging. Less jitter.\n"
"\n"
"Large: 4 section 48/48/48/48 = 192 stages.\n"
"Use this if the song has only one tempo.\n"
"Very low quantization values can be used. \n"
"\n"
"Large pre-detect: 4 section 8/48/48/48 = 152\n"
" stages + first stage large step pre-detector.\n"
"Use this if you expect sudden large tempo steps.\n"
"\n"
"None: Use only if high accuracy is needed for \n"
" audio alignment on playback. Caution: Records \n"
" thousands of tempo changes per minute. MusE \n"
" may slow and the song file will be large.", nullptr));
#endif // QT_CONFIG(whatsthis)
        syncRecFilterLabel->setText(QCoreApplication::translate("MidiSyncConfigBase", "Tempo record averaging", nullptr));
    } // retranslateUi

};

namespace Ui {
    class MidiSyncConfigBase: public Ui_MidiSyncConfigBase {};
} // namespace Ui

QT_END_NAMESPACE

#endif // UI_MIDISYNC_H
