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

#ifndef UI_SCHEDULER_H
#define UI_SCHEDULER_H

#include <QtCore/QVariant>
#include <QtGui/QIcon>
#include <QtWidgets/QApplication>
#include <QtWidgets/QButtonGroup>
#include <QtWidgets/QCheckBox>
#include <QtWidgets/QComboBox>
#include <QtWidgets/QDateTimeEdit>
#include <QtWidgets/QDoubleSpinBox>
#include <QtWidgets/QGridLayout>
#include <QtWidgets/QGroupBox>
#include <QtWidgets/QHBoxLayout>
#include <QtWidgets/QHeaderView>
#include <QtWidgets/QLabel>
#include <QtWidgets/QLineEdit>
#include <QtWidgets/QPushButton>
#include <QtWidgets/QRadioButton>
#include <QtWidgets/QSpacerItem>
#include <QtWidgets/QSpinBox>
#include <QtWidgets/QSplitter>
#include <QtWidgets/QTableWidget>
#include <QtWidgets/QVBoxLayout>
#include <QtWidgets/QWidget>
#include <klocalizedstring.h>
#include "ekos/scheduler/scheduleraltitudegraph.h"
#include "widgets/dmsbox.h"

QT_BEGIN_NAMESPACE

class Ui_Scheduler
{
public:
    QVBoxLayout *verticalLayout_8;
    QGroupBox *jobSequenceGroup;
    QHBoxLayout *horizontalLayout_10;
    QVBoxLayout *verticalLayout_6;
    QGridLayout *gridLayout_2;
    QPushButton *loadSequenceB;
    QHBoxLayout *horizontalLayout_2;
    QLineEdit *nameEdit;
    QHBoxLayout *horizontalLayout_13;
    QLineEdit *fitsEdit;
    QLabel *FITSLabel;
    QPushButton *selectObjectB;
    QLabel *targetStarLabel;
    QLabel *label_4;
    QGridLayout *gridLayout_4;
    QCheckBox *schedulerTrackStep;
    QCheckBox *schedulerAlignStep;
    QCheckBox *schedulerGuideStep;
    QCheckBox *schedulerFocusStep;
    QLabel *sequenceLabel;
    QPushButton *selectFITSB;
    QLabel *rotationLabel;
    QPushButton *copySkyCenterB;
    QLabel *groupLabel;
    QComboBox *leadFollowerSelectionCB;
    QLineEdit *groupEdit;
    QLabel *label_5;
    QHBoxLayout *horizontalLayout_15;
    QLineEdit *sequenceEdit;
    QLabel *label_11;
    QComboBox *schedulerProfileCombo;
    QDoubleSpinBox *positionAngleSpin;
    QLabel *label_9;
    QHBoxLayout *horizontalLayout_17;
    QLabel *label_6;
    dmsBox *raBox;
    QLabel *label_2;
    dmsBox *decBox;
    QPushButton *copyMountTargetB;
    QLabel *trainLabel;
    QLabel *label_10;
    QComboBox *opticalTrainCombo;
    QComboBox *epochCB;
    QSpacerItem *verticalSpacer;
    QVBoxLayout *verticalLayout;
    QHBoxLayout *horizontalLayout_14;
    QPushButton *addToQueueB;
    QPushButton *removeFromQueueB;
    QPushButton *queueUpB;
    QPushButton *queueDownB;
    QPushButton *evaluateOnlyB;
    QPushButton *sortJobsB;
    QSpacerItem *horizontalSpacer_3;
    QPushButton *mosaicB;
    QPushButton *queueViewerB;
    QPushButton *editSequenceB;
    QSpacerItem *horizontalSpacer;
    QPushButton *queueAppendB;
    QPushButton *queueLoadB;
    QPushButton *queueSaveB;
    QPushButton *queueSaveAsB;
    QSplitter *tableLayout;
    QTableWidget *queueTable;
    Ekos::SchedulerAltitudeGraph *altGraph;
    QHBoxLayout *bottomLayout;
    QPushButton *startB;
    QPushButton *pauseB;
    QLabel *sleepLabel;
    QSpacerItem *horizontalSpacer_4;
    QCheckBox *schedulerRepeatEverything;
    QSpinBox *executionSequenceLimit;
    QSpacerItem *horizontalSpacer_2;
    QLabel *jobStatus;
    QGridLayout *gridLayoutConditions;
    QGroupBox *completionGroup;
    QVBoxLayout *verticalLayout_5;
    QGridLayout *gridLayout_6;
    QRadioButton *schedulerRepeatSequences;
    QDateTimeEdit *schedulerUntilValue;
    QRadioButton *schedulerCompleteSequences;
    QRadioButton *schedulerUntil;
    QSpinBox *schedulerRepeatSequencesLimit;
    QRadioButton *schedulerUntilTerminated;
    QGroupBox *startupGroup;
    QVBoxLayout *verticalLayout_3;
    QGridLayout *gridLayout;
    QDateTimeEdit *startupTimeEdit;
    QRadioButton *startupTimeConditionR;
    QRadioButton *asapConditionR;
    QSpacerItem *verticalSpacer_2;
    QGroupBox *contraintsGroup;
    QGridLayout *gridLayout_3;
    QCheckBox *schedulerAltitude;
    QDoubleSpinBox *schedulerAltitudeValue;
    QCheckBox *schedulerHorizon;
    QCheckBox *schedulerMoonSeparation;
    QDoubleSpinBox *schedulerMoonSeparationValue;
    QSpacerItem *horizontalSpacer_5;
    QCheckBox *schedulerMoonAltitude;
    QDoubleSpinBox *schedulerMoonAltitudeMaxValue;
    QCheckBox *schedulerTwilight;
    QLabel *nightTime;
    QLabel *weatherLabel;
    QGridLayout *gridLayoutStartStop;
    QGroupBox *errorHandlingGroup;
    QVBoxLayout *verticalLayout_9;
    QHBoxLayout *horizontalLayout_4;
    QRadioButton *errorHandlingDontRestartButton;
    QRadioButton *errorHandlingRestartQueueButton;
    QRadioButton *errorHandlingRestartImmediatelyButton;
    QHBoxLayout *horizontalLayout_5;
    QCheckBox *errorHandlingRescheduleErrorsCB;
    QSpinBox *errorHandlingStrategyDelay;
    QGroupBox *startupGroupBox;
    QVBoxLayout *verticalLayout_4;
    QCheckBox *schedulerStartupEnabled;
    QHBoxLayout *horizontalLayout_16;
    QLineEdit *schedulerPreStartupScript;
    QPushButton *preStartupQueueClearB;
    QPushButton *selectPreStartupQueueB;
    QHBoxLayout *horizontalLayout_PostStartup;
    QLineEdit *schedulerPostStartupScript;
    QPushButton *postStartupQueueClearB;
    QPushButton *selectPostStartupQueueB;
    QGroupBox *shutdownGroupBox;
    QVBoxLayout *verticalLayout_2;
    QCheckBox *schedulerShutdownEnabled;
    QHBoxLayout *horizontalLayout_3;
    QLineEdit *schedulerPreShutdownScript;
    QPushButton *preShutdownQueueClearB;
    QPushButton *selectPreShutdownQueueB;
    QHBoxLayout *horizontalLayout_PostShutdown;
    QLineEdit *schedulerPostShutdownScript;
    QPushButton *postShutdownQueueClearB;
    QPushButton *selectPostShutdownQueueB;
    QButtonGroup *completionButtonGroup;
    QButtonGroup *stepsButtonGroup;
    QButtonGroup *errorHandlingButtonGroup;
    QButtonGroup *constraintButtonGroup;
    QButtonGroup *startupButtonGroup;

