blob: 5b5a8f283fa0d2e63ad35c030daddbdb9b4ecbed (
plain)
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 | // Copyright (C) 2016 The Qt Company Ltd.// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only#ifndef QSTACKEDLAYOUT_H#define QSTACKEDLAYOUT_H#include <QtWidgets/qtwidgetsglobal.h>#include <QtWidgets/qlayout.h> QT_BEGIN_NAMESPACE class QStackedLayoutPrivate;class Q_WIDGETS_EXPORT QStackedLayout :public QLayout { Q_OBJECT Q_DECLARE_PRIVATE(QStackedLayout)Q_PROPERTY(int currentIndex READ currentIndex WRITE setCurrentIndex NOTIFY currentChanged)Q_PROPERTY(StackingMode stackingMode READ stackingMode WRITE setStackingMode)QDOC_PROPERTY(int count READ count)public:enum StackingMode { StackOne, StackAll };Q_ENUM(StackingMode)QStackedLayout();explicitQStackedLayout(QWidget *parent);explicitQStackedLayout(QLayout *parentLayout);~QStackedLayout();intaddWidget(QWidget *w);intinsertWidget(int index, QWidget *w); QWidget *currentWidget()const;intcurrentIndex()const;usingQLayout::widget; QWidget *widget(int)const;intcount()const override; StackingMode stackingMode()const;voidsetStackingMode(StackingMode stackingMode);// abstract virtual functions:voidaddItem(QLayoutItem *item) override; QSize sizeHint()const override; QSize minimumSize()const override; QLayoutItem *itemAt(int)const override; QLayoutItem *takeAt(int) override;voidsetGeometry(const QRect &rect) override;boolhasHeightForWidth()const override;intheightForWidth(int width)const override; Q_SIGNALS:voidwidgetRemoved(int index);voidcurrentChanged(int index);voidwidgetAdded(int index);public Q_SLOTS:voidsetCurrentIndex(int index);voidsetCurrentWidget(QWidget *w);private:Q_DISABLE_COPY(QStackedLayout)}; QT_END_NAMESPACE #endif// QSTACKEDLAYOUT_H
|