OpenScript muutujad
Muutuja (variable) on ajutine mahuti, mis eksisteerib vaid töötleja (handler) või rakenduse töötamise ajal. Muutuja väärtus võib olla numbriline, loogiline või tekst.
ToolBook'is eristatakse lokaalseid (local) (ühes skriptis, ühe teate töötlemisel kasutatavad) ja süsteemseid (system) (erinevate skriptide poolt, kui tahes mitu korda kättesaadavad) muutujaid.
Lokaalsete muutujate kasutamisel tuleb muutujale lihtsalt mingi väärtus omistada ja siis kohe sellega midagi ette võtta.
Süsteemsete muutujate väärtused on kättesaadavad ja ka muudetavad iga skripti poolt antud raamatus mistahes ajal.
Iga töötleja, mis mingit süsteemset muutujat kasutab, alguses tuleb antud muutuja (või komadega eraldatud muutujad) deklareerida käsuga:
system muutuja[,muutuja2,muutuja3,...]
Näiteks:
to handle buttonClick
system muutuja
.........................
end buttonUp
Kohe kui mingi muutuja esimest korda defineeritakse ilma talle väärtust omistamata või kui mistahes muutuja väärtus kustutatakse, omistatakse talle väärtus “null”.
Kuigi pole vaja määrata muutuja tüüpi (arv- või tekstmuutuja), on arvmuutujate korral kasulik kohe omistada talle mingi väärtus, näiteks 0. Muidu ei saa kasutada muutuja väärtuse suurendamise/vähendamise käske, kuna vaikimisi omistatav väärtus “null” pole arv ja seda ei saa suurendada ega vähendada.
Muutujale omistatakse väärtus järgmise käsuga (lokaalne muutuja samas ka defineeritakse):
set muutuja to väärtus (tekstimuutuja korral tuleb väärtus panna jutumärkidesse)
Näiteks:
set loendur to 10 set keel to “eesti”
Võib kasutada ka lihtsustatud kuju:
muutuja = väärtus
Muutuja väärtuse kustutamiseks on käsk:
clear muutuja
Muutuja väärtuse muutmiseks tuleb kas lihtsalt omistada uus väärtus või kasutada järgmisi võimalusi:
increment muutuja by arvväärtus arvmuutuja väärtuse suurendamiseks mingi väärtuse võrra
decrement muutuja by arvväärtus arvmuutuja väärtuse vähendamiseks mingi väärtuse võrra
set muutuja to muutuja +/- väärtus
Näide (töötleja, mis loendab külastatud lehekülgi, paigutatakse näiteks raamatu skripti):
to handle enterPage
system loendur
--suurendatakse muutuja väärtust ühe võrra, et see aga võimalik
--oleks, tuleks sellele süsteemimuutujale eelnevalt kasvõi juba
--EnterBook töötlejas anda väärtuseks 0
increment loendur by 1
end enterPage
On olemas ka üks eriline muutuja IT, millele omistatakse väärtus küsilausete kasutamise korral ja päringukäsu get kasutamisel, kuna sellistel juhtudel pole muutuja kindlaks määratud.
get mida of millelt teeb päringu mingi omaduse, väärtuse, teksti vms kohta.
Näiteks:
get text of field “info”
get position of group “kalad”
get sysTime get sysDate
Päringu tulemus omistatakse muutujale IT ja seda saab nüüd näiteks omistada mõnele teisele muutujale:
set muutuja to it
Set käsuga , millega omistasime muutujatele väärtusi, saab määrata veel paljusid asju:
set omadus of objekt to väärtus
Näiteks:
set strokeColor of field “info” to red
set fillColor of field to black
set position of button “edasi” to 1500, 2400
set caption of button “nupuke” to “vajuta veel kord”
Samas saab muutuja väärtust suunata mingile tekstiväljale või käsuaknasse selleks on käsk:
put mida kuhu
Näiteks:
put loomanimi into text of field “loom”
put loomanimi after text of field “loom”
put sysTime & crlf after text of field “aeg”
put crlf & 3+4*5 after text of field “matem”
put it into command paigutab mutuja IT väärtuse käsuaknasse
put position of selection paneb selekteeritud objekti (vasaku ülanurga) koordinaadid käsuaknasse.