    void setupUi(QWidget *Scheduler)
    {
        if (Scheduler->objectName().isEmpty())
            Scheduler->setObjectName("Scheduler");
        Scheduler->resize(846, 579);
        verticalLayout_8 = new QVBoxLayout(Scheduler);
        verticalLayout_8->setSpacing(1);
        verticalLayout_8->setObjectName("verticalLayout_8");
        verticalLayout_8->setContentsMargins(3, 3, 3, 3);
        jobSequenceGroup = new QGroupBox(Scheduler);
        jobSequenceGroup->setObjectName("jobSequenceGroup");
        QSizePolicy sizePolicy(QSizePolicy::Policy::Preferred, QSizePolicy::Policy::Preferred);
        sizePolicy.setHorizontalStretch(0);
        sizePolicy.setVerticalStretch(0);
        sizePolicy.setHeightForWidth(jobSequenceGroup->sizePolicy().hasHeightForWidth());
        jobSequenceGroup->setSizePolicy(sizePolicy);
        horizontalLayout_10 = new QHBoxLayout(jobSequenceGroup);
        horizontalLayout_10->setSpacing(3);
        horizontalLayout_10->setObjectName("horizontalLayout_10");
        horizontalLayout_10->setSizeConstraint(QLayout::SizeConstraint::SetDefaultConstraint);
        horizontalLayout_10->setContentsMargins(3, 3, 3, 3);
        verticalLayout_6 = new QVBoxLayout();
        verticalLayout_6->setObjectName("verticalLayout_6");
        gridLayout_2 = new QGridLayout();
        gridLayout_2->setObjectName("gridLayout_2");
        gridLayout_2->setHorizontalSpacing(1);
        gridLayout_2->setVerticalSpacing(3);
        loadSequenceB = new QPushButton(jobSequenceGroup);
        loadSequenceB->setObjectName("loadSequenceB");
        sizePolicy.setHeightForWidth(loadSequenceB->sizePolicy().hasHeightForWidth());
        loadSequenceB->setSizePolicy(sizePolicy);
        QIcon icon(QIcon::fromTheme(QString::fromUtf8("folder")));
        loadSequenceB->setIcon(icon);

        gridLayout_2->addWidget(loadSequenceB, 4, 3, 1, 1);

        horizontalLayout_2 = new QHBoxLayout();
        horizontalLayout_2->setSpacing(1);
        horizontalLayout_2->setObjectName("horizontalLayout_2");
        horizontalLayout_2->setSizeConstraint(QLayout::SizeConstraint::SetDefaultConstraint);
        horizontalLayout_2->setContentsMargins(-1, -1, -1, 0);
        nameEdit = new QLineEdit(jobSequenceGroup);
        nameEdit->setObjectName("nameEdit");
        sizePolicy.setHeightForWidth(nameEdit->sizePolicy().hasHeightForWidth());
        nameEdit->setSizePolicy(sizePolicy);

        horizontalLayout_2->addWidget(nameEdit);


        gridLayout_2->addLayout(horizontalLayout_2, 0, 2, 1, 1);

        horizontalLayout_13 = new QHBoxLayout();
        horizontalLayout_13->setSpacing(1);
        horizontalLayout_13->setObjectName("horizontalLayout_13");
        horizontalLayout_13->setSizeConstraint(QLayout::SizeConstraint::SetDefaultConstraint);
        horizontalLayout_13->setContentsMargins(-1, 0, -1, 0);
        fitsEdit = new QLineEdit(jobSequenceGroup);
        fitsEdit->setObjectName("fitsEdit");
        sizePolicy.setHeightForWidth(fitsEdit->sizePolicy().hasHeightForWidth());
        fitsEdit->setSizePolicy(sizePolicy);
        fitsEdit->setReadOnly(false);
        fitsEdit->setClearButtonEnabled(true);

        horizontalLayout_13->addWidget(fitsEdit);


        gridLayout_2->addLayout(horizontalLayout_13, 5, 2, 1, 1);

        FITSLabel = new QLabel(jobSequenceGroup);
        FITSLabel->setObjectName("FITSLabel");

        gridLayout_2->addWidget(FITSLabel, 5, 0, 1, 1);

        selectObjectB = new QPushButton(jobSequenceGroup);
        selectObjectB->setObjectName("selectObjectB");
        sizePolicy.setHeightForWidth(selectObjectB->sizePolicy().hasHeightForWidth());
        selectObjectB->setSizePolicy(sizePolicy);
        QIcon icon1(QIcon::fromTheme(QString::fromUtf8("search")));
        selectObjectB->setIcon(icon1);

        gridLayout_2->addWidget(selectObjectB, 0, 3, 1, 1);

        targetStarLabel = new QLabel(jobSequenceGroup);
        targetStarLabel->setObjectName("targetStarLabel");
        targetStarLabel->setStyleSheet(QString::fromUtf8("color:red"));
        targetStarLabel->setText(QString::fromUtf8("*"));

        gridLayout_2->addWidget(targetStarLabel, 0, 1, 1, 1);

        label_4 = new QLabel(jobSequenceGroup);
        label_4->setObjectName("label_4");
        sizePolicy.setHeightForWidth(label_4->sizePolicy().hasHeightForWidth());
        label_4->setSizePolicy(sizePolicy);

        gridLayout_2->addWidget(label_4, 8, 0, 1, 1);

        gridLayout_4 = new QGridLayout();
        gridLayout_4->setObjectName("gridLayout_4");
        gridLayout_4->setContentsMargins(6, -1, 6, -1);
        schedulerTrackStep = new QCheckBox(jobSequenceGroup);
        stepsButtonGroup = new QButtonGroup(Scheduler);
        stepsButtonGroup->setObjectName("stepsButtonGroup");
        stepsButtonGroup->setExclusive(false);
        stepsButtonGroup->addButton(schedulerTrackStep);
        schedulerTrackStep->setObjectName("schedulerTrackStep");
        sizePolicy.setHeightForWidth(schedulerTrackStep->sizePolicy().hasHeightForWidth());
        schedulerTrackStep->setSizePolicy(sizePolicy);
        schedulerTrackStep->setLayoutDirection(Qt::LayoutDirection::LeftToRight);
        schedulerTrackStep->setChecked(true);

        gridLayout_4->addWidget(schedulerTrackStep, 0, 0, 1, 1);

        schedulerAlignStep = new QCheckBox(jobSequenceGroup);
        stepsButtonGroup->addButton(schedulerAlignStep);
        schedulerAlignStep->setObjectName("schedulerAlignStep");
        sizePolicy.setHeightForWidth(schedulerAlignStep->sizePolicy().hasHeightForWidth());
        schedulerAlignStep->setSizePolicy(sizePolicy);
        schedulerAlignStep->setChecked(true);

        gridLayout_4->addWidget(schedulerAlignStep, 0, 2, 1, 1);

        schedulerGuideStep = new QCheckBox(jobSequenceGroup);
        stepsButtonGroup->addButton(schedulerGuideStep);
        schedulerGuideStep->setObjectName("schedulerGuideStep");
        sizePolicy.setHeightForWidth(schedulerGuideStep->sizePolicy().hasHeightForWidth());
        schedulerGuideStep->setSizePolicy(sizePolicy);
        schedulerGuideStep->setChecked(true);

        gridLayout_4->addWidget(schedulerGuideStep, 0, 3, 1, 1);

        schedulerFocusStep = new QCheckBox(jobSequenceGroup);
        stepsButtonGroup->addButton(schedulerFocusStep);
        schedulerFocusStep->setObjectName("schedulerFocusStep");
        sizePolicy.setHeightForWidth(schedulerFocusStep->sizePolicy().hasHeightForWidth());
        schedulerFocusStep->setSizePolicy(sizePolicy);
        schedulerFocusStep->setLayoutDirection(Qt::LayoutDirection::LeftToRight);
        schedulerFocusStep->setChecked(true);

        gridLayout_4->addWidget(schedulerFocusStep, 0, 1, 1, 1);

        gridLayout_4->setColumnStretch(0, 1);
        gridLayout_4->setColumnStretch(1, 1);
        gridLayout_4->setColumnStretch(2, 1);
        gridLayout_4->setColumnStretch(3, 1);

        gridLayout_2->addLayout(gridLayout_4, 8, 2, 1, 1);

        sequenceLabel = new QLabel(jobSequenceGroup);
        sequenceLabel->setObjectName("sequenceLabel");

        gridLayout_2->addWidget(sequenceLabel, 4, 0, 1, 1);

        selectFITSB = new QPushButton(jobSequenceGroup);
        selectFITSB->setObjectName("selectFITSB");
        sizePolicy.setHeightForWidth(selectFITSB->sizePolicy().hasHeightForWidth());
        selectFITSB->setSizePolicy(sizePolicy);
        selectFITSB->setIcon(icon);

        gridLayout_2->addWidget(selectFITSB, 5, 3, 1, 1);

        rotationLabel = new QLabel(jobSequenceGroup);
        rotationLabel->setObjectName("rotationLabel");

        gridLayout_2->addWidget(rotationLabel, 2, 0, 1, 1);

        copySkyCenterB = new QPushButton(jobSequenceGroup);
        copySkyCenterB->setObjectName("copySkyCenterB");
        QIcon icon2(QIcon::fromTheme(QString::fromUtf8("snap-orthogonal")));
        copySkyCenterB->setIcon(icon2);

        gridLayout_2->addWidget(copySkyCenterB, 1, 3, 1, 1);

        groupLabel = new QLabel(jobSequenceGroup);
        groupLabel->setObjectName("groupLabel");

        gridLayout_2->addWidget(groupLabel, 6, 0, 1, 1);

        leadFollowerSelectionCB = new QComboBox(jobSequenceGroup);
        leadFollowerSelectionCB->setObjectName("leadFollowerSelectionCB");

        gridLayout_2->addWidget(leadFollowerSelectionCB, 0, 0, 1, 1);

        groupEdit = new QLineEdit(jobSequenceGroup);
        groupEdit->setObjectName("groupEdit");
        sizePolicy.setHeightForWidth(groupEdit->sizePolicy().hasHeightForWidth());
        groupEdit->setSizePolicy(sizePolicy);

        gridLayout_2->addWidget(groupEdit, 6, 2, 1, 1);

        label_5 = new QLabel(jobSequenceGroup);
        label_5->setObjectName("label_5");
        label_5->setStyleSheet(QString::fromUtf8("color:red"));
        label_5->setText(QString::fromUtf8("*"));

        gridLayout_2->addWidget(label_5, 4, 1, 1, 1);

        horizontalLayout_15 = new QHBoxLayout();
        horizontalLayout_15->setSpacing(1);
        horizontalLayout_15->setObjectName("horizontalLayout_15");
        horizontalLayout_15->setSizeConstraint(QLayout::SizeConstraint::SetDefaultConstraint);
        horizontalLayout_15->setContentsMargins(-1, -1, -1, 0);
        sequenceEdit = new QLineEdit(jobSequenceGroup);
        sequenceEdit->setObjectName("sequenceEdit");
        sequenceEdit->setEnabled(true);
        sizePolicy.setHeightForWidth(sequenceEdit->sizePolicy().hasHeightForWidth());
        sequenceEdit->setSizePolicy(sizePolicy);
        sequenceEdit->setReadOnly(true);

        horizontalLayout_15->addWidget(sequenceEdit);


        gridLayout_2->addLayout(horizontalLayout_15, 4, 2, 1, 1);

        label_11 = new QLabel(jobSequenceGroup);
        label_11->setObjectName("label_11");
        QPalette palette;
        QBrush brush(QColor(255, 0, 0, 255));
        brush.setStyle(Qt::BrushStyle::SolidPattern);
        palette.setBrush(QPalette::ColorGroup::Active, QPalette::ColorRole::WindowText, brush);
        palette.setBrush(QPalette::ColorGroup::Active, QPalette::ColorRole::Text, brush);
        palette.setBrush(QPalette::ColorGroup::Active, QPalette::ColorRole::ButtonText, brush);
        QBrush brush1(QColor(255, 0, 0, 128));
        brush1.setStyle(Qt::BrushStyle::NoBrush);
#if QT_VERSION >= QT_VERSION_CHECK(5, 12, 0)
        palette.setBrush(QPalette::ColorGroup::Active, QPalette::ColorRole::PlaceholderText, brush1);
#endif
        palette.setBrush(QPalette::ColorGroup::Inactive, QPalette::ColorRole::WindowText, brush);
        palette.setBrush(QPalette::ColorGroup::Inactive, QPalette::ColorRole::Text, brush);
        palette.setBrush(QPalette::ColorGroup::Inactive, QPalette::ColorRole::ButtonText, brush);
        QBrush brush2(QColor(255, 0, 0, 128));
        brush2.setStyle(Qt::BrushStyle::NoBrush);
#if QT_VERSION >= QT_VERSION_CHECK(5, 12, 0)
        palette.setBrush(QPalette::ColorGroup::Inactive, QPalette::ColorRole::PlaceholderText, brush2);
#endif
        QBrush brush3(QColor(160, 162, 162, 255));
        brush3.setStyle(Qt::BrushStyle::SolidPattern);
        palette.setBrush(QPalette::ColorGroup::Disabled, QPalette::ColorRole::WindowText, brush3);
        QBrush brush4(QColor(168, 169, 169, 255));
        brush4.setStyle(Qt::BrushStyle::SolidPattern);
        palette.setBrush(QPalette::ColorGroup::Disabled, QPalette::ColorRole::Text, brush4);
        palette.setBrush(QPalette::ColorGroup::Disabled, QPalette::ColorRole::ButtonText, brush3);
        QBrush brush5(QColor(255, 0, 0, 128));
        brush5.setStyle(Qt::BrushStyle::NoBrush);
#if QT_VERSION >= QT_VERSION_CHECK(5, 12, 0)
        palette.setBrush(QPalette::ColorGroup::Disabled, QPalette::ColorRole::PlaceholderText, brush5);
#endif
        label_11->setPalette(palette);
        label_11->setText(QString::fromUtf8("*"));

        gridLayout_2->addWidget(label_11, 1, 1, 1, 1);

        schedulerProfileCombo = new QComboBox(jobSequenceGroup);
        schedulerProfileCombo->addItem(QString());
        schedulerProfileCombo->setObjectName("schedulerProfileCombo");
        sizePolicy.setHeightForWidth(schedulerProfileCombo->sizePolicy().hasHeightForWidth());
        schedulerProfileCombo->setSizePolicy(sizePolicy);

        gridLayout_2->addWidget(schedulerProfileCombo, 7, 2, 1, 1);

        positionAngleSpin = new QDoubleSpinBox(jobSequenceGroup);
        positionAngleSpin->setObjectName("positionAngleSpin");
        sizePolicy.setHeightForWidth(positionAngleSpin->sizePolicy().hasHeightForWidth());
        positionAngleSpin->setSizePolicy(sizePolicy);
        positionAngleSpin->setMinimum(-181.000000000000000);
        positionAngleSpin->setMaximum(180.000000000000000);
        positionAngleSpin->setSingleStep(5.000000000000000);
        positionAngleSpin->setValue(-181.000000000000000);

        gridLayout_2->addWidget(positionAngleSpin, 2, 2, 1, 1);

        label_9 = new QLabel(jobSequenceGroup);
        label_9->setObjectName("label_9");

        gridLayout_2->addWidget(label_9, 7, 0, 1, 1);

        horizontalLayout_17 = new QHBoxLayout();
        horizontalLayout_17->setSpacing(5);
        horizontalLayout_17->setObjectName("horizontalLayout_17");
        horizontalLayout_17->setContentsMargins(-1, -1, -1, 0);
        label_6 = new QLabel(jobSequenceGroup);
        label_6->setObjectName("label_6");

        horizontalLayout_17->addWidget(label_6);

        raBox = new dmsBox(jobSequenceGroup);
        raBox->setObjectName("raBox");
        QSizePolicy sizePolicy1(QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Preferred);
        sizePolicy1.setHorizontalStretch(0);
        sizePolicy1.setVerticalStretch(0);
        sizePolicy1.setHeightForWidth(raBox->sizePolicy().hasHeightForWidth());
        raBox->setSizePolicy(sizePolicy1);

        horizontalLayout_17->addWidget(raBox);

        label_2 = new QLabel(jobSequenceGroup);
        label_2->setObjectName("label_2");

        horizontalLayout_17->addWidget(label_2);

        decBox = new dmsBox(jobSequenceGroup);
        decBox->setObjectName("decBox");
        sizePolicy1.setHeightForWidth(decBox->sizePolicy().hasHeightForWidth());
        decBox->setSizePolicy(sizePolicy1);
        decBox->setLayoutDirection(Qt::LayoutDirection::LeftToRight);

        horizontalLayout_17->addWidget(decBox);

        copyMountTargetB = new QPushButton(jobSequenceGroup);
        copyMountTargetB->setObjectName("copyMountTargetB");
        copyMountTargetB->setEnabled(false);
        QIcon icon3(QIcon::fromTheme(QString::fromUtf8("kstars_flag")));
        copyMountTargetB->setIcon(icon3);

        horizontalLayout_17->addWidget(copyMountTargetB);


        gridLayout_2->addLayout(horizontalLayout_17, 1, 2, 1, 1);

        trainLabel = new QLabel(jobSequenceGroup);
        trainLabel->setObjectName("trainLabel");

        gridLayout_2->addWidget(trainLabel, 3, 0, 1, 1);

        label_10 = new QLabel(jobSequenceGroup);
        label_10->setObjectName("label_10");
        label_10->setStyleSheet(QString::fromUtf8("color:red"));

        gridLayout_2->addWidget(label_10, 3, 1, 1, 1);

        opticalTrainCombo = new QComboBox(jobSequenceGroup);
        opticalTrainCombo->setObjectName("opticalTrainCombo");

        gridLayout_2->addWidget(opticalTrainCombo, 3, 2, 1, 1);

        epochCB = new QComboBox(jobSequenceGroup);
        epochCB->addItem(QString());
        epochCB->addItem(QString());
        epochCB->setObjectName("epochCB");

        gridLayout_2->addWidget(epochCB, 1, 0, 1, 1);

        gridLayout_2->setRowStretch(0, 1);

        verticalLayout_6->addLayout(gridLayout_2);

        verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Policy::Minimum, QSizePolicy::Policy::Expanding);

