--- /dev/null
+/***************************************************************************
+ eonsl.h - description
+ -------------------
+ begin : mån okt 23 17:11:28 CEST 2000
+ copyright : (C) 2000 by Michael Andreen
+ email : whale@linux.nu
+ changes :
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef EONSL_H
+#define EONSL_H
+
+// include files for QT
+#include <qstring.h>
+#include <qpopupmenu.h>
+#include <qmainwindow.h>
+#include <qaccel.h>
+#include <qmenubar.h>
+#include <qtoolbar.h>
+#include <qpixmap.h>
+#include <qtoolbutton.h>
+#include <qapp.h>
+#include <qstatusbar.h>
+#include <qwhatsthis.h>
+#include <qmsgbox.h>
+#include <qfiledialog.h>
+#include <qprinter.h>
+#include <qpainter.h>
+
+// application specific includes
+#include "eonslview.h"
+#include "eonsldoc.h"
+#include "resource.h"
+
+/**
+ * This Class is the base class for your application. It sets up the main
+ * window and providing a menubar, toolbar
+ * and statusbar. For the main view, an instance of class EonSLView is
+ * created which creates your view.
+ */
+class EonSL : public QMainWindow
+{
+ Q_OBJECT
+
+ public:
+ /** construtor */
+ EonSL();
+ /** destructor */
+ ~EonSL();
+ /** initMenuBar creates the menu_bar and inserts the menuitems */
+ void initMenuBar();
+ /** this creates the toolbars. Change the toobar look and add new toolbars in this
+ * function */
+ void initToolBar();
+ /** setup the statusbar */
+ void initStatusBar();
+ /** setup the document*/
+ void initDoc();
+ /** setup the mainview*/
+ void initView();
+
+ /** overloaded for Message box on last window exit */
+ bool queryExit();
+
+ public slots:
+
+ /** switch argument for Statusbar help entries on slot selection */
+ void statusCallback(int id_);
+ /** open a new application window */
+
+ /** generate a new document in the actual view */
+ void slotFileNew();
+ /** open a document */
+ void slotFileOpen();
+ /** save a document */
+ void slotFileSave();
+ /** save a document under a different filename*/
+ void slotFileSaveAs();
+ /** close the actual file */
+ void slotFileClose();
+ /** print the actual file */
+ void slotFilePrint();
+ /** exits the application */
+ void slotFileQuit();
+ /** put the marked text/object into the clipboard and remove
+ * it from the document */
+ void slotEditCut();
+ /** put the marked text/object into the clipboard*/
+ void slotEditCopy();
+ /** paste the clipboard into the document*/
+ void slotEditPaste();
+ /** toggle the toolbar*/
+ void slotViewToolBar();
+ /** toggle the statusbar*/
+ void slotViewStatusBar();
+
+ /** shows an about dlg*/
+ void slotHelpAbout();
+
+ /** change the status message of the whole statusbar temporary */
+ void slotStatusHelpMsg(const QString &text);
+
+ private:
+
+ /** view is the main widget which represents your working area. The View
+ * class should handle all events of the view widget. It is kept empty so
+ * you can create your view according to your application's needs by
+ * changing the view class.
+ */
+ EonSLView *view;
+ /** doc represents your actual document and is created only once. It keeps
+ * information such as filename and does the serialization of your files.
+ */
+ EonSLDoc *doc;
+
+ /** file_menu contains all items of the menubar entry "File" */
+ QPopupMenu *fileMenu;
+ /** edit_menu contains all items of the menubar entry "Edit" */
+ QPopupMenu *editMenu;
+ /** view_menu contains all items of the menubar entry "View" */
+ QPopupMenu *viewMenu;
+ /** view_menu contains all items of the menubar entry "Help" */
+ QPopupMenu *helpMenu;
+
+ QToolBar *fileToolbar;
+
+};
+#endif
+