Set version to v1.1
[mverbiste] / mainwindow.h
index e3d5502..c47b619 100644 (file)
@@ -4,11 +4,14 @@
 #include <QtGui/QMainWindow>
 #include <QtGui/QTextEdit>
 #include <QtGui/QPushButton>
+#include <QtGui/QCheckBox>
 #include <QtGui/QVBoxLayout>
 #include <QtGui/QLineEdit>
 #include <QtGui/QScrollArea>
 #include <QtGui/QLabel>
 #include <QtGui/QTableWidget>
+#include <QtGui/QMessageBox>
+#include <QtGui/QActionGroup>
 
 /* Verbiste */
 #include <iostream>
 #include <string.h>
 #include <verbiste/FrenchVerbDictionary.h>
 #include "gui/conjugation.h"
+#include "about.h"
+
+#ifndef QT_NO_DEBUG
+#include <QtCore/QDebug>
+#include <QtCore/QElapsedTimer>
+#endif
+
 using namespace verbiste;
 
 namespace Ui {
@@ -27,10 +37,14 @@ class ResultPage
 {
 public:
     QScrollArea *page;
-    QTableWidget *table;
+    QGridLayout *grid;
 
     ResultPage();
     // No destructor because this object does not own the two widgets.
+    void packContent();
+
+private:
+    QWidget *immediate;
 };
 
 class MainWindow : public QMainWindow
@@ -54,9 +68,14 @@ public:
 
     void showExpanded();
     void initverbiste();
+    QVBoxLayout* makeResultCell(const VVS &tenseIterator,
+                                const std::string &tenseName,
+                                const std::string &inputWord,
+                                FrenchVerbDictionary *verbDict);
 
 public slots:
     void startLookup();
+    void switchLang();
 
 private:
     Ui::MainWindow *ui;
@@ -65,16 +84,24 @@ private:
     QTabWidget  *resultPages;
     QHBoxLayout *btlayout;           // Layout to pack the functional buttons
     QPushButton *btnClear;           // Clear button
+    QCheckBox   *btnPron;
     QLineEdit   *wordinput;          //  Word input
     QPushButton *btnLookup;          // Lookup button
-    QLabel      *labVerb;
+    QAction     *filFrench;
+    QAction     *filItalian;
+    QMessageBox *msgbox;
     std::string langCode;
     FrenchVerbDictionary *freVerbDic;
+    AboutDialog *aboutDialog;
 
     ResultPage* addResultPage(const std::string &labelText);
+#ifndef QT_NO_DEBUG
+    QElapsedTimer timer;
+#endif
 
 private slots:
     void clearResults();
+    void startAgain();
 };