#include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } MainWindow::~MainWindow() { delete ui; } /** * @brief MainWindow::on_actionPreferences_triggered * Creates a DlgPreferences Dialog and sets hight and width of the MainWindow. */ void MainWindow::on_actionPreferences_triggered() { qDebug() << "Preferences called"; DlgPreferences *tmp = new DlgPreferences(this); tmp->setHeight(size().height()); tmp->setWidth(size().width()); if (tmp->exec()) { qDebug() << "DlgPreferences okay clicked."; int width = tmp->Width(); int height = tmp->Height(); if (width >= 100 && width <= 800 && height >= 100 && height <= 800) { qDebug() << "Resizing QMainWindow."; resize(width, height); } } delete tmp; } void MainWindow::on_actionLanguage_triggered() { LanguageDialog *tmp = new LanguageDialog(this); if (QLocale::system().language() == QLocale::German) { tmp->setLanguage(1); } else { tmp->setLanguage(0); } if (tmp->exec()) { switch (tmp->language()) { case 0: qDebug() << "English"; loadLanguage(":/english.qm"); break; case 1: qDebug() << "German"; loadLanguage(":/german.qm"); break; } } } void MainWindow::on_actionDraw_Line_triggered() { ui->interactionCanvasPlaceholder->addLine(); } void MainWindow::on_actionDraw_Rectangle_triggered() { ui->interactionCanvasPlaceholder->addRectangle(); } void MainWindow::on_actionDraw_Ellipse_triggered() { ui->interactionCanvasPlaceholder->addEllipse(); } void MainWindow::on_actionDraw_Polygon_triggered() { ui->interactionCanvasPlaceholder->addPolygon(); } void MainWindow::mouseMoveEvent(QMouseEvent *mouseEvent) { qDebug() << "MainWindow:" << mouseEvent->pos(); } void MainWindow::loadLanguage(const QString& rLanguageFile) { // remove the old translator qApp->removeTranslator(&m_translator); // load the new translator if (m_translator.load(rLanguageFile)) { qApp->installTranslator(&m_translator); } } void MainWindow::changeEvent(QEvent *event) { if (event != 0 && event->type() == QEvent::LanguageChange) { ui->retranslateUi(this); } QMainWindow::changeEvent(event); }