From 0e5f7ad99205e3fe1eec3ab18343a1ea1ab5b186 Mon Sep 17 00:00:00 2001 From: Michael Andreen Date: Wed, 27 Dec 2000 18:39:50 +0000 Subject: [PATCH] These files is for making the project The initial source code. --- eonsl/ccreature.cpp | 24 +++ eonsl/ccreature.h | 65 +++++++ eonsl/eonsl.cpp | 419 +++++++++++++++++++++++++++++++++++++++++++ eonsl/eonsl.h | 138 ++++++++++++++ eonsl/eonsl.xpm | 0 eonsl/eonsldoc.cpp | 53 ++++++ eonsl/eonsldoc.h | 50 ++++++ eonsl/eonslview.cpp | 35 ++++ eonsl/eonslview.h | 44 +++++ eonsl/filenew.xpm | 22 +++ eonsl/fileopen.xpm | 22 +++ eonsl/filesave.xpm | 21 +++ eonsl/main.cpp | 39 ++++ eonsl/mini-eonsl.xpm | 0 eonsl/resource.h | 73 ++++++++ 15 files changed, 1005 insertions(+) create mode 100644 eonsl/ccreature.cpp create mode 100644 eonsl/ccreature.h create mode 100644 eonsl/eonsl.cpp create mode 100644 eonsl/eonsl.h create mode 100644 eonsl/eonsl.xpm create mode 100644 eonsl/eonsldoc.cpp create mode 100644 eonsl/eonsldoc.h create mode 100644 eonsl/eonslview.cpp create mode 100644 eonsl/eonslview.h create mode 100644 eonsl/filenew.xpm create mode 100644 eonsl/fileopen.xpm create mode 100644 eonsl/filesave.xpm create mode 100644 eonsl/main.cpp create mode 100644 eonsl/mini-eonsl.xpm create mode 100644 eonsl/resource.h diff --git a/eonsl/ccreature.cpp b/eonsl/ccreature.cpp new file mode 100644 index 0000000..a1ad293 --- /dev/null +++ b/eonsl/ccreature.cpp @@ -0,0 +1,24 @@ +/*************************************************************************** + ccreature.cpp - description + ------------------- + begin : Tue Oct 31 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. * + * * + ***************************************************************************/ + +#include "ccreature.h" + +CCreature::CCreature(){ +} +CCreature::~CCreature(){ +} diff --git a/eonsl/ccreature.h b/eonsl/ccreature.h new file mode 100644 index 0000000..4cffee9 --- /dev/null +++ b/eonsl/ccreature.h @@ -0,0 +1,65 @@ +/*************************************************************************** + ccreature.h - description + ------------------- + begin : Tue Oct 31 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 CCREATURE_H +#define CCREATURE_H + +//QT includes +#include +#include +/**This class is the base class for every creature; living, undead and so on. + This will probably be the only class for creaturs in the end. + *@author Michael Andreen + *@short Class for creatures; Humans, monsters and so on. + */ +class CCreature : public QObject +{ +Q_OBJECT +public: + /** Create an empty CCreature object */ + CCreature(); + /** Load a creature from file. The only thing it does is calling + the memberfunction load(QString *filename) + @param filename The path to the file that holds the creature + */ + CCreature(QString *filename); + /**Create a creature (probably a npc) with randomized attributes + @param race i.e: Human, Elf + @param profession e.g: Warrior, thief + @param level defines how good the creature are, e.g: 0=not good at all. + */ + CCreature(QString race, QString profession, int level); + /** Delete the CCreature object */ + ~CCreature(); +protected: + /* + * This is the pointer to the first closecombat weapon. + */ +// CCloseWeapon* m_firstCWeapon; + /* + * This is the pointer to the first range weapon. + */ +// CRangeWeapon* m_firstRWeapon; + /* + * This is the pointer to the first container. This hold a linked list with a lot of items. + */ +// CContainer* m_firstContainer; + +}; + +#endif diff --git a/eonsl/eonsl.cpp b/eonsl/eonsl.cpp new file mode 100644 index 0000000..0e90cc1 --- /dev/null +++ b/eonsl/eonsl.cpp @@ -0,0 +1,419 @@ +/*************************************************************************** + eonsl.cpp - 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. * + * * + ***************************************************************************/ + +#include "eonsl.h" +#include "filesave.xpm" +#include "fileopen.xpm" +#include "filenew.xpm" + +EonSL::EonSL() +{ + setCaption("EonSL " VERSION); + + /////////////////////////////////////////////////////////////////// + // call inits to invoke all other construction parts + initMenuBar(); + initToolBar(); + initStatusBar(); + + initDoc(); + initView(); +} + +EonSL::~EonSL() +{ +} + +void EonSL::initMenuBar() +{ + /////////////////////////////////////////////////////////////////// + // MENUBAR + + /////////////////////////////////////////////////////////////////// + // menuBar entry fileMenu + + fileMenu=new QPopupMenu(); + fileMenu->insertItem("&New", this, SLOT(slotFileNew()), CTRL+Key_N, ID_FILE_NEW); + fileMenu->insertItem("&Open...", this, SLOT(slotFileOpen()), CTRL+Key_O, ID_FILE_OPEN); + fileMenu->insertSeparator(); + fileMenu->insertItem("&Save", this, SLOT(slotFileSave()), CTRL+Key_S, ID_FILE_SAVE); + fileMenu->insertItem("Save &as...", this, SLOT(slotFileSaveAs()), 0, ID_FILE_SAVE_AS); + fileMenu->insertItem("&Close", this, SLOT(slotFileClose()), CTRL+Key_W, ID_FILE_CLOSE); + fileMenu->insertSeparator(); + fileMenu->insertItem("&Print", this, SLOT(slotFilePrint()), CTRL+Key_P, ID_FILE_PRINT); + fileMenu->insertSeparator(); + fileMenu->insertItem("E&xit", this, SLOT(slotFileQuit()), CTRL+Key_Q, ID_FILE_QUIT); + + /////////////////////////////////////////////////////////////////// + // menuBar entry editMenu + editMenu=new QPopupMenu(); + editMenu->insertItem("Cu&t", this, SLOT(slotEditCut()), CTRL+Key_X, ID_EDIT_CUT); + editMenu->insertItem("&Copy", this, SLOT(slotEditCopy()), CTRL+Key_C, ID_EDIT_COPY); + editMenu->insertItem("&Paste", this, SLOT(slotEditPaste()), CTRL+Key_V, ID_EDIT_PASTE); + + + /////////////////////////////////////////////////////////////////// + // menuBar entry viewMenu + viewMenu=new QPopupMenu(); + viewMenu->setCheckable(true); + viewMenu->insertItem("Tool&bar", this, SLOT(slotViewToolBar()), 0, ID_VIEW_TOOLBAR); + viewMenu->insertItem("&Statusbar", this, SLOT(slotViewStatusBar()), 0, ID_VIEW_STATUSBAR); + + viewMenu->setItemChecked(ID_VIEW_TOOLBAR, true); + viewMenu->setItemChecked(ID_VIEW_STATUSBAR, true); + + /////////////////////////////////////////////////////////////////// + // EDIT YOUR APPLICATION SPECIFIC MENUENTRIES HERE + + /////////////////////////////////////////////////////////////////// + // menuBar entry helpMenu + helpMenu=new QPopupMenu(); + helpMenu->insertItem("About...", this, SLOT(slotHelpAbout()), 0, ID_HELP_ABOUT); + + + /////////////////////////////////////////////////////////////////// + // MENUBAR CONFIGURATION + // set menuBar() the current menuBar + + menuBar()->insertItem("&File", fileMenu); + menuBar()->insertItem("&Edit", editMenu); + menuBar()->insertItem("&View", viewMenu); + menuBar()->insertSeparator(); + menuBar()->insertItem("&Help", helpMenu); + + /////////////////////////////////////////////////////////////////// + // CONNECT THE SUBMENU SLOTS WITH SIGNALS + + connect(fileMenu, SIGNAL(highlighted(int)), SLOT(statusCallback(int))); + connect(editMenu, SIGNAL(highlighted(int)), SLOT(statusCallback(int))); + connect(viewMenu, SIGNAL(highlighted(int)), SLOT(statusCallback(int))); + connect(helpMenu, SIGNAL(highlighted(int)), SLOT(statusCallback(int))); + +} + +void EonSL::initToolBar() +{ + /////////////////////////////////////////////////////////////////// + // TOOLBAR + QPixmap openIcon, saveIcon, newIcon; + + fileToolbar = new QToolBar(this, "file operations"); + + newIcon = QPixmap(filenew); + QToolButton *fileNew = new QToolButton(newIcon, "New File", 0, this, + SLOT(slotFileNew()), fileToolbar); + + openIcon = QPixmap(fileopen); + QToolButton *fileOpen = new QToolButton(openIcon, "Open File", 0, this, + SLOT(slotFileOpen()), fileToolbar); + + saveIcon = QPixmap(filesave); + QToolButton *fileSave = new QToolButton(saveIcon, "Save File", 0, this, + SLOT(slotFileSave()), fileToolbar); + + + fileToolbar->addSeparator(); + QWhatsThis::whatsThisButton(fileToolbar); + QWhatsThis::add(fileNew,"Click this button to create a new file.\n\n" + "You can also select the New command from the File menu."); + QWhatsThis::add(fileOpen,"Click this button to open a new file.\n\n" + "You can also select the Open command from the File menu."); + QWhatsThis::add(fileSave,"Click this button to save the file you are " + "editing. You will be prompted for a file name.\n\n" + "You can also select the Save command from the File menu."); + +} + +void EonSL::initStatusBar() +{ + /////////////////////////////////////////////////////////////////// + //STATUSBAR + statusBar()->message(IDS_STATUS_DEFAULT, 2000); +} + +void EonSL::initDoc() +{ + doc=new EonSLDoc(); +} + +void EonSL::initView() +{ + //////////////////////////////////////////////////////////////////// + // set the main widget here + view=new EonSLView(this, doc); + setCentralWidget(view); +} + +bool EonSL::queryExit() +{ + int exit=QMessageBox::information(this, "Quit...", + "Do your really want to quit?", + QMessageBox::Ok, QMessageBox::Cancel); + + if (exit==1) + { + + } + else + { + + }; + + return (exit==1); +} + +///////////////////////////////////////////////////////////////////// +// SLOT IMPLEMENTATION +///////////////////////////////////////////////////////////////////// + + +void EonSL::slotFileNew() +{ + statusBar()->message("Creating new file..."); + doc->newDoc(); + statusBar()->message(IDS_STATUS_DEFAULT); +} + +void EonSL::slotFileOpen() +{ + statusBar()->message("Opening file..."); + + QString fileName = QFileDialog::getOpenFileName(0,0,this); + if (!fileName.isEmpty()) + { + doc->load(fileName); + setCaption(fileName); + QString message="Loaded document: "+fileName; + statusBar()->message(message, 2000); + } + else + { + statusBar()->message("Opening aborted", 2000); + } +} + + +void EonSL::slotFileSave() +{ + statusBar()->message("Saving file..."); + doc->save(); + statusBar()->message(IDS_STATUS_DEFAULT); +} + +void EonSL::slotFileSaveAs() +{ + statusBar()->message("Saving file under new filename..."); + QString fn = QFileDialog::getSaveFileName(0, 0, this); + if (!fn.isEmpty()) + { + doc->saveAs(fn); + } + else + { + statusBar()->message("Saving aborted", 2000); + } + + statusBar()->message(IDS_STATUS_DEFAULT); +} + +void EonSL::slotFileClose() +{ + statusBar()->message("Closing file..."); + + statusBar()->message(IDS_STATUS_DEFAULT); +} + +void EonSL::slotFilePrint() +{ + statusBar()->message("Printing..."); + QPrinter printer; + if (printer.setup(this)) + { + QPainter painter; + painter.begin(&printer); + + /////////////////////////////////////////////////////////////////// + // TODO: Define printing by using the QPainter methods here + + painter.end(); + }; + + statusBar()->message(IDS_STATUS_DEFAULT); +} + +void EonSL::slotFileQuit() +{ + statusBar()->message("Exiting application..."); + /////////////////////////////////////////////////////////////////// + // exits the Application + if(doc->isModified()) + { + if(queryExit()) + { + qApp->quit(); + } + else + { + + }; + } + else + { + qApp->quit(); + }; + + statusBar()->message(IDS_STATUS_DEFAULT); +} + +void EonSL::slotEditCut() +{ + statusBar()->message("Cutting selection..."); + + statusBar()->message(IDS_STATUS_DEFAULT); +} + +void EonSL::slotEditCopy() +{ + statusBar()->message("Copying selection to clipboard..."); + + statusBar()->message(IDS_STATUS_DEFAULT); +} + +void EonSL::slotEditPaste() +{ + statusBar()->message("Inserting clipboard contents..."); + + statusBar()->message(IDS_STATUS_DEFAULT); +} + + +void EonSL::slotViewToolBar() +{ + statusBar()->message("Toggle toolbar..."); + /////////////////////////////////////////////////////////////////// + // turn Toolbar on or off + + if (fileToolbar->isVisible()) + { + fileToolbar->hide(); + viewMenu->setItemChecked(ID_VIEW_TOOLBAR, false); + } + else + { + fileToolbar->show(); + viewMenu->setItemChecked(ID_VIEW_TOOLBAR, true); + }; + + statusBar()->message(IDS_STATUS_DEFAULT); +} + +void EonSL::slotViewStatusBar() +{ + statusBar()->message("Toggle statusbar..."); + /////////////////////////////////////////////////////////////////// + //turn Statusbar on or off + + if (statusBar()->isVisible()) + { + statusBar()->hide(); + viewMenu->setItemChecked(ID_VIEW_STATUSBAR, false); + } + else + { + statusBar()->show(); + viewMenu->setItemChecked(ID_VIEW_STATUSBAR, true); + } + + statusBar()->message(IDS_STATUS_DEFAULT); +} + +void EonSL::slotHelpAbout() +{ + QMessageBox::about(this,"About...", + IDS_APP_ABOUT ); +} + +void EonSL::slotStatusHelpMsg(const QString &text) +{ + /////////////////////////////////////////////////////////////////// + // change status message of whole statusbar temporary (text, msec) + statusBar()->message(text, 2000); +} + +void EonSL::statusCallback(int id_) +{ + switch (id_) + { + case ID_FILE_NEW: + slotStatusHelpMsg("Creates a new document"); + break; + + case ID_FILE_OPEN: + slotStatusHelpMsg("Opens an existing document"); + break; + + case ID_FILE_SAVE: + slotStatusHelpMsg("Saves the actual document"); + break; + + case ID_FILE_SAVE_AS: + slotStatusHelpMsg("Saves the actual document as..."); + break; + + case ID_FILE_CLOSE: + slotStatusHelpMsg("Closes the actual document"); + break; + + case ID_FILE_PRINT: + slotStatusHelpMsg("Prints out the actual document"); + break; + + case ID_FILE_QUIT: + slotStatusHelpMsg("Quits the application"); + break; + + case ID_EDIT_CUT: + slotStatusHelpMsg("Cuts the selected section and puts it to the clipboard"); + break; + + case ID_EDIT_COPY: + slotStatusHelpMsg("Copies the selected section to the clipboard"); + break; + + case ID_EDIT_PASTE: + slotStatusHelpMsg("Pastes the clipboard contents to actual position"); + break; + + case ID_EDIT_SELECT_ALL: + slotStatusHelpMsg("Selects the whole document contents"); + break; + + case ID_VIEW_TOOLBAR: + slotStatusHelpMsg("Enables/disables the toolbar"); + break; + + case ID_VIEW_STATUSBAR: + slotStatusHelpMsg("Enables/disables the statusbar"); + break; + + case ID_HELP_ABOUT: + slotStatusHelpMsg("Shows an aboutbox"); + break; + } +} + diff --git a/eonsl/eonsl.h b/eonsl/eonsl.h new file mode 100644 index 0000000..8573724 --- /dev/null +++ b/eonsl/eonsl.h @@ -0,0 +1,138 @@ +/*************************************************************************** + 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 +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +// 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 + diff --git a/eonsl/eonsl.xpm b/eonsl/eonsl.xpm new file mode 100644 index 0000000..e69de29 diff --git a/eonsl/eonsldoc.cpp b/eonsl/eonsldoc.cpp new file mode 100644 index 0000000..e60d526 --- /dev/null +++ b/eonsl/eonsldoc.cpp @@ -0,0 +1,53 @@ +/*************************************************************************** + eonsldoc.cpp - 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. * + * * + ***************************************************************************/ + +#include "eonsldoc.h" + +EonSLDoc::EonSLDoc() +{ + modified = false; +} + +EonSLDoc::~EonSLDoc() +{ +} + +void EonSLDoc::newDoc() +{ +} + +bool EonSLDoc::save() +{ + return true; +} + +bool EonSLDoc::saveAs(const QString &filename) +{ + return true; +} + +bool EonSLDoc::load(const QString &filename) +{ + emit documentChanged(); + return true; +} + +bool EonSLDoc::isModified() const +{ + return modified; +} diff --git a/eonsl/eonsldoc.h b/eonsl/eonsldoc.h new file mode 100644 index 0000000..4df8bc9 --- /dev/null +++ b/eonsl/eonsldoc.h @@ -0,0 +1,50 @@ +/*************************************************************************** + eonsldoc.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 EONSLDOC_H +#define EONSLDOC_H + +// include files for QT +#include + +// application specific includes + +/** + * the Document Class + */ + +class EonSLDoc : public QObject +{ + Q_OBJECT + + public: + EonSLDoc(); + ~EonSLDoc(); + void newDoc(); + bool save(); + bool saveAs(const QString &filename); + bool load(const QString &filename); + bool isModified() const; + + signals: + void documentChanged(); + + protected: + bool modified; +}; + +#endif diff --git a/eonsl/eonslview.cpp b/eonsl/eonslview.cpp new file mode 100644 index 0000000..416fa44 --- /dev/null +++ b/eonsl/eonslview.cpp @@ -0,0 +1,35 @@ +/*************************************************************************** + eonslview.cpp - 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. * + * * + ***************************************************************************/ + +#include "eonslview.h" + +EonSLView::EonSLView(QWidget *parent, EonSLDoc *doc) : QWidget(parent) +{ + /** connect doc with the view*/ + connect(doc, SIGNAL(documentChanged()), this, SLOT(slotDocumentChanged())); +} + +EonSLView::~EonSLView() +{ +} + +void EonSLView::slotDocumentChanged() +{ + //TODO update the view + +} diff --git a/eonsl/eonslview.h b/eonsl/eonslview.h new file mode 100644 index 0000000..60893fb --- /dev/null +++ b/eonsl/eonslview.h @@ -0,0 +1,44 @@ +/*************************************************************************** + eonslview.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 EONSLVIEW_H +#define EONSLVIEW_H + +// include files for QT +#include + +// application specific includes +#include "eonsldoc.h" + +/** + * This class provides an incomplete base for your application view. + */ + +class EonSLView : public QWidget +{ + Q_OBJECT + public: + EonSLView(QWidget *parent=0, EonSLDoc* doc=0); + ~EonSLView(); + + protected slots: + void slotDocumentChanged(); + +}; + +#endif diff --git a/eonsl/filenew.xpm b/eonsl/filenew.xpm new file mode 100644 index 0000000..2543c9b --- /dev/null +++ b/eonsl/filenew.xpm @@ -0,0 +1,22 @@ +/* XPM */ +static const char * filenew[] = { +"10 14 5 1", +" c None", +". c #000000", +"+ c #FFFFFF", +"@ c #DCDCDC", +"# c #C0C0C0", +"....... ", +".++++@@. ", +".++++#+@. ", +".++++#++@.", +".++++#....", +".+++++###.", +".++++++++.", +".++++++++.", +".++++++++.", +".++++++++.", +".++++++++.", +".++++++++.", +".++++++++.", +".........."}; diff --git a/eonsl/fileopen.xpm b/eonsl/fileopen.xpm new file mode 100644 index 0000000..48211e2 --- /dev/null +++ b/eonsl/fileopen.xpm @@ -0,0 +1,22 @@ +/* XPM */ +static const char *fileopen[] = { +" 16 13 5 1", +". c #040404", +"# c #808304", +"a c #bfc2bf", +"b c #f3f704", +"c c #f3f7f3", +"aaaaaaaaa...aaaa", +"aaaaaaaa.aaa.a.a", +"aaaaaaaaaaaaa..a", +"a...aaaaaaaa...a", +".bcb.......aaaaa", +".cbcbcbcbc.aaaaa", +".bcbcbcbcb.aaaaa", +".cbcb...........", +".bcb.#########.a", +".cb.#########.aa", +".b.#########.aaa", +"..#########.aaaa", +"...........aaaaa" +}; diff --git a/eonsl/filesave.xpm b/eonsl/filesave.xpm new file mode 100644 index 0000000..ed3ea96 --- /dev/null +++ b/eonsl/filesave.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static const char *filesave[] = { +" 14 14 3 1", +". c #040404", +"# c #808304", +"a c #bfc2bf", +"..............", +".#.aaaaaaaa.a.", +".#.aaaaaaaa...", +".#.aaaaaaaa.#.", +".#.aaaaaaaa.#.", +".#.aaaaaaaa.#.", +".#.aaaaaaaa.#.", +".##........##.", +".############.", +".##.........#.", +".##......aa.#.", +".##......aa.#.", +".##......aa.#.", +"a............." +}; diff --git a/eonsl/main.cpp b/eonsl/main.cpp new file mode 100644 index 0000000..093f945 --- /dev/null +++ b/eonsl/main.cpp @@ -0,0 +1,39 @@ +/*************************************************************************** + main.cpp - 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. * + * * + ***************************************************************************/ + +#include +#include + +#include "eonsl.h" + +int main(int argc, char *argv[]) +{ + Misapplication a(argc, argv); + + a.setFont(QFont("helvetica", 12)); + /* uncomment the following line, if you want a Windows 95 look*/ + // a.setStyle(WindowsStyle); + + EonSL *eonsl=new EonSL(); + a.setMainWidget(eonsl); + + eonsl->setCaption("EonSL" VERSION); + eonsl->show(); + + return a.exec(); +} diff --git a/eonsl/mini-eonsl.xpm b/eonsl/mini-eonsl.xpm new file mode 100644 index 0000000..e69de29 diff --git a/eonsl/resource.h b/eonsl/resource.h new file mode 100644 index 0000000..0a4b854 --- /dev/null +++ b/eonsl/resource.h @@ -0,0 +1,73 @@ +/*************************************************************************** + resource.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 RESOURCE_H +#define RESOURCE_H + +#ifdef HAVE_CONFIG_H +#include +#endif + + +/////////////////////////////////////////////////////////////////// +// resource.h -- contains macros used for commands + + +/////////////////////////////////////////////////////////////////// +// COMMAND VALUES FOR MENUBAR AND TOOLBAR ENTRIES + + +/////////////////////////////////////////////////////////////////// +// File-menu entries +#define ID_FILE_NEW 10020 +#define ID_FILE_OPEN 10030 + +#define ID_FILE_SAVE 10050 +#define ID_FILE_SAVE_AS 10060 +#define ID_FILE_CLOSE 10070 + +#define ID_FILE_PRINT 10080 + +#define ID_FILE_QUIT 10100 + + +/////////////////////////////////////////////////////////////////// +// Edit-menu entries +#define ID_EDIT_UNDO 11010 +#define ID_EDIT_REDO 11020 +#define ID_EDIT_COPY 11030 +#define ID_EDIT_CUT 11040 +#define ID_EDIT_PASTE 11050 +#define ID_EDIT_SELECT_ALL 11060 + + +/////////////////////////////////////////////////////////////////// +// View-menu entries +#define ID_VIEW_TOOLBAR 12010 +#define ID_VIEW_STATUSBAR 12020 + +/////////////////////////////////////////////////////////////////// +// Help-menu entries +#define ID_HELP_ABOUT 1002 + +/////////////////////////////////////////////////////////////////// +// General application values +#define IDS_APP_ABOUT "EonSL\nVersion " VERSION \ + "\n(w) 2000 by Michael Andreen" +#define IDS_STATUS_DEFAULT "Ready." + +#endif // RESOURCE_H -- 2.39.2