        verticalLayout_6->addItem(verticalSpacer);


        horizontalLayout_10->addLayout(verticalLayout_6);

        verticalLayout = new QVBoxLayout();
        verticalLayout->setSpacing(1);
        verticalLayout->setObjectName("verticalLayout");
        verticalLayout->setSizeConstraint(QLayout::SizeConstraint::SetDefaultConstraint);
        horizontalLayout_14 = new QHBoxLayout();
        horizontalLayout_14->setSpacing(1);
        horizontalLayout_14->setObjectName("horizontalLayout_14");
        addToQueueB = new QPushButton(jobSequenceGroup);
        addToQueueB->setObjectName("addToQueueB");
        addToQueueB->setEnabled(false);
        QSizePolicy sizePolicy2(QSizePolicy::Policy::Fixed, QSizePolicy::Policy::Fixed);
        sizePolicy2.setHorizontalStretch(0);
        sizePolicy2.setVerticalStretch(0);
        sizePolicy2.setHeightForWidth(addToQueueB->sizePolicy().hasHeightForWidth());
        addToQueueB->setSizePolicy(sizePolicy2);
        addToQueueB->setMinimumSize(QSize(32, 32));
        addToQueueB->setMaximumSize(QSize(32, 32));

        horizontalLayout_14->addWidget(addToQueueB);

        removeFromQueueB = new QPushButton(jobSequenceGroup);
        removeFromQueueB->setObjectName("removeFromQueueB");
        removeFromQueueB->setEnabled(false);
        sizePolicy2.setHeightForWidth(removeFromQueueB->sizePolicy().hasHeightForWidth());
        removeFromQueueB->setSizePolicy(sizePolicy2);
        removeFromQueueB->setMinimumSize(QSize(32, 32));
        removeFromQueueB->setMaximumSize(QSize(32, 32));

        horizontalLayout_14->addWidget(removeFromQueueB);

        queueUpB = new QPushButton(jobSequenceGroup);
        queueUpB->setObjectName("queueUpB");
        queueUpB->setEnabled(false);
        sizePolicy2.setHeightForWidth(queueUpB->sizePolicy().hasHeightForWidth());
        queueUpB->setSizePolicy(sizePolicy2);
        queueUpB->setMinimumSize(QSize(32, 32));
        queueUpB->setMaximumSize(QSize(32, 32));

        horizontalLayout_14->addWidget(queueUpB);

        queueDownB = new QPushButton(jobSequenceGroup);
        queueDownB->setObjectName("queueDownB");
        queueDownB->setEnabled(false);
        sizePolicy2.setHeightForWidth(queueDownB->sizePolicy().hasHeightForWidth());
        queueDownB->setSizePolicy(sizePolicy2);
        queueDownB->setMinimumSize(QSize(32, 32));
        queueDownB->setMaximumSize(QSize(32, 32));

        horizontalLayout_14->addWidget(queueDownB);

        evaluateOnlyB = new QPushButton(jobSequenceGroup);
        evaluateOnlyB->setObjectName("evaluateOnlyB");
        evaluateOnlyB->setEnabled(false);
        sizePolicy2.setHeightForWidth(evaluateOnlyB->sizePolicy().hasHeightForWidth());
        evaluateOnlyB->setSizePolicy(sizePolicy2);
        evaluateOnlyB->setMaximumSize(QSize(32, 32));

        horizontalLayout_14->addWidget(evaluateOnlyB);

        sortJobsB = new QPushButton(jobSequenceGroup);
        sortJobsB->setObjectName("sortJobsB");
        sortJobsB->setEnabled(false);
        sizePolicy2.setHeightForWidth(sortJobsB->sizePolicy().hasHeightForWidth());
        sortJobsB->setSizePolicy(sizePolicy2);
        sortJobsB->setMaximumSize(QSize(32, 32));

        horizontalLayout_14->addWidget(sortJobsB);

        horizontalSpacer_3 = new QSpacerItem(40, 20, QSizePolicy::Policy::Preferred, QSizePolicy::Policy::Minimum);

        horizontalLayout_14->addItem(horizontalSpacer_3);

        mosaicB = new QPushButton(jobSequenceGroup);
        mosaicB->setObjectName("mosaicB");
        mosaicB->setEnabled(true);
        sizePolicy2.setHeightForWidth(mosaicB->sizePolicy().hasHeightForWidth());
        mosaicB->setSizePolicy(sizePolicy2);
        mosaicB->setMinimumSize(QSize(32, 32));
        mosaicB->setMaximumSize(QSize(32, 32));

        horizontalLayout_14->addWidget(mosaicB);

        queueViewerB = new QPushButton(jobSequenceGroup);
        queueViewerB->setObjectName("queueViewerB");
        queueViewerB->setMinimumSize(QSize(32, 32));
        queueViewerB->setMaximumSize(QSize(32, 32));
        QIcon icon4(QIcon::fromTheme(QIcon::ThemeIcon::FormatJustifyFill));
        queueViewerB->setIcon(icon4);

        horizontalLayout_14->addWidget(queueViewerB);

        editSequenceB = new QPushButton(jobSequenceGroup);
        editSequenceB->setObjectName("editSequenceB");
        sizePolicy2.setHeightForWidth(editSequenceB->sizePolicy().hasHeightForWidth());
        editSequenceB->setSizePolicy(sizePolicy2);
        editSequenceB->setMinimumSize(QSize(32, 32));
        editSequenceB->setMaximumSize(QSize(32, 32));
        QIcon icon5(QIcon::fromTheme(QString::fromUtf8("document-edit")));
        editSequenceB->setIcon(icon5);

        horizontalLayout_14->addWidget(editSequenceB);

        horizontalSpacer = new QSpacerItem(40, 20, QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Minimum);

        horizontalLayout_14->addItem(horizontalSpacer);

        queueAppendB = new QPushButton(jobSequenceGroup);
        queueAppendB->setObjectName("queueAppendB");
        queueAppendB->setEnabled(true);
        sizePolicy2.setHeightForWidth(queueAppendB->sizePolicy().hasHeightForWidth());
        queueAppendB->setSizePolicy(sizePolicy2);
        queueAppendB->setMinimumSize(QSize(32, 32));
        queueAppendB->setMaximumSize(QSize(32, 32));

        horizontalLayout_14->addWidget(queueAppendB);

        queueLoadB = new QPushButton(jobSequenceGroup);
        queueLoadB->setObjectName("queueLoadB");
        queueLoadB->setEnabled(true);
        sizePolicy2.setHeightForWidth(queueLoadB->sizePolicy().hasHeightForWidth());
        queueLoadB->setSizePolicy(sizePolicy2);
        queueLoadB->setMinimumSize(QSize(32, 32));
        queueLoadB->setMaximumSize(QSize(32, 32));

        horizontalLayout_14->addWidget(queueLoadB);

        queueSaveB = new QPushButton(jobSequenceGroup);
        queueSaveB->setObjectName("queueSaveB");
        queueSaveB->setEnabled(false);
        sizePolicy2.setHeightForWidth(queueSaveB->sizePolicy().hasHeightForWidth());
        queueSaveB->setSizePolicy(sizePolicy2);
        queueSaveB->setMaximumSize(QSize(32, 32));

