mainwindow.h

Go to the documentation of this file.
00001 #ifndef MAINWINDOW_H
00002 #define MAINWINDOW_H
00003 
00004 #include <QDialog>
00005 #include <QMainWindow>
00006 #include <QWidget>
00007 #include <QTextListFormat>
00008 #include <QTextBlockFormat>
00009 
00010 #include <QtXml>
00011 #include <QtGui>
00012 #include <QXmlSimpleReader>
00013 #include <QXmlInputSource>
00014 
00015 #include <QStandardItemModel>
00016 #include <QAbstractItemModel>
00017 #include <QAbstractListModel>
00018 #include <QItemSelectionModel>
00019 
00020 #include <QAction>
00021 #include <QApplication>
00022 #include <QClipboard>
00023 #include <QColorDialog>
00024 #include <QComboBox>
00025 #include <QFontComboBox>
00026 #include <QFile>
00027 #include <QFileDialog>
00028 #include <QFileInfo>
00029 #include <QFontDatabase>
00030 #include <QMenu>
00031 #include <QMenuBar>
00032 #include <QPrintDialog>
00033 #include <QPrinter>
00034 #include <QTextCodec>
00035 #include <QTextEdit>
00036 #include <QToolBar>
00037 #include <QTextCursor>
00038 #include <QTextList>
00039 #include <QtDebug>
00040 #include <QCloseEvent>
00041 #include <QMessageBox>
00042 #include <QList>
00043 #include <QHBoxLayout>
00044 #include <QSplitter>
00045 #include <QSystemTrayIcon>
00046 
00047 #include <QTreeView>
00048 #include <QListView>
00049 #include <QStatusBar>
00050 
00051 #include "main.h"
00052 #include "xmltree.h"
00053 #include "treemodel.h"
00054 #include "knowtreemodel.h"
00055 #include "treescreen.h"
00056 #include "editor.h"
00057 #include "metaeditor.h"
00058 #include "recordtablescreen.h"
00059 
00060 #include "treeitem.h"
00061 #include "appconfig.h"
00062 #include "addnewrecord.h"
00063 #include "editrecord.h"
00064 #include "findscreen.h"
00065 
00066 #define ADD_NEW_RECORD_TO_END         0
00067 #define ADD_NEW_RECORD_BEFORE         1
00068 #define ADD_NEW_RECORD_AFTER          2
00069 
00070 
00071 class mainwindow : public QMainWindow
00072 {
00073 Q_OBJECT
00074 
00075 public:
00076  mainwindow();
00077  ~mainwindow();
00078 
00079  treescreen  *treeview;
00080  recordtablescreen  *recordtableview;
00081  metaeditor *editorview;
00082  findscreen *findscreendisp;
00083  QStatusBar *statbar;
00084  
00085  void save_current_record_text(void);
00086 
00087  void restore_geometry(void);
00088  void restore_tree_position(void);
00089  void restore_recordtable_position(void);
00090  void restore_findonbase_visible(void);
00091 
00092  void set_tree_position(QStringList path);
00093  
00094  void set_recordtable_position(int n);
00095 
00096 private slots:
00097  void fileNew(void);
00098  void fileOpen(void);
00099  bool fileSave(void);
00100  bool fileSaveAs(void);
00101  void filePrint(void);
00102  void filePrintPreview(void);
00103  void filePrintPdf(void);
00104  
00105  void icon_activated(QSystemTrayIcon::ActivationReason reason);
00106  void application_exit(void);
00107 
00108 private:
00109 
00110  void setup_ui(void);
00111  void setup_signals(void);
00112  void assembly(void);
00113 
00114  void initFileActions(void);
00115  void initRecordTableActions(void);
00116 
00117  void setup_icon_actions(void);
00118  void create_tray_icon(void);
00119  void set_icon(void);
00120 
00121  void save_geometry(void);
00122  void save_tree_position(void);
00123  void save_recordtable_position(void);
00124 
00125  QAction *tray_restore_action;
00126  QAction *tray_maximize_action;
00127  QAction *tray_minimize_action;
00128  QAction *tray_quit_action;
00129 
00130  QSystemTrayIcon *tray_icon;
00131  QMenu           *tray_icon_menu;
00132 
00133  QSplitter *vspl;
00134  QSplitter *hspl;
00135  QSplitter *findsplitter;
00136  
00137 protected:
00138  
00139  void closeEvent(QCloseEvent *event);
00140 
00141  
00142 };
00143 #endif

Generated on Mon Feb 2 00:25:34 2009 for mytetra by  doxygen 1.5.1