File indexing completed on 2024-05-19 05:35:23

0001 #ifndef oxygenframedemowidget_h
0002 #define oxygenframedemowidget_h
0003 
0004 //////////////////////////////////////////////////////////////////////////////
0005 // oxygenframedemowidget.h
0006 // oxygen frames demo widget
0007 // -------------------
0008 //
0009 // SPDX-FileCopyrightText: 2010 Hugo Pereira Da Costa <hugo.pereira@free.fr>
0010 //
0011 // SPDX-License-Identifier: MIT
0012 //////////////////////////////////////////////////////////////////////////////
0013 
0014 #include <QBoxLayout>
0015 #include <QFrame>
0016 #include <QWidget>
0017 
0018 #include "oxygendemowidget.h"
0019 #include "ui_oxygenframedemowidget.h"
0020 
0021 class KMessageWidget;
0022 
0023 namespace Oxygen
0024 {
0025 class FrameDemoWidget : public DemoWidget
0026 {
0027     Q_OBJECT
0028 
0029 public:
0030     //* constructor
0031     explicit FrameDemoWidget(QWidget * = nullptr);
0032 
0033     void addMessages();
0034 
0035     bool eventFilter(QObject *obj, QEvent *event) override;
0036 
0037 public Q_SLOTS:
0038 
0039     //* benchmarking
0040     void benchmark(void);
0041 
0042 private Q_SLOTS:
0043 
0044     //* groupbox
0045     void toggleFlatGroupBox(bool value)
0046     {
0047         ui.groupBox->setFlat(value);
0048     }
0049 
0050     //* frame style
0051     void toggleRaisedFrame(bool value)
0052     {
0053         if (value)
0054             ui.frame->setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
0055     }
0056 
0057     void togglePlainFrame(bool value)
0058     {
0059         if (value)
0060             ui.frame->setFrameStyle(QFrame::StyledPanel | QFrame::Plain);
0061     }
0062 
0063     void toggleSunkenFrame(bool value)
0064     {
0065         if (value)
0066             ui.frame->setFrameStyle(QFrame::StyledPanel | QFrame::Sunken);
0067     }
0068 
0069     //* layout direction
0070     void updateLayoutDirection(int);
0071 
0072 private:
0073     Ui_FrameDemoWidget ui;
0074     KMessageWidget *posMsg, *infoMsg, *warnMsg, *errMsg;
0075 };
0076 }
0077 
0078 #endif