From 286b1e1c10f25ea83a00e6c7a2f92d09939a7d00 Mon Sep 17 00:00:00 2001 From: johanneshilden Date: Sat, 30 Sep 2017 01:34:24 +0300 Subject: [PATCH] Remove crappy components --- components/components.pro | 15 +- components/qtmaterialcollapsiblemenu.cpp | 236 ----------- components/qtmaterialcollapsiblemenu.h | 64 --- .../qtmaterialcollapsiblemenu_internal.cpp | 145 ------- .../qtmaterialcollapsiblemenu_internal.h | 147 ------- components/qtmaterialcollapsiblemenu_p.h | 34 -- components/qtmaterialiconmenu.cpp | 169 -------- components/qtmaterialiconmenu.h | 42 -- components/qtmaterialiconmenu_p.h | 26 -- components/qtmaterialselectfield.cpp | 383 ------------------ components/qtmaterialselectfield.h | 67 --- components/qtmaterialselectfield_p.h | 37 -- examples/examples.pro | 12 +- examples/iconmenusettingseditor.cpp | 87 ---- examples/iconmenusettingseditor.h | 27 -- examples/iconmenusettingsform.ui | 101 ----- examples/mainwindow.cpp | 8 - examples/selectfieldsettingseditor.cpp | 105 ----- examples/selectfieldsettingseditor.h | 27 -- examples/selectfieldsettingsform.ui | 182 --------- 20 files changed, 5 insertions(+), 1909 deletions(-) delete mode 100644 components/qtmaterialcollapsiblemenu.cpp delete mode 100644 components/qtmaterialcollapsiblemenu.h delete mode 100644 components/qtmaterialcollapsiblemenu_internal.cpp delete mode 100644 components/qtmaterialcollapsiblemenu_internal.h delete mode 100644 components/qtmaterialcollapsiblemenu_p.h delete mode 100644 components/qtmaterialiconmenu.cpp delete mode 100644 components/qtmaterialiconmenu.h delete mode 100644 components/qtmaterialiconmenu_p.h delete mode 100644 components/qtmaterialselectfield.cpp delete mode 100644 components/qtmaterialselectfield.h delete mode 100644 components/qtmaterialselectfield_p.h delete mode 100644 examples/iconmenusettingseditor.cpp delete mode 100644 examples/iconmenusettingseditor.h delete mode 100644 examples/iconmenusettingsform.ui delete mode 100644 examples/selectfieldsettingseditor.cpp delete mode 100644 examples/selectfieldsettingseditor.h delete mode 100644 examples/selectfieldsettingsform.ui diff --git a/components/components.pro b/components/components.pro index 16a489a..c563735 100644 --- a/components/components.pro +++ b/components/components.pro @@ -30,14 +30,10 @@ SOURCES = \ qtmaterialtextfield.cpp \ qtmaterialtabs_internal.cpp \ qtmaterialtabs.cpp \ - qtmaterialselectfield.cpp \ qtmaterialmenuitem_internal.cpp \ qtmaterialmenuitem.cpp \ - qtmaterialcollapsiblemenu_internal.cpp \ - qtmaterialcollapsiblemenu.cpp \ qtmaterialscrollbar_internal.cpp \ - qtmaterialscrollbar.cpp \ - qtmaterialiconmenu.cpp + qtmaterialscrollbar.cpp HEADERS = \ qtmaterialavatar_p.h \ qtmaterialavatar.h \ @@ -86,18 +82,11 @@ HEADERS = \ qtmaterialtabs_internal.h \ qtmaterialtabs_p.h \ qtmaterialtabs.h \ - qtmaterialselectfield_p.h \ - qtmaterialselectfield.h \ qtmaterialmenuitem_internal.h \ qtmaterialmenuitem_p.h \ qtmaterialmenuitem.h \ - qtmaterialcollapsiblemenu_internal.h \ - qtmaterialcollapsiblemenu_p.h \ - qtmaterialcollapsiblemenu.h \ qtmaterialscrollbar_internal.h \ qtmaterialscrollbar_p.h \ - qtmaterialscrollbar.h \ - qtmaterialiconmenu_p.h \ - qtmaterialiconmenu.h + qtmaterialscrollbar.h RESOURCES += \ resources.qrc diff --git a/components/qtmaterialcollapsiblemenu.cpp b/components/qtmaterialcollapsiblemenu.cpp deleted file mode 100644 index 67d5018..0000000 --- a/components/qtmaterialcollapsiblemenu.cpp +++ /dev/null @@ -1,236 +0,0 @@ -#include "qtmaterialcollapsiblemenu.h" -#include "qtmaterialcollapsiblemenu_p.h" -#include -#include -#include -#include "qtmaterialcollapsiblemenu_internal.h" -#include "qtmaterialmenuitem.h" -#include "qtmaterialscrollbar.h" -#include "lib/qtmaterialstyle.h" -#include "lib/qtmaterialstatetransitionevent.h" - -/*! - * \class QtMaterialCollapsibleMenuPrivate - * \internal - */ - -QtMaterialCollapsibleMenuPrivate::QtMaterialCollapsibleMenuPrivate(QtMaterialCollapsibleMenu *q) - : q_ptr(q) -{ -} - -QtMaterialCollapsibleMenuPrivate::~QtMaterialCollapsibleMenuPrivate() -{ -} - -void QtMaterialCollapsibleMenuPrivate::init() -{ - Q_Q(QtMaterialCollapsibleMenu); - - QGraphicsDropShadowEffect *effect = new QGraphicsDropShadowEffect; - QtMaterialScrollBar *scrollBar = new QtMaterialScrollBar; - - scrollArea = new QScrollArea; - mainWidget = new QWidget; - menuLayout = new QVBoxLayout; - proxy = new QtMaterialCollapsibleMenuProxy(mainWidget, effect); - stateMachine = new QtMaterialCollapsibleMenuStateMachine(proxy, q); - proxyStack = new QStackedLayout; - - mainWidget->setLayout(menuLayout); - menuLayout->setSpacing(0); - menuLayout->setMargin(0); - - scrollArea->setLineWidth(0); - scrollArea->setMidLineWidth(0); - scrollArea->setFrameShape(QFrame::NoFrame); - scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); - scrollArea->setWidgetResizable(true); - scrollArea->setWidget(mainWidget); - scrollArea->setVerticalScrollBar(scrollBar); - - scrollArea->setAutoFillBackground(true); - QPalette p(scrollArea->palette()); - p.setColor(QPalette::Background, Qt::white); - scrollArea->setPalette(p); - - scrollBar->setHideOnMouseOut(false); - - proxyStack->addWidget(scrollArea); - proxyStack->setSpacing(0); - proxyStack->setMargin(0); - proxyStack->addWidget(proxy); - proxyStack->setCurrentIndex(1); - - q->setLayout(proxyStack); - - effect->setBlurRadius(9); - effect->setOffset(QPoint(0, 0)); - effect->setColor(QColor(0, 0, 0, 100)); - q->setGraphicsEffect(effect); - - stateMachine->start(); -} - -/*! - * \class QtMaterialCollapsibleMenu - */ - -QtMaterialCollapsibleMenu::QtMaterialCollapsibleMenu(QWidget *parent) - : QWidget(parent), - d_ptr(new QtMaterialCollapsibleMenuPrivate(this)) -{ - d_func()->init(); -} - -QtMaterialCollapsibleMenu::~QtMaterialCollapsibleMenu() -{ -} - -void QtMaterialCollapsibleMenu::addMenuItem(const QString &text) -{ - QtMaterialMenuItem *item = new QtMaterialMenuItem; - item->setText(text); - addMenuItem(item); -} - -void QtMaterialCollapsibleMenu::addMenuItem(QtMaterialMenuItem *item) -{ - Q_D(QtMaterialCollapsibleMenu); - - d->menuLayout->addWidget(item); - connect(item, SIGNAL(clicked(bool)), this, SLOT(menuItemClicked())); -} - -QtMaterialMenuItem *QtMaterialCollapsibleMenu::menuItemAt(int index) const -{ - Q_D(const QtMaterialCollapsibleMenu); - - QLayoutItem *item; - - if (!(item = d->menuLayout->itemAt(index))) { - return 0; - } - return static_cast(item->widget()); -} - -int QtMaterialCollapsibleMenu::itemCount() const -{ - Q_D(const QtMaterialCollapsibleMenu); - - return d->menuLayout->count(); -} - -void QtMaterialCollapsibleMenu::scrollTo(int dx, int dy) -{ - Q_D(QtMaterialCollapsibleMenu); - - d->scrollArea->horizontalScrollBar()->setValue(dx); - d->scrollArea->verticalScrollBar()->setValue(dy); -} - -void QtMaterialCollapsibleMenu::setExpandXDuration(int duration) -{ - Q_D(QtMaterialCollapsibleMenu); - - d->stateMachine->expandXAnimation()->setDuration(duration); -} - -void QtMaterialCollapsibleMenu::setExpandXEasingCurve(const QEasingCurve &curve) -{ - Q_D(QtMaterialCollapsibleMenu); - - d->stateMachine->expandXAnimation()->setEasingCurve(curve); -} - -void QtMaterialCollapsibleMenu::setExpandYDuration(int duration) -{ - Q_D(QtMaterialCollapsibleMenu); - - d->stateMachine->expandYAnimation()->setDuration(duration); -} - -void QtMaterialCollapsibleMenu::setExpandYEasingCurve(const QEasingCurve &curve) -{ - Q_D(QtMaterialCollapsibleMenu); - - d->stateMachine->expandYAnimation()->setEasingCurve(curve); -} - -void QtMaterialCollapsibleMenu::setCollapseXDuration(int duration) -{ - Q_D(QtMaterialCollapsibleMenu); - - d->stateMachine->collapseXAnimation()->setDuration(duration); -} - -void QtMaterialCollapsibleMenu::setCollapseXEasingCurve(const QEasingCurve &curve) -{ - Q_D(QtMaterialCollapsibleMenu); - - d->stateMachine->collapseXAnimation()->setEasingCurve(curve); -} - -void QtMaterialCollapsibleMenu::setCollapseYDuration(int duration) -{ - Q_D(QtMaterialCollapsibleMenu); - - d->stateMachine->collapseYAnimation()->setDuration(duration); -} - -void QtMaterialCollapsibleMenu::setCollapseYEasingCurve(const QEasingCurve &curve) -{ - Q_D(QtMaterialCollapsibleMenu); - - d->stateMachine->collapseYAnimation()->setEasingCurve(curve); -} - -void QtMaterialCollapsibleMenu::setCollapsedXScale(qreal sx) -{ - Q_D(QtMaterialCollapsibleMenu); - - d->stateMachine->collapsedState()->assignProperty(d->proxy, "xScale", sx); -} - -void QtMaterialCollapsibleMenu::setCollapsedYScale(qreal sy) -{ - Q_D(QtMaterialCollapsibleMenu); - - d->stateMachine->collapsedState()->assignProperty(d->proxy, "xScale", sy); -} - -void QtMaterialCollapsibleMenu::collapse() -{ - Q_D(QtMaterialCollapsibleMenu); - - d->proxyStack->setCurrentIndex(1); - d->stateMachine->postEvent(new QtMaterialStateTransitionEvent(CollapsibleMenuCollapse)); - emit aboutToCollapse(); -} - -void QtMaterialCollapsibleMenu::expand() -{ - Q_D(QtMaterialCollapsibleMenu); - - d->proxyStack->setCurrentIndex(1); - d->stateMachine->postEvent(new QtMaterialStateTransitionEvent(CollapsibleMenuExpand)); - emit aboutToExpand(); -} - -void QtMaterialCollapsibleMenu::menuItemClicked() -{ - Q_D(QtMaterialCollapsibleMenu); - - QWidget *widget = static_cast(sender()); - if (widget) { - int index = d->menuLayout->indexOf(widget); - emit itemClicked(index); - } -} - -void QtMaterialCollapsibleMenu::setOpaque() -{ - Q_D(QtMaterialCollapsibleMenu); - - d->proxyStack->setCurrentIndex(0); -} diff --git a/components/qtmaterialcollapsiblemenu.h b/components/qtmaterialcollapsiblemenu.h deleted file mode 100644 index 0e84da1..0000000 --- a/components/qtmaterialcollapsiblemenu.h +++ /dev/null @@ -1,64 +0,0 @@ -#ifndef QTMATERIALCOLLAPSIBLEMENU_H -#define QTMATERIALCOLLAPSIBLEMENU_H - -#include -#include - -class QtMaterialCollapsibleMenuPrivate; -class QtMaterialMenuItem; - -class QtMaterialCollapsibleMenu : public QWidget -{ - Q_OBJECT - -public: - explicit QtMaterialCollapsibleMenu(QWidget *parent = 0); - ~QtMaterialCollapsibleMenu(); - - void addMenuItem(const QString &text); - void addMenuItem(QtMaterialMenuItem *item); - - QtMaterialMenuItem *menuItemAt(int index) const; - int itemCount() const; - - void scrollTo(int dx, int dy); - - void setExpandXDuration(int duration); - void setExpandXEasingCurve(const QEasingCurve &curve); - - void setExpandYDuration(int duration); - void setExpandYEasingCurve(const QEasingCurve &curve); - - void setCollapseXDuration(int duration); - void setCollapseXEasingCurve(const QEasingCurve &curve); - - void setCollapseYDuration(int duration); - void setCollapseYEasingCurve(const QEasingCurve &curve); - - void setCollapsedXScale(qreal sx); - void setCollapsedYScale(qreal sy); - -signals: - void aboutToExpand(); - void aboutToCollapse(); - void wasExpanded(); - void wasCollapsed(); - void itemClicked(int index); - -public slots: - void collapse(); - void expand(); - void menuItemClicked(); - -protected slots: - void setOpaque(); - -protected: - const QScopedPointer d_ptr; - -private: - Q_DISABLE_COPY(QtMaterialCollapsibleMenu) - Q_DECLARE_PRIVATE(QtMaterialCollapsibleMenu) -}; - -#endif // QTMATERIALCOLLAPSIBLEMENU_H diff --git a/components/qtmaterialcollapsiblemenu_internal.cpp b/components/qtmaterialcollapsiblemenu_internal.cpp deleted file mode 100644 index 46bb11a..0000000 --- a/components/qtmaterialcollapsiblemenu_internal.cpp +++ /dev/null @@ -1,145 +0,0 @@ -#include "qtmaterialcollapsiblemenu_internal.h" -#include -#include -#include -#include "qtmaterialcollapsiblemenu.h" -#include "lib/qtmaterialstatetransition.h" - -/*! - * \class QtMaterialCollapsibleMenuStateMachine - * \internal - */ - -QtMaterialCollapsibleMenuStateMachine::QtMaterialCollapsibleMenuStateMachine( - QtMaterialCollapsibleMenuProxy *proxy, - QtMaterialCollapsibleMenu *parent) - : QStateMachine(parent), - m_menu(parent), - m_proxy(proxy), - m_expandedState(new QState), - m_collapsedState(new QState), - m_expandXAnimation(new QPropertyAnimation(this)), - m_expandYAnimation(new QPropertyAnimation(this)), - m_collapseXAnimation(new QPropertyAnimation(this)), - m_collapseYAnimation(new QPropertyAnimation(this)) -{ - Q_ASSERT(parent); - - addState(m_expandedState); - addState(m_collapsedState); - setInitialState(m_collapsedState); - - QtMaterialStateTransition *transition; - QPropertyAnimation *animation; - - transition = new QtMaterialStateTransition(CollapsibleMenuExpand); - transition->setTargetState(m_expandedState); - m_collapsedState->addTransition(transition); - - m_expandXAnimation->setTargetObject(m_proxy); - m_expandXAnimation->setPropertyName("xScale"); - m_expandXAnimation->setDuration(200); - m_expandXAnimation->setEasingCurve(QEasingCurve::OutQuad); - transition->addAnimation(m_expandXAnimation); - - m_expandYAnimation->setTargetObject(m_proxy); - m_expandYAnimation->setPropertyName("yScale"); - m_expandYAnimation->setDuration(600); - m_expandYAnimation->setEasingCurve(QEasingCurve::OutElastic); - transition->addAnimation(m_expandYAnimation); - - animation = new QPropertyAnimation(this); - animation->setTargetObject(m_proxy); - animation->setPropertyName("opacity"); - animation->setDuration(220); - animation->setEasingCurve(QEasingCurve::OutQuad); - transition->addAnimation(animation); - - transition = new QtMaterialStateTransition(CollapsibleMenuCollapse); - transition->setTargetState(m_collapsedState); - m_expandedState->addTransition(transition); - - m_collapseXAnimation->setTargetObject(m_proxy); - m_collapseXAnimation->setPropertyName("xScale"); - m_collapseXAnimation->setDuration(400); - m_collapseXAnimation->setEasingCurve(QEasingCurve::OutQuad); - transition->addAnimation(m_collapseXAnimation); - - m_collapseYAnimation->setTargetObject(m_proxy); - m_collapseYAnimation->setPropertyName("yScale"); - m_collapseYAnimation->setDuration(500); - m_collapseYAnimation->setEasingCurve(QEasingCurve::OutQuad); - transition->addAnimation(m_collapseYAnimation); - - m_expandedState->assignProperty(m_proxy, "xScale", 1); - m_expandedState->assignProperty(m_proxy, "yScale", 1); - m_expandedState->assignProperty(m_proxy, "opacity", 1); - - m_collapsedState->assignProperty(m_proxy, "xScale", 0.5); - m_collapsedState->assignProperty(m_proxy, "yScale", 0.05); - m_collapsedState->assignProperty(m_proxy, "opacity", 0); - - animation = new QPropertyAnimation(this); - animation->setTargetObject(m_proxy); - animation->setPropertyName("opacity"); - animation->setDuration(140); - transition->addAnimation(animation); - - connect(m_expandedState, SIGNAL(propertiesAssigned()), - m_menu, SLOT(setOpaque())); - connect(m_expandedState, SIGNAL(propertiesAssigned()), - m_menu, SIGNAL(wasExpanded())); - connect(m_collapsedState, SIGNAL(propertiesAssigned()), - m_menu, SIGNAL(wasCollapsed())); -} - -QtMaterialCollapsibleMenuStateMachine::~QtMaterialCollapsibleMenuStateMachine() -{ -} - -/*! - * \class QtMaterialCollapsibleMenuProxy - * \internal - */ - -QtMaterialCollapsibleMenuProxy::QtMaterialCollapsibleMenuProxy( - QWidget *source, - QGraphicsDropShadowEffect *effect, - QWidget *parent) - : QWidget(parent), - m_source(source), - m_effect(effect), - m_sx(0), - m_sy(0), - m_opacity(0) -{ -} - -QtMaterialCollapsibleMenuProxy::~QtMaterialCollapsibleMenuProxy() -{ -} - -QSize QtMaterialCollapsibleMenuProxy::sizeHint() const -{ - if (!m_source) { - return QWidget::sizeHint(); - } - return m_source->sizeHint(); -} - -void QtMaterialCollapsibleMenuProxy::paintEvent(QPaintEvent *event) -{ - Q_UNUSED(event) - - QPainter painter(this); - - QRect r(rect()); - QPixmap pm = m_source->grab(r.translated(-m_source->pos())).scaled( - static_cast(r.width())*m_sx, - static_cast(r.height())*m_sy, - Qt::IgnoreAspectRatio, - Qt::SmoothTransformation); - - painter.setOpacity(m_opacity); - painter.drawPixmap(0, 0, pm); -} diff --git a/components/qtmaterialcollapsiblemenu_internal.h b/components/qtmaterialcollapsiblemenu_internal.h deleted file mode 100644 index c721b00..0000000 --- a/components/qtmaterialcollapsiblemenu_internal.h +++ /dev/null @@ -1,147 +0,0 @@ -#ifndef QTMATERIALCOLLAPSIBLEMENU_INTERNAL_H -#define QTMATERIALCOLLAPSIBLEMENU_INTERNAL_H - -#include -#include -#include -#include - -class QState; -class QPropertyAnimation; -class QtMaterialCollapsibleMenu; -class QtMaterialCollapsibleMenuProxy; - -class QtMaterialCollapsibleMenuStateMachine : public QStateMachine -{ - Q_OBJECT - -public: - QtMaterialCollapsibleMenuStateMachine(QtMaterialCollapsibleMenuProxy *proxy, QtMaterialCollapsibleMenu *parent); - ~QtMaterialCollapsibleMenuStateMachine(); - - inline QState *expandedState() const; - inline QState *collapsedState() const; - inline QPropertyAnimation *expandXAnimation() const; - inline QPropertyAnimation *expandYAnimation() const; - inline QPropertyAnimation *collapseXAnimation() const; - inline QPropertyAnimation *collapseYAnimation() const; - -private: - Q_DISABLE_COPY(QtMaterialCollapsibleMenuStateMachine) - - QtMaterialCollapsibleMenu *const m_menu; - QtMaterialCollapsibleMenuProxy *const m_proxy; - QState *const m_expandedState; - QState *const m_collapsedState; - QPropertyAnimation *const m_expandXAnimation; - QPropertyAnimation *const m_expandYAnimation; - QPropertyAnimation *const m_collapseXAnimation; - QPropertyAnimation *const m_collapseYAnimation; -}; - -inline QState *QtMaterialCollapsibleMenuStateMachine::expandedState() const -{ - return m_expandedState; -} - -inline QState *QtMaterialCollapsibleMenuStateMachine::collapsedState() const -{ - return m_collapsedState; -} - -inline QPropertyAnimation *QtMaterialCollapsibleMenuStateMachine::expandXAnimation() const -{ - return m_expandXAnimation; -} - -inline QPropertyAnimation *QtMaterialCollapsibleMenuStateMachine::expandYAnimation() const -{ - return m_expandYAnimation; -} - -inline QPropertyAnimation *QtMaterialCollapsibleMenuStateMachine::collapseXAnimation() const -{ - return m_collapseXAnimation; -} - -inline QPropertyAnimation *QtMaterialCollapsibleMenuStateMachine::collapseYAnimation() const -{ - return m_collapseYAnimation; -} - -class QGraphicsDropShadowEffect; - -class QtMaterialCollapsibleMenuProxy : public QWidget -{ - Q_OBJECT - - Q_PROPERTY(qreal xScale WRITE setXScale READ xScale) - Q_PROPERTY(qreal yScale WRITE setYScale READ yScale) - Q_PROPERTY(qreal opacity WRITE setOpacity READ opacity) - -public: - QtMaterialCollapsibleMenuProxy(QWidget *source, QGraphicsDropShadowEffect *effect, QWidget *parent = 0); - ~QtMaterialCollapsibleMenuProxy(); - - QSize sizeHint() const Q_DECL_OVERRIDE; - - inline void setXScale(qreal sx); - inline qreal xScale() const; - - inline void setYScale(qreal sy); - inline qreal yScale() const; - - inline void setOpacity(qreal opacity); - inline qreal opacity() const; - -protected: - void paintEvent(QPaintEvent *event) Q_DECL_OVERRIDE; - -private: - Q_DISABLE_COPY(QtMaterialCollapsibleMenuProxy) - - QWidget *const m_source; - QGraphicsDropShadowEffect *const m_effect; - qreal m_sx; - qreal m_sy; - qreal m_opacity; -}; - -inline void QtMaterialCollapsibleMenuProxy::setXScale(qreal sx) -{ - m_sx = sx; - update(); - m_effect->update(); -} - -inline qreal QtMaterialCollapsibleMenuProxy::xScale() const -{ - return m_sx; -} - -inline void QtMaterialCollapsibleMenuProxy::setYScale(qreal sy) -{ - m_sy = sy; - update(); - m_effect->update(); -} - -inline qreal QtMaterialCollapsibleMenuProxy::yScale() const -{ - return m_sy; -} - -inline void QtMaterialCollapsibleMenuProxy::setOpacity(qreal opacity) -{ - m_opacity = opacity; - m_effect->setColor(QColor(0, 0, 0, 100*(pow(opacity, 5)))); - m_effect->update(); - update(); -} - -inline qreal QtMaterialCollapsibleMenuProxy::opacity() const -{ - return m_opacity; -} - -#endif // QTMATERIALCOLLAPSIBLEMENU_INTERNAL_H diff --git a/components/qtmaterialcollapsiblemenu_p.h b/components/qtmaterialcollapsiblemenu_p.h deleted file mode 100644 index 5684be1..0000000 --- a/components/qtmaterialcollapsiblemenu_p.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef QTMATERIALCOLLAPSIBLEMENU_P_H -#define QTMATERIALCOLLAPSIBLEMENU_P_H - -#include - -class QScrollArea; -class QWidget; -class QVBoxLayout; -class QStackedLayout; -class QtMaterialCollapsibleMenu; -class QtMaterialCollapsibleMenuStateMachine; -class QtMaterialCollapsibleMenuProxy; - -class QtMaterialCollapsibleMenuPrivate -{ - Q_DISABLE_COPY(QtMaterialCollapsibleMenuPrivate) - Q_DECLARE_PUBLIC(QtMaterialCollapsibleMenu) - -public: - QtMaterialCollapsibleMenuPrivate(QtMaterialCollapsibleMenu *q); - ~QtMaterialCollapsibleMenuPrivate(); - - void init(); - - QtMaterialCollapsibleMenu *const q_ptr; - QScrollArea *scrollArea; - QWidget *mainWidget; - QVBoxLayout *menuLayout; - QtMaterialCollapsibleMenuProxy *proxy; - QtMaterialCollapsibleMenuStateMachine *stateMachine; - QStackedLayout *proxyStack; -}; - -#endif // QTMATERIALCOLLAPSIBLEMENU_P_H diff --git a/components/qtmaterialiconmenu.cpp b/components/qtmaterialiconmenu.cpp deleted file mode 100644 index 8cc07e6..0000000 --- a/components/qtmaterialiconmenu.cpp +++ /dev/null @@ -1,169 +0,0 @@ -#include "qtmaterialiconmenu.h" -#include "qtmaterialiconmenu_p.h" -#include -#include -#include "lib/qtmaterialoverlaywidget.h" -#include "qtmaterialcollapsiblemenu.h" - -/*! - * \class QtMaterialIconMenuPrivate - * \internal - */ - -QtMaterialIconMenuPrivate::QtMaterialIconMenuPrivate(QtMaterialIconMenu *q) - : QtMaterialIconButtonPrivate(q) -{ -} - -QtMaterialIconMenuPrivate::~QtMaterialIconMenuPrivate() -{ -} - -void QtMaterialIconMenuPrivate::init() -{ - Q_Q(QtMaterialIconMenu); - - menuOverlay = new QtMaterialOverlayWidget(q); - menu = new QtMaterialCollapsibleMenu; - autoCollapse = true; - - menuOverlay->setParent(q->parentWidget()); - menuOverlay->setAttribute(Qt::WA_TransparentForMouseEvents); - menuOverlay->installEventFilter(q); - - menu->setParent(menuOverlay); - menu->setMaximumHeight(300); - menu->setMinimumWidth(200); - - QObject::connect(menu, SIGNAL(aboutToCollapse()), q, SLOT(makeTransparent())); - QObject::connect(menu, SIGNAL(wasExpanded()), q, SLOT(makeOpaque())); - QObject::connect(menu, SIGNAL(aboutToExpand()), menuOverlay, SLOT(raise())); - QObject::connect(menu, SIGNAL(itemClicked(int)), q, SIGNAL(itemSelected(int))); - QObject::connect(menu, SIGNAL(itemClicked(int)), q, SLOT(collapseDelayed())); -} - -/*! - * \class QtMaterialIconMenu - */ - -QtMaterialIconMenu::QtMaterialIconMenu(const QIcon &icon, QWidget *parent) - : QtMaterialIconButton(*new QtMaterialIconMenuPrivate(this), parent) -{ - d_func()->init(); - - setIcon(icon); -} - -QtMaterialIconMenu::~QtMaterialIconMenu() -{ -} - -void QtMaterialIconMenu::addMenuItem(const QString &text) -{ - Q_D(QtMaterialIconMenu); - - d->menu->addMenuItem(text); -} - -void QtMaterialIconMenu::addMenuItem(QtMaterialMenuItem *item) -{ - Q_D(QtMaterialIconMenu); - - d->menu->addMenuItem(item); -} - -QtMaterialMenuItem *QtMaterialIconMenu::itemAt(int index) const -{ - Q_D(const QtMaterialIconMenu); - - return d->menu->menuItemAt(index); -} - -void QtMaterialIconMenu::setAutoCollapse(bool value) -{ - Q_D(QtMaterialIconMenu); - - d->autoCollapse = value; -} - -bool QtMaterialIconMenu::autoCollapse() const -{ - Q_D(const QtMaterialIconMenu); - - return d->autoCollapse; -} - -void QtMaterialIconMenu::makeTransparent() -{ - Q_D(QtMaterialIconMenu); - - d->menuOverlay->setAttribute(Qt::WA_TransparentForMouseEvents, true); -} - -void QtMaterialIconMenu::makeOpaque() -{ - Q_D(QtMaterialIconMenu); - - d->menuOverlay->setAttribute(Qt::WA_TransparentForMouseEvents, false); -} - -void QtMaterialIconMenu::collapseDelayed() -{ - Q_D(QtMaterialIconMenu); - - if (d->autoCollapse) { - QTimer::singleShot(110, d->menu, SLOT(collapse())); - } -} - -/*! - * \reimp - */ -bool QtMaterialIconMenu::event(QEvent *event) -{ - Q_D(QtMaterialIconMenu); - - switch (event->type()) - { - case QEvent::Move: - case QEvent::Resize: - { - const QSize sh = d->menu->sizeHint(); - QPoint p = pos(); - p += QPoint(width()/2, height()/2); - d->menu->setGeometry(p.x(), p.y(), sh.width(), sh.height()); - break; - } - case QEvent::MouseButtonRelease: - { - if (isEnabled()) { - d->menu->expand(); - } - break; - } - case QEvent::ParentChange: - { - QWidget *widget; - if ((widget = parentWidget())) { - d->menuOverlay->setParent(widget); - } - break; - } - default: - break; - } - return QtMaterialIconButton::event(event); -} - -/*! - * \reimp - */ -bool QtMaterialIconMenu::eventFilter(QObject *obj, QEvent *event) -{ - Q_D(QtMaterialIconMenu); - - if (QEvent::MouseButtonPress == event->type()) { - d->menu->collapse(); - } - return QtMaterialIconButton::eventFilter(obj, event); -} diff --git a/components/qtmaterialiconmenu.h b/components/qtmaterialiconmenu.h deleted file mode 100644 index 99fb75d..0000000 --- a/components/qtmaterialiconmenu.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef QTMATERIALICONMENU_H -#define QTMATERIALICONMENU_H - -#include "qtmaterialiconbutton.h" - -class QtMaterialIconMenuPrivate; -class QtMaterialMenuItem; - -class QtMaterialIconMenu : public QtMaterialIconButton -{ - Q_OBJECT - -public: - explicit QtMaterialIconMenu(const QIcon &icon, QWidget *parent = 0); - ~QtMaterialIconMenu(); - - void addMenuItem(const QString &text); - void addMenuItem(QtMaterialMenuItem *item); - - QtMaterialMenuItem *itemAt(int index) const; - - void setAutoCollapse(bool value); - bool autoCollapse() const; - -signals: - void itemSelected(int index); - -protected slots: - void makeTransparent(); - void makeOpaque(); - void collapseDelayed(); - -protected: - bool event(QEvent *event) Q_DECL_OVERRIDE; - bool eventFilter(QObject *obj, QEvent *event) Q_DECL_OVERRIDE; - -private: - Q_DISABLE_COPY(QtMaterialIconMenu) - Q_DECLARE_PRIVATE(QtMaterialIconMenu) -}; - -#endif // QTMATERIALICONMENU_H diff --git a/components/qtmaterialiconmenu_p.h b/components/qtmaterialiconmenu_p.h deleted file mode 100644 index 4331268..0000000 --- a/components/qtmaterialiconmenu_p.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef QTMATERIALICONMENU_P_H -#define QTMATERIALICONMENU_P_H - -#include "qtmaterialiconbutton_p.h" - -class QtMaterialIconMenu; -class QtMaterialOverlayWidget; -class QtMaterialCollapsibleMenu; - -class QtMaterialIconMenuPrivate : public QtMaterialIconButtonPrivate -{ - Q_DISABLE_COPY(QtMaterialIconMenuPrivate) - Q_DECLARE_PUBLIC(QtMaterialIconMenu) - -public: - QtMaterialIconMenuPrivate(QtMaterialIconMenu *q); - ~QtMaterialIconMenuPrivate(); - - void init(); - - QtMaterialOverlayWidget *menuOverlay; - QtMaterialCollapsibleMenu *menu; - bool autoCollapse; -}; - -#endif // QTMATERIALICONMENU_P_H diff --git a/components/qtmaterialselectfield.cpp b/components/qtmaterialselectfield.cpp deleted file mode 100644 index 9783fca..0000000 --- a/components/qtmaterialselectfield.cpp +++ /dev/null @@ -1,383 +0,0 @@ -#include "qtmaterialselectfield.h" -#include "qtmaterialselectfield_p.h" -#include -#include -#include -#include -#include -#include "lib/qtmaterialstyle.h" -#include "qtmaterialmenuitem.h" -#include "qtmaterialcollapsiblemenu.h" -#include "lib/qtmaterialoverlaywidget.h" - -/*! - * \class QtMaterialSelectFieldPrivate - * \internal - */ - -QtMaterialSelectFieldPrivate::QtMaterialSelectFieldPrivate(QtMaterialSelectField *q) - : q_ptr(q) -{ -} - -QtMaterialSelectFieldPrivate::~QtMaterialSelectFieldPrivate() -{ -} - -void QtMaterialSelectFieldPrivate::init() -{ - Q_Q(QtMaterialSelectField); - - menuOverlay = new QtMaterialOverlayWidget(q); - menu = new QtMaterialCollapsibleMenu; - selectedIndex = -1; - useThemeColors = true; - - q->setStyle(&QtMaterialStyle::instance()); - - QFontDatabase db; - QFont font(db.font("Roboto", "Regular", 11)); - q->setFont(font); - - menuOverlay->setParent(q->parentWidget()); - menuOverlay->setAttribute(Qt::WA_TransparentForMouseEvents); - menuOverlay->installEventFilter(q); - - menu->setParent(menuOverlay); - menu->setMaximumHeight(300); - menu->setCollapsedXScale(1); - menu->setExpandYDuration(280); - menu->setExpandYEasingCurve(QEasingCurve::OutQuad); - - QObject::connect(menu, SIGNAL(aboutToCollapse()), q, SLOT(makeTransparent())); - QObject::connect(menu, SIGNAL(wasExpanded()), q, SLOT(makeOpaque())); - QObject::connect(menu, SIGNAL(aboutToExpand()), menuOverlay, SLOT(raise())); - QObject::connect(menu, SIGNAL(itemClicked(int)), q, SLOT(setSelectedIndex(int))); - QObject::connect(menu, SIGNAL(itemClicked(int)), q, SLOT(collapseDelayed())); - QObject::connect(menu, SIGNAL(itemClicked(int)), q, SIGNAL(itemSelected(int))); -} - -/*! - * \class QtMaterialSelectField - */ - -QtMaterialSelectField::QtMaterialSelectField(QWidget *parent) - : QWidget(parent), - d_ptr(new QtMaterialSelectFieldPrivate(this)) -{ - d_func()->init(); -} - -QtMaterialSelectField::~QtMaterialSelectField() -{ -} - -/*! - * \reimp - */ -QSize QtMaterialSelectField::sizeHint() const -{ - return QSize(300, 30); -} - -void QtMaterialSelectField::addItem(const QString &text) -{ - Q_D(QtMaterialSelectField); - - QtMaterialMenuItem *item = new QtMaterialMenuItem; - item->setText(text); - item->setHaloVisible(false); - - d->menu->addMenuItem(item); -} - -QtMaterialMenuItem *QtMaterialSelectField::itemAt(int index) const -{ - Q_D(const QtMaterialSelectField); - - return d->menu->menuItemAt(index); -} - -void QtMaterialSelectField::setPlaceholderText(const QString &text) -{ - Q_D(QtMaterialSelectField); - - d->placeholderText = text; - update(); -} - -QString QtMaterialSelectField::placeholderText() const -{ - Q_D(const QtMaterialSelectField); - - return d->placeholderText; -} - -void QtMaterialSelectField::setUseThemeColors(bool value) -{ - Q_D(QtMaterialSelectField); - - if (d->useThemeColors == value) { - return; - } - - d->useThemeColors = value; - update(); -} - -bool QtMaterialSelectField::useThemeColors() const -{ - Q_D(const QtMaterialSelectField); - - return d->useThemeColors; -} - -void QtMaterialSelectField::setUnderlineColor(const QColor &color) -{ - Q_D(QtMaterialSelectField); - - d->underlineColor = color; - - MATERIAL_DISABLE_THEME_COLORS - update(); -} - -QColor QtMaterialSelectField::underlineColor() const -{ - Q_D(const QtMaterialSelectField); - - if (d->useThemeColors || !d->underlineColor.isValid()) { - return QtMaterialStyle::instance().themeColor("border"); - } - return d->underlineColor; -} - -void QtMaterialSelectField::setPlaceholderColor(const QColor &color) -{ - Q_D(QtMaterialSelectField); - - d->placeholderColor = color; - - MATERIAL_DISABLE_THEME_COLORS - update(); -} - -QColor QtMaterialSelectField::placeholderColor() const -{ - Q_D(const QtMaterialSelectField); - - if (d->useThemeColors || !d->placeholderColor.isValid()) { - return QtMaterialStyle::instance().themeColor("accent3"); - } - return d->placeholderColor; -} - -void QtMaterialSelectField::setForegroundColor(const QColor &color) -{ - Q_D(QtMaterialSelectField); - - d->foregroundColor = color; - - MATERIAL_DISABLE_THEME_COLORS - update(); -} - -QColor QtMaterialSelectField::foregroundColor() const -{ - Q_D(const QtMaterialSelectField); - - if (d->useThemeColors || !d->foregroundColor.isValid()) { - return QtMaterialStyle::instance().themeColor("text"); - } - return d->foregroundColor; -} - -void QtMaterialSelectField::setHighlightedColor(const QColor &color) -{ - Q_D(QtMaterialSelectField); - - d->highlightedColor = color; - - MATERIAL_DISABLE_THEME_COLORS - update(); -} - -QColor QtMaterialSelectField::highlightedColor() const -{ - Q_D(const QtMaterialSelectField); - - if (d->useThemeColors || !d->highlightedColor.isValid()) { - return QtMaterialStyle::instance().themeColor("primary1"); - } - return d->highlightedColor; -} - -void QtMaterialSelectField::setDisabledColor(const QColor &color) -{ - Q_D(QtMaterialSelectField); - - d->disabledColor = color; - - MATERIAL_DISABLE_THEME_COLORS - update(); -} - -QColor QtMaterialSelectField::disabledColor() const -{ - Q_D(const QtMaterialSelectField); - - if (d->useThemeColors || !d->disabledColor.isValid()) { - return QtMaterialStyle::instance().themeColor("disabled"); - } - return d->disabledColor; -} - -void QtMaterialSelectField::setSelectedIndex(int index) -{ - Q_D(QtMaterialSelectField); - - QtMaterialMenuItem *menuItem; - - if (d->selectedIndex > -1 && (menuItem = d->menu->menuItemAt(d->selectedIndex))) { - menuItem->setHighlighted(false); - } - if (index > -1 && (menuItem = d->menu->menuItemAt(index))) { - menuItem->setHighlighted(true); - d->selectedText = menuItem->text(); - } - d->selectedIndex = index; - update(); -} - -void QtMaterialSelectField::clearSelection() -{ - Q_D(QtMaterialSelectField); - - setSelectedIndex(-1); - d->selectedText.clear(); -} - -void QtMaterialSelectField::makeTransparent() -{ - Q_D(QtMaterialSelectField); - - d->menuOverlay->setAttribute(Qt::WA_TransparentForMouseEvents, true); -} - -void QtMaterialSelectField::makeOpaque() -{ - Q_D(QtMaterialSelectField); - - d->menuOverlay->setAttribute(Qt::WA_TransparentForMouseEvents, false); -} - -void QtMaterialSelectField::collapseDelayed() -{ - Q_D(QtMaterialSelectField); - - QTimer::singleShot(100, d->menu, SLOT(collapse())); -} - -/*! - * \reimp - */ -bool QtMaterialSelectField::event(QEvent *event) -{ - Q_D(QtMaterialSelectField); - - switch (event->type()) - { - case QEvent::Move: - case QEvent::Resize: - { - const QSize sh = d->menu->sizeHint(); - d->menu->setGeometry(x(), y(), width(), sh.height()); - break; - } - case QEvent::MouseButtonRelease: - { - if (isEnabled()) { - QtMaterialMenuItem *item; - for (int i = 0; i < d->menu->itemCount(); ++i) { - item = d->menu->menuItemAt(i); - if (item->isHighlighted()) { - item->setForegroundColor(highlightedColor()); - } else { - item->setForegroundColor(foregroundColor()); - } - } - d->menu->expand(); - } - break; - } - case QEvent::ParentChange: - { - QWidget *widget; - if ((widget = parentWidget())) { - d->menuOverlay->setParent(widget); - } - break; - } - default: - break; - } - return QWidget::event(event); -} - -/*! - * \reimp - */ -bool QtMaterialSelectField::eventFilter(QObject *obj, QEvent *event) -{ - Q_D(QtMaterialSelectField); - - if (QEvent::MouseButtonPress == event->type()) { - d->menu->collapse(); - } - return QWidget::eventFilter(obj, event); -} - -/*! - * \reimp - */ -void QtMaterialSelectField::paintEvent(QPaintEvent *event) -{ - Q_UNUSED(event) - - Q_D(QtMaterialSelectField); - - QPainter painter(this); - - const int y = height()-1; - const int wd = width()-5; - - if (d->selectedText.isEmpty() && !d->placeholderText.isEmpty()) { - if (isEnabled()) { - painter.setPen(placeholderColor()); - } else { - painter.setPen(disabledColor()); - } - painter.drawText(2, y-8, d->placeholderText); - } else { - painter.drawText(2, y-8, d->selectedText); - } - - QPen pen; - pen.setWidth(1); - pen.setColor(underlineColor()); - painter.setPen(pen); - painter.setOpacity(1); - painter.drawLine(2.5, y, wd, y); - - if (isEnabled()) - { - static const int points[] = { wd-14, 12, wd-4, 12, wd-9, 18 }; - - QPolygon polygon; - polygon.setPoints(3, points); - - painter.setPen(Qt::NoPen); - painter.setBrush(underlineColor()); - painter.drawPolygon(polygon); - } -} diff --git a/components/qtmaterialselectfield.h b/components/qtmaterialselectfield.h deleted file mode 100644 index bcc5a0f..0000000 --- a/components/qtmaterialselectfield.h +++ /dev/null @@ -1,67 +0,0 @@ -#ifndef QTMATERIALSELECTFIELD_H -#define QTMATERIALSELECTFIELD_H - -#include - -class QtMaterialSelectFieldPrivate; -class QtMaterialMenuItem; - -class QtMaterialSelectField : public QWidget -{ - Q_OBJECT - -public: - explicit QtMaterialSelectField(QWidget *parent = 0); - ~QtMaterialSelectField(); - - QSize sizeHint() const Q_DECL_OVERRIDE; - - void addItem(const QString &text); - QtMaterialMenuItem *itemAt(int index) const; - - void setPlaceholderText(const QString &text); - QString placeholderText() const; - - void setUseThemeColors(bool value); - bool useThemeColors() const; - - void setUnderlineColor(const QColor &color); - QColor underlineColor() const; - - void setPlaceholderColor(const QColor &color); - QColor placeholderColor() const; - - void setForegroundColor(const QColor &color); - QColor foregroundColor() const; - - void setHighlightedColor(const QColor &color); - QColor highlightedColor() const; - - void setDisabledColor(const QColor &color); - QColor disabledColor() const; - -signals: - void itemSelected(int index); - -public slots: - void setSelectedIndex(int index); - void clearSelection(); - -protected slots: - void makeTransparent(); - void makeOpaque(); - void collapseDelayed(); - -protected: - bool event(QEvent *event) Q_DECL_OVERRIDE; - bool eventFilter(QObject *obj, QEvent *event) Q_DECL_OVERRIDE; - void paintEvent(QPaintEvent *event) Q_DECL_OVERRIDE; - - const QScopedPointer d_ptr; - -private: - Q_DISABLE_COPY(QtMaterialSelectField) - Q_DECLARE_PRIVATE(QtMaterialSelectField) -}; - -#endif // QTMATERIALSELECTFIELD_H diff --git a/components/qtmaterialselectfield_p.h b/components/qtmaterialselectfield_p.h deleted file mode 100644 index 1e7164d..0000000 --- a/components/qtmaterialselectfield_p.h +++ /dev/null @@ -1,37 +0,0 @@ -#ifndef QTMATERIALSELECTFIELD_P_H -#define QTMATERIALSELECTFIELD_P_H - -#include -#include -#include - -class QtMaterialSelectField; -class QtMaterialOverlayWidget; -class QtMaterialCollapsibleMenu; - -class QtMaterialSelectFieldPrivate -{ - Q_DISABLE_COPY(QtMaterialSelectFieldPrivate) - Q_DECLARE_PUBLIC(QtMaterialSelectField) - -public: - QtMaterialSelectFieldPrivate(QtMaterialSelectField *q); - ~QtMaterialSelectFieldPrivate(); - - void init(); - - QtMaterialSelectField *const q_ptr; - QtMaterialOverlayWidget *menuOverlay; - QtMaterialCollapsibleMenu *menu; - QString selectedText; - QString placeholderText; - QColor underlineColor; - QColor placeholderColor; - QColor foregroundColor; - QColor highlightedColor; - QColor disabledColor; - int selectedIndex; - bool useThemeColors; -}; - -#endif // QTMATERIALSELECTFIELD_P_H diff --git a/examples/examples.pro b/examples/examples.pro index e2f906a..de193e1 100644 --- a/examples/examples.pro +++ b/examples/examples.pro @@ -15,9 +15,7 @@ SOURCES = mainwindow.cpp \ radiobuttonsettingseditor.cpp \ togglesettingseditor.cpp \ textfieldsettingseditor.cpp \ - tabssettingseditor.cpp \ - selectfieldsettingseditor.cpp \ - iconmenusettingseditor.cpp + tabssettingseditor.cpp HEADERS = mainwindow.h \ avatarsettingseditor.h \ badgesettingseditor.h \ @@ -32,9 +30,7 @@ HEADERS = mainwindow.h \ radiobuttonsettingseditor.h \ togglesettingseditor.h \ textfieldsettingseditor.h \ - tabssettingseditor.h \ - selectfieldsettingseditor.h \ - iconmenusettingseditor.h + tabssettingseditor.h LIBS += ../components/libcomponents.a INCLUDEPATH += ../components/ TARGET = ../examples-exe @@ -54,6 +50,4 @@ FORMS += \ slidersettingsform.ui \ radiobuttonsettingsform.ui \ togglesettingsform.ui \ - textfieldsettingsform.ui \ - selectfieldsettingsform.ui \ - iconmenusettingsform.ui + textfieldsettingsform.ui diff --git a/examples/iconmenusettingseditor.cpp b/examples/iconmenusettingseditor.cpp deleted file mode 100644 index aec2c49..0000000 --- a/examples/iconmenusettingseditor.cpp +++ /dev/null @@ -1,87 +0,0 @@ -#include "iconmenusettingseditor.h" -#include -#include -#include -#include "qtmaterialiconmenu.h" -#include "qtmaterialmenuitem.h" - -IconMenuSettingsEditor::IconMenuSettingsEditor(QWidget *parent) - : QWidget(parent), - ui(new Ui::IconMenuSettingsForm), - m_iconMenu(new QtMaterialIconMenu(QtMaterialTheme::icon("toggle", "star"))) -{ - 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); - layout->addWidget(m_iconMenu); - layout->setAlignment(m_iconMenu, Qt::AlignCenter); - - { - m_iconMenu->addMenuItem("C"); - m_iconMenu->addMenuItem("C++"); - m_iconMenu->addMenuItem("PHP"); - m_iconMenu->addMenuItem("Haskell"); - m_iconMenu->addMenuItem("JavaScript"); - m_iconMenu->addMenuItem("ECMAScript"); - m_iconMenu->addMenuItem("OCaml"); - m_iconMenu->addMenuItem("Python"); - m_iconMenu->addMenuItem("F#"); - m_iconMenu->addMenuItem("Clojure"); - m_iconMenu->addMenuItem("Java"); - - m_iconMenu->itemAt(2)->setDisabled(true); - } - - setupForm(); - - connect(ui->disabledCheckBox, SIGNAL(toggled(bool)), this, SLOT(updateWidget())); - connect(ui->autoCollapseCheckBox, SIGNAL(toggled(bool)), this, SLOT(updateWidget())); - connect(ui->colorToolButton, SIGNAL(clicked(bool)), this, SLOT(selectColor())); - connect(ui->disabledColorToolButton, SIGNAL(clicked(bool)), this, SLOT(selectColor())); -} - -IconMenuSettingsEditor::~IconMenuSettingsEditor() -{ - delete ui; -} - -void IconMenuSettingsEditor::setupForm() -{ - ui->disabledCheckBox->setChecked(!m_iconMenu->isEnabled()); - ui->autoCollapseCheckBox->setChecked(m_iconMenu->autoCollapse()); -} - -void IconMenuSettingsEditor::updateWidget() -{ - m_iconMenu->setDisabled(ui->disabledCheckBox->isChecked()); - m_iconMenu->setAutoCollapse(ui->autoCollapseCheckBox->isChecked()); -} - -void IconMenuSettingsEditor::selectColor() -{ - QColorDialog dialog; - if (dialog.exec()) { - QColor color = dialog.selectedColor(); - QString senderName = sender()->objectName(); - if ("colorToolButton" == senderName) { - m_iconMenu->setColor(color); - ui->colorLineEdit->setText(color.name(QColor::HexRgb)); - } else if ("disabledColorToolButton" == senderName) { - m_iconMenu->setDisabledColor(color); - ui->disabledColorLineEdit->setText(color.name(QColor::HexRgb)); - } - } - setupForm(); -} diff --git a/examples/iconmenusettingseditor.h b/examples/iconmenusettingseditor.h deleted file mode 100644 index 89c5d44..0000000 --- a/examples/iconmenusettingseditor.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef ICONMENUSETTINGSEDITOR_H -#define ICONMENUSETTINGSEDITOR_H - -#include -#include "ui_iconmenusettingsform.h" - -class QtMaterialIconMenu; - -class IconMenuSettingsEditor : public QWidget -{ - Q_OBJECT - -public: - explicit IconMenuSettingsEditor(QWidget *parent = 0); - ~IconMenuSettingsEditor(); - -protected slots: - void setupForm(); - void updateWidget(); - void selectColor(); - -private: - Ui::IconMenuSettingsForm *const ui; - QtMaterialIconMenu *const m_iconMenu; -}; - -#endif // ICONMENUSETTINGSEDITOR_H diff --git a/examples/iconmenusettingsform.ui b/examples/iconmenusettingsform.ui deleted file mode 100644 index a3c2674..0000000 --- a/examples/iconmenusettingsform.ui +++ /dev/null @@ -1,101 +0,0 @@ - - - IconMenuSettingsForm - - - - 0 - 0 - 400 - 300 - - - - Form - - - - - 0 - 0 - 160 - 104 - - - - - - - Disabled - - - - - - - - - - Color - - - - - - - Auto collapse - - - - - - - - - - - - false - - - - - - - ... - - - - - - - - - Disabled color - - - - - - - - - false - - - - - - - ... - - - - - - - - - - - diff --git a/examples/mainwindow.cpp b/examples/mainwindow.cpp index a864b48..81795c5 100644 --- a/examples/mainwindow.cpp +++ b/examples/mainwindow.cpp @@ -16,8 +16,6 @@ #include "togglesettingseditor.h" #include "textfieldsettingseditor.h" #include "tabssettingseditor.h" -#include "selectfieldsettingseditor.h" -#include "iconmenusettingseditor.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) @@ -51,8 +49,6 @@ MainWindow::MainWindow(QWidget *parent) ToggleSettingsEditor *toggle = new ToggleSettingsEditor; TextFieldSettingsEditor *textField = new TextFieldSettingsEditor; TabsSettingsEditor *tabs = new TabsSettingsEditor; - SelectFieldSettingsEditor *selectField = new SelectFieldSettingsEditor; - IconMenuSettingsEditor *iconMenu = new IconMenuSettingsEditor; stack->addWidget(avatar); stack->addWidget(badge); @@ -61,11 +57,9 @@ MainWindow::MainWindow(QWidget *parent) stack->addWidget(fab); stack->addWidget(flatButton); stack->addWidget(iconButton); - stack->addWidget(iconMenu); stack->addWidget(progress); stack->addWidget(radioButton); stack->addWidget(raisedButton); - stack->addWidget(selectField); stack->addWidget(slider); stack->addWidget(tabs); stack->addWidget(textField); @@ -78,11 +72,9 @@ MainWindow::MainWindow(QWidget *parent) list->addItem("Floating Action Button"); list->addItem("Flat Button"); list->addItem("Icon Button"); - list->addItem("Icon Menu"); list->addItem("Progress"); list->addItem("Radio Button"); list->addItem("Raised Button"); - list->addItem("Select Field"); list->addItem("Slider"); list->addItem("Tabs"); list->addItem("Text Field"); diff --git a/examples/selectfieldsettingseditor.cpp b/examples/selectfieldsettingseditor.cpp deleted file mode 100644 index 3168997..0000000 --- a/examples/selectfieldsettingseditor.cpp +++ /dev/null @@ -1,105 +0,0 @@ -#include "selectfieldsettingseditor.h" -#include -#include -#include -#include "qtmaterialselectfield.h" -#include "qtmaterialmenuitem.h" - -SelectFieldSettingsEditor::SelectFieldSettingsEditor(QWidget *parent) - : QWidget(parent), - ui(new Ui::SelectFieldSettingsForm), - m_selectField(new QtMaterialSelectField) -{ - 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); - layout->addWidget(m_selectField); - layout->setAlignment(m_selectField, Qt::AlignCenter); - - m_selectField->setPlaceholderText("Please select your favorite language"); - - { - m_selectField->addItem("C"); - m_selectField->addItem("C++"); - m_selectField->addItem("PHP"); - m_selectField->addItem("Haskell"); - m_selectField->addItem("JavaScript"); - m_selectField->addItem("ECMAScript"); - m_selectField->addItem("OCaml"); - m_selectField->addItem("Python"); - m_selectField->addItem("F#"); - m_selectField->addItem("Clojure"); - m_selectField->addItem("Java"); - - m_selectField->itemAt(2)->setDisabled(true); - } - - setupForm(); - - connect(ui->disabledCheckBox, SIGNAL(toggled(bool)), this, SLOT(updateWidget())); - connect(ui->useThemeColorsCheckBox, SIGNAL(toggled(bool)), this, SLOT(updateWidget())); - connect(ui->foregroundColorToolButton, SIGNAL(clicked(bool)), this, SLOT(selectColor())); - connect(ui->underlineColorToolButton, SIGNAL(clicked(bool)), this, SLOT(selectColor())); - connect(ui->placeholderColorToolButton, SIGNAL(clicked(bool)), this, SLOT(selectColor())); - connect(ui->highlightedColorToolButton, SIGNAL(clicked(bool)), this, SLOT(selectColor())); - connect(ui->disabledColorToolButton, SIGNAL(clicked(bool)), this, SLOT(selectColor())); - connect(ui->placeholderLineEdit, SIGNAL(textChanged(QString)), this, SLOT(updateWidget())); - connect(ui->clearSelectionToolButton, SIGNAL(clicked(bool)), m_selectField, SLOT(clearSelection())); -} - -SelectFieldSettingsEditor::~SelectFieldSettingsEditor() -{ - delete ui; -} - -void SelectFieldSettingsEditor::setupForm() -{ - ui->disabledCheckBox->setChecked(!m_selectField->isEnabled()); - ui->useThemeColorsCheckBox->setChecked(m_selectField->useThemeColors()); - ui->placeholderLineEdit->setText(m_selectField->placeholderText()); -} - -void SelectFieldSettingsEditor::updateWidget() -{ - m_selectField->setDisabled(ui->disabledCheckBox->isChecked()); - m_selectField->setUseThemeColors(ui->useThemeColorsCheckBox->isChecked()); - m_selectField->setPlaceholderText(ui->placeholderLineEdit->text()); -} - -void SelectFieldSettingsEditor::selectColor() -{ - QColorDialog dialog; - if (dialog.exec()) { - QColor color = dialog.selectedColor(); - QString senderName = sender()->objectName(); - if ("foregroundColorToolButton" == senderName) { - m_selectField->setForegroundColor(color); - ui->foregroundColorLineEdit->setText(color.name(QColor::HexRgb)); - } else if ("underlineColorToolButton" == senderName) { - m_selectField->setUnderlineColor(color); - ui->underlineColorLineEdit->setText(color.name(QColor::HexRgb)); - } else if ("placeholderColorToolButton" == senderName) { - m_selectField->setPlaceholderColor(color); - ui->placeholderColorLineEdit->setText(color.name(QColor::HexRgb)); - } else if ("highlightedColorToolButton" == senderName) { - m_selectField->setHighlightedColor(color); - ui->highlightedColorLineEdit->setText(color.name(QColor::HexRgb)); - } else if ("disabledColorToolButton" == senderName) { - m_selectField->setDisabledColor(color); - ui->disabledColorLineEdit->setText(color.name(QColor::HexRgb)); - } - } - setupForm(); -} diff --git a/examples/selectfieldsettingseditor.h b/examples/selectfieldsettingseditor.h deleted file mode 100644 index 34506d9..0000000 --- a/examples/selectfieldsettingseditor.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef SELECTFIELDSETTINGSEDITOR_H -#define SELECTFIELDSETTINGSEDITOR_H - -#include -#include "ui_selectfieldsettingsform.h" - -class QtMaterialSelectField; - -class SelectFieldSettingsEditor : public QWidget -{ - Q_OBJECT - -public: - explicit SelectFieldSettingsEditor(QWidget *parent = 0); - ~SelectFieldSettingsEditor(); - -protected slots: - void setupForm(); - void updateWidget(); - void selectColor(); - -private: - Ui::SelectFieldSettingsForm *const ui; - QtMaterialSelectField *const m_selectField; -}; - -#endif // SELECTFIELDSETTINGSEDITOR_H diff --git a/examples/selectfieldsettingsform.ui b/examples/selectfieldsettingsform.ui deleted file mode 100644 index f12a34a..0000000 --- a/examples/selectfieldsettingsform.ui +++ /dev/null @@ -1,182 +0,0 @@ - - - SelectFieldSettingsForm - - - - 0 - 0 - 511 - 388 - - - - Form - - - - - 0 - 0 - 202 - 253 - - - - - - - Disabled - - - - - - - - - - Foreground color - - - - - - - Underline color - - - - - - - Highlighted color - - - - - - - Disabled color - - - - - - - Placeholder text - - - - - - - Clear selection - - - - - - - - - - - - ... - - - - - - - - - - - - - - ... - - - - - - - - - - - - - - ... - - - - - - - - - - - - - - ... - - - - - - - - - - - - ... - - - - - - - Use theme colors - - - - - - - - - - Placeholder color - - - - - - - - - - - - ... - - - - - - - - formLayoutWidget - backgroundColorLabel - - - -