diff --git a/examples/examples.pro b/examples/examples.pro index 4d01767..57cdd85 100644 --- a/examples/examples.pro +++ b/examples/examples.pro @@ -15,7 +15,8 @@ SOURCES = mainwindow.cpp \ ../components/qtmaterialradiobutton.cpp \ radiobuttonsettingseditor.cpp \ togglesettingseditor.cpp \ - textfieldsettingseditor.cpp + textfieldsettingseditor.cpp \ + tabssettingseditor.cpp HEADERS = mainwindow.h \ avatarsettingseditor.h \ badgesettingseditor.h \ @@ -31,7 +32,8 @@ HEADERS = mainwindow.h \ ../components/qtmaterialradiobutton.h \ radiobuttonsettingseditor.h \ togglesettingseditor.h \ - textfieldsettingseditor.h + textfieldsettingseditor.h \ + tabssettingseditor.h LIBS += ../components/libcomponents.a INCLUDEPATH += ../components/ TARGET = ../examples-exe diff --git a/examples/mainwindow.cpp b/examples/mainwindow.cpp index 146dc78..81795c5 100644 --- a/examples/mainwindow.cpp +++ b/examples/mainwindow.cpp @@ -15,7 +15,7 @@ #include "radiobuttonsettingseditor.h" #include "togglesettingseditor.h" #include "textfieldsettingseditor.h" -#include "tabsexamples.h" +#include "tabssettingseditor.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) @@ -28,16 +28,13 @@ MainWindow::MainWindow(QWidget *parent) QStackedLayout *stack = new QStackedLayout; QListWidget *list = new QListWidget; - TabsExamples *te = new TabsExamples; - - setCentralWidget(te); - return; - layout->addWidget(list); layout->addLayout(stack); layout->setStretch(1, 2); + setCentralWidget(widget); + AvatarSettingsEditor *avatar = new AvatarSettingsEditor; BadgeSettingsEditor *badge = new BadgeSettingsEditor; CheckBoxSettingsEditor *checkbox = new CheckBoxSettingsEditor; @@ -51,6 +48,7 @@ MainWindow::MainWindow(QWidget *parent) RadioButtonSettingsEditor *radioButton = new RadioButtonSettingsEditor; ToggleSettingsEditor *toggle = new ToggleSettingsEditor; TextFieldSettingsEditor *textField = new TextFieldSettingsEditor; + TabsSettingsEditor *tabs = new TabsSettingsEditor; stack->addWidget(avatar); stack->addWidget(badge); @@ -63,6 +61,7 @@ MainWindow::MainWindow(QWidget *parent) stack->addWidget(radioButton); stack->addWidget(raisedButton); stack->addWidget(slider); + stack->addWidget(tabs); stack->addWidget(textField); stack->addWidget(toggle); @@ -77,6 +76,7 @@ MainWindow::MainWindow(QWidget *parent) list->addItem("Radio Button"); list->addItem("Raised Button"); list->addItem("Slider"); + list->addItem("Tabs"); list->addItem("Text Field"); list->addItem("Toggle"); diff --git a/examples/tabssettingseditor.cpp b/examples/tabssettingseditor.cpp new file mode 100644 index 0000000..5de35b3 --- /dev/null +++ b/examples/tabssettingseditor.cpp @@ -0,0 +1,89 @@ +#include "tabssettingseditor.h" +#include +#include +#include "qtmaterialtabs.h" + +TabsSettingsEditor::TabsSettingsEditor(QWidget *parent) + : QWidget(parent), +// ui(new Ui::TabsSettingsForm), + m_tabs(new QtMaterialTabs) +{ + QVBoxLayout *layout = new QVBoxLayout; + setLayout(layout); + + QWidget *widget = new QWidget; + layout->addWidget(widget); + + QWidget *canvas = new QWidget; + canvas->setStyleSheet("QWidget { background: white; }"); + layout->addWidget(canvas); + +// ui->setupUi(widget); + layout->setContentsMargins(20, 20, 20, 20); + + layout = new QVBoxLayout; + canvas->setLayout(layout); + canvas->setMaximumHeight(300); + layout->addWidget(m_tabs); + layout->setAlignment(m_tabs, Qt::AlignHCenter); + + m_tabs->addTab("Media"); + m_tabs->addTab("Playback"); + m_tabs->addTab("Audio"); + m_tabs->addTab("Video"); + m_tabs->addTab("Tools"); + + m_tabs->setMinimumWidth(700); + +// setupForm(); + +// connect(ui->disabledCheckBox, SIGNAL(toggled(bool)), this, SLOT(updateWidget())); +// connect(ui->valueLineEdit, SIGNAL(textChanged(QString)), this, SLOT(updateWidget())); +// connect(ui->orientationComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(updateWidget())); +// connect(ui->invertedCheckBox, SIGNAL(toggled(bool)), this, SLOT(updateWidget())); +// +// connect(m_slider, SIGNAL(valueChanged(int)), this, SLOT(setupForm())); +} + +TabsSettingsEditor::~TabsSettingsEditor() +{ +// delete ui; +} + +void TabsSettingsEditor::setupForm() +{ +// switch (m_slider->orientation()) +// { +// case Qt::Horizontal: +// ui->orientationComboBox->setCurrentIndex(0); +// break; +// case Qt::Vertical: +// ui->orientationComboBox->setCurrentIndex(1); +// break; +// default: +// break; +// } +// +// ui->disabledCheckBox->setChecked(!m_slider->isEnabled()); +// ui->valueLineEdit->setText(QString::number(m_slider->value())); +// ui->invertedCheckBox->setChecked(m_slider->invertedAppearance()); +} + +void TabsSettingsEditor::updateWidget() +{ +// switch (ui->orientationComboBox->currentIndex()) +// { +// case 0: +// m_slider->setOrientation(Qt::Horizontal); +// break; +// case 1: +// m_slider->setOrientation(Qt::Vertical); +// break; +// default: +// break; +// } +// +// m_slider->setDisabled(ui->disabledCheckBox->isChecked()); +// m_slider->setValue(ui->valueLineEdit->text().toInt()); +// m_slider->setInvertedAppearance(ui->invertedCheckBox->isChecked()); +} diff --git a/examples/tabssettingseditor.h b/examples/tabssettingseditor.h new file mode 100644 index 0000000..3fae271 --- /dev/null +++ b/examples/tabssettingseditor.h @@ -0,0 +1,26 @@ +#ifndef TABSSETTINGSEDITOR_H +#define TABSSETTINGSEDITOR_H + +#include +//#include "ui_tabssettingsform.h" + +class QtMaterialTabs; + +class TabsSettingsEditor : public QWidget +{ + Q_OBJECT + +public: + explicit TabsSettingsEditor(QWidget *parent = 0); + ~TabsSettingsEditor(); + +protected slots: + void setupForm(); + void updateWidget(); + +private: +// Ui::TabsSettingsForm *const ui; + QtMaterialTabs *const m_tabs; +}; + +#endif // TABSSETTINGSEDITOR_H