Programátorské řemeslo je dnes oblastí velmi rozlehlou, komplikovanou a
nesmírně různorodou. Cesta adepta tohoto umění je lemována úskalími různých
programovacích jazyků a mnohými metodami použití algoritmů při práci s daty.
Příchod graficky orientovaných operačních systémů rovněž stvořil kategorii
programátorů, jejichž snahou není optimalizovat náročné algoritmy, ale sestavit
uživatelsky orientovanou aplikaci. Právě tento trend dal vzniknout produktům,
jako jsou Visual Basic či např. Delphi. Dnes bychom vám rádi představili
zajímavé vývojové prostředí, jež náleží právě do této skupiny, a navíc nabízí
skvělou možnost vyvíjet graficky orientované programy pro různé platformy (tedy
to, oč se, samozřejmě v mnohem sofistikovanější podobě, snaží v poslední době
Borland s Kylixem a Delphi). Z titulku je zřejmé, na které operační systémy
můžete programy portovat, a navíc je tu důležitý fakt nástroj je dostupný
zdarma! naleznete verze pro Linux, MacOS, MacOS X a Windows, takže si vyberte
dle libosti. Následující průvodce ukazuje skutečně nejzákladnější použití pro
další studium naleznete potřebné informace přímo v samotném programu.
Co si vyzkoušíme?
V tomto podrobném návodu si spolu připravíme jednoduchý program (v prostředí
Revolution nazývaný "stack") a ukážeme si na něm, jak se v tomto nástroji
vytváří uživatelské rozhraní a jak zařídíme ukládání a načítání údajů z datové
struktury typu pole. Nedělejte si těžkou hlavu, pokud hned neporozumíte
programovému kódu hlavním cílem je seznámit se s nástrojem pro tvorbu
grafického rozhraní. Samotnou aplikaci a zdrojový kód vytvářeného prográmku
naleznete na našem CD.
Začínáme v nástroji Revolution
Spusťte aplikaci Revolution a poté klikněte na tlačítko New na levém okraji
nástrojové lišty. Po vytvoření nového projektu vyberte v menu Object volbu
Stack Properties obrazovka by měla vypadat jako na našem prvním obrázku. Plocha
obsahuje nějaká okna v levé části paletu nástrojů (Tools palette), uprostřed je
váš nový projekt (stack), v horní části již zmíněná nástrojová lišta a vpravo
jsou náhled aplikace (Application Overview) a vlastnosti projektu (Stack
Properties). Není-li náhled aplikace otevřen, vyberte jej z menu View. První
věc, kterou byste o Revolution měli vědět, je metaforické názvosloví, používané
pro označení vytvářených programů. Tvorba je vizuálně zaměřena, a proto je
každé okno či obrazovka označeno jako card (karta) a celá aplikace pak
jednoduše jako stack (stoh těchto karet). Pouze jediná karta může být zobrazena
v jakoukoliv chvíli, avšak pokud vaše aplikace potřebuje zobrazit vícerá okna,
musíte si vytvořit násobný program (tzv. multiple stack). Tak, a to nejtěžší
máme za sebou teď již pojďme vytvářet!
Tvorba rozhraní
Klikněte na svém projektu a vyberte Stack Properties v menu Object. V poli Name
zadejte "Example Stack 1". V poli Label vložte název "Contacts Manager",
hodnotu v poli width (šířka) nastavte na 450 a v poli height (výška) na 300.
Tyto úkony by měly změnit vzhled vašeho stacku na obrazovce. Nyní si přidáme na
plochu karty (card) nějaké prvky a začneme dvěma velkými rolovacími okny.
Na paletě nástrojů (Tools Palette) vyberte nástroj s prvkem "pole s rolovacím
seznamem" (Scrolling list field obr. 2-A) a přetažením jej umístěte na
rozpracovanou plochu-kartu. Zopakujte proceduru a druhý prvek umístěte pod
předchozí. Dvojklikem na horním ze dvou prvků vyvolejte jeho paletu vlastností
(Properties palette) a vložte "Contacts" jako jméno tohoto pole. Operaci
zopakujte u spodního pole s tím, že jméno bude "Details".
Déle si přidáme dva prvky s názvy a využijeme při tom nástroj pro pole s názvem
(Label field tool obr. 2-B). U obou prvků postupně otevřete paletu vlastností
(Properties Palette) a zvolte položku Tab. Zde je k dispozici textové pole pro
zadání vlastní hodnoty pole s názvem u horního prvku použijte "Contact:", u
dolního pak logicky "Contact Details".
Stejným způsobem postupně přidejte do středu karty prvek pro pole jméno (name),
e-mailovou adresu (email) a telefonní číslo (telephone number). Opět použijte
výše popsaný postup. Pro úpravu zobrazeného textu v prvcích opět použijte
dvojkliku a následně zobrazeného dialogu Properties Palette. Zvolte Field tab a
vložte postupně texty, jež mají být zobrazeny "Name:" do prvního, "Email:" do
druhého a "Phone:" do třetího textového pole.
V hotové ukázkové aplikaci (či na obrázku) si můžete na pravé straně všimnout
tří prázdných textových polí. Přidejte si je podobným postupem pomocí prvku
pole (field tool) a pojmenujte je postupně "name", "email" a "phone". Pod ně
ještě potřebujeme umístit tlačítko postupujte podobně a pojmenujte je "Add".
Úplně nakonec potřebujete umístit popis s textem "Add contact:" a i zde je
postup analogický".
Přidáváme skripty
Dosud jsme se věnovali návrhu uživatelského rozhraní, nyní nadešel čas vytvořit
kód, jenž bude zajišťovat funkcionalitu. Proto jednoduše poklepejte myší na
tlačítko "Add", zvolte Script tab a zadejte dále uvedený kód programu. Prozatím
se netrapte, pokud vám jeho obsah příliš neříká.
global gContacts
on mouseUp
if the number of lines in field "Contacts" >= 10 then
answer "You have entered 10 records!"
exit mouseUp
end if
put "Email:" && the text of field "Email" & cr & "Phone:" && the text of
field "Phone" into gContacts[the text of field "Name"]
lock screen
set the text of field "Contacts" to keys(gContacts)
put empty into field "Name"
put empty into field "Email"
put empty into field "Phone"
unlock screen with visual effect dissolve very fast
end mouseUp
Luštíme kód krok za krokem
Nyní si obsah použitého skriptu vysvětlíme blíže. Důležité jsou především řádky
"on mouseup" a "end mouseup", jež stručně řečeno ohraničují vše, co bude
provedeno při stisku přiřazeného tlačítka. Všimněte si, jak je použit příkaz
"put" pro uložení údajů do datového pole (gContacts) a do objektů v
zobrazovaném rozhraní (např. v prvku Name"). Příkaz "set" je používán k
nastavení vlastností objektu v tomto příkladu byl využit pro definování
textového obsahu pole "Contacts".
Příkaz "If" je v prostředí Revolution podobný známé funkcionalitě z jiných
programovacích jazyků. V našem příkladě jsme jej použili pro kontrolu počtu
přidaných kontaktů. Při překročení hranice deseti záznamů je použit příkaz
výstupu, je zobrazena varovná zpráva ve speciálním okně a na závěr je příkazem
"exit" ukončeno provádění skriptu.
Nicméně je-li záznamů v seznamu méně než deset, zbytek kódu se bude provádět.
Nejdříve skript uloží, pomocí příkazu "put", obsah prvků email a phone do
proměnné typu pole s názvem gcontacts. Revolution umí uložit položky do pole a
odkazovat se na ně použitím jmen či čísel v tomto příkladu je použit jako
klíčový údaj pro odkaz jméno osoby. Tento klíč jednoduše ukazuje do na položku-
záznam ve vytvořeném poli.
Dokončujeme kód
Již se blížíme k závěru! Vše, co nyní musíte udělat, je zvolit rolovací pole
Contact a v něm dále otevřít okno pro editaci skriptu (script editing window),
vše pomocí kliknutí. Vložte následující kód:
global gContacts
on mouseUp
put gContacts[the hilitedText of me] into field "Details"
end mouseUp
Určitě si pamatujete, že pole bylo uloženo se jménem jako odkazovacím klíčem.
Uvedený skript zprostředkuje, že po kliknutí na seznam bude určité jméno
zvýrazněno. Vybrané jméno bude je skriptu vráceno jako vlastnost "hilitedText"
a následně použito jako klíč pole. Právě tento klíč je poté použit pro otevření
pole na příslušném místě a obsah záznamu je zobrazen v okně v poli "details".
Jsme u konce!
Právě jste dokončili vaši první aplikaci v prostředí Revolution, gratulujeme!
Pro její spuštění jednoduše klikněte na prohlížeči (browse tool ikona s rukou
při levém okraji nástrojové lišty). Vyzkoušejte zadávání všech údajů, následně
funkci "přidávacího" tlačítka a zkontrolujte si, že se údaje korektně
zobrazují. Můžete samozřejmě vyzkoušet také výběr jména a zobrazení detailů v
příslušném okně. A je to!
Jak jsme zmiňovali na počátku, tento příklad je skutečně velmi, velmi
jednoduchý. Nástroj Revolution nabízí značně pokročilé možnosti a bude záležet
jen na vás, jak dalece jeho možnosti využijete.
Opravdové možnosti
Z uvedeného příkladu by mohlo mylně vyplynout, že vám představujeme hračku
nepoužitelnou při opravdu praktické tvorbě aplikací. Nenechte se zmást lehce
infantilním příkladem pro naprosté začátečníky, vše je samozřejmě jinak
Revolution je zcela plnohodnotné vývojářské prostředí, s jehož pomocí lze
vytvářet velmi kvalitní aplikace s grafickým uživatelským rozhraním. Výsledek
vaší práce lze pochopitelně spouštět nejen z vývojářského rozhraní, ale
především v binární podobě, tedy jako kompilovaný klasický program, a to na
řadě platforem. Zde se právě projeví síla tohoto produktu, neboť při tvorbě
např. ve Windows lze kód zkompilovat např. pro Linux či jiný UNIX.
Mezi slušně propracované části rovněž patří konektivita k databázím. Revolution
nabízí komponenty, s jejichž pomocí dobře zvládnete spolupráci s datovými
zdroji, a umožní vám tak vybudovat opravdu kvalitní a seriózní aplikace.
Poměrně kvalitním a obsažným zdrojem pro další studium jsou příručky v samotné
aplikaci klasická nápověda obsahuje dosti obsáhlé příručky s řadou příkladů,
referenčními informacemi a popis jazyka (skriptu). Tento zdroj vám bude
bezesporu dostačovat pro velmi slušné zvládnutí tohoto prostředí a odhalení
jeho zajímavých možností.
Jakékoliv informace naleznete na adrese www.runrev.com a instalaci programu
včetně příkladů v tomto článku najdete.