R-BASIC - Einfach unter PC/GEOS programmieren
Download R-BASIC Dateien


 

IDE Download
Zusätzliche Libraries
Liste aller Beispiele
Liste aller verfügbaren Objekte
Tutorials, Zusätzliche
Informationen & Dateien
Weitere Beispiele
Beschreibung
aktuelle Version
Versions-History

 

English   Click here for an English version of this page.
 

 

R-BASIC Version 0.9.9

Direkt zum Download

Überblick über die R-BASIC Konzepte


R-BASIC ist eine neue Programmiersprache für PC/GEOS. Sie ist einfach zu lernen und einfach zu benutzen, so dass Anfänger gut mit ihr zurecht kommen. Gleichzeitig ist sie so leistungsfähig, dass auch anspruchsvolle Projekte realisierbar sind. R-BASIC erfordert mindestens eine PC/GEOS Version ab GeoWorks 2.01 (oder höher). Empfohlen wird eine der aktuellen BreadBox Ensemble Versionen.

Warum gerade ein BASIC?

  1. Einfache Syntax. Die BASIC Syntax ist leicht zu erlernen, der Funktionsumfang von R-BASIC ermöglicht trotzdem die Programmierung von umfangreichen und professionellen Projekten.
  2. Kompatibilität. Es gibt eine Menge "alter", aber trotzdem interessanter Programme, die nur darauf warten, nach R-BASIC portiert zu werden.
  3. Man kann quasi jedes beliebige BASIC Handbuch hernehmen, um die Grundlagen der (R-)BASIC Programmierung zu erlernen. Die Details mögen verschieden sein, aber die Konzepte, wie man programmiert, bleiben gleich.

Ist R-BASIC objektorientiert?

Ja, Sie haben Zugriff auf das leistungsfähige PC/GEOS Objekt-System. Die in R-BASIC verfügbaren Objektklassen finden Sie hier aufgelistet.
Auf der anderen Seite bietet R-BASIC eine "klassischen" Modus, in dem ein alter Homecomputer simuliert wird. Dieser Modus macht es einfacher alte Programme zu portieren, ist aber möglicherweise auch ein guter Ausgangspunt für Programmieranfänger.

Wie arbeitet R-BASIC?

Nachdem Sie ihren Code geschrieben haben müssen Sie ihn "compilieren". Dabei wird die Synatx geprüft und eine Sequenz von "Tokens" erzeugt, die vom Executer "interpretiert" (ausgefühhrt) werden können. Dieses Konzept wird zum Beispiel auch von der Programmiersprache Java eingesetzt. Nachdem das Compilieren erfolgreich war können Sie ihr Programm starten oder eine R-App anlegen. R-Apps sind eigenständige Programme, die aus dem compiliereten Code und einem "Launcher" bestehen. Der Laucher ruft den Executer, um das BASIC Programm auszuführen. Aus der Sicht des Nutzers unterscheiden sich R-Apps nicht von "normalen" Programmen, die mit dem PC/GEOS SDK geschrieben wurden.

Wie bekomme ich Hilfe?

Überblick über die R-BASIC Konzepte

 

Anmerkung zur aktuellen Version:
Alle implementierten Funktionen wurden sorgfältig geprüft und ausführlich getestet. Sollten Sie trotzdem irgendwelche Probleme haben (seltsames Verhalten, Abstürze, kryptische Fehlermeldungen), so lassen Sie es mich bitte wissen. Helfen Sie mit, das Programm besser und stabiler zu machen.

Alle BASIC-Programme, die Sie mit dieser Version erstellen, werden auch in den folgenen Versionen lauffähig sein. Sollte es im Einzelfall hierbei Probleme geben, biete ich Ihnen hiermit meine Unterstützung an.


Download
Das ZIP-Archiv enthält:
  • IDE, Beispiele
  • Dokumentation
  • Images
Download R-BASIC
Version 0.9.9 - 09/2018
 ·R-BASIC IDE (1,2 MB)
 ·Beispiele (2,7 MB)
 ·Dokumentation (2,1 MB)
 ·Images (17 kB)
 

Vielleicht erforderlich:
System Library Upgrade:
Sound & Wav Libraries
Version 4.1 (8 kB)
 

 

