Osobné nástroje
Akcie dokumentu

Programátorské prostredie Lazarus

Text popisuje, ako pracovať v prostredí Lazarus s čítačom obrazovky JAWS

Lazarus s čítačom obrazovky

Nasledujúci text stručne popisuje, ako vykonávať najbežnejšie úlohy vo vývojovom prostredí Lazarus s použitím čítača obrazovky JAWS. Text nemožno chápať ako príručku k prostrediu ako takému; v popisoch predpokladáme, že čitateľ je so základnými pojmami (názvy komponentov prostredia,...) a ich významom oboznámený.

Text popisuje prostredie Lazarus verzia 0.9.30. Informácie o tom, ako Lazarus nainštalovať, nastaviť, ale aj mnoho poučného súvisiaceho s programovaním nájdete na nasledujúcej stránke:

http://pascal.input.sk

Po prvom spustení

Úvodná obrazovka prostredia je pre používateľa čítača obrazovky neprístupná. Všetky jej možnosti sú však dosiahnuteľné z ponuky programu.

Nový projekt, resp. otváranie existujúceho projektu

Nový projekt vytvárame cez ponuku Projekt aktivovaním položky Nový. Tri tlačidlá v dialógu (v poradí tabulátora: Pomoc, OK, Zrušiť) sú nekorektne popísané, a preto k nim JAWS nečíta popisné texty. Tieto tlačidlá si možno popísať pomocou priradenia JAWS promptu takto:

  • nastavme sa na prvé tlačidlo, ktoré JAWS nečíta
  • stlačme kombináciu ctrl+jawskl+tab
  • vyplňme postupne prompt pre syntetizér, prompt pre braillovský riadok a tútorskú správu (pomocník, pomocník, tútorská správa môže zostať prázdna)

Existujúci projekt otvorme použitím položky "Otvoriť projekt..."

Práca s projektom

Po vytvorení nového alebo načítaní existujúceho projektu budeme najčastejšie pracovať s kódom, formulárom, inšpektorom objektov, paletou komponentov a niekoľkými ďalšími prvkami prostredia. V nasledujúcich podčastiach je stručný popis ovládania každej dôležitej časti.

Práca s formulárom

Aktivácia: Klávesom F12 prepíname zameranie fokusu medzi editorom kódu a vizuálnym editorom formulára. Vizuálny editor formulára je aktívny, ak JAWS vysloví názov formulára.

Účel: Slúži na vizuálnu správu obsahu formulára (pridávanie, mazanie a usporiadavanie komponentov).

Prístupnosť: Vizuálny editor formulára je pre nevidiaceho používateľa úplne nepoužiteľný. Tento fakt však nie je nutné brať tragicky, pretože - ako uvidíme neskôr - všetky podstatné úkony možno vykonať bez použitia tohto nástroja a navyše nevizuálnymi metódami, ktoré sú nevidiacemu používateľovi bližšie. Úplne ho však zatracovať predsa len nebudeme, pretože sa nám hodí pri mazaní nepotrebných komponentov vo formulári.

Paleta komponentov

Aktivácia: ponuka Zobraziť, položka Komponenty

Účel: Obsahuje zoznam hotových komponentov (tlačidlá, editačné polia, ...), ktoré môžeme pridávať do formulára, aby sme mohli vytvárať používateľské prostredie programu.

Prístupnosť: Dialógové okno pozostáva z troch záložiek (Zoznam, Paleta, Dedičnosť). Záložka Zoznam obsahuje všetky komponenty v štandardnom listboxe a je úplne prístupná. Záložka Paleta radí komponenty podľa kategórií a je nepoužiteľná. Záložka Dedičnosť umožňuje pozrieť si strom dedičnosti pre komponenty a je použiteľná. Na pohyb po "strome" používajte šípky doprava, doľava, nahor a nadol.

Použitie: Najčastejšie asi budeme používať záložku Zoznam. V listboxe (zobrazení zoznamu) si nájdite požadovaný komponent, privolajte naň JAWS kurzor (jawskl+num- alebo jawskl+ú, ak používate schému klávesnice laptop) a emulujte ľavý dvojklik. V zozname nájdite ďalší komponent, ktorý chcete vložiť a opäť naň dvojkliknite. Dialóg s komponentmi zatvorte stlačením esc alebo tlačidlom v dialógu (jediné nepopísané tlačidlo má názov Zatvoriť).

Inšpektor objektov

Aktivácia: Stlačením klávesu F11

Účel: Slúži na nastavovanie vlastností a udalostí konkrétneho komponentu.