        horizontalLayout_14->addWidget(queueSaveB);

        queueSaveAsB = new QPushButton(jobSequenceGroup);
        queueSaveAsB->setObjectName("queueSaveAsB");
        queueSaveAsB->setEnabled(false);
        sizePolicy2.setHeightForWidth(queueSaveAsB->sizePolicy().hasHeightForWidth());
        queueSaveAsB->setSizePolicy(sizePolicy2);
        queueSaveAsB->setMinimumSize(QSize(32, 32));
        queueSaveAsB->setMaximumSize(QSize(32, 32));

        horizontalLayout_14->addWidget(queueSaveAsB);


        verticalLayout->addLayout(horizontalLayout_14);

        tableLayout = new QSplitter(jobSequenceGroup);
        tableLayout->setObjectName("tableLayout");
        QSizePolicy sizePolicy3(QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Expanding);
        sizePolicy3.setHorizontalStretch(0);
        sizePolicy3.setVerticalStretch(0);
        sizePolicy3.setHeightForWidth(tableLayout->sizePolicy().hasHeightForWidth());
        tableLayout->setSizePolicy(sizePolicy3);
        tableLayout->setOrientation(Qt::Orientation::Vertical);
        queueTable = new QTableWidget(tableLayout);
        if (queueTable->columnCount() < 6)
            queueTable->setColumnCount(6);
        QTableWidgetItem *__qtablewidgetitem = new QTableWidgetItem();
        queueTable->setHorizontalHeaderItem(0, __qtablewidgetitem);
        QFont font;
        font.setBold(false);
        QTableWidgetItem *__qtablewidgetitem1 = new QTableWidgetItem();
        __qtablewidgetitem1->setFont(font);
        queueTable->setHorizontalHeaderItem(1, __qtablewidgetitem1);
        QTableWidgetItem *__qtablewidgetitem2 = new QTableWidgetItem();
        queueTable->setHorizontalHeaderItem(2, __qtablewidgetitem2);
        QTableWidgetItem *__qtablewidgetitem3 = new QTableWidgetItem();
        queueTable->setHorizontalHeaderItem(3, __qtablewidgetitem3);
        QTableWidgetItem *__qtablewidgetitem4 = new QTableWidgetItem();
        queueTable->setHorizontalHeaderItem(4, __qtablewidgetitem4);
        QTableWidgetItem *__qtablewidgetitem5 = new QTableWidgetItem();
        queueTable->setHorizontalHeaderItem(5, __qtablewidgetitem5);
        queueTable->setObjectName("queueTable");
        queueTable->setSelectionMode(QAbstractItemView::SelectionMode::SingleSelection);
        queueTable->setSelectionBehavior(QAbstractItemView::SelectionBehavior::SelectRows);
        queueTable->setRowCount(0);
        tableLayout->addWidget(queueTable);
        queueTable->horizontalHeader()->setStretchLastSection(true);
        altGraph = new Ekos::SchedulerAltitudeGraph(tableLayout);
        altGraph->setObjectName("altGraph");
        altGraph->setEnabled(true);
        altGraph->setCursor(QCursor(Qt::CursorShape::ArrowCursor));
        tableLayout->addWidget(altGraph);

        verticalLayout->addWidget(tableLayout);

        bottomLayout = new QHBoxLayout();
        bottomLayout->setSpacing(1);
        bottomLayout->setObjectName("bottomLayout");
        startB = new QPushButton(jobSequenceGroup);
        startB->setObjectName("startB");
        startB->setEnabled(false);
        sizePolicy2.setHeightForWidth(startB->sizePolicy().hasHeightForWidth());
        startB->setSizePolicy(sizePolicy2);
        startB->setMinimumSize(QSize(32, 32));
        startB->setMaximumSize(QSize(32, 32));
        startB->setStyleSheet(QString::fromUtf8("QPushButton:checked\n"
"{\n"
"background-color: maroon;\n"
"border: 1px outset;\n"
"font-weight:bold;\n"
"}"));

        bottomLayout->addWidget(startB);

        pauseB = new QPushButton(jobSequenceGroup);
        pauseB->setObjectName("pauseB");
        pauseB->setEnabled(false);
        sizePolicy2.setHeightForWidth(pauseB->sizePolicy().hasHeightForWidth());
        pauseB->setSizePolicy(sizePolicy2);
        pauseB->setMinimumSize(QSize(32, 32));
        pauseB->setMaximumSize(QSize(32, 32));
        pauseB->setStyleSheet(QString::fromUtf8("QPushButton:checked\n"
"{\n"
"background-color: maroon;\n"
"border: 1px outset;\n"
"font-weight:bold;\n"
"}"));
        pauseB->setCheckable(true);

        bottomLayout->addWidget(pauseB);

        sleepLabel = new QLabel(jobSequenceGroup);
        sleepLabel->setObjectName("sleepLabel");
        sleepLabel->setMaximumSize(QSize(32, 32));

        bottomLayout->addWidget(sleepLabel);

        horizontalSpacer_4 = new QSpacerItem(20, 20, QSizePolicy::Policy::Fixed, QSizePolicy::Policy::Minimum);

        bottomLayout->addItem(horizontalSpacer_4);

        schedulerRepeatEverything = new QCheckBox(jobSequenceGroup);
        schedulerRepeatEverything->setObjectName("schedulerRepeatEverything");

        bottomLayout->addWidget(schedulerRepeatEverything);

        executionSequenceLimit = new QSpinBox(jobSequenceGroup);
        executionSequenceLimit->setObjectName("executionSequenceLimit");
        executionSequenceLimit->setMaximum(9999);

        bottomLayout->addWidget(executionSequenceLimit);

        horizontalSpacer_2 = new QSpacerItem(40, 20, QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Minimum);

        bottomLayout->addItem(horizontalSpacer_2);

        jobStatus = new QLabel(jobSequenceGroup);
        jobStatus->setObjectName("jobStatus");
        jobStatus->setStyleSheet(QString::fromUtf8(""));

        bottomLayout->addWidget(jobStatus);


        verticalLayout->addLayout(bottomLayout);


        horizontalLayout_10->addLayout(verticalLayout);

        horizontalLayout_10->setStretch(0, 1);
        horizontalLayout_10->setStretch(1, 4);

        verticalLayout_8->addWidget(jobSequenceGroup);

        gridLayoutConditions = new QGridLayout();
        gridLayoutConditions->setObjectName("gridLayoutConditions");
        gridLayoutConditions->setSizeConstraint(QLayout::SizeConstraint::SetDefaultConstraint);
        gridLayoutConditions->setHorizontalSpacing(0);
        gridLayoutConditions->setVerticalSpacing(1);
        gridLayoutConditions->setContentsMargins(-1, -1, 0, -1);
        completionGroup = new QGroupBox(Scheduler);
        completionGroup->setObjectName("completionGroup");
        QSizePolicy sizePolicy4(QSizePolicy::Policy::Preferred, QSizePolicy::Policy::MinimumExpanding);
        sizePolicy4.setHorizontalStretch(0);
        sizePolicy4.setVerticalStretch(0);
        sizePolicy4.setHeightForWidth(completionGroup->sizePolicy().hasHeightForWidth());
        completionGroup->setSizePolicy(sizePolicy4);
        verticalLayout_5 = new QVBoxLayout(completionGroup);
        verticalLayout_5->setSpacing(3);
        verticalLayout_5->setObjectName("verticalLayout_5");
        verticalLayout_5->setSizeConstraint(QLayout::SizeConstraint::SetDefaultConstraint);
        verticalLayout_5->setContentsMargins(3, 3, 3, 3);
        gridLayout_6 = new QGridLayout();
        gridLayout_6->setSpacing(3);
        gridLayout_6->setObjectName("gridLayout_6");
        schedulerRepeatSequences = new QRadioButton(completionGroup);
        completionButtonGroup = new QButtonGroup(Scheduler);
        completionButtonGroup->setObjectName("completionButtonGroup");
        completionButtonGroup->addButton(schedulerRepeatSequences);
        schedulerRepeatSequences->setObjectName("schedulerRepeatSequences");
        sizePolicy.setHeightForWidth(schedulerRepeatSequences->sizePolicy().hasHeightForWidth());
        schedulerRepeatSequences->setSizePolicy(sizePolicy);

        gridLayout_6->addWidget(schedulerRepeatSequences, 1, 0, 1, 1);

        schedulerUntilValue = new QDateTimeEdit(completionGroup);
        schedulerUntilValue->setObjectName("schedulerUntilValue");
        sizePolicy.setHeightForWidth(schedulerUntilValue->sizePolicy().hasHeightForWidth());
        schedulerUntilValue->setSizePolicy(sizePolicy);
        schedulerUntilValue->setCalendarPopup(true);

        gridLayout_6->addWidget(schedulerUntilValue, 3, 1, 1, 1);

        schedulerCompleteSequences = new QRadioButton(completionGroup);
        completionButtonGroup->addButton(schedulerCompleteSequences);
        schedulerCompleteSequences->setObjectName("schedulerCompleteSequences");
        sizePolicy.setHeightForWidth(schedulerCompleteSequences->sizePolicy().hasHeightForWidth());
        schedulerCompleteSequences->setSizePolicy(sizePolicy);
        schedulerCompleteSequences->setChecked(true);

        gridLayout_6->addWidget(schedulerCompleteSequences, 0, 0, 1, 2);

        schedulerUntil = new QRadioButton(completionGroup);
        completionButtonGroup->addButton(schedulerUntil);
        schedulerUntil->setObjectName("schedulerUntil");
        sizePolicy.setHeightForWidth(schedulerUntil->sizePolicy().hasHeightForWidth());
        schedulerUntil->setSizePolicy(sizePolicy);

        gridLayout_6->addWidget(schedulerUntil, 3, 0, 1, 1);

        schedulerRepeatSequencesLimit = new QSpinBox(completionGroup);
        schedulerRepeatSequencesLimit->setObjectName("schedulerRepeatSequencesLimit");
        sizePolicy.setHeightForWidth(schedulerRepeatSequencesLimit->sizePolicy().hasHeightForWidth());
        schedulerRepeatSequencesLimit->setSizePolicy(sizePolicy);
        schedulerRepeatSequencesLimit->setMinimum(1);
        schedulerRepeatSequencesLimit->setMaximum(1000);
        schedulerRepeatSequencesLimit->setValue(1);

        gridLayout_6->addWidget(schedulerRepeatSequencesLimit, 1, 1, 1, 1);

        schedulerUntilTerminated = new QRadioButton(completionGroup);
        completionButtonGroup->addButton(schedulerUntilTerminated);
        schedulerUntilTerminated->setObjectName("schedulerUntilTerminated");
        sizePolicy.setHeightForWidth(schedulerUntilTerminated->sizePolicy().hasHeightForWidth());
        schedulerUntilTerminated->setSizePolicy(sizePolicy);

