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.A - März 2019

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.

Aktuelle Änderungen und Neuerungen auf dieser Seite Hier finden Sie eine Liste von Downloads auf dieser Seite, die mit der aktuellen R-BASIC Version hinzugefügt oder geändert wurden. Sie sollten Sie herunterladen, um auf dem neuesten Stand zu sein.


 

Download R-BASIC
Version 0.9.9.A
March 2019

   
 • R-BASIC IDE (1,3 MB)
 • Beispiele (2,7 MB)

   
 • Dokumentation (2,3 MB)

   
 • Images (17 kB)
 


Zusätzlich empfohlen  
Vielleicht erforderlich:
 

 


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
    Diese ZIP-Archive müssen Sie alle herunterladen wenn Sie die neueste Version von R-BASIC installieren wollen. Sie enthaltendie 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

    • 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.
    • 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)
    • 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. Empfohlene Pakete
    Dies sind einige wichtige zusäliche Dateien, die zum Programmieren mit R-BASIC oftmals gebraucht werden. Die zusätzlichen 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. Vielleicht erforderlich
    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
  • Es gibt zwei neue Objektklassen: ViewControl und GenContent.
  • Die View Klasse wurde extensiv erweitert und ist nun fertiggestellt. Das umfasst unter anderem erweiterte Möglichkeiten der UI Konfiguarion und die Definition eigener Mauszeiger.
  • Das Tool-Programm "Mouse Pointer Creator" vereinfacht das Erstellen eigener Mauszeiger.
  • Die ESC Taste schließt diverse Dialoge, insbesondere den Wizzard Dialog.
  • Die Funktion Convert$ kann jetzt HTML und UTF-8 kodierte Texte lesen und erzeugen.
Neue Beispiele (klicken Sie hier für eine Liste aller Beispiele):
  • Objekte\View-Content\ViewControl Demo
  • Objekte\View-Content\Mauszeiger und Freihandlinie
  • Objekte\View-Content\Scale To Fit in beide Dimensionen
  • Objekte\View-Content\Verlinkte Views
  • Objekte\View-Content\Dragging Demo
  • Objekte\View-Content\GenContent Demo
  • Objekte\View-Content\GenContent Demo 2
Neue Kapitel im Handbuch:
  • Updated: Benutzerhandbuch, Kapitel 5.1: WaitForHandles Beschreibung geändert
  • Erweitert: Programmierhandbuch, Kapitel 2.4.3: Convert$ Funktionalität stark erweitert
    Deshalb haben sich die Seitennummern aller folgenden Kapitel des Programmierhandbuchs (Volume 2 bis 5) verändert.
  • Updated: Objekt Handbuch, Kapitel 4.1.3.1: Programmstart
  • Intensiv erweitert: Objekt Handbuch, Kapitel 4.9.5: View
  • Neu: Objekt Handbuch, Kapitel 4.9.5: GenContent
  • Neu: Objekt Handbuch, Kapitel 4.9.6: ViewControl
  • Updated: Spezielle Themen, Kapitel 15: Implementieren eines Dokument-Interfaces
    Es wurden zwei neue Routinen eingeführt. Deswegen mussten Kapitel 15.1, 15.3 und 15.9 geändert werden.

Inkompatible Änderungen: keine

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

Download
Mouse Pointer Creator.

Screenshot

Sourcecode

Mit diesem Programm kann man Mauspointer für R-BASIC (Befehl ViewObj.ReadPointerImage) erstellen. Um über das R-BASIC Tools-Menü direkt auf dieses Programm zuzugreifen müssen Sie eine Kopie des Programms im Ordner USERDATA\R-BASIC\Tools ablegen.
Zusätzlich kann der Mauspointer als GOC-Code gespeichert werden.

Dieses Programm ist in R-BASIC geschrieben. Es ist ohne R-BASIC Installation lauffähig.

More Tool Images (85 kB)
Version 2

März 2019
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.
Version 2 enthält zusätzliche Bilder für Tool-Buttons.
Achtung! Aus Kompatibilitäsgründen sind die Pfade auf Englisch.
R-BASIC Translator

Version 1.1
August 2015

Screenshot

Ü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

Brick Puzzle Source (250 kB)

Version 2.0
März 2019

Screenshot (Programm)

Source Code und Iconeditor-Datei des Spiels "Brick Puzzle".
Der Code zeigt unter anderem die Verwendung der Maus, insbesondere das Verschieben (Dragging) von Objekten (Umrissen) über den Bildschirm, wie man Text ohne flackern auf eine Grafik schreibt und das Abspielen von Hintergrundmusik. Der Spielstand wird automatisch in einer Datei gespeichert und beim Neustart wieder von dort geladen. Besonderer Wert wurde auf die Dokumentation und Struturierung des Codes gelegt, so dass nicht nur Fortgeschrittene von ihm profitieren können.

Level: Einsteiger mit Erfahrung

Das compilierte Programm (R-App) kann man hier downloaden.

