From e9ae80694875f869892f13f4fcaf1170a00dea41 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdewebdev@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- .../kmdi/qextmdi/kmdidocumentviewtabwidget.h | 123 +++++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 lib/compatibility/kmdi/qextmdi/kmdidocumentviewtabwidget.h (limited to 'lib/compatibility/kmdi/qextmdi/kmdidocumentviewtabwidget.h') diff --git a/lib/compatibility/kmdi/qextmdi/kmdidocumentviewtabwidget.h b/lib/compatibility/kmdi/qextmdi/kmdidocumentviewtabwidget.h new file mode 100644 index 00000000..b745bfa3 --- /dev/null +++ b/lib/compatibility/kmdi/qextmdi/kmdidocumentviewtabwidget.h @@ -0,0 +1,123 @@ +//---------------------------------------------------------------------------- +// +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU Library General Public License as +// published by the Free Software Foundation; either version 2 of the +// License, or (at your option) any later version. +// +//---------------------------------------------------------------------------- + +#ifndef _KMDI_DOCUMENT_VIEW_TAB_WIDGET_H_ +#define _KMDI_DOCUMENT_VIEW_TAB_WIDGET_H_ + +#include +#include + +class KPopupMenu; + +//KDE4: Add a d pointer +/** + * A reimplementation of KTabWidget for KMDI + */ +class KMDI_EXPORT KMdiDocumentViewTabWidget: + public KTabWidget +{ + Q_OBJECT +public: + KMdiDocumentViewTabWidget( QWidget* parent, const char* name = 0 ); + ~KMdiDocumentViewTabWidget(); + + /** + * Add a tab into the tabwidget + * \sa QTabWidget + * \sa KTabWidget + */ + virtual void addTab ( QWidget * child, const QString & label ); + + /** + * Add a tab into the tabwidget + * \sa QTabWidget + * \sa KTabWidget + */ + virtual void addTab ( QWidget * child, const QIconSet & iconset, const QString & label ); + + /** + * Add a tab into the tabwidget + * \sa QTabWidget + * \sa KTabWidget + */ + virtual void addTab ( QWidget * child, QTab * tab ); + + /** + * Insert a tab into the tabwidget with a label + * \sa QTabWidget + * \sa KTabWidget + */ + virtual void insertTab ( QWidget * child, const QString & label, int index = -1 ); + + /** + * Inserts a tab into the tabwidget with an icon and label + * \sa QTabWidget + * \sa KTabWidget + */ + virtual void insertTab ( QWidget * child, const QIconSet & iconset, const QString & label, int index = -1 ); + + /** + * Inserts a tab into the tabwidget + * \sa QTabWidget + * \sa KTabWidget + */ + virtual void insertTab ( QWidget * child, QTab * tab, int index = -1 ); + + /** + * Removes the tab from the tabwidget + * \sa QTabWidget + * \sa KTabWidget + */ + virtual void removePage ( QWidget * w ); + + /** + * Set the tab widget's visibility and then make the change + * to match the new setting + */ + KMdi::TabWidgetVisibility tabWidgetVisibility(); + + /** Get the tab widget's visibility */ + void setTabWidgetVisibility( KMdi::TabWidgetVisibility ); + +private slots: + + /** Close the tab specified by w */ + void closeTab( QWidget* w ); + + /** Moves a tab. Reimplemented for internal reasons. */ + void moveTab( int from, int to ); + +public slots: + + /** Change the icon for the tab */ + void updateIconInView( QWidget*, QPixmap ); + + /** Change the caption for the tab */ + void updateCaptionInView( QWidget*, const QString& ); + +private: + + /** + * Determine whether or not we should show the tab bar + * The tab bar is hidden if it's determined that it should be hidden + * and shown if it's determined that it should be shown + */ + void maybeShow(); + + KMdi::TabWidgetVisibility m_visibility; + +signals: + void initiateTabMove(int, int); +}; + + + +#endif +// kate: space-indent off; tab-width 4; replace-tabs off; indent-mode csands; + -- cgit v1.2.1