Download zusätzliche Libraries


Objekte


Beschreibung aller verfügbaren Objektklassen


Screenshots: Weitere Infos:
Die aktuelle Version von R-BASIC. Für eine vollständige Installation müssen Sie die folgenden Komponenenten herunterladen:

  1. IDE, Dokumentation, Beispiele, Images
    Dieses ZIP-Archiv müssen Sie herunterladen wenn Sie die neueste Version von R-BASIC installieren wollen. Es enthält die folgenden Installations-Pakete:
    • IDE
      Das Paket enthält die R-BASIC Entwickungsumgebung (Editor, Compiler, Erstellen von R-Apps), die Hifedateien, einige Tools sowie weitere, für die Arbeit mit R-BASIC unverzichtbare Dateien.
      Mitgelieferte Tools, zugreifbar aus R-BASIC heraus über das Menü "Extras"-"Tools".

      Wizzard Editor

      Block Graphic Editor

      Font Explorer

      Basic Salvager
        Screenshots ansehen

      Weitere Tools herunterladen

    • Dokumentation
      Das Paket enthält die kompletten R-BASIC Handbücher sowie weitere Dokumente. Redaktionelle Änderungen bleiben vorbehalten.
      • Benutzerhandbuch: Beschreibung der IDE und aller wichtigen Dinge, die nicht direkt mit der Programmierspache selbst zu tun haben.
      • Programmierhandbuch: Beschreibung der R-BASIC Programiersprache.
      • Objekthandbuch: Komplette Beschreibung der BASIC Objekte, ihrer Eigenschaften und Fähigkeiten.
        Das Objekthanbuch wird laufend erweitert wenn weitere Klassen implementiert werden.
      • Spezielle Themen: Weiterführende Themen wie Schriften, Blockgrafik, Dateisystem usw.
      • R-BASIC Anhänge: Übersichten, Tabellen, Fehlercodes und vieles mehr
      • Quickreferenz Objekte: Liste alle Objektklassen, ihrer Instancevariablen, Methoden und der dazugehörigen Konstanten
      • Objekt- und Kommando-Übersicht (siehe auch hier)
    • Beispiele
      Hier finden Sie eine große Anzahl an Beispielen sowohl zu den BASIC Befehlen, zu den BASIC Objekten als auch zu speziellen Themen wie der Arbeit mit Dateien oder der Block Grafik. Klicken Sie hier für eine Liste aller Beispiele.
    • Images
      R-BASIC liefert einige Bilder für die Toolbars, das Document-Interface und mehr mit. Dieses Paket wurde mit der Realease 0.9.9 veröffentlicht. Der Inhalt war in früheren Versionen Teil des IDE-Paktes und ist seit Version 0.9.1 nicht mehr verändert.

  2. Zusätzliche Libraries
    Diese Libraries müssen Sie nur herunterladen wenn es eine neue Version dieser Libraries oder eine neue Library gibt. Sie ergänzen R-BASIC und werden in speziellen Situationen benötigt. Aktuell sind folgende Libraries verfügbar:
    • DocumentTools - Aktuelle Version 1.0 - Veröffentlicht mit R-BASIC 0.9.2
    • VMFiles - Aktuelle Version 1.01 - Veröffentlicht mit R-BASIC 0.9.2
    Programmierer, die über das PC/GEOS-SDK verfügen, finden hier das SDK-Library-Kit. Damit kann man R-BASIC um Funktionen erweitern, die im ursprünglichen Konzept von R-BASIC nicht vorgesehen sind.
  3. Sound Libraries
    Falls Sie ein älteres GEOS System (vor Version 4.1) haben, benötigen Sie vielleicht neuere Sound Libraries (sound.geo und wav.geo) damit die R-BASIC Sound Befehle besser arbeiten. Die Sound Befehle arbeiten natürlich auch mit den älteren Libraries, aber die neueren sind besser. Unglücklicher Weise sind beide Libraries in Benutztung, so dass der Uni-Installer sie nicht automatisch ersetzen kann.
    Bitte prüfen Sie die Versionsnummern der beiden Libraries in ihren System-Ordner und ersetzen Sie sie von Hand, wenn die Libraries in ihrem System eine Versionsnummer kleiner als 4.1 haben. Das Archiv enthält beide Libraries in der Version 4.1. Vergessen Sie nicht, vorher eine Sicherheitskopie der beiden Systemlibraries anzulegen.