Prístupnosť: Postačujúca na to, aby sme mohli vykonávať všetko potrebné.

Dôležité nastavenie: Na zabezpečenie čo najlepšej prístupnosti odčiarknite v kontextovej ponuke inšpektora objektov (aktivujte inšpektor objektov a stlačte tlačidlo kontextovej ponuky) voľbu "Zobraziť strom komponentov". Tým dosiahneme, že komponenty nachádzajúce sa na aktívnom formulári sa nebudú zobrazovať v hierarchickom strome, ktorý je bez použitia myši nepoužiteľný, ale v štandardnom zozname.

Použitie: Okno inšpektora objektov obsahuje niekoľko záložiek (na prepínanie záložiek použite štandardné kombinácie ctrl+tab a ctrl+shift+tab). Najdôležitejšie pre nás budú pravdepodobne záložky "Vlastnosti" a "Udalosti". Z ich názvov je zrejmé, že slúžia na nastavovanie vlastností a udalostí aktívneho komponentu vo formulári alebo samotného formulára.

Obe záložky obsahujú dva stĺpce. V prvom (ľavom) je zoznam názvov "premenných" a druhý obsahuje ich hodnoty. Medzi stĺpcami sa prepíname tabulátorom a vertikálne (po riadkoch vo vnútri stĺpca) sa pohybujeme hornou a dolnou šípkou. V ľavom stĺpci je možné vyhľadávať písaním začiatočných písmen. Ľavý ("vyhľadávací") stĺpec JAWS identifikuje ako "edit" bez ďalších informácií.

Okrem dvoch stĺpcov okno inšpektora obsahuje aj zoznam všetkých komponentov na aktuálnom formulári vrátane formulára samotného. Nový projekt obsahuje jediný komponent "form1". Zoznam komponentov možno aktivovať skratkou ctrl+alt+šípka dolu. Pozor, táto skratka sa bije v JAWSe so skratkou na prácu s tabuľkami. Pred jej použitím teda dajte najprv nasledujúci kláves prepustiť do aplikácie (jawskl+š).

Ak chceme upraviť vlastnosti niektorého z komponentov vo formulári, vyberme ho a potvrďme enterom. Tým sa komponent stane aktívnym a jeho vlastnosti a udalosti môžeme upraviť pomocou inšpektora objektov.

Aktívny komponent môžeme vymazať tak, že sa prepneme do okna s formulárom (f12) a stlačíme kláves delete.

Editor kódu

Nie je ničím špeciálny. Poskytuje však množstvo zaujímavých klávesových skratiek na vyvolanie funkcií code tools, z ktorých prinajmenšom niektoré stoja za zapamätanie:

  • Nájsť definíciu procedúry: ctrl+shift+hore
  • nájsť metódu procedúry: ctrl+shift+dolu
  • nájsť deklaráciu: alt+hore
  • nájsť druhý koniec bloku: ctrl+q,k
  • začiatok bloku: ctrl+q,b

Praktický príklad použitia prostredia

