Hier werde ich nun versuchen die Programmierung des Deepl Übersetzer Tools zu veranschaulichen.
Es sind alle herzlich dazu eingeladen mit zu basteln..
Wer kein Hollywood hat kann sich dennoch an den Grafiken oder am Gui austoben.
Folgendes wird benötigt:
Hollywoodplayer - https://www.hollywood-mal.com/download/ ... _Amiga.lha
Rapagui Plugin - https://www.hollywood-mal.com/download/ ... _Amiga.lha
Zum nachschlagen:
Hollywood Doc - https://www.hollywood-mal.com/docs/html/hollywood
Rapagui Doc - https://www.hollywood-mal.com/docs/html/rapagui
Und los geht's!
Heute werden wir uns nur das Gui bauen ohne jegliche Funktionen.
Der Code für Hollywood:
Code: Alles auswählen
/* Plugins und Includes */
@REQUIRE "RapaGUI" ; Hollywood mitteilen das wir das RapaguiPlugin benötigen
/* Information über das Programm */
@APPTITLE "Deepl"
@APPVERSION "$VER: 0.01 (15.11.2021)"
@APPCOPYRIGHT "(c) copyright 2021 by root"
@APPAUTHOR "root"
@APPDESCRIPTION "Gui for deepl translations"
/* GFX */
LoadBrush(1,"Banner.png") ; Datei "Banner.png" wird als Brush 1 geladen
/* Gui aus externe XML erstellen */
moai.CreateApp(FileToString("001-Gui.xml")) ; Datei "001-Gui.xml" wird als String eingeladen und damit dann das Programm erstellt
/* Main Loop */ ; Lässt das Programm in einer Endlosschleife laufen
Repeat
WaitEvent
Forever
Jetzt bauen wir uns noch die Gui zusammen.
Dazu überlegen wir uns was wir alles brauchen
- Bild
- 2x Auswahlknopf für die Sprachen
- 2x Texteingabefeld zur eingabe von Texten
- 4x Buttons copy, paste, usw.
Dazu habe ich mal ein XML Grundgerüst gebaut
Code: Alles auswählen
<application id="app">
<window title="Hello!" height = "800">
<vgroup frame="false" color="#ffffff">
<label Align="left">Hello OS4 Welt!</label>
</vgroup>
</window>
</application>
<vgroup/> - definiert eine Gruppierung mit Elementen, diese werden dann v - vertikal oder h - horizontal angeordnet https://www.hollywood-mal.com/docs/html ... Group.html
<label/> - Einfacher Text https://www.hollywood-mal.com/docs/html ... Label.html
Nun wollen wir das Bild (Brush 1) einfügen das geht dann auch ganz einfach.
Wir entfernen die Zeile mit "<label Align="left">Hello OS4 Welt!</label>" und schreiben dafür
<image brush="1"/> - https://www.hollywood-mal.com/docs/html ... Image.html
fertig.
Jetzt möchten wir den Auswhalknopf für die verschiedenen Sprachen einbauen aber davor soll noch der Text "Source:" stehen. Also packen wir die beiden Sachen in eine Gruppe und das sieht dann so aus.
<hgroup HorizSpacing="150" padding="0">
<label Align="left">Source:</label>
<choice id="s_cycle"> https://www.hollywood-mal.com/docs/html ... hoice.html
<item>Automatic</item>
<item>Bulgarian</item>
<item>Czech</item>
<item>Danish</item>
<item>German</item>
</choice>
</hgroup>
Ihr seht es ist gar nicht so schwer....
Nu kommt noch die Texteingabe direkt darunter
<texteditor id="t_input" styled="true" nowrap="true"/> https://www.hollywood-mal.com/docs/html ... ditor.html
Zack fertig.
Der Rest sollte sich ja dann von selbst erklären
So sieht das fertige Gui Code dann aus.
Code: Alles auswählen
<application id="app">
<window title="Deepl" id="window" height = "800">
<vgroup frame="false" color="#ffffff">
<image brush="1"/>
<hgroup HorizSpacing="150" padding="0">
<label Align="left">Source:</label>
<choice id="s_cycle">
<item>Automatic</item>
<item>Bulgarian</item>
<item>Czech</item>
<item>Danish</item>
<item>German</item>
<item>Greek</item>
<item>English (GB)</item>
<item>English (US)</item>
<item>English</item>
<item>Spanish</item>
<item>Estonian</item>
<item>Finnish</item>
<item>French</item>
<item>Hungarian</item>
<item>Italian</item>
<item>Japanese</item>
<item>Lithuanian</item>
<item>Latvian</item>
<item>Dutch</item>
<item>Polish</item>
<item>Portuguese (PT)</item>
<item>Portuguese (BR)</item>
<item>Portuguese</item>
<item>Romanian</item>
<item>Russian</item>
<item>Slovak</item>
<item>Slovenian</item>
<item>Swedish</item>
<item>Chinese</item>
</choice>
</hgroup>
<texteditor id="t_input" styled="true" nowrap="true"/>
<vspace height="5"/>
<hgroup HorizSpacing="120" padding="0">
<label Align="left">Destination:</label>
<choice id="d_cycle" Active="3">
<item>Bulgarian</item>
<item>Czech</item>
<item>Danish</item>
<item>German</item>
<item>Greek</item>
<item>English (GB)</item>
<item>English (US)</item>
<item>English</item>
<item>Spanish</item>
<item>Estonian</item>
<item>Finnish</item>
<item>French</item>
<item>Hungarian</item>
<item>Italian</item>
<item>Japanese</item>
<item>Lithuanian</item>
<item>Latvian</item>
<item>Dutch</item>
<item>Polish</item>
<item>Portuguese (PT)</item>
<item>Portuguese (BR)</item>
<item>Portuguese</item>
<item>Romanian</item>
<item>Russian</item>
<item>Slovak</item>
<item>Slovenian</item>
<item>Swedish</item>
<item>Chinese</item>
</choice>
</hgroup>
<texteditor id="t_output" styled="true" nowrap="true"/>
<vspace height="5"/>
<hgroup HorizSpacing="10">
<button id="b_copy">Copy</button>
<button id="b_paste">Paste</button>
<button id="b_swap">Swap</button>
<button id="b_translate">Translate</button>
</hgroup>
</vgroup>
</window>
</application>
Da das XML File extern geladen wird kann sich jeder daran vergehen
Im Anhang findet ihr das komplette Paket bestehend aus.
*.hws - der Code für Hollywood
*.hwa - fertiges Hollywood Applet ausführbar mit dem Hollywoodplayer
*.xml - Gui Code