erste Dokumentation zur inhalt.xml
Um Inhalte hinzuzufügen bzw. zu editieren, die jar-Datei mit einem ZIP-Packer öffnen und die darin enthaltene Datei inhalt.xml in einem Texteditor bearbeiten. Achtung: die Datei MUSS mit Unix-Zeilenumbrüchen gespeichert werden, sonst startet die Java-Anwendung auf dem Telefon nicht mehr! Abschließend die jar-Datei (mit der neuen inhalt.xml) auf das Mobiltelefon übertragen.
Tip: der jar-Datei vorübergehend eine .zip-Endung geben
<?xml version="1.0" standalone="yes"?> <Brian> <Berechnungen> |
root kann irgendwas sein Elemente ohne Attribute oder Inhalt erscheinen als Liste zur Navigation |
<page name="Temp" descr="Celsius/Fahrenheit">
|
page definiert eine Formelberechnung Attribute: name muss sein, descr ist ein optionaler text zur erläuterung |
<feld name="°C" init="15" />
<feld name="°F" init="59" rund="1" />
|
hier werden 2 Zahleingabefelder definiert |
<formel val="#0*1.8+32" />
<formel val="(#1-32)*(5/9)" />
|
hier werden die Formeln zur Umrechnung definiert Attribut: val enthält die Formel (gültige Operatoren siehe unten) zur strikten Anzahl und Reihenfolge der Formeln siehe unten |
</page>
</Berechnungen>
|
(Elemente schliessen) |
<Texte>
<text name="eins" descr="ein kurzer Text" image="bild.png" />
|
ein neues Navigationselement alle Elemente, die nicht leer sind, werden als Text dargestellt (egal, ob sie text heissen oder nicht) Attribute: name muss sein, descr ist optionaler Text, image ist der optionale Dateiname eines png-Bildes im jar-Archiv |
<text name="zwei" monospace="true" size="small">
Ein laengerer Text kann auch Zeilenumbrueche enthalten,
die dann so direkt auch in der
xml-Datei enthalten
sein muessen.</text>
|
zweites Textbeispiel hier steht der Text als Inhalt des Elementes und es sind zusätzlich noch optionale Fontauszeichnungen angegeben: monospace="true" - wählt einen monospace-Font size="small" oder size="large" - klar, oder? |
</Texte> </Brian> |
(Elemente schliessen) |
Bitte beachten: auf einigen Nokia-Telefonen ist die Größe einer jar-Datei auf 64kB limitiert.
zu den Formeln:
um die Werte der Eingabefeldern zu verwenden, wird das Sonderzeichen # benutzt,
und direkt danach die Nummer des Eingabefeldes angegeben. Die Zählung beginnt
mit 0 für das erste Feld! Der Wert des zweiten Eingabefeldes wäre
also #1
| Name | Beispiel | Beschreibung |
|---|---|---|
| Zuweisung | x=1 | Assign value to variable. After execution of this statement, it is possible to access variables from other expressions. |
| Conditional operator | c?x:y | If value of expression left to question sign is true, than value of conditional
expression is value of the expression after question sign, otherwise - value
of expression after colon sign.The following conditional expression for
example example is used to calculate fibonnachi numbers: fib(x)=x<2?1:fib(x-1)+fib(x-2)
|
| größer als | x>y | wahr, wenn x größer als y - um eine wohlgeformte XML-Datei zu erhalten, als Entity schreiben: > ! |
| kleiner als | x<y | wahr, wenn x kleiner als y - um eine wohlgeformte XML-Datei zu erhalten, als Entity schreiben: < ! |
| zwischen | 1<x<5 | wahr, wenn x zwischen 1 und 5 liegt um eine wohlgeformte XML-Datei zu erhalten, als Entity schreiben: 1<x<5 ! |
| Sequence | x=1,y=2 | Sequence of expressions. Expression are evaluated in left-to-right order and result of the last expression is used. using sequences of expressions allows to write the simplest programs. |
| Addition | x+y | Sum of two operands |
| Subtraction | x-y | Difference of two operands |
| Multiplication | x*y | Multiplication of two operands |
| Division | x/y | Division of first operand on the second operand |
| Potenz | x^y | x hoch y |
| Integer part | [x] | ganzzahliger Anteil |
| Floating part | {x} | Nachkommastellen |
| Absolute value | |x| | Absoluter Betrag |
| Klammern | (x) | Klammerausdrücke können verschachtelt werden |
| Sine | sin(x) | Sine |
| Cosine | cos(x) | Cosine |
| Tangent | tan(x) | Tangent |
| Arc sine | asin(x) | Arc sine |
| Arc cosine | acos(x) | Arc cosine |
| Arc tangent | atan(x) | Arc tangent |
| Exponent | exp(x) | Exponent |
| natürlicher Logarithmus | ln(x) | Natural logarithm |
| dekadischer Logarithmus | log(x) | common logarithm |
| Ceil | ceil(x) | Smallest integer value not less than operand |
| Floor | floor(x) | greatest integer value not greater than operand |
| Wurzel | sqr(x) | Wurzel |
Formelanzahl und Reihenfolge
die Anzahl der Formeln hängt von der Anzahl der Eingabefelder (theor. max.
9) ab:
| Felder | Formeln |
|---|---|
| 2 | 2 |
| 3 | 6 |
| 4 | 12 |
| 5 | 20 |
die Reihenfolge der Formeln muss wie folgt eingehalten werden:
| Anzahl Felder | Formel-Nr | wird benutzt bei Änderung im Feld | berechnet Wert für Feld |
|---|---|---|---|
| 2 | 1 | 1 | 2 |
| 2 | 2 | 1 | |
| 3 | 1 | 1 | 2 |
| 2 | 1 | 3 | |
| 3 | 2 | 1 | |
| 4 | 2 | 3 | |
| 5 | 3 | 1 | |
| 6 | 3 | 2 |
Christian Güssmer 2005-06