        gridLayout_6->addWidget(schedulerUntilTerminated, 2, 0, 1, 2);

        gridLayout_6->setRowStretch(0, 1);
        gridLayout_6->setRowStretch(1, 1);
        gridLayout_6->setRowStretch(2, 1);
        gridLayout_6->setRowStretch(3, 1);
        gridLayout_6->setColumnStretch(0, 2);
        gridLayout_6->setColumnStretch(1, 1);

        verticalLayout_5->addLayout(gridLayout_6);


        gridLayoutConditions->addWidget(completionGroup, 0, 2, 1, 1);

        startupGroup = new QGroupBox(Scheduler);
        startupGroup->setObjectName("startupGroup");
        sizePolicy.setHeightForWidth(startupGroup->sizePolicy().hasHeightForWidth());
        startupGroup->setSizePolicy(sizePolicy);
        verticalLayout_3 = new QVBoxLayout(startupGroup);
        verticalLayout_3->setSpacing(3);
        verticalLayout_3->setObjectName("verticalLayout_3");
        verticalLayout_3->setContentsMargins(3, 3, 3, 3);
        gridLayout = new QGridLayout();
        gridLayout->setSpacing(3);
        gridLayout->setObjectName("gridLayout");
        startupTimeEdit = new QDateTimeEdit(startupGroup);
        startupTimeEdit->setObjectName("startupTimeEdit");
        sizePolicy.setHeightForWidth(startupTimeEdit->sizePolicy().hasHeightForWidth());
        startupTimeEdit->setSizePolicy(sizePolicy);
        startupTimeEdit->setCalendarPopup(true);

        gridLayout->addWidget(startupTimeEdit, 1, 1, 1, 1);

        startupTimeConditionR = new QRadioButton(startupGroup);
        startupButtonGroup = new QButtonGroup(Scheduler);
        startupButtonGroup->setObjectName("startupButtonGroup");
        startupButtonGroup->addButton(startupTimeConditionR);
        startupTimeConditionR->setObjectName("startupTimeConditionR");
        sizePolicy.setHeightForWidth(startupTimeConditionR->sizePolicy().hasHeightForWidth());
        startupTimeConditionR->setSizePolicy(sizePolicy);

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

        asapConditionR = new QRadioButton(startupGroup);
        startupButtonGroup->addButton(asapConditionR);
        asapConditionR->setObjectName("asapConditionR");
        sizePolicy.setHeightForWidth(asapConditionR->sizePolicy().hasHeightForWidth());
        asapConditionR->setSizePolicy(sizePolicy);
        asapConditionR->setChecked(true);

        gridLayout->addWidget(asapConditionR, 0, 0, 1, 2);

        gridLayout->setRowStretch(0, 1);
        gridLayout->setRowStretch(1, 1);
        gridLayout->setColumnStretch(0, 2);
        gridLayout->setColumnStretch(1, 1);

        verticalLayout_3->addLayout(gridLayout);

        verticalSpacer_2 = new QSpacerItem(20, 40, QSizePolicy::Policy::Minimum, QSizePolicy::Policy::Expanding);

        verticalLayout_3->addItem(verticalSpacer_2);


        gridLayoutConditions->addWidget(startupGroup, 0, 0, 1, 1);

        contraintsGroup = new QGroupBox(Scheduler);
        contraintsGroup->setObjectName("contraintsGroup");
        sizePolicy4.setHeightForWidth(contraintsGroup->sizePolicy().hasHeightForWidth());
        contraintsGroup->setSizePolicy(sizePolicy4);
        gridLayout_3 = new QGridLayout(contraintsGroup);
        gridLayout_3->setSpacing(3);
        gridLayout_3->setObjectName("gridLayout_3");
        gridLayout_3->setContentsMargins(3, 3, 3, 3);
        schedulerAltitude = new QCheckBox(contraintsGroup);
        constraintButtonGroup = new QButtonGroup(Scheduler);
        constraintButtonGroup->setObjectName("constraintButtonGroup");
        constraintButtonGroup->setExclusive(false);
        constraintButtonGroup->addButton(schedulerAltitude);
        schedulerAltitude->setObjectName("schedulerAltitude");
        sizePolicy.setHeightForWidth(schedulerAltitude->sizePolicy().hasHeightForWidth());
        schedulerAltitude->setSizePolicy(sizePolicy);
        schedulerAltitude->setChecked(true);

        gridLayout_3->addWidget(schedulerAltitude, 0, 0, 1, 1);

        schedulerAltitudeValue = new QDoubleSpinBox(contraintsGroup);
        schedulerAltitudeValue->setObjectName("schedulerAltitudeValue");
        sizePolicy.setHeightForWidth(schedulerAltitudeValue->sizePolicy().hasHeightForWidth());
        schedulerAltitudeValue->setSizePolicy(sizePolicy);
        schedulerAltitudeValue->setMinimum(-15.000000000000000);
        schedulerAltitudeValue->setMaximum(89.900000000000006);

        gridLayout_3->addWidget(schedulerAltitudeValue, 0, 1, 1, 1);

        schedulerHorizon = new QCheckBox(contraintsGroup);
        constraintButtonGroup->addButton(schedulerHorizon);
        schedulerHorizon->setObjectName("schedulerHorizon");
        sizePolicy.setHeightForWidth(schedulerHorizon->sizePolicy().hasHeightForWidth());
        schedulerHorizon->setSizePolicy(sizePolicy);
        schedulerHorizon->setChecked(true);

        gridLayout_3->addWidget(schedulerHorizon, 0, 3, 1, 2);

        schedulerMoonSeparation = new QCheckBox(contraintsGroup);
        constraintButtonGroup->addButton(schedulerMoonSeparation);
        schedulerMoonSeparation->setObjectName("schedulerMoonSeparation");
        sizePolicy.setHeightForWidth(schedulerMoonSeparation->sizePolicy().hasHeightForWidth());
        schedulerMoonSeparation->setSizePolicy(sizePolicy);

        gridLayout_3->addWidget(schedulerMoonSeparation, 1, 0, 1, 1);

        schedulerMoonSeparationValue = new QDoubleSpinBox(contraintsGroup);
        schedulerMoonSeparationValue->setObjectName("schedulerMoonSeparationValue");
        sizePolicy.setHeightForWidth(schedulerMoonSeparationValue->sizePolicy().hasHeightForWidth());
        schedulerMoonSeparationValue->setSizePolicy(sizePolicy);
        schedulerMoonSeparationValue->setMaximum(180.000000000000000);
        schedulerMoonSeparationValue->setSingleStep(10.000000000000000);

        gridLayout_3->addWidget(schedulerMoonSeparationValue, 1, 1, 1, 1);

        horizontalSpacer_5 = new QSpacerItem(13, 20, QSizePolicy::Policy::Fixed, QSizePolicy::Policy::Minimum);

        gridLayout_3->addItem(horizontalSpacer_5, 1, 2, 1, 1);

        schedulerMoonAltitude = new QCheckBox(contraintsGroup);
        schedulerMoonAltitude->setObjectName("schedulerMoonAltitude");

        gridLayout_3->addWidget(schedulerMoonAltitude, 1, 3, 1, 1);

        schedulerMoonAltitudeMaxValue = new QDoubleSpinBox(contraintsGroup);
        schedulerMoonAltitudeMaxValue->setObjectName("schedulerMoonAltitudeMaxValue");
        schedulerMoonAltitudeMaxValue->setDecimals(2);
        schedulerMoonAltitudeMaxValue->setMaximum(90.000000000000000);
        schedulerMoonAltitudeMaxValue->setValue(90.000000000000000);

        gridLayout_3->addWidget(schedulerMoonAltitudeMaxValue, 1, 4, 1, 1);

        schedulerTwilight = new QCheckBox(contraintsGroup);
        constraintButtonGroup->addButton(schedulerTwilight);
        schedulerTwilight->setObjectName("schedulerTwilight");
        sizePolicy.setHeightForWidth(schedulerTwilight->sizePolicy().hasHeightForWidth());
        schedulerTwilight->setSizePolicy(sizePolicy);
        schedulerTwilight->setChecked(true);

        gridLayout_3->addWidget(schedulerTwilight, 2, 0, 1, 1);

        nightTime = new QLabel(contraintsGroup);
        nightTime->setObjectName("nightTime");
        nightTime->setAlignment(Qt::AlignmentFlag::AlignCenter);

        gridLayout_3->addWidget(nightTime, 2, 1, 1, 1);

        weatherLabel = new QLabel(contraintsGroup);
        weatherLabel->setObjectName("weatherLabel");
        weatherLabel->setAlignment(Qt::AlignmentFlag::AlignCenter);

        gridLayout_3->addWidget(weatherLabel, 2, 3, 1, 2);


        gridLayoutConditions->addWidget(contraintsGroup, 0, 1, 1, 1);

        gridLayoutConditions->setColumnStretch(0, 2);
        gridLayoutConditions->setColumnStretch(1, 4);
        gridLayoutConditions->setColumnStretch(2, 3);

        verticalLayout_8->addLayout(gridLayoutConditions);

        gridLayoutStartStop = new QGridLayout();
        gridLayoutStartStop->setObjectName("gridLayoutStartStop");
        errorHandlingGroup = new QGroupBox(Scheduler);
        errorHandlingGroup->setObjectName("errorHandlingGroup");
        verticalLayout_9 = new QVBoxLayout(errorHandlingGroup);
        verticalLayout_9->setSpacing(1);
        verticalLayout_9->setObjectName("verticalLayout_9");
        verticalLayout_9->setContentsMargins(3, 3, 3, 3);
        horizontalLayout_4 = new QHBoxLayout();
        horizontalLayout_4->setSpacing(1);
        horizontalLayout_4->setObjectName("horizontalLayout_4");
        errorHandlingDontRestartButton = new QRadioButton(errorHandlingGroup);
        errorHandlingButtonGroup = new QButtonGroup(Scheduler);
        errorHandlingButtonGroup->setObjectName("errorHandlingButtonGroup");
        errorHandlingButtonGroup->addButton(errorHandlingDontRestartButton);
        errorHandlingDontRestartButton->setObjectName("errorHandlingDontRestartButton");
        QSizePolicy sizePolicy5(QSizePolicy::Policy::Minimum, QSizePolicy::Policy::Preferred);
        sizePolicy5.setHorizontalStretch(0);
        sizePolicy5.setVerticalStretch(0);
        sizePolicy5.setHeightForWidth(errorHandlingDontRestartButton->sizePolicy().hasHeightForWidth());
        errorHandlingDontRestartButton->setSizePolicy(sizePolicy5);

        horizontalLayout_4->addWidget(errorHandlingDontRestartButton);

        errorHandlingRestartQueueButton = new QRadioButton(errorHandlingGroup);
        errorHandlingButtonGroup->addButton(errorHandlingRestartQueueButton);
        errorHandlingRestartQueueButton->setObjectName("errorHandlingRestartQueueButton");
        sizePolicy5.setHeightForWidth(errorHandlingRestartQueueButton->sizePolicy().hasHeightForWidth());
        errorHandlingRestartQueueButton->setSizePolicy(sizePolicy5);

