src/RelpipeChartMainWindow.cpp
branchv_0
changeset 45 50461b01e30d
parent 42 707a6734f364
child 49 a3777909fd44
equal deleted inserted replaced
44:334a114407cd 45:50461b01e30d
    16  */
    16  */
    17 #include <vector>
    17 #include <vector>
    18 
    18 
    19 #include <QPushButton>
    19 #include <QPushButton>
    20 #include <QTableView>
    20 #include <QTableView>
       
    21 #include <QAction>
    21 
    22 
    22 #include "RelpipeChartMainWindow.h"
    23 #include "RelpipeChartMainWindow.h"
    23 
    24 
    24 using namespace relpipe::reader;
    25 using namespace relpipe::reader;
    25 using namespace relpipe::reader::handlers;
    26 using namespace relpipe::reader::handlers;
    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