summaryrefslogtreecommitdiffstats
path: root/src/widgets/qtabwidget.h
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-07-10 15:24:15 -0500
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-07-10 15:24:15 -0500
commitbd0f3345a938b35ce6a12f6150373b0955b8dd12 (patch)
tree7a520322212d48ebcb9fbe1087e7fca28b76185c /src/widgets/qtabwidget.h
downloadqt3-bd0f3345a938b35ce6a12f6150373b0955b8dd12.tar.gz
qt3-bd0f3345a938b35ce6a12f6150373b0955b8dd12.zip
Add Qt3 development HEAD version
Diffstat (limited to 'src/widgets/qtabwidget.h')
-rw-r--r--src/widgets/qtabwidget.h162
1 files changed, 162 insertions, 0 deletions
diff --git a/src/widgets/qtabwidget.h b/src/widgets/qtabwidget.h
new file mode 100644
index 0000000..9c479db
--- /dev/null
+++ b/src/widgets/qtabwidget.h
@@ -0,0 +1,162 @@
+/****************************************************************************
+**
+** Definition of QTabWidget class
+**
+** Created : 990318
+**
+** Copyright (C) 1992-2008 Trolltech ASA. All rights reserved.
+**
+** This file is part of the widgets module of the Qt GUI Toolkit.
+**
+** This file may be used under the terms of the GNU General
+** Public License versions 2.0 or 3.0 as published by the Free
+** Software Foundation and appearing in the files LICENSE.GPL2
+** and LICENSE.GPL3 included in the packaging of this file.
+** Alternatively you may (at your option) use any later version
+** of the GNU General Public License if such license has been
+** publicly approved by Trolltech ASA (or its successors, if any)
+** and the KDE Free Qt Foundation.
+**
+** Please review the following information to ensure GNU General
+** Public Licensing requirements will be met:
+** http://trolltech.com/products/qt/licenses/licensing/opensource/.
+** If you are unsure which license is appropriate for your use, please
+** review the following information:
+** http://trolltech.com/products/qt/licenses/licensing/licensingoverview
+** or contact the sales department at sales@trolltech.com.
+**
+** This file may be used under the terms of the Q Public License as
+** defined by Trolltech ASA and appearing in the file LICENSE.QPL
+** included in the packaging of this file. Licensees holding valid Qt
+** Commercial licenses may use this file in accordance with the Qt
+** Commercial License Agreement provided with the Software.
+**
+** This file is provided "AS IS" with NO WARRANTY OF ANY KIND,
+** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE. Trolltech reserves all rights not granted
+** herein.
+**
+**********************************************************************/
+
+#ifndef QTABWIDGET_H
+#define QTABWIDGET_H
+
+#ifndef QT_H
+#include "qwidget.h"
+#include "qiconset.h"
+#endif // QT_H
+
+#ifndef QT_NO_TABWIDGET
+
+class QTabBar;
+class QTabWidgetData;
+class QTab;
+class QWidgetStack;
+
+
+class Q_EXPORT QTabWidget : public QWidget
+{
+ Q_OBJECT
+ Q_ENUMS( TabPosition )
+ Q_ENUMS( TabShape )
+ Q_PROPERTY( TabPosition tabPosition READ tabPosition WRITE setTabPosition )
+ Q_PROPERTY( TabShape tabShape READ tabShape WRITE setTabShape )
+ Q_PROPERTY( int margin READ margin WRITE setMargin )
+ Q_PROPERTY( int currentPage READ currentPageIndex WRITE setCurrentPage )
+ Q_PROPERTY( int count READ count )
+ Q_OVERRIDE( bool autoMask DESIGNABLE true SCRIPTABLE true )
+
+public:
+ QTabWidget( QWidget *parent = 0, const char *name = 0, WFlags f = 0 );
+ ~QTabWidget();
+
+ virtual void addTab( QWidget *, const QString & ); // ### make these inline in 4.0
+ virtual void addTab( QWidget *child, const QIconSet& iconset,
+ const QString &label );
+ virtual void addTab( QWidget *, QTab* );
+
+ virtual void insertTab( QWidget *, const QString &, int index = -1 );
+ virtual void insertTab( QWidget *child, const QIconSet& iconset,
+ const QString &label, int index = -1 );
+ virtual void insertTab( QWidget *, QTab*, int index = -1 );
+
+ void changeTab( QWidget *, const QString &);
+ void changeTab( QWidget *child, const QIconSet& iconset,
+ const QString &label );
+
+ bool isTabEnabled( QWidget * ) const;
+ void setTabEnabled( QWidget *, bool );
+
+ void setCornerWidget( QWidget * w, Qt::Corner corner = Qt::TopRight );
+ QWidget * cornerWidget( Qt::Corner corner = Qt::TopRight ) const;
+
+ QString tabLabel( QWidget * ) const;
+ void setTabLabel( QWidget *p, const QString &l );
+
+ QIconSet tabIconSet( QWidget * w ) const;
+ void setTabIconSet( QWidget * w, const QIconSet & iconset );
+
+ void removeTabToolTip( QWidget * w );
+ void setTabToolTip( QWidget * w, const QString & tip );
+ QString tabToolTip( QWidget * w ) const;
+
+ QWidget * currentPage() const;
+ QWidget *page( int ) const;
+ QString label( int ) const;
+ int currentPageIndex() const;
+ int indexOf( QWidget * ) const;
+
+ QSize sizeHint() const;
+ QSize minimumSizeHint() const;
+
+ enum TabPosition { Top, Bottom };
+ TabPosition tabPosition() const;
+ void setTabPosition( TabPosition );
+
+ enum TabShape { Rounded, Triangular };
+ TabShape tabShape() const;
+ void setTabShape( TabShape s );
+
+ int margin() const;
+ void setMargin( int );
+
+ int count() const;
+
+public slots:
+ void setCurrentPage( int );
+ virtual void showPage( QWidget * );
+ virtual void removePage( QWidget * );
+
+protected:
+ void showEvent( QShowEvent * );
+ void resizeEvent( QResizeEvent * );
+ void setTabBar( QTabBar * );
+ QTabBar* tabBar() const;
+ void styleChange( QStyle& );
+ void updateMask();
+ bool eventFilter( QObject *, QEvent * );
+
+signals:
+ void currentChanged( QWidget * );
+#ifndef Q_QDOC
+ void selected( const QString& );
+#endif
+
+private slots:
+ void showTab( int );
+
+private:
+ QTabWidgetData *d;
+ void setUpLayout( bool = FALSE );
+ friend class QTabDialog;
+
+private: // Disabled copy constructor and operator=
+#if defined(Q_DISABLE_COPY)
+ QTabWidget( const QTabWidget & );
+ QTabWidget& operator=( const QTabWidget & );
+#endif
+};
+
+#endif // QT_NO_TABWIDGET
+
+#endif // QTABWIDGET_H