        horizontalLayout_4->addWidget(errorHandlingRestartQueueButton);

        errorHandlingRestartImmediatelyButton = new QRadioButton(errorHandlingGroup);
        errorHandlingButtonGroup->addButton(errorHandlingRestartImmediatelyButton);
        errorHandlingRestartImmediatelyButton->setObjectName("errorHandlingRestartImmediatelyButton");
        sizePolicy5.setHeightForWidth(errorHandlingRestartImmediatelyButton->sizePolicy().hasHeightForWidth());
        errorHandlingRestartImmediatelyButton->setSizePolicy(sizePolicy5);

        horizontalLayout_4->addWidget(errorHandlingRestartImmediatelyButton);


        verticalLayout_9->addLayout(horizontalLayout_4);

        horizontalLayout_5 = new QHBoxLayout();
        horizontalLayout_5->setSpacing(1);
        horizontalLayout_5->setObjectName("horizontalLayout_5");
        errorHandlingRescheduleErrorsCB = new QCheckBox(errorHandlingGroup);
        errorHandlingRescheduleErrorsCB->setObjectName("errorHandlingRescheduleErrorsCB");
        sizePolicy5.setHeightForWidth(errorHandlingRescheduleErrorsCB->sizePolicy().hasHeightForWidth());
        errorHandlingRescheduleErrorsCB->setSizePolicy(sizePolicy5);

        horizontalLayout_5->addWidget(errorHandlingRescheduleErrorsCB);

        errorHandlingStrategyDelay = new QSpinBox(errorHandlingGroup);
        errorHandlingStrategyDelay->setObjectName("errorHandlingStrategyDelay");
        sizePolicy5.setHeightForWidth(errorHandlingStrategyDelay->sizePolicy().hasHeightForWidth());
        errorHandlingStrategyDelay->setSizePolicy(sizePolicy5);
        errorHandlingStrategyDelay->setMaximum(10000);
        errorHandlingStrategyDelay->setSingleStep(10);

        horizontalLayout_5->addWidget(errorHandlingStrategyDelay);


        verticalLayout_9->addLayout(horizontalLayout_5);


        gridLayoutStartStop->addWidget(errorHandlingGroup, 0, 1, 1, 1);

        startupGroupBox = new QGroupBox(Scheduler);
        startupGroupBox->setObjectName("startupGroupBox");
        verticalLayout_4 = new QVBoxLayout(startupGroupBox);
        verticalLayout_4->setSpacing(1);
        verticalLayout_4->setObjectName("verticalLayout_4");
        verticalLayout_4->setContentsMargins(3, 3, 3, 3);
        schedulerStartupEnabled = new QCheckBox(startupGroupBox);
        schedulerStartupEnabled->setObjectName("schedulerStartupEnabled");
        schedulerStartupEnabled->setChecked(true);

        verticalLayout_4->addWidget(schedulerStartupEnabled);

        horizontalLayout_16 = new QHBoxLayout();
        horizontalLayout_16->setSpacing(1);
        horizontalLayout_16->setObjectName("horizontalLayout_16");
        schedulerPreStartupScript = new QLineEdit(startupGroupBox);
        schedulerPreStartupScript->setObjectName("schedulerPreStartupScript");
        sizePolicy1.setHeightForWidth(schedulerPreStartupScript->sizePolicy().hasHeightForWidth());
        schedulerPreStartupScript->setSizePolicy(sizePolicy1);
        schedulerPreStartupScript->setReadOnly(true);
        schedulerPreStartupScript->setClearButtonEnabled(false);

        horizontalLayout_16->addWidget(schedulerPreStartupScript);

        preStartupQueueClearB = new QPushButton(startupGroupBox);
        preStartupQueueClearB->setObjectName("preStartupQueueClearB");
        QIcon icon6(QIcon::fromTheme(QIcon::ThemeIcon::EditClear));
        preStartupQueueClearB->setIcon(icon6);

        horizontalLayout_16->addWidget(preStartupQueueClearB);

        selectPreStartupQueueB = new QPushButton(startupGroupBox);
        selectPreStartupQueueB->setObjectName("selectPreStartupQueueB");
        sizePolicy.setHeightForWidth(selectPreStartupQueueB->sizePolicy().hasHeightForWidth());
        selectPreStartupQueueB->setSizePolicy(sizePolicy);
        selectPreStartupQueueB->setIcon(icon);

        horizontalLayout_16->addWidget(selectPreStartupQueueB);


        verticalLayout_4->addLayout(horizontalLayout_16);

        horizontalLayout_PostStartup = new QHBoxLayout();
        horizontalLayout_PostStartup->setSpacing(1);
        horizontalLayout_PostStartup->setObjectName("horizontalLayout_PostStartup");
        schedulerPostStartupScript = new QLineEdit(startupGroupBox);
        schedulerPostStartupScript->setObjectName("schedulerPostStartupScript");
        sizePolicy1.setHeightForWidth(schedulerPostStartupScript->sizePolicy().hasHeightForWidth());
        schedulerPostStartupScript->setSizePolicy(sizePolicy1);
        schedulerPostStartupScript->setReadOnly(true);
        schedulerPostStartupScript->setClearButtonEnabled(false);

        horizontalLayout_PostStartup->addWidget(schedulerPostStartupScript);

        postStartupQueueClearB = new QPushButton(startupGroupBox);
        postStartupQueueClearB->setObjectName("postStartupQueueClearB");
        postStartupQueueClearB->setIcon(icon6);

        horizontalLayout_PostStartup->addWidget(postStartupQueueClearB);

        selectPostStartupQueueB = new QPushButton(startupGroupBox);
        selectPostStartupQueueB->setObjectName("selectPostStartupQueueB");
        sizePolicy.setHeightForWidth(selectPostStartupQueueB->sizePolicy().hasHeightForWidth());
        selectPostStartupQueueB->setSizePolicy(sizePolicy);
        selectPostStartupQueueB->setIcon(icon);

        horizontalLayout_PostStartup->addWidget(selectPostStartupQueueB);


        verticalLayout_4->addLayout(horizontalLayout_PostStartup);


        gridLayoutStartStop->addWidget(startupGroupBox, 0, 0, 1, 1);

        shutdownGroupBox = new QGroupBox(Scheduler);
        shutdownGroupBox->setObjectName("shutdownGroupBox");
        sizePolicy.setHeightForWidth(shutdownGroupBox->sizePolicy().hasHeightForWidth());
        shutdownGroupBox->setSizePolicy(sizePolicy);
        verticalLayout_2 = new QVBoxLayout(shutdownGroupBox);
        verticalLayout_2->setSpacing(1);
        verticalLayout_2->setObjectName("verticalLayout_2");
        verticalLayout_2->setContentsMargins(3, 3, 3, 3);
        schedulerShutdownEnabled = new QCheckBox(shutdownGroupBox);
        schedulerShutdownEnabled->setObjectName("schedulerShutdownEnabled");
        schedulerShutdownEnabled->setChecked(true);

        verticalLayout_2->addWidget(schedulerShutdownEnabled);

        horizontalLayout_3 = new QHBoxLayout();
        horizontalLayout_3->setSpacing(1);
        horizontalLayout_3->setObjectName("horizontalLayout_3");
        schedulerPreShutdownScript = new QLineEdit(shutdownGroupBox);
        schedulerPreShutdownScript->setObjectName("schedulerPreShutdownScript");
        sizePolicy1.setHeightForWidth(schedulerPreShutdownScript->sizePolicy().hasHeightForWidth());
        schedulerPreShutdownScript->setSizePolicy(sizePolicy1);
        schedulerPreShutdownScript->setReadOnly(true);
        schedulerPreShutdownScript->setClearButtonEnabled(false);

        horizontalLayout_3->addWidget(schedulerPreShutdownScript);

        preShutdownQueueClearB = new QPushButton(shutdownGroupBox);
        preShutdownQueueClearB->setObjectName("preShutdownQueueClearB");
        preShutdownQueueClearB->setIcon(icon6);

        horizontalLayout_3->addWidget(preShutdownQueueClearB);

        selectPreShutdownQueueB = new QPushButton(shutdownGroupBox);
        selectPreShutdownQueueB->setObjectName("selectPreShutdownQueueB");
        sizePolicy.setHeightForWidth(selectPreShutdownQueueB->sizePolicy().hasHeightForWidth());
        selectPreShutdownQueueB->setSizePolicy(sizePolicy);
        selectPreShutdownQueueB->setIcon(icon);

        horizontalLayout_3->addWidget(selectPreShutdownQueueB);


        verticalLayout_2->addLayout(horizontalLayout_3);

        horizontalLayout_PostShutdown = new QHBoxLayout();
        horizontalLayout_PostShutdown->setSpacing(1);
        horizontalLayout_PostShutdown->setObjectName("horizontalLayout_PostShutdown");
        schedulerPostShutdownScript = new QLineEdit(shutdownGroupBox);
        schedulerPostShutdownScript->setObjectName("schedulerPostShutdownScript");
        sizePolicy1.setHeightForWidth(schedulerPostShutdownScript->sizePolicy().hasHeightForWidth());
        schedulerPostShutdownScript->setSizePolicy(sizePolicy1);
        schedulerPostShutdownScript->setReadOnly(true);
        schedulerPostShutdownScript->setClearButtonEnabled(false);

        horizontalLayout_PostShutdown->addWidget(schedulerPostShutdownScript);

        postShutdownQueueClearB = new QPushButton(shutdownGroupBox);
        postShutdownQueueClearB->setObjectName("postShutdownQueueClearB");
        postShutdownQueueClearB->setIcon(icon6);

        horizontalLayout_PostShutdown->addWidget(postShutdownQueueClearB);

        selectPostShutdownQueueB = new QPushButton(shutdownGroupBox);
        selectPostShutdownQueueB->setObjectName("selectPostShutdownQueueB");
        sizePolicy.setHeightForWidth(selectPostShutdownQueueB->sizePolicy().hasHeightForWidth());
        selectPostShutdownQueueB->setSizePolicy(sizePolicy);
        selectPostShutdownQueueB->setIcon(icon);

        horizontalLayout_PostShutdown->addWidget(selectPostShutdownQueueB);


        verticalLayout_2->addLayout(horizontalLayout_PostShutdown);


        gridLayoutStartStop->addWidget(shutdownGroupBox, 0, 2, 1, 1);


        verticalLayout_8->addLayout(gridLayoutStartStop);

