diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2016-10-11 21:08:07 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2016-10-11 21:08:07 +0000 |
| commit | 9b9fe8717f96e85934de34f4648ca7d654e4e25d (patch) | |
| tree | 61f41612a88dc25eeef4622ceea7ee2d621af909 /src/plugins/Ui/qsui/qsuitabwidget.h | |
| parent | c337773616fc65ea6c0cacd3f9fbcebfbbec3c71 (diff) | |
| download | qmmp-9b9fe8717f96e85934de34f4648ca7d654e4e25d.tar.gz qmmp-9b9fe8717f96e85934de34f4648ca7d654e4e25d.tar.bz2 qmmp-9b9fe8717f96e85934de34f4648ca7d654e4e25d.zip | |
qsui: using single ListWidget inctance
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@6779 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Ui/qsui/qsuitabwidget.h')
| -rw-r--r-- | src/plugins/Ui/qsui/qsuitabwidget.h | 58 |
1 files changed, 44 insertions, 14 deletions
diff --git a/src/plugins/Ui/qsui/qsuitabwidget.h b/src/plugins/Ui/qsui/qsuitabwidget.h index 8bf4f6968..c15b3d4e3 100644 --- a/src/plugins/Ui/qsui/qsuitabwidget.h +++ b/src/plugins/Ui/qsui/qsuitabwidget.h @@ -1,5 +1,6 @@ /*************************************************************************** - * Copyright (C) 2012-2015 by Ilya Kotov * + * Copyright (C) 2016 The Qt Company Ltd. * + * Copyright (C) 2016 by Ilya Kotov * * forkotov02@hotmail.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -17,49 +18,78 @@ * Free Software Foundation, Inc., * * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ - #ifndef QSUITABWIDGET_H #define QSUITABWIDGET_H -#include <QTabWidget> +#include <QWidget> #include <QMenu> +#include <QActionGroup> +#include "qsuitabbar.h" +#include "listwidget.h" -class QActionGroup; - +class QStyleOptionTabWidgetFrame; /** @author Ilya Kotov <forkotov02@hotmail.ru> */ -class QSUiTabWidget : public QTabWidget +class QSUiTabWidget : public QWidget { Q_OBJECT public: - explicit QSUiTabWidget(QWidget *parent = 0); + QSUiTabWidget(QWidget *parent = 0); - QMenu *menu(); - void setTabText(int index, const QString &text); + QSUiTabBar *tabBar() const; + ListWidget *listWidget() const; + void setCornerWidget(QWidget *widget, Qt::Corner corner = Qt::TopRightCorner); void readSettings(); + QMenu *menu() const; + void setTabText(int index, const QString &text); + + int addTab(const QString &label); + int addTab(const QIcon& icon, const QString &label); + + int insertTab(int index, const QString &label); + int insertTab(int index, const QIcon& icon, const QString &label); + + void removeTab(int index); + signals: void tabMoved(int from, int to); void createPlayListRequested(); + void tabCloseRequested(int); + void currentChanged(int); public slots: void setTabsVisible(bool visible); + void setCurrentIndex(int index); private slots: - void onTabCloseRequest(int i); void onCurrentChanged(int index); void onActionTriggered(QAction *action); void updateActions(); private: - void tabInserted(int index); - void tabRemoved(int index); + void initStyleOption(QStyleOptionTabWidgetFrame *option) const; + void setUpLayout(); + void showEvent(QShowEvent *); + void resizeEvent(QResizeEvent *e); + void paintEvent(QPaintEvent *); + void setTabBar(QTabBar *); + void changeEvent(QEvent *ev); + bool event(QEvent *ev); void mousePressEvent(QMouseEvent *e); void mouseDoubleClickEvent(QMouseEvent *e); + void tabInserted(int index); + void tabRemoved(int index); + + QSUiTabBar *m_tabBar; + ListWidget *m_listWidget; + QWidget *m_rightCornerWidget; + QWidget *m_leftCornerWidget; + QRect m_panelRect; QMenu *m_menu; QActionGroup *m_group; - }; -#endif // QSUITABWIDGET_H + +#endif |
