QGIS API Documentation
3.99.0-Master (26c88405ac0)
Loading...
Searching...
No Matches
src
gui
qgspanelwidgetstack.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgspanelwidgetstack.h
3
---------------------
4
begin : June 2016
5
copyright : (C) 2016 by Nathan Woodrow
6
email :
7
***************************************************************************
8
* *
9
* This program is free software; you can redistribute it and/or modify *
10
* it under the terms of the GNU General Public License as published by *
11
* the Free Software Foundation; either version 2 of the License, or *
12
* (at your option) any later version. *
13
* *
14
***************************************************************************/
15
#ifndef QGSPANELWIDGETSTACK_H
16
#define QGSPANELWIDGETSTACK_H
17
18
#include "ui_qgsrenderercontainerbase.h"
19
20
#include "qgis_gui.h"
21
22
#include <QKeyEvent>
23
#include <QStack>
24
#include <QStackedWidget>
25
#include <QWidget>
26
27
class
QgsPanelWidget
;
28
38
class
GUI_EXPORT
QgsPanelWidgetStack
:
public
QWidget,
private
Ui::QgsRendererWidgetContainerBase
39
{
40
Q_OBJECT
41
public
:
42
48
QgsPanelWidgetStack
( QWidget *parent =
nullptr
);
49
64
void
setMainPanel
(
QgsPanelWidget
*panel
SIP_TRANSFER
);
65
72
QgsPanelWidget
*
mainPanel
();
73
83
QgsPanelWidget
*
takeMainPanel
()
SIP_TRANSFERBACK
;
84
89
void
clear
();
90
94
QgsPanelWidget
*
currentPanel
();
95
96
QSize
sizeHint
()
const override
;
97
QSize
minimumSizeHint
()
const override
;
98
99
public
slots:
100
107
void
acceptCurrentPanel
();
108
114
void
acceptAllPanels
();
115
121
void
showPanel
(
QgsPanelWidget
*panel );
122
128
void
closePanel
(
QgsPanelWidget
*panel );
129
130
protected
:
131
void
mouseReleaseEvent
( QMouseEvent *e )
override
;
132
void
keyPressEvent
( QKeyEvent *e )
override
;
133
134
private
:
135
void
updateBreadcrumb();
136
void
updateMenuButton();
137
QStack<QString> mTitles;
138
};
139
140
141
#endif
// QGSPANELWIDGETSTACK_H
QgsPanelWidgetStack::currentPanel
QgsPanelWidget * currentPanel()
Returns the panel currently shown in the stack.
Definition
qgspanelwidgetstack.cpp:97
QgsPanelWidgetStack::closePanel
void closePanel(QgsPanelWidget *panel)
Closes the panel in the widget.
Definition
qgspanelwidgetstack.cpp:166
QgsPanelWidgetStack::sizeHint
QSize sizeHint() const override
Definition
qgspanelwidgetstack.cpp:102
QgsPanelWidgetStack::acceptAllPanels
void acceptAllPanels()
Accepts all panel widgets open in the stack in turn until only the mainPanel() remains.
Definition
qgspanelwidgetstack.cpp:133
QgsPanelWidgetStack::QgsPanelWidgetStack
QgsPanelWidgetStack(QWidget *parent=nullptr)
A stack widget to manage panels in the interface.
Definition
qgspanelwidgetstack.cpp:27
QgsPanelWidgetStack::mainPanel
QgsPanelWidget * mainPanel()
The main panel widget that is set in the stack.
Definition
qgspanelwidgetstack.cpp:50
QgsPanelWidgetStack::minimumSizeHint
QSize minimumSizeHint() const override
Definition
qgspanelwidgetstack.cpp:112
QgsPanelWidgetStack::showPanel
void showPanel(QgsPanelWidget *panel)
Show a panel in the stack widget.
Definition
qgspanelwidgetstack.cpp:150
QgsPanelWidgetStack::acceptCurrentPanel
void acceptCurrentPanel()
Accept the current active widget in the stack.
Definition
qgspanelwidgetstack.cpp:123
QgsPanelWidgetStack::setMainPanel
void setMainPanel(QgsPanelWidget *panel SIP_TRANSFER)
Sets the main panel widget for the stack and selects it for the user.
Definition
qgspanelwidgetstack.cpp:38
QgsPanelWidgetStack::takeMainPanel
QgsPanelWidget * takeMainPanel() SIP_TRANSFERBACK
Removes the main panel widget from the stack and transfers ownsership to the caller.
Definition
qgspanelwidgetstack.cpp:55
QgsPanelWidgetStack::clear
void clear()
Clear the stack of all widgets.
Definition
qgspanelwidgetstack.cpp:72
QgsPanelWidgetStack::mouseReleaseEvent
void mouseReleaseEvent(QMouseEvent *e) override
Definition
qgspanelwidgetstack.cpp:189
QgsPanelWidgetStack::keyPressEvent
void keyPressEvent(QKeyEvent *e) override
Definition
qgspanelwidgetstack.cpp:197
QgsPanelWidget
Base class for any widget that can be shown as an inline panel.
Definition
qgspanelwidget.h:31
SIP_TRANSFER
#define SIP_TRANSFER
Definition
qgis_sip.h:36
SIP_TRANSFERBACK
#define SIP_TRANSFERBACK
Definition
qgis_sip.h:48
Generated on
for QGIS API Documentation by
1.15.0