Short: Object-oriented programming language Author: Matthias Gietzelt Uploader: Andreas Gietzelt Version: 2.00 Type: dev/c Requires: OS 3.5, Amiga Developer CD 2.1 (see below) Für die deutsche Version weiter unten lesen.... ENGLISH: Introduction Thanks for decrunching and the will to testing the program-packet. This program is for "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 sawn 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 * OS3.5 Gadgets * Requests (EasyRequest) * Menus (NewMenu) * ASL-Requests (File, Font, Screenmode) * Locale (Translations) * 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 is no 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) select only the corresponding entry in the list. This is also possible at requests e.g. by making a QuitRequest. These are called in the own sourcecode as function "REQUESTNAME();". But the programm 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 16 MByte !!; recommended 32 MByte or more - Workbench version 3.5 or higher - Processor at least 68030; 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 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 * OS3.5 Gadgets * Requester (EasyRequest) * Menüs (NewMenu) * ASL-Requester (File, Font, Screenmode) * Locale (Übersetzungen) * 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 16 MByte !!; empfohlen 32 MByte oder mehr - Workbench Version 3.5 oder höher - Prozessor mindestens 68030; 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 -------- ------- ----- --------- -------- ------------- 25948 7260 72.0% 21-Jul-00 11:09:54 emperor/catalogs/deutsch/Emperor.catalog 34209 7297 78.6% 21-Jul-00 11:10:00 emperor/catalogs/Emperor.cd 27296 11114 59.2% 25-Jul-00 20:58:22 emperor/projects/AminetSearcher 70528 7123 89.9% 25-Jul-00 20:58:24 emperor/projects/AminetSearcher.c 2424 825 65.9% 24-Jul-00 12:17:22 emperor/projects/AminetSearcher.cd 18981 2617 86.2% 24-Jul-00 12:17:22 emperor/projects/AminetSearcher.h 9852 1834 81.3% 24-Jul-00 12:17:22 emperor/projects/AminetSearcher.project 1252 499 60.1% 24-Jul-00 12:17:22 emperor/projects/AminetSearcher.¶ 3393 1292 61.9% 24-Jul-00 12:17:22 emperor/projects/AminetSearcher_deutsch.ct 3669 1028 71.9% 24-Jul-00 12:17:22 emperor/projects/AminetSearcher_lowlevel.h 29768 11843 60.2% 24-Jul-00 12:17:22 emperor/projects/Proggy 143080 12260 91.4% 24-Jul-00 12:17:22 emperor/projects/Proggy.c 2470 716 71.0% 24-Jul-00 12:17:22 emperor/projects/Proggy.cd 69 69 0.0% 24-Jul-00 12:17:22 emperor/projects/Proggy.h 7928 1632 79.4% 24-Jul-00 12:17:24 emperor/projects/Proggy.project 1136 480 57.7% 24-Jul-00 12:17:24 emperor/projects/Proggy.¶ 3249 1091 66.4% 24-Jul-00 12:17:24 emperor/projects/Proggy_deutsch.ct 1610 810 49.6% 24-Jul-00 12:17:22 emperor/projects/catalogs/deutsch/AminetSearcher.catalog 1470 689 53.1% 24-Jul-00 12:17:22 emperor/projects/catalogs/deutsch/Proggy.catalog 1558 846 45.6% 18-Jul-00 20:41:02 emperor/Projects.info 1036436 283355 72.6% 24-Jul-00 12:25:48 emperor/Emperor 2692 1456 45.9% 24-Jul-00 12:25:48 emperor/Emperor.info 9926 2688 72.9% 18-Jul-00 16:46:20 emperor/Emperor.install 1245 979 21.3% 18-Jul-00 20:41:02 emperor/Emperor.install.info 83 80 3.6% 18-Jul-00 16:52:16 emperor/Emperor.prefs 1892 1031 45.5% 18-Jul-00 20:41:02 emperor/Emperor.prefs.info 5574 2604 53.2% 25-Jul-00 20:51:54 emperor/Emperor.readme 1497 1039 30.5% 25-Jul-00 20:52:38 emperor/Emperor.readme.info 65340 16501 74.7% 25-Jul-00 20:52:06 emperor/Emperor_deutsch.guide 1497 1039 30.5% 25-Jul-00 20:52:40 emperor/Emperor_deutsch.guide.info 56763 13133 76.8% 25-Jul-00 20:52:16 emperor/Emperor_english.guide 1497 1036 30.7% 25-Jul-00 20:52:42 emperor/Emperor_english.guide.info 1643 1168 28.9% 18-Jul-00 20:41:14 Emperor.info -------- ------- ----- --------- -------- 1575975 397434 74.7% 25-Jul-100 21:02:16 33 files