X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcontrib%2Flibqxt-2007-10-24%2Fsrc%2Fgui%2Fqxttabwidget.h;fp=src%2Fcontrib%2Flibqxt-2007-10-24%2Fsrc%2Fgui%2Fqxttabwidget.h;h=e194911854b4049933d9baaa3317aa7894dd6eb9;hp=0000000000000000000000000000000000000000;hb=a634acadbcf6017474f68a3eaf7cb632660e9e49;hpb=cd122ca8e0d2c0ffc5397e0a813c75d791a7e6e3 diff --git a/src/contrib/libqxt-2007-10-24/src/gui/qxttabwidget.h b/src/contrib/libqxt-2007-10-24/src/gui/qxttabwidget.h new file mode 100644 index 00000000..e1949118 --- /dev/null +++ b/src/contrib/libqxt-2007-10-24/src/gui/qxttabwidget.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) Qxt Foundation. Some rights reserved. +** +** This file is part of the QxtGui module of the Qt eXTension library +** +** This library is free software; you can redistribute it and/or modify it +** under the terms of th Common Public License, version 1.0, as published by +** IBM. +** +** This file is provided "AS IS", without WARRANTIES OR CONDITIONS OF ANY +** KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY +** WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR +** FITNESS FOR A PARTICULAR PURPOSE. +** +** You should have received a copy of the CPL along with this file. +** See the LICENSE file and the cpl1.0.txt file included with the source +** distribution for more information. If you did not receive a copy of the +** license, contact the Qxt Foundation. +** +** +** +****************************************************************************/ +#ifndef QXTTABWIDGET_H +#define QXTTABWIDGET_H + +#include +#include "qxtnamespace.h" +#include "qxtglobal.h" +#include "qxtpimpl.h" + +class QxtTabWidgetPrivate; + +class QXT_GUI_EXPORT QxtTabWidget : public QTabWidget +{ + Q_OBJECT + QXT_DECLARE_PRIVATE(QxtTabWidget); + Q_PROPERTY(Qt::ContextMenuPolicy tabContextMenuPolicy READ tabContextMenuPolicy WRITE setTabContextMenuPolicy) + +public: + explicit QxtTabWidget(QWidget* parent = 0); + virtual ~QxtTabWidget(); + + Qt::ContextMenuPolicy tabContextMenuPolicy() const; + void setTabContextMenuPolicy(Qt::ContextMenuPolicy policy); + + void addTabAction(int index, QAction* action); + QAction* addTabAction(int index, const QString& text); + QAction* addTabAction(int index, const QIcon& icon, const QString& text); + QAction* addTabAction(int index, const QString& text, const QObject* receiver, const char* member, const QKeySequence& shortcut = 0); + QAction* addTabAction(int index, const QIcon& icon, const QString& text, const QObject* receiver, const char* member, const QKeySequence& shortcut = 0); + void addTabActions(int index, QList actions); + void clearTabActions(int index); + void insertTabAction(int index, QAction* before, QAction* action); + void insertTabActions(int index, QAction* before, QList actions); + void removeTabAction(int index, QAction* action); + QList tabActions(int index) const; + +signals: + void tabContextMenuRequested(int index, const QPoint& globalPos); + +protected: +#ifndef QXT_DOXYGEN_RUN + virtual void tabInserted(int index); + virtual void tabRemoved(int index); + + virtual void contextMenuEvent(QContextMenuEvent* event); +#endif // QXT_DOXYGEN_RUN + virtual void tabContextMenuEvent(int index, QContextMenuEvent* event); +}; + +#endif // QXTQXTTABWIDGET_H