Wesentliche Neuerungen in der aktuelle Version
  • Integrierter grafischer Debugger zur Fehlersuche
  • Eine Error-Checking oder eine Non-Error-Checking Version ist complierbar
  • Kompatibiltätsflags zum KC 85 BASIC verfügbar
  • Es gibt drei neue Objektklassen: Display (Dokument Fenster), DisplayGroup (managed die Fenster) und DisplayControl (stellt die UI für das Fenster-Menü bereit).
  • Das Primary erbt die Fähigkeiten des Display Objekts
Neue Beispiele (klicken Sie hier für eine Liste aller Beispiele):
  • Erste Schritte\Simple Port Demo
  • Erste Schritte\KC 85 Demo
  • Objekte\Display\Display Demo
  • Objekte\Display\Display mit Grafik
  • Objekte\Display\Display Focus (komplex)
  • Objekte\Display\Display Create-Destroy (komplex)
Neue Kapitel im Handbuch:
  • Neu: Das Benutzerhandbuch ist in 2 Volumes aufgeteilt
  • Neu: Benutzerhandbuch, Kapitel 5: Fehlersuche und Debugging
  • Erweitert: Objekt Handbuch, Kapitel 4.2: Primary
  • Neu: Objekt Handbuch, Kapitel 4.18: Display und zugehörige Objekte
  • Geringfügig erweitert: Spezielle Themen, Kapitel 2.6 und 3.3: Textstile und Block Grafik Modus
  • Stark erweitert: Spezielle Themen, Kapitel 18.3: KC-85 Kompatibilität
  • Neu: Anhänge, Abschnitt H: Tabellen zur KC-85 Kompatibilität

Inkompatible Änderungen:

  • Die Bezeichner der Felder in der Strukur TransMatrix wurden an die Dokumentation angepasst. Programme, die diese Felder verwenden müssen geändert und neu compiliert werden.
Mehr Details zur aktuellen Version ...

Zur Installation wird eine aktuelle Version des Universal-Installers benötigt. Diese kann hier heruntergeladen werden.

 

   Download Libraries

Diese Libraries werden für spezielle Aufgaben von R-BASIC benötigt. Es gibt nicht mit jeder R-BASIC Version eine neue Version dieser Libraries.

DocumentTools Libray
Version 1.0
(68 kB)

Juli 2015
Veröffentlicht mit R-BASIC 0.9.2
Die DocumentTools Library stellt eine Reihe von Funktionen bereit, die Sie bei der Arbeit mit Dokumenten unterstützen. Dazu gehörenn zum Beispiel die typischen Dialogboxen zum Öffnen oder Speichern einer Datei. Die Routinen der DocumentTools Library arbeiten eng mit einem DocumentGuardian-Objekt zusammen. Mithilfe der von der DocumentTools Library bereitgestellten Routinen ist es sehr einfach, ein Dokument-Interface mit den üblichen Funktionen zu programmieren. Wie man das macht ist ausführlich im Handbuch "Spezielle Themen", Volume 3, Kapitel 15, beschrieben.
Der gesamte Document-Interface Code kann über ein R-BASIC Menu ("Extras" -> "Code Bausteine" -> "Dokument-Interface") in ihr Programm eingebaut werden. In diesem Fall müssen Sie die DocumentTools Library herunterladen, da sie vom eingebundenen Code verwendet wird.
VMFiles Libray
Version 1.0.1
(106 kB)

Juli 2015
Veröffentlicht mit R-BASIC 0.9.2
Die VMFiles-Library erlaubt R-BASIC den Zugriff auf die GEOS-typischen VM-Dateien. Die Dokumente aller "großen" Applikationen wie GeoWrite und GeoDraw sind VM-Dateien.
VM-Dateien sind universell einsetzbar und sehr einfach zu handhaben. Wenn Sie z.B. eine Film-Datenbank programmieren wollen, sollten Sie VM-Dateien einsetzen. Die brauchen nicht vorher festzulegen, wie viele Filme Sie in die Datenbank aufnehmen wollen, da Sie mit einem einzigen Befehl einen Datensatz (Film) hinzufügen oder löschen können. Falls Sie ein Bild, z.B. ein Cover, mit in die Datenbank aufnehmen wollen ist auch das mit wenigen Befehlen erledigt, da VM-Dateien extra dafür ausgelegt sind auch Bilder zu speichern.
Die VMFiles Library ist erforderlich wenn Sie mit VM-Dateien arbeiten wollen.