Chceme vytvoriť jednoduchý projekt, ktorého cieľom je názorne demonštrovať použitie prostredia s čítačom obrazovky, ktorý obsahuje viacriadkové editačné pole a pod ním (približne v strede) je tlačidlo na zablokovanie editačného poľa. Po kliknutí na toto tlačidlo sa nastaví editačné pole na neprepisovateľné a text na tlačidle sa zmení na odblokovať. Po opätovnom kliknutí na tlačidlo sa zmení editačné pole na prepisovateľné a text na tlačidle sa takisto zmení.

  1. Spustime Lazarus a vytvorme nový projekt (Projekt/Nový). Projekt uložme na ľubovoľné miesto (Súbor/Uložiť všetko).
  2. Aktivujme inšpektor objektov a nastavme titulok formulára na "demo"
    • Aktivácia inšpektora: F11
    • Tabom sa nastavme do políčka, ktoré JAWS hlási ako "edit" a pomocou začiatočného písmena nájdime vlastnosť "Caption"
    • Tabom sa nastavme do políčka, ktoré JAWS nazýva "Caption" (prepíname sa do pravého stĺpca tabuľky, kam môžeme hodnotu vlastnosti napísať) a napíšme slovo demo.
  3. Obzrime si hodnoty vlastností height (výška) a width (šírka), aby sme vedeli, aký veľký je formulár, do ktorého ideme vkladať komponenty. Hodnoty môžeme, samozrejme, aj zmeniť. Upravme parameter height na hodnotu 500 a width napríklad na hodnotu 600.
  4. Z palety komponentov (Zobraziť/Komponenty) vložme do formulára komponent TMemo. Použime záložku "Zoznam", nájdime TMemo a simulujme na ňom ľavý dvojklik. Potom dialóg s komponentmi stlačením Esc zatvorme.
  5. Aktivujme inšpektora objektov a postupne nastavme:
    • name na hodnotu moje_memo
    • top na hodnotu 5 (chceme memo umiestniť 5 bodov od horného okraja okna aplikácie)
    • left na hodnotu 10 (memo bude 10 bodov od ľavého okraja)
    • width na takú hodnotu, aby bola dĺžka mema kratšia ako dĺžka formulára, (napríklad 580, takže nám zostáva naľavo aj napravo od mema 10 bodov do okraja)
    • height napríklad na hodnotu 300
  6. Ďalej vložme (opäť pomocou zoznamu komponentov) tlačidlo (tbutton).
  7. Pomocou inšpektora objektov nastavme:
    • name: iba_na_citanie
    • caption: Zablokovať
    • top: 315 (5 +300 +10, aby sme mali medzi memom a tlačidlom aj malú medzeru)
    • left: 210 (tlačidlo má dĺžku 75, zaokrúhlime na 80 a chceme, aby bolo v strede pod memom)
  8. Prepnime sa na záložku "Udalosti" (ctrl+tab) a nájdime udalosť "Onclick" (postupujme rovnako ako pri hľadaní vlastností).
  9. Nastavme sa kurzorom do pravého stĺpca inšpektora objektov (do políčka pre hodnotu) a stlačme kombináciu ctrl+enter. Otvorí sa nám editor kódu, do ktorého sa nám "vyrobí" všetko potrebné pre obslužnú procedúru udalosti "Onclick". Kurzor máme v tele procedúry a môžeme písať kód. "Poobzerajte" sa po procedúre, všimnite si, že JAWS číta na každom riadku číslo. Toto číslo nie je súčasťou textu na riadku, je to tzv. číslovanie riadkov. Do procedúry vložíme nasledujúci jednoduchý kúsok kódu, ktorého význam nebudeme vysvetľovať, pretože z hľadiska ovládania prostredia je nepodstatný:

    moje_memo.readonly:=not moje_memo.readonly;

    if moje_memo.readonly then

    btn_blokovanie.caption:='odblokovať'

    else

    btn_blokovanie.caption:='zablokovať';

  10. Skúsme spustiť program (F9). Ak sme v kóde neurobili chybu, program by sa mal spustiť. V prípade, že sa nespustil, JAWS nám oznámi chybu. Podrobnosti o všetkých chybách nájdených pri kompilácii nájdeme v okne správy (pozri menu zobraziť). V zozname správ kliknite na správu, ktorá vás zaujíma, a kurzor sa v kóde automaticky presunie na miesto, s ktorým konkrétna chyba súvisí. Pozor, v súčasnosti treba používať JAWS kurzor; na Enter správy "nereagujú".

Vlastné klávesové skratky

Niektoré funkcie (napríklad okno so správami) budete zrejme používať často, a preto bude vhodné zadefinovať si k nim klávesovú skratku. Postupujme nasledovne:

  • ponuka Prostredie/Voľby prostredia... Po kliknutí sa otvorí dialógové okno, ktoré obsahuje tri nepopísané tlačidlá (v poradí tabulátora sú to: Pomoc, OK, Zrušiť), stromové zobrazenie, ktoré obsahuje "záložky" s nastaveniami a nie je štandardné, takže ho JAWS neidentifikuje, je na ňom ticho, ovláda sa však rovnako ako klasické zobrazenie stromu a okrem toho ovládacie prvky k jednotlivým záložkám.
  • V strome (mimochodom tento stromový komponent je v prostredí Lazarus veľmi obľúbený, takže naň narazíte aj na iných miestach) nájdime záložku "Mapovanie klávesov" (je vo vetve editor)
  • Na tejto záložke sa nachádza ďalší strom, v ktorom je zoznam všetkých funkcií, ku ktorým možno asociovať skratku. Tie sú rozdelené v podkategóriách. My hľadáme kategóriu "Príkazy menu zobraziť", v ktorej sa nachádza položka "Prepnúť zobrazenie správy".
  • Nastavme sa na ňu a emulujme na nej ľavý dvojklik.
  • V dialógu, ktorý sa otvorí, nastavme klávesovú skratku.
 

Vytvorené v Plone CMS, Open Source systéme správy obsahu

Web-Sídlo spĺňa tieto štandardy: