src/interface/mainwindow.h

Go to the documentation of this file.
00001 
00009 #ifndef MAINWINDOW_H
00010 #define MAINWINDOW_H
00011 
00012 #include <QMainWindow>
00013 #include "highlighter.h"
00014 
00015 class QAction;
00016 class QActionGroup;
00017 class QMenu;
00018 class QTextEdit;
00019 class QTabWidget;
00020 class QStatusBar;
00021 class QDialog;
00022 class QLabel;
00023 class QPushButton;
00024 class QLineEdit;
00025 class QVBoxLayout;
00026 class QHBoxLayout;
00027 class QDialogButtonBox;
00028 
00029 struct ParsedProjectString
00030 {
00031         QString name;
00032         QString value;
00033 };
00034 
00035 class MainWindow : public QMainWindow
00036 {
00037     Q_OBJECT
00038 
00039 public:
00040     MainWindow();
00041 
00042 protected:
00043     void contextMenuEvent(QContextMenuEvent *event);
00044 
00045 private slots:
00046     void newProject();
00047     void openProject(const QString &path = QString());
00048     void saveProject();
00049     //void print();
00050     void undo();
00051     void redo();
00052     void cut();
00053     void copy();
00054     void paste();
00055     //void bold();
00056     //void italic();
00057     //void leftAlign();
00058     //void rightAlign();
00059     //void justify();
00060     //void center();
00061     //void setLineSpacing();
00062     //void setParagraphSpacing();
00063     void about();
00064     void aboutQt();
00065         void getDirectory();
00066 
00067 private:
00068     void createActions();
00069     void createMenus();
00070         void setupEditor();
00071         void setupLayout();
00072         ParsedProjectString parseProjectString(QString line);
00073 
00074 
00075     QMenu *fileMenu;
00076     QMenu *editMenu;
00077     //QMenu *formatMenu;
00078         //QMenu *buildMenu;
00079         QMenu *viewMenu;
00080     QMenu *helpMenu;
00081     //QActionGroup *alignmentGroup;
00082     QAction *newAct;
00083     QAction *openAct;
00084     QAction *saveAct;
00085     //QAction *printAct;
00086     QAction *exitAct;
00087     QAction *undoAct;
00088     QAction *redoAct;
00089     QAction *cutAct;
00090     QAction *copyAct;
00091     QAction *pasteAct;
00092     //QAction *boldAct;
00093     //QAction *italicAct;
00094     //QAction *leftAlignAct;
00095     //QAction *rightAlignAct;
00096     //QAction *justifyAct;
00097     //QAction *centerAct;
00098     //QAction *setLineSpacingAct;
00099     //QAction *setParagraphSpacingAct;
00100     QAction *aboutAct;
00101     QAction *aboutQtAct;
00102         QTextEdit *sceneEditor;
00103         QTextEdit *actionEditor;
00104         QTextEdit *messageEditor;
00105         QTextEdit *behaviorEditor;
00106         QTextEdit *entityEditor;
00107         QTextEdit *output;
00108         QTabWidget *tab;
00109         Highlighter *highlighter;
00110         QString fileName;
00111         QString filePath;
00112         QString title;
00113         QStatusBar *statusBar;
00114         QDialog *newProjectDialog;
00115         QLabel *directoryLabel;
00116         QLabel *nameLabel;
00117         QPushButton *directoryButton;
00118         QLineEdit *nameInput;
00119         QVBoxLayout *newProjectLayout;
00120         QHBoxLayout *layout1;
00121         QHBoxLayout *layout2;
00122         QDialogButtonBox *buttonBox;
00123 };
00124 
00125 #endif

Generated on Fri Apr 27 10:27:38 2007 for Green Engine by  doxygen 1.5.1