        verticalLayout_8->setStretch(0, 4);
        verticalLayout_8->setStretch(1, 1);
        QWidget::setTabOrder(nameEdit, raBox);
        QWidget::setTabOrder(raBox, decBox);
        QWidget::setTabOrder(decBox, schedulerTrackStep);
        QWidget::setTabOrder(schedulerTrackStep, schedulerPreStartupScript);
        QWidget::setTabOrder(schedulerPreStartupScript, selectPreStartupQueueB);
        QWidget::setTabOrder(selectPreStartupQueueB, schedulerPostStartupScript);
        QWidget::setTabOrder(schedulerPostStartupScript, selectPostStartupQueueB);
        QWidget::setTabOrder(selectPostStartupQueueB, schedulerPreShutdownScript);
        QWidget::setTabOrder(schedulerPreShutdownScript, selectPreShutdownQueueB);
        QWidget::setTabOrder(selectPreShutdownQueueB, schedulerPostShutdownScript);
        QWidget::setTabOrder(schedulerPostShutdownScript, selectPostShutdownQueueB);
        QWidget::setTabOrder(selectPostShutdownQueueB, addToQueueB);
        QWidget::setTabOrder(addToQueueB, removeFromQueueB);
        QWidget::setTabOrder(removeFromQueueB, evaluateOnlyB);
        QWidget::setTabOrder(evaluateOnlyB, mosaicB);
        QWidget::setTabOrder(mosaicB, queueLoadB);
        QWidget::setTabOrder(queueLoadB, queueSaveB);
        QWidget::setTabOrder(queueSaveB, queueSaveAsB);
        QWidget::setTabOrder(queueSaveAsB, queueTable);
        QWidget::setTabOrder(queueTable, startB);
        QWidget::setTabOrder(startB, pauseB);

        retranslateUi(Scheduler);

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

