blob: 5cb3c71406abd05baf9b5ab5c7e178f7d8715925 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
// Copyright (C) 2020 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
#include <QApplication>
#include <QPushButton>
#include <QCheckBox>
#include <QRadioButton>
#include <QGroupBox>
#include <QComboBox>
#include <QLineEdit>
#include <QFormLayout>
#include <QLayout>
#include <QListWidget>
#include <QMenuBar>
#include <QMenu>
#include <QMainWindow>
#include <QMessageBox>
#include <QScrollBar>
#include <QSettings>
#include <QSpinBox>
#include <utils/utilsicons.h>
#include <utils/fancylineedit.h>
#include <utils/styledbar.h>
#include "../common/themeselector.h"
static void addMenu(QMenuBar *root)
{
QMenu *fileMenu = root->addMenu("&File");
fileMenu->addAction(Utils::Icons::NEWFILE.icon(), "&New File or Project...");
QMenu *recentFiles = fileMenu->addMenu("Recent &Files");
recentFiles->addActions({new QAction("File One"), new QAction("File Two")});
fileMenu->addAction(Utils::Icons::SAVEFILE.icon(), "&Save File...")->setDisabled(true);
root->addAction("&Edit")->setDisabled(true);
}
static QWidget *centralWidget()
{
auto widget = new QWidget;
auto rootLayout = new QVBoxLayout(widget);
rootLayout->addWidget(new ManualTest::ThemeSelector);
auto enabledDisabledLayout = new QHBoxLayout(widget);
rootLayout->addLayout(enabledDisabledLayout);
for (bool enabled : {true, false}) {
auto groupBox = new QGroupBox("GroupBox");
enabledDisabledLayout->addWidget(groupBox);
auto vBoxLayout = new QVBoxLayout;
auto lineEdit = new Utils::FancyLineEdit;
lineEdit->setText("FancyLineEdit");
lineEdit->setFiltering(true);
vBoxLayout->addWidget(lineEdit);
vBoxLayout->addWidget(new QCheckBox("CheckBox"));
auto checkedCheckButton = new QCheckBox("CheckBox (checked)");
checkedCheckButton->setChecked(true);
vBoxLayout->addWidget(checkedCheckButton);
auto partiallyCheckButton = new QCheckBox("CheckBox (partially)");
partiallyCheckButton->setTristate(true);
partiallyCheckButton->setCheckState(Qt::PartiallyChecked);
vBoxLayout->addWidget(partiallyCheckButton);
vBoxLayout->addWidget(new QRadioButton("RadioButton"));
auto checkedRadioButton = new QRadioButton("RadioButton (checked)");
checkedRadioButton->setChecked(true);
vBoxLayout->addWidget(checkedRadioButton);
auto comboBox = new QComboBox;
comboBox->addItems({"ComboBox", "Foo", "Bar"});
comboBox->setEditable(true);
vBoxLayout->addWidget(comboBox);
auto spinBox = new QSpinBox;
vBoxLayout->addWidget(spinBox);
auto listWidget = new QListWidget;
listWidget->addItems({"Item 1", "Item 2"});
listWidget->setMinimumHeight(44);
vBoxLayout->addWidget(listWidget);
auto tabWidget = new QTabWidget;
tabWidget->addTab(new QWidget, "T1");
tabWidget->tabBar()->setTabsClosable(true);
tabWidget->addTab(new QWidget, "T2");
vBoxLayout->addWidget(tabWidget);
auto hScrollBar = new QScrollBar(Qt::Horizontal);
vBoxLayout->addWidget(hScrollBar);
auto groupBoxLayout = new QHBoxLayout(groupBox);
groupBoxLayout->addLayout(vBoxLayout);
auto vScrollBar = new QScrollBar(Qt::Vertical);
groupBoxLayout->addWidget(vScrollBar);
groupBox->setEnabled(enabled);
}
return widget;
}
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QMainWindow window;
window.setCentralWidget(centralWidget());
addMenu(window.menuBar());
window.resize(QSize());
window.show();
return app.exec();
}
|