SDK Library Kit (28 kB)

Version 1.0.1
August 2017
Veröffentlicht mit R-BASIC 0.9.8
Dieses Paket enthält alle notwendigen Dateien und Informationen um mit dem PC/GEOS SDK Libraries für R-BASIC zu schreiben. Damit ist es möglich, R-BASIC um Funktionen zu erweitern, die im ursprüglichen Konzept nicht vorgesehen sind. Beispiele für Libraries, die mit diesem Kit geschrieben sind, sind die VMFiles Library und die DokumentTools Library.
Das Kit ist komplett in Englisch. Es enthält eine ausführliche Anleitung und Beispiele, wie man typische Situationen zu behandlen hat.
Version 1.0.1 fügt einige Handle- und "Register" Typen zur sdklib.goh datei hinzu. Sie brauchen nur von Version 1.0 zu 1.0.1 updaten, wenn Sie in ihrer Library mit R-BASIC Sounds hantieren wollen.

 

   Tutorials, Zusätzliche Informationen und Dateien

More Tool Images (85 kB)

Dezember 2014
Dieses Paket enthält eine große Anzahl an Bildern die von den GEOS Tool-Buttons stammen und unter R-BASIC verwendet werden können um diese Buttons nachzubilden. Es gibt Bilder für Bitmap-Tools, Farben, Objekt-Tools (wie Rechteck und Linie zeichnen) Text-Tools (z.B. fetter Text, kursiver Text) und viele weitere Bilder. Zusätzlich gibt es den kompletten Satz Spielkarten einschließlich Rückseiten.
Die Dateien werden in USERDATA\R-BASIC\IMAGES installiert und können sofort mit der Anweisung CaptionImage, der Picture-List und anderen verwandten Kommandos verwendet werden.
Achtung! Aus Kompatibilitäsgründen sind die Pfade auf Englisch.
R-BASIC Translator

Version 1.1
August 2015
Übersetzer-Tool zum Übersetzen von R-BASIC Programmen und Libraries. Der Link führt auf die Downloadseite mit ausführlichen Informationen zu diesem Programm.
Erstellen von Icons

IconMake 1.1 (31 kB)
(DOS-Programm)

Icon Edit 3.1 (31,4 kB)

Token PCX Tool (8,9 kB)

März 2013

ICONMAKE ist ein DOS-Programm vom Marcus Groeber, das PCX oder ICO Dateien einliest und daraus "Token-Dummys" erstellt. Das sind Mini-"Programme", deren einzige Aufgabe darin besteht, Icons in die Token-Database zu schreiben.

Der Icon Editor ist eine GEOS Anwendung, mit der man Icons für GEOS erstellen oder ändern kann. Es ist quasi ein Mini-Malprogramm mit der Fähigkeit die Bilder als Icons in die Token-Database zu exportieren oder von dort zu importieren. Außerdem wird die Erstellung von Icon-Quellcode für SDK Programme und einiges mehr unterstützt.
Die aktuelle Version 3.1 kann zwar 256-Farb-Icons erstellen, der Export in die und der Import von der Token-Database ist jedoch noch fehlerhaft. Das Erstellen des SDK-Quellcodes ist bereits gefixt.

Token PCX Tool ist ein sehr spartanisches Tool aus dem SDK, dass 8-Bit PCX Dateien lesen und daraus 256-Farb-Icons in der Token-Database erstellen kann. Die Grafiken für das 48x30 und das 15x15 Icon-Bild werden von bestimmeten Positionen des PCX-Bildes gelesen. Details sind in der readme.txt beschrieben. Eine Beispieldatei ist beigefügt.

Weitere Tools (14,2 kB)

Okt. 2010
Weitere Tools für R-BASIC. Zugreifbar aus R-BASIC heraus über das Menü "Extras"-"Tools".
- BuilderBase (Verwaltung von Code-Schnipseln, BreadBox, deutsch)
- HDBConv (Hex-Dec-Bin-Converter, John Howard, englisch)

