aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Ui/qsui/qsuitabwidget.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/Ui/qsui/qsuitabwidget.h')
-rw-r--r--src/plugins/Ui/qsui/qsuitabwidget.h58
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