home *** CD-ROM | disk | FTP | other *** search
- Short: Object-oriented programming language
- Author: Matthias Gietzelt
- Uploader: Andreas Gietzelt <endee@t-online.de>
- Version: 3.6
- Type: dev/c
- Email: shamane@exmail.de
- Requires: OS 3.5, well-equipped Amiga, some knowledge,
-
- Amiga Developer CD 2.1 (see below)
-
-
- _______ __ __ ___ _______ ___ ___ ___
- /******/ /**| /**| /***\ /******/ /***\ /***\ /***\
- /**____/ /***|/***| /*__**\ /**____/ /*__**\ /*___*\ /*__**\
- /**/___ /*/ |**/|*| /*/__/*| /**/___ /*/__/*| |*/ \*| /*/__/*|
- /******/ /*/ |_/ |*| /*******/ /******/ /*******/ |*| |*| /*******/
- /**____/ /*/ |*| /*______/ /**____/ /*__**__/ |*| |*| /*__**__/
- /**/___ /*/ |*| /*/ /**/___ /*/ \*\ \*\___/*/ /*/ \*\
- /******/ /*/ |*| /*/ /******/ /*/ \*\ \*****/ /*/ \*\
- /______/ /_/ |_| /_/ /______/ /_/ \_\ \___/ /_/ \_\
-
-
- The object-oriented programming language
-
- Available at www.aminet.de ! (Drawer: dev/c)
-
-
- Für die deutsche Version, bitte weiter unten lesen....
-
-
- ENGLISH:
-
-
- History
-
- 2.0 - Initial release
- ---
- 2.1 - GadTools gadgets support !!
- - reached to shrink programsize by coding the window-stuff by myself
- instead of making it by ReActor
- ---
- 2.2 - Oops..The program crashed, when a clicktab was in a test-window.
- - speed optimizations (e.g. at startup, shutdown etc.)
- - defined catalog-creation
- - C++-Code support
- - added the macro "Preferences-Menu" for Prefs-Programs
- - better & easier generated C-sourcecode
- - minor bugfixes
- ---
- 2.3 - prefs-editor rewritten
- - chooseable processortype for generated StormC-project
- - modified programming-help
- - some functionmacros rewritten
- - minor bugfixes
- ---
- 3.0 - gadgets-test routine rewritten
- - fixed bugs by showing tapedeck & colorwheel gadgets
- - fixed problems with clicktabs & page gadgets (see "clicktabsexample")
- - added function "Shutdown()" (called, when program quits)
- - added progress-bar while saving
- - added macrofunctions "Emperor_Set/GetGadgetAttrComplex()" (see guide for details)
- ---
- 3.1 - fixed a bug when generating source for window with colorwheel
- - source is now *more* SAS/C friendly
- - fixed a silly bug when copy a function from programming help into texteditor
- - added online help for macrofunctions (see chapter Programming Help for details)
- - added ARexx-connection to StormC (Scripts - Dir)
- - added arguments by starting StormC (e.g. GoldED support for StormC)
- - added loading picture
- ---
- 3.2 - added parametry of several image-gadgets (bevel, bitmap, glyph)
- (see "ClicktabExample" for details)
- - fixed a bug with slider and getfile-gadgets
- - fixed problem with requester-body-text ["\n" (Newline) will be recognized now]
- - rewritten routine for adding, moving (up and down) and removing of objects in a list
- ---
- 3.5 - showing of scroller & slider-gadgets fixed
- - layout-gadget (bevelstyle & -state) doesn't switch back to previous setted
- values anymore
- - added support of finnish catalog
- - added program-environment for configuration of version, program name,
- stack, mem and many more
- - deleting windows is possible now
- - when pages were added to gadgetlist, its generation was incorrect
- - added gadgethelp support - just connect a gadget to configure ! (program-environment)
- - added function <Menu-Edit-Clearlist> to reset current list of objects
- - label's Locale-connection works correct now
- - gadgethelp for nearly every gadget
- - added chooseable HookType for string-gadgets
- - added some initial-configurations for texteditor-gadgets
- - moving Locale-entrys is possible now
- - editing the includelist is also possible now
- - added new startup-picture (thanks to Janne Peräaho)
- ---
- 3.6 - Gradientsliders horiz/vert orientation works correct now
- - some global variables problems fixed
- - problems with node-array fixed
- - special positions/sizes for OS 2.0 windows work now
- - chooseable smallfont for large lists
- - fixed crash when moving a test-window
- - modifyable library-integration for your project
- - fixed bug in installer-script (doesn't notice, if an OS higher than 3.5 was installed)
- - added interconnection maps
- - generating source based on AmigaOS 2.0, AmigaOS 3.5+ or mixed code
-
-
- Introduction
-
- Thanks for decrunching and the will to testing the program-packet.
- This program should "revolutioning" the software-development on Amiga.
-
- Object-oriented programminglanguage (OOP) is maybe a bit too high for that
- program, because there are "real" C/C++-sourcecodes generated and
- an external C/C++-Compiler must translate it into machine-code. In the Amiga-sphere
- there are only less applications like CanDo, Storm-Wizard and so on, but one day
- I have seen the program "Delphi" on the PC :( ! This OOP is exclusive controlable
- in Pascal (that set's me up) and it has millions of configuration-possibilities.
- I didn't knew such things on Amiga, and so I made it by myself.
-
- I want to make parameting of the Graphical User Interface (GUI) and its macro-elements as easy as
- possible. Following standard-GUI-elements are implemented:
- * Windows
- * OS2.0 Gadgets (GadTools)
- * OS3.5 Gadgets (Reaction)
- * Requests
- * Menus
- * ASL-Requests
- * Locale
- * Function-macros, which makes programming under OS3.5 more easily
-
- With Emperor you are generating a complete C/C++-sourcecode, which only must be
- compiled by an external compiler (e.g. StormC from the developer CD2.1).
-
- Aim of this program is to assure software developer to create their programs (its sourcecode)
- by Emperor, because the making of software (opening of windows, file- and fontrequests,
- menus etc.) is often equal and must not longer copied by programmers from other sourcecodes.
- Emperor decrees about one or more macros for every GUI-element. Like the menus:
- here you must, for creating the complete Project-menu (open, close, save, print etc.) and its
- translation, (in Locale-".catalog"-file) only select the corresponding entry in the list.
- This is also possible with requests e.g. by making a QuitRequest. These are called in
- the own sourcecode as function "REQUESTNAME();".
-
- But the program should also be for user, who never programmed before,
- and bade an easy way in the programming of AmigaOS-GUIs.
-
-
- Systemrequirements
-
- - an Amiga ;-)
- - Memory at least 26 MByte !!; recommended 64 MByte or more
- - Workbench version 3.5 or higher
- - Processor at least 68020; recommended 68060
- - Amiga Developer CD 2.1 of the HAAGE & Partner GmbH
- - C/C++-Compiler (from the developer CD "ADCD_2.1:Contributions/Haage_&_Partner/StormC/")
- - CatComp (from the developer CD "ADCD_2.1:NDK/NDK_3.5/Tools/CatComp")
- - xen.font in size 8 installed in "Fonts:"-directory of the Bootdevice, :-)
-
-
- DEUTSCH:
-
-
- Die Geschichte
-
- 2.0 - Erste Veröffentlichung
- ---
- 2.1 - AmigaOS 2.0 Gadgets hinzugefügt !!
- (GadTools-Gadgets sind nun verfügbar !)
- - Programm ist durch Code-Umsetzung von ReActor nach eigenem Code geschrumpft.
- ---
- 2.2 - Programmabsturz, wenn Clicktab-Gadgets in einem Test-Fenster waren.
- - Geschwindigkeitsoptimierungen (z.B. beim Start, Ende etc.)
- - definierte Catalog-Erstellung
- - Makro "Preferences-Menü" für Einstellungs-Programme
- - C++-Quelltext Unterstützung
- - besserer & einfacherer generierter C-Quelltext
- - minimale Fehler behoben
- ---
- 2.3 - Prefs-Editor überarbeitet
- - wählbarer Prozessortyp für generierten StormC-Projekt
- - modifizierte Programmierhilfe
- - diverse Funktionsmakros überarbeitet
- - minimale Fehler behoben
- ---
- 3.0 - Gadget-Test Routine überarbeitet
- - Fehler beim Anzeigen von Tapedeck & Colorwheel Gadgets behoben
- - Probleme mit Clicktabs & Page Gadgets behoben (siehe "clicktabsexample")
- - Funktion "Shutdown()" hinzugefügt (Aufruf, bei Programmende)
- - Fortschrittsanzeige während des Speicherns
- - Makrofunktion "Emperor_Set/GetGadgetAttrComplex()" hinzugefügt
- (siehe Emperor.guide)
- ---
- 3.1 - Fehler beim Quelltextgenerieren mit ColorWheels behoben
- - Quelltext ist nun SAS/C freundlich*er*
- - Fehler beim Kopieren einer Funktion von der Programmierhilfe in den Texteditor behoben
- - Online Hilfe für Makrofunktionen hinzugefügt (siehe Kapitel Programmierhilfe)
- - ARexx-Verbindung zu StormC (Scripts - Verzeichnis)
- - Argumente beim Starten von StormC hinzugefügt (z.B. GoldED support für StormC)
- - Ladebild hinzugefügt
- ---
- 3.2 - diverse Image-Gadgets (Bevel, Bitmap, Glyph) hinzugefügt
- (siehe "ClicktabExample" für Einzelheiten)
- - Fehler mit Slider und Getfile-Gadgets behoben
- - Problem mit dem Requester-Body-Text behoben ["\n" (Newline) wird nun berücksichtigt]
- - Routine für hinzufügen, verschieben (hoch und runter) und löschen von Objekten
- in den Listen überarbeitet
- ---
- 3.5 - Anzeigen des Scroller & Slider-Gadgets ist überarbeitet worden
- - Layout-Gadget (BevelStyle & -State) springt nicht mehr zu zuvor eingestellten
- Werten zurück
- - Finnischen Katalog hinzugefügt
- - Programmumgebung zur Konfiguration von Version, Programmnamen, Stack, Speicher
- und vielem, vielem mehr hinzugefügt
- - löschen von Fenstern ist nun möglich
- - wenn Pages hinzugefügt wurden, waren deren Generationen inkorrekt
- - GadgetHelp hinzugefügt - einfach ein Gadget verbinden, um die GadgetHelp zu
- konfigurieren ! (Programmumgebung)
- - Funktion <Menü-Bearbeiten-Liste löschen> für das Zurücksetzen der aktiven Liste von
- Objekten hinzugefügt
- - Label's Locale-Verbindung arbeitet nun korrekt
- - GadgetHelp für beinahe jedes Gadget
- - wählbarer HookType für String-Gadgets
- - diverse Initial-konfigurationen für Texteditor-Gadgets hinzugefügt
- - verschieben von Locale-Einträgen ist nun möglich
- - editieren der Includeliste ist nun möglich
- - neues Startupbild hinzugefügt (Dank an Janne Peräaho)
- ---
- 3.6
- - Gradientsliders horiz/vert Ausrichtung arbeitet nun korrekt
- - einige Probleme mit globalen Variablen behoben
- - Probleme mit Node-Arrays behoben
- - spezielle Positionen/Größen für OS 2.0 Fenster arbeiten nun korrekt
- - wählbarer Smallfont für komplexe Listen (Texteditor/Programmierhilfe)
- - Fehler behoben beim verschieben vom Vorschaufenster
- - veränderbare Library-Integration für das eigene Projekt
- - Fehler behoben im Installer-Skript (arbeitet jetzt mit OS-Versionen >3.5 zusammen)
- - Interconnection Maps hinzugefügt (Verknüpfung von Gadgets)
- - Quelltextgenerierung auf Basis von AmigaOS 2.0, AmigaOS 3.5+ oder gemischt
-
-
- Die Einführung
-
- Vielen Dank, daß Sie dieses Programm entpackt haben und ausprobieren möchten !
- Dieses Programm soll die Software-Entwicklung auf dem Amiga "revolutionieren".
-
- Objekt-orientierte Programmiersprache (OOP) ist vielleicht ein wenig
- zu hoch gegriffen, da weiterhin "echte" C/C++-Quelltexte generiert und
- durch einen externen C/C++-Compiler übersetzt werden müssen. Im Amiga-Bereich
- gibt's nur wenige Ausnahmen wie CanDo, Storm-Wizard u.a., aber irgendwann habe
- ich das Programm "Delphi" auf dem PC :( kennengelernt ! Diese OOP ist
- ausschließlich in Pascal gehalten (was mich arg störte) und erschlägt einen
- mit den Millionen Konfigurations-möglichkeiten. Ich kannte soetwas in der Art
- bisher auf dem Amiga nicht, und kurzentschlossen setzte ich mich selbst daran.
-
- Ich wollte die Parametrierung der Oberfläche und der Makro-Elemente so einfach wie
- möglich machen. Folgende Standard-Oberflächenelemente sind implementiert:
- * Fenster
- * OS2.0 Gadgets (GadTools)
- * OS3.5 Gadgets (Reaction)
- * Requester
- * Menüs
- * ASL-Requester
- * Locale
- * vorgefertigte Funktionsmakros, die das Programmieren unter OS3.5 wesentlich erleichtern.
-
- Man generiert mit Emperor einen komplett fertigen C/C++-Quelltext, der nur noch
- durch einen externen Compiler (z.B. StormC auf der Developer CD2.1) übersetzt werden muß.
-
- Ziel dieses Programms soll sein, Softwareentwickler zu überzeugen mit Emperor ihre
- Programme (deren Quelltext) zu erstellen, da die Verfahrensweise bei der Erstellung
- von Software (Öffnen von Fenstern, Datei- und Schriftauswahlrequestern, Menüs etc.)
- oft gleich ist und nicht weiter durch den Programmierer selbst mühsam aus anderen
- Quelltexten herausgefischt werden muß. Emperor verfügt für jedes Element schon
- ein oder mehrere vorgefertigte, aber veränderbare, Makros. So z.B. bei den Menüs:
- hier muß für das Projekt-Menü (Öffnen, Speichern, Drucken etc.) und dessen
- Übersetzung (für Locale - ".catalog"-Datei) nur der entsprechende Eintrag
- gewählt werden. Dies gilt auch für Requester z.B. für das QuitRequest. Diese müssen
- nur noch im eigenen Quelltext als Funktion "REQUESTERNAME();" aufgerufen werden.
-
- Das Programm soll aber auch für Amigianer sein, die noch nie programmiert haben,
- und so einen einfachen Einstieg in die Programmierung der AmigaOS-Oberfläche bieten.
-
-
- Die Systemanforderungen
-
- - einen Amiga ;-)
- - Speicher mindestens 26 MByte !!; empfohlen 64 MByte oder mehr
- - Workbench Version 3.5 oder höher
- - Prozessor mindestens 68020; empfohlen 68060
- - Amiga Developer CD 2.1 von der HAAGE & Partner GmbH
- - C/C++-Compiler (von der Developer CD "ADCD_2.1:Contributions/Haage_&_Partner/StormC/")
- - CatComp (von der Developer CD "ADCD_2.1:NDK/NDK_3.5/Tools/CatComp")
- - xen.font in der Größe 8 im "Fonts:"-Verzeichnis des Bootlaufwerks, :-)
-
-
- ============================= Archive contents =============================
-
- Original Packed Ratio Date Time Name
- -------- ------- ----- --------- -------- -------------
- 50400 14903 70.4% 15-Feb-01 13:31:28 Emperor/Catalogs/deutsch/Emperor.catalog
- 69951 14890 78.7% 15-Feb-01 13:31:30 Emperor/Catalogs/Emperor.cd
- 2904 972 66.5% 15-Feb-01 17:26:22 Emperor/Projects/Catalogs/deutsch/AminetSearcher.catalog
- 192 142 26.0% 15-Feb-01 17:26:22 Emperor/Projects/Catalogs/deutsch/ClicktabExample.catalog
- 292 201 31.1% 15-Feb-01 17:26:24 Emperor/Projects/Catalogs/deutsch/Colorwheel.catalog
- 560 340 39.2% 15-Feb-01 17:26:28 Emperor/Projects/Catalogs/deutsch/DevsManager.catalog
- 620 367 40.8% 15-Feb-01 17:26:28 Emperor/Projects/Catalogs/deutsch/Resistor.catalog
- 44472 16900 61.9% 15-Feb-01 17:25:04 Emperor/Projects/AminetSearcher
- 156181 13260 91.5% 15-Feb-01 17:25:04 Emperor/Projects/AminetSearcher.c
- 3616 988 72.6% 15-Feb-01 17:25:04 Emperor/Projects/AminetSearcher.cd
- 21440 2949 86.2% 15-Feb-01 17:25:04 Emperor/Projects/AminetSearcher.h
- 1102 826 25.0% 15-Feb-01 17:36:16 Emperor/Projects/AminetSearcher.info
- 16743 3417 79.5% 15-Feb-01 17:25:04 Emperor/Projects/AminetSearcher.project
- 1159 488 57.8% 15-Feb-01 17:25:04 Emperor/Projects/AminetSearcher.¶
- 5640 1571 72.1% 15-Feb-01 17:25:04 Emperor/Projects/AminetSearcher_deutsch.ct
- 3585 968 72.9% 15-Feb-01 17:25:04 Emperor/Projects/AminetSearcher_lowlevel.h
- 27228 10759 60.4% 15-Feb-01 17:25:04 Emperor/Projects/ClicktabExample
- 142983 10924 92.3% 15-Feb-01 17:25:06 Emperor/Projects/ClicktabExample.c
- 174 129 25.8% 15-Feb-01 17:25:06 Emperor/Projects/ClicktabExample.cd
- 69 69 0.0% 15-Feb-01 17:25:06 Emperor/Projects/ClicktabExample.h
- 830 637 23.2% 15-Feb-01 17:37:00 Emperor/Projects/ClicktabExample.info
- 9852 6359 35.4% 15-Feb-01 17:25:06 Emperor/Projects/ClicktabExample.iff
- 13569 13569 0.0% 15-Feb-01 17:25:06 Emperor/Projects/ClicktabExample.jpg
- 8342 1487 82.1% 15-Feb-01 17:25:06 Emperor/Projects/ClicktabExample.project
- 2820 1266 55.1% 15-Feb-01 17:25:06 Emperor/Projects/ClicktabExample.README!
- 1162 491 57.7% 15-Feb-01 17:25:06 Emperor/Projects/ClicktabExample.¶
- 253 186 26.4% 15-Feb-01 17:25:06 Emperor/Projects/ClicktabExample_deutsch.ct
- 24288 10328 57.4% 15-Feb-01 17:25:06 Emperor/Projects/Colorwheel
- 89500 8853 90.1% 15-Feb-01 17:25:06 Emperor/Projects/Colorwheel.c
- 340 196 42.3% 15-Feb-01 17:25:06 Emperor/Projects/Colorwheel.cd
- 3308 907 72.5% 15-Feb-01 17:25:06 Emperor/Projects/Colorwheel.h
- 830 637 23.2% 15-Feb-01 17:36:56 Emperor/Projects/Colorwheel.info
- 5471 1212 77.8% 15-Feb-01 17:25:06 Emperor/Projects/Colorwheel.project
- 1147 484 57.8% 15-Feb-01 17:25:06 Emperor/Projects/Colorwheel.¶
- 439 282 35.7% 15-Feb-01 17:25:06 Emperor/Projects/Colorwheel_deutsch.ct
- 30168 12593 58.2% 15-Feb-01 17:25:06 Emperor/Projects/DevsManager
- 97814 10483 89.2% 15-Feb-01 17:25:06 Emperor/Projects/DevsManager.c
- 779 355 54.4% 15-Feb-01 17:25:06 Emperor/Projects/DevsManager.cd
- 7855 1403 82.1% 15-Feb-01 17:25:06 Emperor/Projects/DevsManager.h
- 1204 715 40.6% 15-Feb-01 17:36:48 Emperor/Projects/DevsManager.info
- 6848 1677 75.5% 15-Feb-01 17:25:06 Emperor/Projects/DevsManager.project
- 1150 488 57.5% 15-Feb-01 17:25:06 Emperor/Projects/DevsManager.¶
- 1080 523 51.5% 15-Feb-01 17:25:06 Emperor/Projects/DevsManager_deutsch.ct
- 34420 14139 58.9% 15-Feb-01 17:25:06 Emperor/Projects/Resistor
- 86228 9835 88.5% 15-Feb-01 17:25:08 Emperor/Projects/Resistor.c
- 879 381 56.6% 15-Feb-01 17:25:08 Emperor/Projects/Resistor.cd
- 16264 3136 80.7% 15-Feb-01 17:25:08 Emperor/Projects/Resistor.h
- 830 635 23.4% 15-Feb-01 17:36:44 Emperor/Projects/Resistor.info
- 6354 1709 73.1% 15-Feb-01 17:25:08 Emperor/Projects/Resistor.project
- 1141 482 57.7% 15-Feb-01 17:25:08 Emperor/Projects/Resistor.¶
- 1188 568 52.1% 15-Feb-01 17:25:08 Emperor/Projects/Resistor_deutsch.ct
- 1558 840 46.0% 14-Feb-01 18:45:18 Emperor/Projects.info
- 1077 402 62.6% 15-Feb-01 13:27:02 Emperor/Scripts/stormc.rexx
- 999956 265890 73.4% 15-Feb-01 18:27:34 Emperor/Emperor
- 2692 1456 45.9% 14-Feb-01 18:49:26 Emperor/Emperor.info
- 54253 54253 0.0% 14-Feb-01 18:47:02 Emperor/Emperor.pic
- 87 69 20.6% 14-Feb-01 18:48:30 Emperor/Emperor.prefs
- 1892 1031 45.5% 14-Feb-01 18:47:28 Emperor/Emperor.prefs.info
- 13700 5480 60.0% 15-Feb-01 12:30:38 Emperor/Emperor.readme
- 1326 965 27.2% 14-Feb-01 18:46:56 Emperor/Emperor.readme.info
- 81753 21949 73.1% 15-Feb-01 13:25:00 Emperor/Emperor_deutsch.guide
- 1326 965 27.2% 15-Feb-01 12:19:20 Emperor/Emperor_deutsch.guide.info
- 70847 17936 74.6% 15-Feb-01 13:26:20 Emperor/Emperor_english.guide
- 1326 966 27.1% 15-Feb-01 13:26:20 Emperor/Emperor_english.guide.info
- 4838 1221 74.7% 14-Feb-01 18:46:28 Emperor/ClicktabExample.README!
- 13773 3291 76.1% 15-Feb-01 13:23:36 Emperor.install
- 1245 973 21.8% 15-Feb-01 13:23:36 Emperor.install.info
- 1548 1389 10.2% 15-Feb-01 16:33:16 Emperor.info
- -------- ------- ----- --------- --------
- 2258861 580155 74.3% 15-Feb-101 18:28:16 68 files
-