Mehr Beispiele

Wurfparabel Source (52 kB)

Version 1.1
September 2016
Source Code und Iconeditor-Datei des Wurfparabel Lehrprogramms. Dieses Beispiel zeigt vornehmlich die Verwendung des Grafik-Mixmodus MM_XOR. In diesem Modus wird eine Linie oder Fläche (zum Beispiel die Wurfparabel) beim ersten Zeichen dargestellt und beim zweiten Zeichnen wieder gelöscht. So kann man z.B. veränderliche Linien ohne Beeinflussung des Hintergrunds programmieren. Der Sourcecode ist so strukturiert, dass man die GEOS typischen Konzepte auch dann verstehen kann, wenn man die Physik hinter dem Programm (Berechung der Wurfparabel) nicht durchschauen will.
Level: Fortgeschrittene
Das compilierte Programm (R-App) kann man hier downloaden.
FileLister Source (31 kB)

Version 1.0
August 2014
Source Code und Iconeditor-Datei der FileLister Anwendung. Dieses Beispiel zeigt, wie man einen Verzeichnisbaum durchsucht, indem eine Routine sich selbst aufruft (rekursive Programmierung), wie man Text in eine Datei schreibt und wie man eine HTML-Datei anlegen kann.
Level: Fortgeschrittene
Das compilierte Programm (R-App) kann man hier downloaden.
2048 Game Sourcecode (82,7 kB)

Version 1.0
August 2014
Quellcode des 2048 Kult-Spiels. Demonstriert grundlegenden Arbeitstechniken wie das Arbeiten mit Strukturen, OnStartup- und OnExit-Handlern sowie das Speichern von Daten in Dateien.
Benötigt R-BASIC 0.8.9a (Hamburg-2014-Version) oder höher.
Das compilierte Programm (R-App) kann man hier downloaden.
Level: Fortgeschrittene
Cool Code (14,9 kB)
März 2013
Ein einfaches Beispiel, dass unter Verwendung der Block-Grafik ein zufälliges Labyrinth zeichnet.
Benötigt R-BASIC 0.8.7 oder höher, da sonst die Zeichengeneratordatei (ALIEN.RBF) die verwendeten Zeichen noch nicht enthält.
Level: Anfänger
Rätsel by Jörg Polzfuß (30,3 kB)
März 2012
Ein kleines Zahlenrätsel, geschrieben von Jörg Polzfuß auf dem Treffen in Syhra 2011. Dieses sehr einfache Beispiel eignet sich sehr gut als Ausganspunkt für eigene Experimente mit der UI und dem Geometrie-Manager.
Level: Anfänger
Release Saver Example (59,6 kB)
März 2012
Dieses komplexe Beispiel zeigt die Verwendung vieler Dateibefehle, einschließlich der Suche nach Dateien und der Fehlerbehandlung in verschieden Situationen. Kernpunkt ist das Kopieren von Dateien und ganzer Ordner, einschließlich Unterordner. Ich verwende dieses Programm zum Sichern meines R-BASIC Code Trees.
Level: Profi

 

Verfügbare Objektklassen

Application


Das Application-Objekt ist unsichtbar.

Dieses Objekt stellt die Verbindung zum GEOS-System her und ist das top Parent-Objekt für alle anderen generischen BASIC-Objekte ihres Programms. Jedes BASIC-Programm muss genau ein Application-Objekt haben. Direktes Child des Application-Objekts ist im allgemeinen ein Primary-Objekt.
Primary

Objekte der Klasse Primary sind die "Hauptfenster" des Programms. Primaries haben links oben ein System-Menü, rechts oben die Schalter für "Minimieren" und "Maximieren" sowie bei Bedarf einen "Hilfe" Schalter (Fragezeichen). Im Allgemeinen hat jedes BASIC Programm genau ein Primary-Objekt.
Button

  

Ein Button ist eine Schaltfläche, die mit der Maus angeklickt oder mit der Tastatur aktiviert werden kann. Buttons werden für Menü-Einträge oder als alleinstehende Schalter verwendet.
Group

