29 |
30 |
30 int optionsIndex = tabs->addTab(new QPushButton("here will be options", tabs), "Options"); |
31 int optionsIndex = tabs->addTab(new QPushButton("here will be options", tabs), "Options"); |
31 tabs->setTabIcon(optionsIndex, QIcon::fromTheme("configure")); |
32 tabs->setTabIcon(optionsIndex, QIcon::fromTheme("configure")); |
32 statusBar()->addWidget(status); |
33 statusBar()->addWidget(status); |
33 setCentralWidget(tabs); |
34 setCentralWidget(tabs); |
|
35 setupKeyboardShortcuts(); |
34 } |
36 } |
35 |
37 |
|
38 void RelpipeChartMainWindow::setupKeyboardShortcuts() { |
|
39 // TODO: less boilerplate code |
|
40 QAction* nextTabAction = new QAction(this); |
|
41 nextTabAction->setShortcut(Qt::Key_PageDown | Qt::CTRL); |
|
42 connect(nextTabAction, &QAction::triggered, this, &RelpipeChartMainWindow::selectNextTab); |
|
43 this->addAction(nextTabAction); |
|
44 |
|
45 QAction* previousTabAction = new QAction(this); |
|
46 previousTabAction->setShortcut(Qt::Key_PageUp | Qt::CTRL); |
|
47 connect(previousTabAction, &QAction::triggered, this, &RelpipeChartMainWindow::selectPreviousTab); |
|
48 this->addAction(previousTabAction); |
|
49 |
|
50 QAction* quitAction = new QAction(this); |
|
51 quitAction->setShortcut(Qt::Key_Q | Qt::CTRL); |
|
52 connect(quitAction, &QAction::triggered, this, &RelpipeChartMainWindow::close); |
|
53 this->addAction(quitAction); |
|
54 } |
|
55 |
|
56 |
36 RelpipeChartMainWindow::~RelpipeChartMainWindow() { |
57 RelpipeChartMainWindow::~RelpipeChartMainWindow() { |
|
58 } |
|
59 |
|
60 void RelpipeChartMainWindow::selectNextTab() { |
|
61 tabs->setCurrentIndex((tabs->currentIndex() + 1) % tabs->count()); |
|
62 } |
|
63 |
|
64 void RelpipeChartMainWindow::selectPreviousTab() { |
|
65 tabs->setCurrentIndex((tabs->count() + tabs->currentIndex() - 1) % tabs->count()); |
37 } |
66 } |
38 |
67 |
39 void RelpipeChartMainWindow::startRelation(const string_t name, std::vector<AttributeMetadata> attributes) { |
68 void RelpipeChartMainWindow::startRelation(const string_t name, std::vector<AttributeMetadata> attributes) { |
40 setStatusMessage(L"Reading relation: " + name); |
69 setStatusMessage(L"Reading relation: " + name); |
41 |
70 |