diff options
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 |