Groups (Gruppen) haben einen Hauptzweck: Sie dienen dazu andere Objekte anzuordnen. Durch die geschickte Verwendung von Groups geben Sie als Programmierer ihrem Programm das Aussehen, das Sie wünschen. Die im Bild gezeigte Anwendung besteht aus einer Group (rot, oben) und einer Reply-Bar (unten, ebenfalls ein Group-Objekt), die vertikal (untereinander) angeordnet sind. Die rot markierte Gruppe besteht aus einem Text-Objekt und einer weiteren Group, hier blau markiert. Beide Objekte sind horizontal angeordnet. Die rechte (blaue) Group enthält letztlich die Action-Buttons, die untereinander angeordnet sind.
Menu

Menüs sind der übliche Weg, auf dem der Nutzer unterschiedliche Programmfunktionen anwählen kann. Die Menü-Einträge sind die Children eines Menüs. In vielen Fällen sind dies Buttons. Verschachtelte Menüs (Sub-Menüs, siehe Bild) erhalten Sie, wenn sie andere Menüs als Menü-Einträge verwenden. Verwenden Sie Dialoge als Menü-Einträge, so erzeugt das System selbständig einen Button im Menü, der den Dialog öffnet.
Dialog

Dialoge sind unabhängige Fenster, mit denen der Nutzer interagieren kann. Sie werden für die unterschiedlichsten Aufgaben eingesetzt. Die vom Dialog dargestellten UI-Objekte sind die Children des Dialog-Objekts. Dialog-Objekte sind einfach zu benutzen, verfügen aber auch über sehr viele Fähigkeiten, die sie sehr leistungsfähig machen.
Number

Objekte der Klasse Number (engl.: Zahl) dienen dazu, Zahlen darzustellen oder einzugeben. Obwohl sie sehr einfach zu verwenden sind, verfügen Sie über einen hohen Grad an "Eigenintelligenz". Zum Beispiel kann man die Anzahl der Nachkommastellen einstellen sowie Minimal- und Maximal-Werte festlegen. Je nach Konfiguration können Sie mit normalen Ziffern oder Schieberegler ("Slider") auftreten.

     
OptionGroup

Die OptionGroup verwaltet eine Liste von Option-Objekten, das jedes für sich und abhängig voneinander den Zustand "ein" oder "aus" haben kann.
RadioButtonGroup

Die RadioButtonGroup verwaltet eine Liste von RadioButton-Objekten, die einzeln oder in Gruppen ausgewählt (selektiert) werden können. Die RadioButtonGroup ist ein sehr vielseitiges Objekt das insbesondere dann zum Einsatz kommt, wenn die Anzahl der Listeneinträge von vorneherein bekannt und unveränderlich ist.
DynamicList

Die DynamicList stammt von der RadioButtonGroup ab und ist daher genauso vielseitig wie diese. Sie wird eingesetzt, wenn die Anzahl der Listeneinträge nicht von vorneherein bekannt ist und / oder sich während des Programmablaufs verändert.
View
mit einem
BitmapContent

Die View Objektklasse stellt ein "Fenster" bereit, in dem beliebige grafische Daten - einschließlich Texte - dargestellt werden können. Die Inhalte dieses Fensters, d.h. die grafischen Daten, werden vom "Content"-Objekt (content: engl. Inhalt) bereitgestellt. Dieses Objekt muss nur die Daten darstellen können. Alles andere, wie Scrolling, Zoom oder Clipping (engl. to clip: beschneiden) macht das View.
Objekte der Klasse BitmapContent werden als "content" Objekt an ein View gebunden. Sie verwalten eine editierbare Bitmap. In die Bitmaps der Klasse BitmapContent kann Text oder Grafik geschrieben werden. Das BitmapContent-Objekt legt die zugehörige Bitmap automatisch selbst an, so dass sie sofort benutzt werden kann.

BitmapContent Objekte können auf Maus- und Tastaurereignisse reagieren, indem der Programmierer entsprechnde Handler schreibt. Außerdem können sie mit der Zwischenablage arbeiten.

Canvas

