From a7e74749a1c4edb2f8bc34c79e9bd1562de86ee9 Mon Sep 17 00:00:00 2001 From: Nao Pross Date: Tue, 19 Dec 2017 01:54:28 +0100 Subject: Change to Qt5 conding conventions Data structure changes: - Structogram is no longer just a scope, because it needs to store metadata - All structures now use QString instead of std::string, to integrate better in the Qt framework New code: - MainWindow ui code, building layout - MetadataDialog to change the metadata stored in the Structogram - Painter is a widget (still unimplemented) to show the structogram on the GUI --- include/ui/mainwindow.h | 13 +++++++++++-- include/ui/metadatadialog.h | 26 ++++++++++++++++++++++++++ include/ui/painter.h | 22 ++++++++++++++++++++++ 3 files changed, 59 insertions(+), 2 deletions(-) create mode 100644 include/ui/metadatadialog.h create mode 100644 include/ui/painter.h (limited to 'include/ui') diff --git a/include/ui/mainwindow.h b/include/ui/mainwindow.h index a3948a9..0beb4a2 100644 --- a/include/ui/mainwindow.h +++ b/include/ui/mainwindow.h @@ -3,6 +3,8 @@ #include +#include "diagram/structogram.h" + namespace Ui { class MainWindow; } @@ -12,11 +14,18 @@ class MainWindow : public QMainWindow Q_OBJECT public: - explicit MainWindow(QWidget *parent = 0); + explicit MainWindow(samb::Structogram *structogram = nullptr, QWidget *parent = nullptr); ~MainWindow(); +private slots: + void on_newButton_clicked(); + void on_metadataButton_clicked(); + private: - Ui::MainWindow *ui; + Ui::MainWindow *_ui; + samb::Structogram *_structogram; + + void initData(); }; #endif // MAINWINDOW_H diff --git a/include/ui/metadatadialog.h b/include/ui/metadatadialog.h new file mode 100644 index 0000000..0ed2f17 --- /dev/null +++ b/include/ui/metadatadialog.h @@ -0,0 +1,26 @@ +#ifndef NEWDIALOG_H +#define NEWDIALOG_H + +#include + +namespace Ui { +class MetadataDialog; +} + +class MetadataDialog : public QDialog +{ + Q_OBJECT + +public: + explicit MetadataDialog(QWidget *parent = 0); + ~MetadataDialog(); + + void setMetadata(const QString& title, const QString& author); + QString title() const; + QString author() const; + +private: + Ui::MetadataDialog *_ui; +}; + +#endif // NEWDIALOG_H diff --git a/include/ui/painter.h b/include/ui/painter.h new file mode 100644 index 0000000..df62776 --- /dev/null +++ b/include/ui/painter.h @@ -0,0 +1,22 @@ +#ifndef PAINTER_H +#define PAINTER_H + +#include + +namespace Ui { +class Painter; +} + +class Painter : public QWidget +{ + Q_OBJECT + +public: + explicit Painter(QWidget *parent = 0); + ~Painter(); + +private: + Ui::Painter *_ui; +}; + +#endif // PAINTER_H -- cgit v1.2.1