diff -r a45d1cac365e -r c84042d014c9 src/RelpipeChartMainWindow.cpp --- a/src/RelpipeChartMainWindow.cpp Fri Sep 28 13:23:21 2018 +0200 +++ b/src/RelpipeChartMainWindow.cpp Sat Sep 29 00:43:16 2018 +0200 @@ -6,20 +6,25 @@ #include "RelpipeChartMainWindow.h" +using namespace relpipe::reader; +using namespace relpipe::reader::handlers; + RelpipeChartMainWindow::RelpipeChartMainWindow() { widget.setupUi(this); - QTabWidget* tabs = new QTabWidget(this); + tabs->addTab(new QPushButton("here will be options", tabs), "Options"); + + statusBar()->addWidget(new QLabel("Loading relations...", widget.statusbar)); + - for (int i = 0; i < 5; i++) { - QSplitter* splitter = new QSplitter(Qt::Orientation::Vertical, tabs); - splitter->addWidget(new QPushButton("here will be the chart", splitter)); - splitter->addWidget(new QPushButton("here will be the table", splitter)); - tabs->addTab(splitter, "relation_name"); - } - - //statusBar()->addWidget(new QPushButton("xxx", widget.statusbar)); - statusBar()->addWidget(new QLabel("Loading relations...", widget.statusbar)); + // TODO: remove; just demo + QPushButton* emitButton = new QPushButton("emit", widget.statusbar); + statusBar()->addWidget(emitButton); + QObject::connect( + emitButton, &QPushButton::pressed, + this, &RelpipeChartMainWindow::slot123 + ); + // --- setCentralWidget(tabs); @@ -27,3 +32,25 @@ RelpipeChartMainWindow::~RelpipeChartMainWindow() { } + +void RelpipeChartMainWindow::slot123() { + // TODO: remove; just demo + statusBar()->addWidget(new QPushButton("slot123", widget.statusbar)); +} + +void RelpipeChartMainWindow::startRelation(string_t name, std::vector attributes) { + // TODO: chart and table + QSplitter* splitter = new QSplitter(Qt::Orientation::Vertical, tabs); + splitter->addWidget(new QPushButton("here will be the chart", splitter)); + splitter->addWidget(new QPushButton("here will be the table", splitter)); + tabs->addTab(splitter, QString::fromWCharArray(name.c_str())); +} + +void RelpipeChartMainWindow::attribute(const string_t& value) { + // TODO: fill table and draw chart +} + +void RelpipeChartMainWindow::endOfPipe() { + // TODO: just display a message + statusBar()->addWidget(new QPushButton("endOfPipe", widget.statusbar)); +}