Objekte der Klasse Canvas stellen eine Grafik dar, indem sie ihren OnDraw Handler aufrufen. Zusätzlich verfügen sie über einen gepufferten Modus, der sehr schnell arbeitet. Canvas Objekte können auf Mausereignisse reagieren, indem der Programmierer entsprechnde Handler schreibt. Außerdem können sie mit der Zwischenablage arbeiten.
Image

Ein Imageobjekt dient dazu, eine Grafik anzuzeigen, die als fertiges Bild in einer Datei oder in der PictureList vorliegt. Der Programmierer muss nichts weiter tun als die anzuzeigende Grafik zu spezifizieren.Das Imageobjekt kann auch Animationen ohne weiteres Zutun des Programmierers abspielen.

Unterstützte Grafik-Formate:
  • Grafik-Dateien: JPG, BMP, ICO, PCX, GIF, TGA, RLE, DIB, SCR (BreadBox SplashScreen)
  • VM-Dateien: GEOS Hintergrund Dateien, Resource-Maker Dateien (Bitmaps und GStrings)
  • Animationen: GIF, FLC, FLI, BreadBox QuickCam Format
Memo

InputLine

Die R-BASIC Textobjekte erlauben das einfache Eingeben von Text, ohne dass Sie als Programmierer sich um irgendwelche Details kümmern müssen. Die Textobjekte behandeln Tastatur- und Mausereignisse selbständig und erzeugen bei Bedarf eine vertikale Scroll-Leiste. Sie registrieren, ob der Text vom Nutzer verändert wurde und können bei Bedarf Messages aussenden, um den Rest des Programms über bestimmten Ereignissen zu informieren.

Alle Textobjekte können mit der Zwischenablage (Clipboard) kommunizieren.

In R-BASIC stehen zwei Textobjekt Klassen zur Verfügung. Die Klasse Memo stellt einen einfachen Texteditor bereit. Sie unterstützt einen automatischen Zeilenumbruch und die Entertaste beginnt einen neuen Absatz. Die Klasse InputLine dagegen ist für die Eingabe einzeiliger Texte, z.B. von Dateinamen, gedacht.

FileSelector

Ein FileSelector stellt die UI bereit, die notwendig ist, um eine Datei oder ein Verzeichnis auszuwählen. Klickt der Nutzer auf einen Eintrag sendet der FileSelector eine Notification-Message aus und der Programmierer kann entscheiden was passiert. Häufig wird die entsprechende Datei dann geöffnet. Die Navigation durch die Verzeichnisse handelt der FileSelector dabei selbständig.

Welche Dateien in der Liste angezeigt werden kann über diverse Kriterien, z.B. das Token der Datei oder eine Dateimaske eingestellt werden.

ColorSelector

Ein ColorSelector stellt die UI bereit, die notwendig ist, um eine Farbe, ein Füllmuster oder ein Füllraster auszuwählen.

Welche der Eigenschaften (Farbe, Füllmuster, Raster) dem Nutzer zur Auswahl angeboten werden kann eingestellt werden. Per default sind es nur die Indexfarben, wie im linken Bild dargestellt.

Display und DisplayGroup

Objekte der Klasse Display sind die "Fenster" in denen alle großen Applikationen ihre Daten anzeigen. Displays müssen Children eines DisplayGroup Objekts sein. Die Displays selbst enthalten weitere UI-Objekte, die die eigentlichen Informationen darstellen. Im Bild links ist das ein Memo-Objekt.

Eine DisplayGroup stellt den Bereich bereit, in dem die Displayobjekte dargestellt werden. Im Bild sind drei Displays in einer DisplayGroup zu sehen.
DisplayControl

Das DisplayControl stellt die UI bereit, mit der der Nutzer die Displays in der DisplayGroup anordnen kann. Außerdem enthält es eine Liste der Displays in der DisplayGroup. Wie im Bild zu sehen ist das DisplayControl üblicher Weise ein Child des "Fenster" Menüs.
DocumentGuardian


Das DocumentGuardian-Objekt ist unsichtbar.

Viele Programme arbeiten mit Dokumenten, die der Nutzer anlegen, bearbeiten, speichern und weitergeben kann. Objekte der Klasse DocumentGuardian erleichtern Ihnen den Umgang mit solchen Dokumenten, indem Sie allgemeine Informationen, die bei der Arbeit mit Dokumenten anfallen, verwalten. Dazu zählen z.B. der Name und der Pfad zur Dokumentendatei, der Dateityp, das Token sowie das FileHandle der offenen Datei.