    void retranslateUi(QWidget *Scheduler)
    {
        jobSequenceGroup->setTitle(tr2i18n("Object && Sequence Selection", nullptr));
#if QT_CONFIG(tooltip)
        loadSequenceB->setToolTip(tr2i18n("Load the image sequence queue.", nullptr));
#endif // QT_CONFIG(tooltip)
        loadSequenceB->setText(QString());
#if QT_CONFIG(tooltip)
        FITSLabel->setToolTip(tr2i18n("Select optional FITS file to be used for alignment. When using FITS, specify the object or the estimated coordinates which are used to slew the mount.", nullptr));
#endif // QT_CONFIG(tooltip)
        FITSLabel->setText(tr2i18n("FITS File:", nullptr));
        selectObjectB->setText(QString());
#if QT_CONFIG(tooltip)
        label_4->setToolTip(tr2i18n("Select the tasks to run at the start of each scheduler job. Executed in order, left to right.", nullptr));
#endif // QT_CONFIG(tooltip)
        label_4->setText(tr2i18n("Steps:", nullptr));
#if QT_CONFIG(tooltip)
        schedulerTrackStep->setToolTip(tr2i18n("Slew to the target and track. Done at the start of each scheduler job.", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerTrackStep->setText(tr2i18n("Track", nullptr));
#if QT_CONFIG(tooltip)
        schedulerAlignStep->setToolTip(tr2i18n("Run alignment using astrometry solver. Done at the start of each scheduler job.", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerAlignStep->setText(tr2i18n("Align", nullptr));
#if QT_CONFIG(tooltip)
        schedulerGuideStep->setToolTip(tr2i18n("Start autoguiding. Done at the start of each scheduler job.", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerGuideStep->setText(tr2i18n("Guide", nullptr));
#if QT_CONFIG(tooltip)
        schedulerFocusStep->setToolTip(tr2i18n("Run autofocus. Done at the start of each scheduler job.", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerFocusStep->setText(tr2i18n("Focus", nullptr));
#if QT_CONFIG(tooltip)
        sequenceLabel->setToolTip(tr2i18n("Ekos Sequence File", nullptr));
#endif // QT_CONFIG(tooltip)
        sequenceLabel->setText(tr2i18n("Sequence:", nullptr));
        selectFITSB->setText(QString());
#if QT_CONFIG(tooltip)
        rotationLabel->setToolTip(tr2i18n("Target Position Angle", nullptr));
#endif // QT_CONFIG(tooltip)
        rotationLabel->setText(tr2i18n("PA", nullptr));
#if QT_CONFIG(tooltip)
        copySkyCenterB->setToolTip(tr2i18n("Fill coordinates with Sky Map center", nullptr));
#endif // QT_CONFIG(tooltip)
        copySkyCenterB->setText(QString());
#if QT_CONFIG(tooltip)
        groupLabel->setToolTip(tr2i18n("<html><head/><body><p align=\"justify\">Select a group name. Useful if you want several jobs to repeat together--assign them the same group name, and give them <i>repeat for N</i> or <i>repeat until terminated</i> completion conditions. Otherwise leave empty. Only applies to the Greedy scheduler algorithm.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
        groupLabel->setText(tr2i18n("Group:", nullptr));
#if QT_CONFIG(tooltip)
        leadFollowerSelectionCB->setToolTip(tr2i18n("<html><head/><body><p>Define the job's target or select <span style=\"font-style:italic\">Follower</span> if the job should run as multi camera job in combination with the first job above having a target defined.<p><p><b>WARNING</b>: This feature is experimental!</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(tooltip)
        groupEdit->setToolTip(tr2i18n("<html><head/><body><p align=\"justify\">Select a group name. Useful if you want several jobs to repeat together--assign them the same group name, and give them <i>repeat for N</i> or <i>repeat until terminated</i> completion conditions. Otherwise leave empty. Only applies to the Greedy scheduler algorithm.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerProfileCombo->setItemText(0, tr2i18n("Default", nullptr));

#if QT_CONFIG(tooltip)
        positionAngleSpin->setToolTip(tr2i18n("Position Angle in Degrees", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(whatsthis)
        positionAngleSpin->setWhatsThis(QString());
#endif // QT_CONFIG(whatsthis)
#if QT_CONFIG(tooltip)
        label_9->setToolTip(tr2i18n("Ekos Device Profile", nullptr));
#endif // QT_CONFIG(tooltip)
        label_9->setText(tr2i18n("Profile:", nullptr));
        label_6->setText(tr2i18n("RA", nullptr));
#if QT_CONFIG(tooltip)
        raBox->setToolTip(QString());
#endif // QT_CONFIG(tooltip)
        label_2->setText(tr2i18n("DEC", nullptr));
#if QT_CONFIG(tooltip)
        decBox->setToolTip(QString());
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(tooltip)
        copyMountTargetB->setToolTip(tr2i18n("Fill coordinates with current mount position.", nullptr));
#endif // QT_CONFIG(tooltip)
        copyMountTargetB->setText(QString());
#if QT_CONFIG(tooltip)
        trainLabel->setToolTip(tr2i18n("Optical train to be used for this scheduler job within the Capture module.", nullptr));
#endif // QT_CONFIG(tooltip)
        trainLabel->setText(tr2i18n("Train:", nullptr));
        label_10->setText(tr2i18n("*", nullptr));
        epochCB->setItemText(0, tr2i18n("J2000", nullptr));
        epochCB->setItemText(1, tr2i18n("JNow", nullptr));

        addToQueueB->setText(QString());
        removeFromQueueB->setText(QString());
        queueUpB->setText(QString());
        queueDownB->setText(QString());
        evaluateOnlyB->setText(QString());
        sortJobsB->setText(QString());
#if QT_CONFIG(tooltip)
        mosaicB->setToolTip(tr2i18n("Open the Mosaic Planner...", nullptr));
#endif // QT_CONFIG(tooltip)
        mosaicB->setText(QString());
        queueViewerB->setText(QString());
#if QT_CONFIG(tooltip)
        editSequenceB->setToolTip(tr2i18n("Capture Sequence File Editor...", nullptr));
#endif // QT_CONFIG(tooltip)
        editSequenceB->setText(QString());
#if QT_CONFIG(tooltip)
        queueAppendB->setToolTip(tr2i18n("<html><head/><body><p align=\"justify\">Load schedule from file and append jobs to queue.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(statustip)
        queueAppendB->setStatusTip(QString());
#endif // QT_CONFIG(statustip)
        queueAppendB->setText(QString());
#if QT_CONFIG(tooltip)
        queueLoadB->setToolTip(tr2i18n("<html><head/><body><p align=\"justify\">Load schedule from file and replace jobs from queue.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(statustip)
        queueLoadB->setStatusTip(QString());
#endif // QT_CONFIG(statustip)
        queueLoadB->setText(QString());
#if QT_CONFIG(tooltip)
        queueSaveB->setToolTip(tr2i18n("Save Schedule...", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(statustip)
        queueSaveB->setStatusTip(QString());
#endif // QT_CONFIG(statustip)
        queueSaveB->setText(QString());
#if QT_CONFIG(tooltip)
        queueSaveAsB->setToolTip(tr2i18n("Save Schedule As...", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(statustip)
        queueSaveAsB->setStatusTip(QString());
#endif // QT_CONFIG(statustip)
        queueSaveAsB->setText(QString());
        QTableWidgetItem *___qtablewidgetitem = queueTable->horizontalHeaderItem(0);
        ___qtablewidgetitem->setText(tr2i18n("Name", nullptr));
        QTableWidgetItem *___qtablewidgetitem1 = queueTable->horizontalHeaderItem(1);
        ___qtablewidgetitem1->setText(tr2i18n("Status", nullptr));
        QTableWidgetItem *___qtablewidgetitem2 = queueTable->horizontalHeaderItem(2);
        ___qtablewidgetitem2->setText(tr2i18n("Captures", nullptr));
        QTableWidgetItem *___qtablewidgetitem3 = queueTable->horizontalHeaderItem(3);
        ___qtablewidgetitem3->setText(tr2i18n("Altitude", nullptr));
        QTableWidgetItem *___qtablewidgetitem4 = queueTable->horizontalHeaderItem(4);
        ___qtablewidgetitem4->setText(tr2i18n("Start Time", nullptr));
        QTableWidgetItem *___qtablewidgetitem5 = queueTable->horizontalHeaderItem(5);
        ___qtablewidgetitem5->setText(tr2i18n("End Time", nullptr));
#if QT_CONFIG(tooltip)
        startB->setToolTip(tr2i18n("Start Scheduler", nullptr));
#endif // QT_CONFIG(tooltip)
        startB->setText(QString());
#if QT_CONFIG(tooltip)
        pauseB->setToolTip(tr2i18n("Pause Scheduler", nullptr));
#endif // QT_CONFIG(tooltip)
        pauseB->setText(QString());
        sleepLabel->setText(QString());
#if QT_CONFIG(tooltip)
        schedulerRepeatEverything->setToolTip(tr2i18n("<html><head/><body><p>Repeat all scheduled jobs as soon as all jobs have been completed. This option is only available if the <span style=\" font-weight:700;\">Remember Job Progress</span> option in Ekos  Scheduler settings is <span style=\" font-weight:700;\">not</span> selected.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerRepeatEverything->setText(tr2i18n("Repeat all jobs", nullptr));
#if QT_CONFIG(tooltip)
        executionSequenceLimit->setToolTip(tr2i18n("<html><head/><body><p>Limit number of iterations the scheduler will execute the entire job sequence. If set to 0, the jobs are repeated until for none of the jobs its constraints are met.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
        executionSequenceLimit->setSuffix(tr2i18n(" times", nullptr));
        jobStatus->setText(tr2i18n("Idle", nullptr));
        completionGroup->setTitle(tr2i18n("Job Completion Conditions", nullptr));
        schedulerRepeatSequences->setText(tr2i18n("&Repeat for:", nullptr));
        schedulerUntilValue->setDisplayFormat(tr2i18n("dd/MM/yy hh:mm", nullptr));
#if QT_CONFIG(tooltip)
        schedulerCompleteSequences->setToolTip(tr2i18n("The observation job is completed when the sequence is complete.", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerCompleteSequences->setText(tr2i18n("Se&quence completion", nullptr));
#if QT_CONFIG(tooltip)
        schedulerUntil->setToolTip(tr2i18n("Terminate the job on the given date and time.", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerUntil->setText(tr2i18n("Repeat &until:", nullptr));
#if QT_CONFIG(tooltip)
        schedulerRepeatSequencesLimit->setToolTip(tr2i18n("Restart job until it is executed this many times.", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerRepeatSequencesLimit->setSuffix(tr2i18n(" runs", nullptr));
#if QT_CONFIG(tooltip)
        schedulerUntilTerminated->setToolTip(tr2i18n("Restart the sequence job indefinitely.", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerUntilTerminated->setText(tr2i18n("Repeat &until terminated", nullptr));
        startupGroup->setTitle(tr2i18n("Job Startup Conditions", nullptr));
        startupTimeEdit->setDisplayFormat(tr2i18n("dd/MM hh:mm", nullptr));
#if QT_CONFIG(tooltip)
        startupTimeConditionR->setToolTip(tr2i18n("Start the job on the specified date and time", nullptr));
#endif // QT_CONFIG(tooltip)
        startupTimeConditionR->setText(tr2i18n("O&n:", nullptr));
#if QT_CONFIG(tooltip)
        asapConditionR->setToolTip(tr2i18n("Start the observation job as soon as all the constraints, if any, are met. The best candidate target shall be imaged first.", nullptr));
#endif // QT_CONFIG(tooltip)
        asapConditionR->setText(tr2i18n("ASAP", nullptr));
        contraintsGroup->setTitle(tr2i18n("Job Constraints", nullptr));
#if QT_CONFIG(tooltip)
        schedulerAltitude->setToolTip(tr2i18n("The object's altitude must remain equal or higher than the given value.", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerAltitude->setText(tr2i18n("Min. Altitude: ", nullptr));
        schedulerAltitudeValue->setSuffix(tr2i18n(" \302\260", nullptr));
#if QT_CONFIG(tooltip)
        schedulerHorizon->setToolTip(tr2i18n("<html><body><p>The artificial horizon restriction constrains the altitude of the target to be above the artificial horizon, if any are defined and enabled. See the artificial horizon item in the KStars Settings menu.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerHorizon->setText(tr2i18n("Artificial Horizon", nullptr));
#if QT_CONFIG(tooltip)
        schedulerMoonSeparation->setToolTip(tr2i18n("<html><head/><body><p>The target must be at least this far from the moon.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerMoonSeparation->setText(tr2i18n("Moon  min. sep.:", nullptr));
#if QT_CONFIG(tooltip)
        schedulerMoonSeparationValue->setToolTip(tr2i18n("<html><head/><body><p>The target must be at least this far from the moon.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerMoonSeparationValue->setSuffix(tr2i18n(" \302\260", nullptr));
#if QT_CONFIG(tooltip)
        schedulerMoonAltitude->setToolTip(tr2i18n("<html><head/><body><p>The moon must be lower than this altitude.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerMoonAltitude->setText(tr2i18n("Moon max alt:", nullptr));
#if QT_CONFIG(tooltip)
        schedulerMoonAltitudeMaxValue->setToolTip(tr2i18n("<html><head/><body><p>The moon must be lower than this altitude.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerMoonAltitudeMaxValue->setSuffix(tr2i18n(" \302\260", nullptr));
#if QT_CONFIG(tooltip)
        schedulerTwilight->setToolTip(tr2i18n("<html><body><p>The twilight restriction constrains jobs to execute in astronomical darkness. Use the dusk and dawn offsets in the Ekos Scheduler options to adjust the interval.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerTwilight->setText(tr2i18n("Twilight", nullptr));
#if QT_CONFIG(tooltip)
        nightTime->setToolTip(tr2i18n("<html><head/><body><p>Astronomical dawn and dusk for the Scheduler job currently selected, or for today if no job is selected.</p><p>- The first value is <span style=\" font-weight:600;\">dusk</span>, specifically the next local time the Sun sets below an altitude of -18\302\260 after the job starts.</p><p>- The second value is <span style=\" font-weight:600;\">dawn</span>, specifically the next local time the Sun rises higher than an altitude of -18\302\260 after the job starts.</p><p>A warning symbol indicates the Sun will not travel below the astronomical dusk boundary after the job starts, and that dawn and dusk times are calculated from its minimal altitude. In that situation, the Twilight restriction prevents job execution unless the Ekos Dawn Offset and Dusk Offset options are configured appropriately.</p><p>Note that the Ekos Pre-Dawn Offset option virtually advances dawn by a default of 30 minutes and will thus prevent a job from starting just before that moment.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
        nightTime->setText(QString());
        weatherLabel->setText(QString());
#if QT_CONFIG(tooltip)
        errorHandlingGroup->setToolTip(tr2i18n("<html><head/><body><p>Define what should happen when a job steps into an error or aborts:</p><ul style=\"margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;\"><li style=\" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">Don't re-schedule</span>: Don't restart the job in case of an error or an abort.</li><li style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">Re-schedule after all terminated</span>: If a job gets aborted, the scheduler will only re-schedule it if when all jobs are finished or aborted. If this is the case, the scheduler re-schedules all aborted jobs and sleeps for the given delay.</li><li style=\" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">Re-schedule immediately"
                        "</span>: As soon as a job gets aborted, the scheduler will re-schedule it and waits the given delay.</li></ul><p>If the option for re-scheduling errors is selected, errors are handled like aborts. Otherwise, jobs that step into an error are never re-scheduled.</p></body></html>", nullptr));
#endif // QT_CONFIG(tooltip)
        errorHandlingGroup->setTitle(tr2i18n("Aborted Job Management", nullptr));
#if QT_CONFIG(tooltip)
        errorHandlingDontRestartButton->setToolTip(tr2i18n("Do not re-schedule aborted jobs.", nullptr));
#endif // QT_CONFIG(tooltip)
        errorHandlingDontRestartButton->setText(tr2i18n("&None", nullptr));
#if QT_CONFIG(tooltip)
        errorHandlingRestartQueueButton->setToolTip(tr2i18n("Re-schedule aborted jobs as soon as all executable jobs are either completed or aborted.", nullptr));
#endif // QT_CONFIG(tooltip)
        errorHandlingRestartQueueButton->setText(tr2i18n("&Queue", nullptr));
#if QT_CONFIG(tooltip)
        errorHandlingRestartImmediatelyButton->setToolTip(tr2i18n("Re-schedule an aborted job immediately.", nullptr));
#endif // QT_CONFIG(tooltip)
        errorHandlingRestartImmediatelyButton->setText(tr2i18n("I&mmediate", nullptr));
#if QT_CONFIG(tooltip)
        errorHandlingRescheduleErrorsCB->setToolTip(tr2i18n("Treat errors like aborts.", nullptr));
#endif // QT_CONFIG(tooltip)
        errorHandlingRescheduleErrorsCB->setText(tr2i18n("Re-schedule errors:", nullptr));
#if QT_CONFIG(tooltip)
        errorHandlingStrategyDelay->setToolTip(tr2i18n("Delay in seconds.", nullptr));
#endif // QT_CONFIG(tooltip)
        errorHandlingStrategyDelay->setSuffix(tr2i18n(" s wait", nullptr));
        startupGroupBox->setTitle(tr2i18n("Observatory Startup Procedure", nullptr));
#if QT_CONFIG(tooltip)
        schedulerStartupEnabled->setToolTip(tr2i18n("Enable or disable execution of the startup queue. When disabled, no startup procedure will run.", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerStartupEnabled->setText(tr2i18n("Enable startup queue", nullptr));
#if QT_CONFIG(tooltip)
        schedulerPreStartupScript->setToolTip(tr2i18n("Selected pre-startup queue to run before starting Ekos profile", nullptr));
#endif // QT_CONFIG(tooltip)
        preStartupQueueClearB->setText(QString());
#if QT_CONFIG(tooltip)
        selectPreStartupQueueB->setToolTip(tr2i18n("Browse for pre-startup queue/collection file", nullptr));
#endif // QT_CONFIG(tooltip)
        selectPreStartupQueueB->setText(QString());
#if QT_CONFIG(tooltip)
        schedulerPostStartupScript->setToolTip(tr2i18n("Selected post-startup queue to run after starting Ekos profile", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(tooltip)
        postStartupQueueClearB->setToolTip(tr2i18n("Reset or Restore to Default if empty", nullptr));
#endif // QT_CONFIG(tooltip)
        postStartupQueueClearB->setText(QString());
#if QT_CONFIG(tooltip)
        selectPostStartupQueueB->setToolTip(tr2i18n("Browse for post-startup queue/collection file", nullptr));
#endif // QT_CONFIG(tooltip)
        selectPostStartupQueueB->setText(QString());
        shutdownGroupBox->setTitle(tr2i18n("Observatory Shutdown Procedure", nullptr));
#if QT_CONFIG(tooltip)
        schedulerShutdownEnabled->setToolTip(tr2i18n("Enable or disable execution of the shutdown queue. When disabled, no shutdown procedure will run.", nullptr));
#endif // QT_CONFIG(tooltip)
        schedulerShutdownEnabled->setText(tr2i18n("Enable shutdown queue", nullptr));
#if QT_CONFIG(tooltip)
        schedulerPreShutdownScript->setToolTip(tr2i18n("Selected pre-shutdown queue to run before stopping Ekos profile", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(tooltip)
        preShutdownQueueClearB->setToolTip(tr2i18n("Reset or Restore to Default if empty", nullptr));
#endif // QT_CONFIG(tooltip)
        preShutdownQueueClearB->setText(QString());
#if QT_CONFIG(tooltip)
        selectPreShutdownQueueB->setToolTip(tr2i18n("Browse for pre-shutdown queue/collection file", nullptr));
#endif // QT_CONFIG(tooltip)
        selectPreShutdownQueueB->setText(QString());
#if QT_CONFIG(tooltip)
        schedulerPostShutdownScript->setToolTip(tr2i18n("Selected post-shutdown queue to run after stopping Ekos profile", nullptr));
#endif // QT_CONFIG(tooltip)
        postShutdownQueueClearB->setText(QString());
#if QT_CONFIG(tooltip)
        selectPostShutdownQueueB->setToolTip(tr2i18n("Browse for post-shutdown queue/collection file", nullptr));
#endif // QT_CONFIG(tooltip)
        selectPostShutdownQueueB->setText(QString());
        (void)Scheduler;
    } // retranslateUi

};

namespace Ui {
    class Scheduler: public Ui_Scheduler {};
} // namespace Ui

QT_END_NAMESPACE

#endif // SCHEDULER_H

