From 6f814edaec0fec7d58d8aa48ef2e20d33c48248c Mon Sep 17 00:00:00 2001 From: Uwe Rathmann Date: Fri, 1 Apr 2022 16:10:53 +0200 Subject: [PATCH] SwitchButtonPage moved to ButtonPage --- examples/gallery/button/ButtonPage.cpp | 54 ++++++++++++++++++++++++++ examples/gallery/button/ButtonPage.h | 17 ++++++++ 2 files changed, 71 insertions(+) create mode 100644 examples/gallery/button/ButtonPage.cpp create mode 100644 examples/gallery/button/ButtonPage.h diff --git a/examples/gallery/button/ButtonPage.cpp b/examples/gallery/button/ButtonPage.cpp new file mode 100644 index 00000000..a0247c27 --- /dev/null +++ b/examples/gallery/button/ButtonPage.cpp @@ -0,0 +1,54 @@ +/****************************************************************************** + * QSkinny - Copyright (C) 2016 Uwe Rathmann + * This file may be used under the terms of the 3-clause BSD License + *****************************************************************************/ + +#include "ButtonPage.h" + +#include +#include +#include +#include + +#include + +ButtonPage::ButtonPage( QQuickItem* parent ) + : Page( Qt::Horizontal, parent ) +{ + setSpacing( 40 ); + populate(); +} + +void ButtonPage::populate() +{ + auto hbox1 = new QskLinearBox(); + hbox1->setSizePolicy( Qt::Vertical, QskSizePolicy::Fixed ); + hbox1->setExtraSpacingAt( Qt::LeftEdge ); + + auto label = new QskTextLabel( "Disable the switches:", hbox1 ); + label->setSizePolicy( QskSizePolicy::Fixed, QskSizePolicy::Fixed ); + + auto button0 = new QskSwitchButton( hbox1 ); + + auto hbox2 = new QskLinearBox( Qt::Horizontal ); + hbox2->setDefaultAlignment( Qt::AlignHCenter | Qt::AlignTop ); + hbox2->setMargins( 30 ); + + (void) new QskSwitchButton( Qt::Vertical, hbox2 ); + (void) new QskSwitchButton( Qt::Horizontal, hbox2 ); + + auto button3 = new QskSwitchButton( Qt::Vertical, hbox2 ); + button3->setInverted( true ); + + auto button4 = new QskSwitchButton( Qt::Horizontal, hbox2 ); + button4->setInverted( true ); + + auto vbox = new QskLinearBox( Qt::Vertical, this ); + vbox->addItem( hbox1 ); + vbox->addItem( new QskSeparator() ); + vbox->addItem( hbox2 ); + vbox->setExtraSpacingAt( Qt::BottomEdge ); + + QObject::connect( button0, &QskSwitchButton::checkedChanged, + hbox2, &QskQuickItem::setDisabled ); +} diff --git a/examples/gallery/button/ButtonPage.h b/examples/gallery/button/ButtonPage.h new file mode 100644 index 00000000..ad7cad86 --- /dev/null +++ b/examples/gallery/button/ButtonPage.h @@ -0,0 +1,17 @@ +/****************************************************************************** + * QSkinny - Copyright (C) 2016 Uwe Rathmann + * This file may be used under the terms of the 3-clause BSD License + *****************************************************************************/ + +#pragma once + +#include "Page.h" + +class ButtonPage : public Page +{ + public: + ButtonPage( QQuickItem* = nullptr ); + + private: + void populate(); +};