Käferfang Source (101 kB)

Version 2.0
März 2019

Screenshot (Programm)

Source Code und Iconeditor-Datei des Spiels "Käferfang".
Im Original ist das Spiel ein KC-85 Programm. Im Archiv gibt es neben dem originalen, unportierten Code zwei Versionen des R-BASIC Programms. Die erste Version zeigt, wie man ein klassiches BASIC Programm (egal von welchem System) nach R-BASIC portieren kann. In der zweiten Version wurden die klassischen BASIC Relikte wie Zeilennummern und GOSUB Befehle entfernt und durch Subroutinen und Funktionen ersetzt. Dieser Code ist wesentlich übersichtlicher.

Level: Einsteiger mit Erfahrung

Das compilierte Programm (R-App) kann man hier downloaden.

Orbit Source (104 kB)

Version 2.0
März 2019

Screenshot (Programm)

Source Code und Iconeditor-Datei des Spiels "Orbit".
Im Original ist das Spiel ein KC-85 Programm. Der Code zeigt, wie man ein klassiches BASIC Programm (egal von welchem System) nach R-BASIC portieren kann. Mit im Archiv ist der originale, unportierte Code.

Level: Einsteiger mit Erfahrung

Das compilierte Programm (R-App) kann man hier downloaden.

Mouse Pointer Creator Source (81 kB)

Version 1.0
November 2018

Screenshot (Programm)

Source Code und Iconeditor-Datei des Tools "Mouse Pointer Creator". Dieses Beispiel zeigt wie man mit der Maus eine Grafik bearbeiten kann. Außerdem wird eine eigener Mauszeiger verwendet. Die Mauszeigerbilder können in eigenen Dateien gespeichert werden.

Das Programm besteht aus zwei Teilen: dem eigentlich Programm, mit dem man Mauszeiger-Bilder erstellen und den Code schreiben kann sowie dem Code für das R-BASIC Document-Interface. Der Code ist so strukturiert, das man den ersten Teil verstehen und nachnutzen kann, ohne sich mit dem Code für das Document-Interface zu beschäftigen.

Level:
Teil 1: Bearbeiten und exportieren von Mauszeiger-Bildern: Fortgeschrittene
Teil 2: Document-Interface: Experten

Das compilierte Programm (R-App) kann man hier downloaden.

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.

GenContent

Objekte der Klasse GenContent dienen dazu, Generic Class Objekte (z.B. Buttons) in einem scrollbaren View darzustellen. Die Applikation "Voreinstellungen" macht von dieser Möglichkeit Gebrauch.

GenContent-Objekte können jede Art von Generic Class Objekten als Children haben. Im Bild auf der linken Seite sind das drei Buttons, eine RadioButtonGroup und ein Canvas Objekt.

ViewControl

Ein ViewControl Objekt stellt die UI für das "Ansicht" Menü bereit. Im Wesentlichen kann der Nutzer damit den Zoomfaktor und einige andere Eigenschaften des kontrollierten Views einstellen.
Wenn ein View für die Interaktion mit einem ViewControl-Objket konfiguriert ist findet die Zusammenarbeit zwischen View und ViewControl automatisch, ohne weiteres Zutun des Programmierers, statt.
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:
  • Es gibt zwei neue Objektklassen: Das ViewControl stellt die UI für das Ansicht-Menü bereit. Das GenContent ermöglicht es GenericClass Objekten (wie Buttons, Listen usw) innerhalb eines scroll- und skalierbaren Views dargestelt zu werden.
  • Die View Klasse wurde extensiv erweitert und ist nun fertiggestellt. Das umfasst unter anderem:
    • Erweiterte UI konfiguration
    • Unterstützung von Drag Scrolling. Das bedeutet, dass das View scrollt wenn die Maus bei gedrückter Maustaste aus dem View gezogen wird.
    • Scrolling und Zoom über Programm-Befehle
    • Definieren eigener Mauszeiger
  • Es gibt einen neuen System Strukturtyp RectDWord der die Koordinaten eines Rechtecks speichert.
  • IDE Bedienung: Viele Dialoge (z.B. Wizzard oder Handbücher) lassen sich jetzt über die ESC-Taste schließen.
  • Ein kleiner Fehler im Document-Interface-Code wurde beseitigt indem zwei neue Routinen zum Sichern und Wiederherstellen von globalen Variablen beim Neustart von GEOS eingeführt wurden (siehe Handbuch Spezielle Themen, Kapitel 15).
  • Diverse weitere Bugs im Zusammenhang mit einem GEOS-Neustart gefixt.
  • "More Tool Images" Paket: Bild für Redraw Tool Button hinzugefügt.
  • Die Funktion Convert$ kann jetzt HTML und UTF-8 kodierte Texte lesen und erzeugen. Für diesen Zweck wurde eine Anzahl neuer Konstanten definiert und es gibt eine neue Systemvariable convertError.

 


 

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)