DocumentGuardian-Objekte sind dafür ausgelegt mit der Library "DocumentTools" zusammenzuarbeiten. Diese Library bietet z.B. die zur Dateiarbeit nötigen Dialogboxen wie "Öffnen" und "Speichern unter" an.

DocumentGuardian Objekte können auch mit der "VMFiles" Library zusammenarbeiten. Diese Library erlaubt den Zugriff auf die leistungsfähigen "Virtual Memory" (VM)-Dateien, die von allen großen GEOS Anwendungen als Dokumente genutzt werden.

PrintControl


Das PrintControl-Objekt selbst ist unsichtbar. Es stellte aber den Drucken-Dialog bereit.

PrintControl: der "Drucken"-Dialog

Wenn Sie aus einem R-BASIC-Programm heraus drucken wollen müssen Sie ein PrintControl-Objekt benutzen. Das PrintControl-Objekt stellt der "Drucken"-Dialog bereit und steuert alle für das Drucken notwendigen Vorgänge.
PageSizeControl

Wenn der Nutzer die Möglichkeit haben soll, die Seitengröße eines Dokuments einzustellen, sollten Sie ein PageSizeControl Objekt verwenden, dass die zur Einstellung der Seitengröße, des Papierformats und der Ränder notwendige UI bereitstellt.

 

Neues in der aktuellen Version

Wichtige Neuerungen:
  • Integrierter Debugger zur Fehlersuche
    • Breakpoints - Stopp an gewünschten Programmstellen
    • Automatischer Breakpoint bei Laufzeitfehlern
    • Einzelschrittbetrieb in verschiedenen Varianten
    • Anzeige und Ändern von Variablen
    • Anzeige des Routinenstacks (Aufrufreihenfolge der Routinen) und anderer Stackeinträge
  • Eine Error-Checking oder eine Non-Error-Checking Version ist complierbar
    Anweisungen EC,NC,ECON,ECOFF
  • Die neue Systemvariable kc85Features erlaubt eine Kompatibiltät mit dem KC 85/3 auf BASIC-Ebene. Das ermöglich die Portierung von KC-85-BASIC Programmen nach R-BASIC. Einige der KC 85 Features können auch für andere Programm von Interesse sein.
  • Das Beispiel "Simple Port Demo" zeigt wie man sehr einfach ältere klassische BASIC Programme unter R-BASIC zum Laufen bekommt. Ein etwas umfangreicheres Beispiel zum Portieren von KC-85 Programmen und der Benutzung von KC-85 Spezifika wie z.B. dem Zeichengenerator ist auch verfügbar.
  • Das neue printFont.style flag TS_DONT_EXEC_CONTROLS erlaubt es, Steuerzeichen (ASCII unter 32) als druckbare Zeichen zu nutzen. Das ist sinnvoll im Block-Font Modus.
  • Die Struktur GraphicDrawStruct hat ein neues Feld: drawFlags. Dort ist das Flag GDF_SCALE_PSET definiert, das bewirkt, dass die von PSet und PReset gesetzten Punkte als kleine Flächen gezeichnet werden, so dass sie vergrößert werden, wenn der Screen skaliert wird.
  • Es gibt drei neue Objektklassen: Display (Dokument Fenster), DisplayGroup (managed die Fenster) und DisplayControl (stellt die UI für das Fenster-Menü bereit).
    Da das Primary Objekt vom Display abstammt erbt es die neuen Fähigeiten des Display Objekts.

 


 

R-BASIC im Überblick

Klicken Sie auf die Bilder für eine Großdarstellung. Diese Übersichten stammt aus dem R-BASIC\Dokumente Ordner (GeoDraw-Dokumente).

Überblick R-BASIC Kommandos

Überblick R-BASIC Objekte


 

  Zurück zum Anfang


r*bettsteller#web*de ---- If you are not a robot replace * by . (dot) and # by @
Wenn Sie kein Roboter sind ersetzen Sie * durch . (Punkt) und # durch @ (Klammeraffe)
Datenschutzerklärung | Haftungsausschluss | Impressum | Privacy Policy (English) | Disclaimer (English)