/********************************************************************************
** Form generated from reading UI file 'PlayBackDlg.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_PLAYBACKDLG_H
#define UI_PLAYBACKDLG_H

#include <QtCore/QVariant>
#include <QtWidgets/QAbstractButton>
#include <QtWidgets/QApplication>
#include <QtWidgets/QDialog>
#include <QtWidgets/QDialogButtonBox>
#include <QtWidgets/QFrame>
#include <QtWidgets/QGridLayout>
#include <QtWidgets/QGroupBox>
#include <QtWidgets/QHBoxLayout>
#include <QtWidgets/QHeaderView>
#include <QtWidgets/QLabel>
#include <QtWidgets/QPushButton>
#include <QtWidgets/QSlider>
#include <QtWidgets/QSpacerItem>
#include <QtWidgets/QSpinBox>
#include <QtWidgets/QVBoxLayout>
#include <klocalizedstring.h>
#include "KComboBox"
#include "libgui/TreeWidgetWrapper.h"

QT_BEGIN_NAMESPACE

class Ui_PlayBackDlg
{
public:
    QVBoxLayout *vboxLayout;
    QGroupBox *groupBox2;
    QGridLayout *gridLayout;
    QHBoxLayout *hboxLayout;
    KComboBox *cbDevice;
    QPushButton *btSelectDevice;
    QHBoxLayout *hboxLayout1;
    KComboBox *cbMethod;
    QLabel *textLabel1;
    QLabel *textLabel2;
    QHBoxLayout *hboxLayout2;
    QLabel *txtBufferSize;
    QSlider *slBufferSize;
    QLabel *textLabel5;
    QFrame *frame4_2;
    QLabel *textLabel4;
    QLabel *textLabel3;
    QHBoxLayout *hboxLayout3;
    KComboBox *cbBitsPerSample;
    QSpacerItem *spacerItem;
    QHBoxLayout *hboxLayout4;
    QSpinBox *sbChannels;
    QLabel *lblChannels;
    QFrame *frame4_2_2;
    Kwave::TreeWidgetWrapper *listDevices;
    QFrame *frame4;
    QHBoxLayout *hboxLayout5;
    QDialogButtonBox *btHelp;
    QSpacerItem *spacerItem1;
    QPushButton *btTest;
    QSpacerItem *spacerItem2;
    QDialogButtonBox *buttonBox;

    void setupUi(QDialog *PlayBackDlg)
    {
        if (PlayBackDlg->objectName().isEmpty())
            PlayBackDlg->setObjectName("PlayBackDlg");
        PlayBackDlg->resize(641, 568);
        QSizePolicy sizePolicy(QSizePolicy::Policy::Minimum, QSizePolicy::Policy::Minimum);
        sizePolicy.setHorizontalStretch(0);
        sizePolicy.setVerticalStretch(0);
        sizePolicy.setHeightForWidth(PlayBackDlg->sizePolicy().hasHeightForWidth());
        PlayBackDlg->setSizePolicy(sizePolicy);
        vboxLayout = new QVBoxLayout(PlayBackDlg);
        vboxLayout->setSpacing(10);
        vboxLayout->setContentsMargins(10, 10, 10, 10);
        vboxLayout->setObjectName("vboxLayout");
        groupBox2 = new QGroupBox(PlayBackDlg);
        groupBox2->setObjectName("groupBox2");
        QSizePolicy sizePolicy1(QSizePolicy::Policy::MinimumExpanding, QSizePolicy::Policy::Minimum);
        sizePolicy1.setHorizontalStretch(0);
        sizePolicy1.setVerticalStretch(100);
        sizePolicy1.setHeightForWidth(groupBox2->sizePolicy().hasHeightForWidth());
        groupBox2->setSizePolicy(sizePolicy1);
        gridLayout = new QGridLayout(groupBox2);
        gridLayout->setSpacing(10);
        gridLayout->setContentsMargins(10, 10, 10, 10);
        gridLayout->setObjectName("gridLayout");
        hboxLayout = new QHBoxLayout();
        hboxLayout->setSpacing(10);
        hboxLayout->setObjectName("hboxLayout");
        cbDevice = new KComboBox(groupBox2);
        cbDevice->setObjectName("cbDevice");
        QSizePolicy sizePolicy2(QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Preferred);
        sizePolicy2.setHorizontalStretch(0);
        sizePolicy2.setVerticalStretch(0);
        sizePolicy2.setHeightForWidth(cbDevice->sizePolicy().hasHeightForWidth());
        cbDevice->setSizePolicy(sizePolicy2);
        cbDevice->setMinimumSize(QSize(130, 0));
        cbDevice->setEditable(true);
        cbDevice->setDuplicatesEnabled(false);

        hboxLayout->addWidget(cbDevice);

        btSelectDevice = new QPushButton(groupBox2);
        btSelectDevice->setObjectName("btSelectDevice");
        QSizePolicy sizePolicy3(QSizePolicy::Policy::Minimum, QSizePolicy::Policy::Preferred);
        sizePolicy3.setHorizontalStretch(0);
        sizePolicy3.setVerticalStretch(0);
        sizePolicy3.setHeightForWidth(btSelectDevice->sizePolicy().hasHeightForWidth());
        btSelectDevice->setSizePolicy(sizePolicy3);
        btSelectDevice->setMinimumSize(QSize(0, 30));

        hboxLayout->addWidget(btSelectDevice);


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

        hboxLayout1 = new QHBoxLayout();
        hboxLayout1->setSpacing(10);
        hboxLayout1->setObjectName("hboxLayout1");
        cbMethod = new KComboBox(groupBox2);
        cbMethod->setObjectName("cbMethod");
        sizePolicy2.setHeightForWidth(cbMethod->sizePolicy().hasHeightForWidth());
        cbMethod->setSizePolicy(sizePolicy2);
        cbMethod->setMinimumSize(QSize(130, 30));

        hboxLayout1->addWidget(cbMethod);


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

        textLabel1 = new QLabel(groupBox2);
        textLabel1->setObjectName("textLabel1");
        textLabel1->setWordWrap(false);

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

        textLabel2 = new QLabel(groupBox2);
        textLabel2->setObjectName("textLabel2");
        textLabel2->setWordWrap(false);

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

        hboxLayout2 = new QHBoxLayout();
        hboxLayout2->setSpacing(10);
        hboxLayout2->setObjectName("hboxLayout2");
        txtBufferSize = new QLabel(groupBox2);
        txtBufferSize->setObjectName("txtBufferSize");
        txtBufferSize->setMinimumSize(QSize(130, 0));
        txtBufferSize->setWordWrap(false);

        hboxLayout2->addWidget(txtBufferSize);

        slBufferSize = new QSlider(groupBox2);
        slBufferSize->setObjectName("slBufferSize");
        QSizePolicy sizePolicy4(QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Minimum);
        sizePolicy4.setHorizontalStretch(0);
        sizePolicy4.setVerticalStretch(0);
        sizePolicy4.setHeightForWidth(slBufferSize->sizePolicy().hasHeightForWidth());
        slBufferSize->setSizePolicy(sizePolicy4);
        slBufferSize->setMinimumSize(QSize(0, 30));
        slBufferSize->setMinimum(8);
        slBufferSize->setMaximum(18);
        slBufferSize->setSingleStep(1);
        slBufferSize->setPageStep(1);
        slBufferSize->setValue(11);
        slBufferSize->setOrientation(Qt::Horizontal);
        slBufferSize->setTickInterval(1);

        hboxLayout2->addWidget(slBufferSize);


        gridLayout->addLayout(hboxLayout2, 7, 2, 1, 1);

        textLabel5 = new QLabel(groupBox2);
        textLabel5->setObjectName("textLabel5");
        textLabel5->setWordWrap(false);

        gridLayout->addWidget(textLabel5, 7, 0, 1, 2);

        frame4_2 = new QFrame(groupBox2);
        frame4_2->setObjectName("frame4_2");
        QSizePolicy sizePolicy5(QSizePolicy::Policy::Minimum, QSizePolicy::Policy::Fixed);
        sizePolicy5.setHorizontalStretch(0);
        sizePolicy5.setVerticalStretch(100);
        sizePolicy5.setHeightForWidth(frame4_2->sizePolicy().hasHeightForWidth());
        frame4_2->setSizePolicy(sizePolicy5);
        frame4_2->setFrameShape(QFrame::NoFrame);
        frame4_2->setFrameShadow(QFrame::Plain);

        gridLayout->addWidget(frame4_2, 6, 0, 1, 4);

        textLabel4 = new QLabel(groupBox2);
        textLabel4->setObjectName("textLabel4");
        textLabel4->setWordWrap(false);

        gridLayout->addWidget(textLabel4, 5, 0, 1, 1);

        textLabel3 = new QLabel(groupBox2);
        textLabel3->setObjectName("textLabel3");
        textLabel3->setWordWrap(false);

        gridLayout->addWidget(textLabel3, 4, 0, 1, 1);

        hboxLayout3 = new QHBoxLayout();
        hboxLayout3->setSpacing(10);
        hboxLayout3->setObjectName("hboxLayout3");
        cbBitsPerSample = new KComboBox(groupBox2);
        cbBitsPerSample->setObjectName("cbBitsPerSample");
        sizePolicy3.setHeightForWidth(cbBitsPerSample->sizePolicy().hasHeightForWidth());
        cbBitsPerSample->setSizePolicy(sizePolicy3);
        cbBitsPerSample->setMinimumSize(QSize(130, 30));
        cbBitsPerSample->setDuplicatesEnabled(false);

        hboxLayout3->addWidget(cbBitsPerSample);

        spacerItem = new QSpacerItem(0, 20, QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Minimum);

        hboxLayout3->addItem(spacerItem);


        gridLayout->addLayout(hboxLayout3, 4, 2, 1, 1);

        hboxLayout4 = new QHBoxLayout();
        hboxLayout4->setSpacing(10);
        hboxLayout4->setObjectName("hboxLayout4");
        sbChannels = new QSpinBox(groupBox2);
        sbChannels->setObjectName("sbChannels");
        sizePolicy3.setHeightForWidth(sbChannels->sizePolicy().hasHeightForWidth());
        sbChannels->setSizePolicy(sizePolicy3);
        sbChannels->setMinimumSize(QSize(130, 30));
        sbChannels->setValue(0);
        sbChannels->setProperty("maxValue", QVariant(0));
        sbChannels->setProperty("minValue", QVariant(0));

        hboxLayout4->addWidget(sbChannels);

        lblChannels = new QLabel(groupBox2);
        lblChannels->setObjectName("lblChannels");
        sizePolicy2.setHeightForWidth(lblChannels->sizePolicy().hasHeightForWidth());
        lblChannels->setSizePolicy(sizePolicy2);
        lblChannels->setWordWrap(false);

        hboxLayout4->addWidget(lblChannels);


        gridLayout->addLayout(hboxLayout4, 5, 2, 1, 1);

        frame4_2_2 = new QFrame(groupBox2);
        frame4_2_2->setObjectName("frame4_2_2");
        sizePolicy5.setHeightForWidth(frame4_2_2->sizePolicy().hasHeightForWidth());
        frame4_2_2->setSizePolicy(sizePolicy5);
        frame4_2_2->setFrameShape(QFrame::NoFrame);
        frame4_2_2->setFrameShadow(QFrame::Plain);

        gridLayout->addWidget(frame4_2_2, 3, 0, 1, 3);

        listDevices = new Kwave::TreeWidgetWrapper(groupBox2);
        listDevices->setObjectName("listDevices");
        QSizePolicy sizePolicy6(QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Expanding);
        sizePolicy6.setHorizontalStretch(0);
        sizePolicy6.setVerticalStretch(100);
        sizePolicy6.setHeightForWidth(listDevices->sizePolicy().hasHeightForWidth());
        listDevices->setSizePolicy(sizePolicy6);
        listDevices->setProperty("itemMargin", QVariant(0));

        gridLayout->addWidget(listDevices, 2, 0, 1, 4);


        vboxLayout->addWidget(groupBox2);

        frame4 = new QFrame(PlayBackDlg);
        frame4->setObjectName("frame4");
        QSizePolicy sizePolicy7(QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Expanding);
        sizePolicy7.setHorizontalStretch(100);
        sizePolicy7.setVerticalStretch(0);
        sizePolicy7.setHeightForWidth(frame4->sizePolicy().hasHeightForWidth());
        frame4->setSizePolicy(sizePolicy7);
        frame4->setMinimumSize(QSize(0, 10));
        frame4->setFrameShape(QFrame::NoFrame);
        frame4->setFrameShadow(QFrame::Plain);

        vboxLayout->addWidget(frame4);

        hboxLayout5 = new QHBoxLayout();
        hboxLayout5->setSpacing(10);
        hboxLayout5->setObjectName("hboxLayout5");
        btHelp = new QDialogButtonBox(PlayBackDlg);
        btHelp->setObjectName("btHelp");
        btHelp->setStandardButtons(QDialogButtonBox::Help);

        hboxLayout5->addWidget(btHelp);

        spacerItem1 = new QSpacerItem(80, 20, QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Minimum);

        hboxLayout5->addItem(spacerItem1);

        btTest = new QPushButton(PlayBackDlg);
        btTest->setObjectName("btTest");
        QSizePolicy sizePolicy8(QSizePolicy::Policy::Preferred, QSizePolicy::Policy::Preferred);
        sizePolicy8.setHorizontalStretch(0);
        sizePolicy8.setVerticalStretch(0);
        sizePolicy8.setHeightForWidth(btTest->sizePolicy().hasHeightForWidth());
        btTest->setSizePolicy(sizePolicy8);
        btTest->setMinimumSize(QSize(60, 20));

        hboxLayout5->addWidget(btTest);

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

        hboxLayout5->addItem(spacerItem2);

        buttonBox = new QDialogButtonBox(PlayBackDlg);
        buttonBox->setObjectName("buttonBox");
        buttonBox->setStandardButtons(QDialogButtonBox::Cancel|QDialogButtonBox::Ok);

        hboxLayout5->addWidget(buttonBox);


        vboxLayout->addLayout(hboxLayout5);

        QWidget::setTabOrder(cbMethod, cbDevice);
        QWidget::setTabOrder(cbDevice, btSelectDevice);
        QWidget::setTabOrder(btSelectDevice, listDevices);
        QWidget::setTabOrder(listDevices, cbBitsPerSample);
        QWidget::setTabOrder(cbBitsPerSample, sbChannels);
        QWidget::setTabOrder(sbChannels, slBufferSize);
        QWidget::setTabOrder(slBufferSize, btTest);

        retranslateUi(PlayBackDlg);
        QObject::connect(buttonBox, &QDialogButtonBox::rejected, PlayBackDlg, qOverload<>(&QDialog::reject));
        QObject::connect(buttonBox, &QDialogButtonBox::accepted, PlayBackDlg, qOverload<>(&QDialog::accept));

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

    void retranslateUi(QDialog *PlayBackDlg)
    {
        PlayBackDlg->setWindowTitle(tr2i18n("Playback", nullptr));
        groupBox2->setTitle(tr2i18n("Playback Settings", nullptr));
#if QT_CONFIG(tooltip)
        cbDevice->setToolTip(tr2i18n("Playback device", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(whatsthis)
        cbDevice->setWhatsThis(tr2i18n("<b>Device:</b><p>This list shows a selection of some known playback devices suitable for the chosen playback method. If your device is not listed here, you can enter a device name on your own or search through the filesystem.</p>", nullptr));
#endif // QT_CONFIG(whatsthis)
#if QT_CONFIG(tooltip)
        btSelectDevice->setToolTip(tr2i18n("Search on the filesystem for a device", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(whatsthis)
        btSelectDevice->setWhatsThis(tr2i18n("<b>Select...</b><p>Choose a device name on the harddisk, if your device is not already listed in the list of devices.</p>", nullptr));
#endif // QT_CONFIG(whatsthis)
        btSelectDevice->setText(tr2i18n("&Select...", nullptr));
#if QT_CONFIG(tooltip)
        cbMethod->setToolTip(tr2i18n("Method or system used for playback", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(whatsthis)
        cbMethod->setWhatsThis(tr2i18n("<b>Playback Method:</b><p>Choose a method or system used for\n"
"playback. Depending on the compilation options you can select one of the following methods:</p>\n"
"<p><b><i>OSS (Open Sound System)</i></b>: The oldest linux implementation, capable of mono and stereo output. Deprecated since linux kernel 2.6, but still wide spread. Might collide with PulseAudio or other sound applications, only one application at a time can use OSS playback !</p>\n"
"<p><b><i>ALSA (Advanced Linux Sound Architecture)</i></b>: Supercedes OSS, supports more features and more hardware. Might collide with other applications like OSS does, but has a plugin called <i>dmix</i> as a way out.</p>\n"
"<p><b><i>PulseAudio</i></b>: The preferred way of doing playback in KDE. Multiple applications can play at the same time.</p>", nullptr));
#endif // QT_CONFIG(whatsthis)
        textLabel1->setText(tr2i18n("Playback method:", nullptr));
        textLabel2->setText(tr2i18n("Device:", nullptr));
        txtBufferSize->setText(tr2i18n("256 Bytes", nullptr));
#if QT_CONFIG(tooltip)
        slBufferSize->setToolTip(tr2i18n("Size of the playback buffer in bytes", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(whatsthis)
        slBufferSize->setWhatsThis(tr2i18n("<b>Buffer size:</b><p>Select a buffer size for the playback. You should set this number as small as possible to reduce the playback latency. The latency is the delay between user interface actions like starting/stopping playback, update of the playback position and the real sound output. If you encounter dropouts you should increase this setting a bit.</p>", nullptr));
#endif // QT_CONFIG(whatsthis)
        textLabel5->setText(tr2i18n("Buffer size:", nullptr));
        textLabel4->setText(tr2i18n("Channels:", nullptr));
        textLabel3->setText(tr2i18n("Bits per sample:", nullptr));
#if QT_CONFIG(tooltip)
        cbBitsPerSample->setToolTip(tr2i18n("Playback resolution in bits per sample", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(whatsthis)
        cbBitsPerSample->setWhatsThis(tr2i18n("<b>Bits per sample:</b><p>Here you can select one of the bit resolutions your playback device supports. This is not necessarily the same resolution as in your audio file, Kwave dithers automatically from its internal resolution (24 bit) to the setting you specify. Higher resolutions mean better audio quality.</p>", nullptr));
#endif // QT_CONFIG(whatsthis)
#if QT_CONFIG(tooltip)
        sbChannels->setToolTip(tr2i18n("Number of channels: mono, stereo...", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(whatsthis)
        sbChannels->setWhatsThis(tr2i18n("<b>Channels:</b><p>Number of channels used for playback. This does not necessarily have to be the same as the number of tracks in your current file. Kwave automatically mixes the tracks of your file to the channels you specify here. </p><p><i>For example:</i> If you have three tracks and set the playback to \"stereo\", the left channel will contain the first track + 50% of the second track, the right channel will also contain 50% of the second track and the third track.</p>", nullptr));
#endif // QT_CONFIG(whatsthis)
        lblChannels->setText(tr2i18n("(stereo)", nullptr));
        QTreeWidgetItem *___qtreewidgetitem = listDevices->headerItem();
        ___qtreewidgetitem->setText(0, tr2i18n("1", nullptr));
#if QT_CONFIG(tooltip)
        btTest->setToolTip(tr2i18n("Play a short test sound", nullptr));
#endif // QT_CONFIG(tooltip)
#if QT_CONFIG(whatsthis)
        btTest->setWhatsThis(tr2i18n("<b>Test</b><p>Try to play a short sound using the current settings.</p><p><i>(Sorry, not implemented yet!)</i></p>", nullptr));
#endif // QT_CONFIG(whatsthis)
        btTest->setText(tr2i18n("&Test...", nullptr));
    } // retranslateUi

};

namespace Ui {
    class PlayBackDlg: public Ui_PlayBackDlg {};
} // namespace Ui

QT_END_NAMESPACE

#endif // PLAYBACKDLG_H

