Autor: Michal Poho°elsk² Uve°ejn∞no: CHIP 08/97, str. 84-85 SamΘ dvojky
V modernφch pr∙myslov²ch podnicφch, kterΘ jinak vyu₧φvajφ komplexnφ kancelß°skΘ aplikace (nap°. MS Office 97 CZ), majφ klφΦov² v²znam vysp∞lΘ systΘmy pro vizualizaci technologick²ch proces∙ a dat. Mezi takovΘ systΘmy pat°φ rovn∞₧ Control Panel od ΦeskΘ firmy ALCOR - MoravskΘ p°φstroje. ╚esk² Control Panel (CP) verze 2.22 poskytuje nejen prost°edky pro grafickou prezentaci m∞°en²ch dat a pro komunikaci s jednotliv²mi p°φstroji, ale takΘ nßstroje pro tvorbu °φdφcφch systΘm∙, ovladaΦ∙ atypick²ch za°φzenφ nebo pro zpracovßnφ nam∞°en²ch dat. Proto₧e ovÜem v²vojov² systΘm Control Panel funguje v objektovΘm grafickΘm prost°edφ InView a dodßvß se takΘ s n∞kolika kancelß°sk²mi aplikacemi, kterΘ jsou souΦßstφ balφku aplikacφ nazvanΘho ╚eskß kancelß°, doporuΦuji Vßm podrobn∞ prostudovat ji₧ uve°ejn∞nou recenzi - "╚eskß cesta" (CHIP 05/97, str. 116-120).
CP jsem dostal na CD disku bez tiÜt∞nΘ p°φruΦky. Po zadßnφ konfigurace poΦφtaΦe pracuje grafick² instalaΦnφ program naÜt∞stφ v automatickΘm re₧imu. CP nabφzφ stejnou podporu grafiky jako Inview, tak₧e krom∞ zßkladnφch re₧im∙ s 16 barvami - EGA (640x350), VGA (640x480) a SVGA (800x600) si m∙₧ete zvolit p°es 36 grafick²ch karet s Φipy Trident, Paradise, S3 911, S3 801, S3 805, S3 Vision864/964, S3 Vision868/968, S3 Trio32/64, S3 Trio64V, Cirrus Logic 5426/28 a Cirrus Logic 5429/30. Pokud mß vaÜe grafickß karta podporovan² typ Φipu, m∙₧ete pou₧φvat re₧im 800x600 s 64K barev nebo re₧im 1024x768 s 256 barvami. U nepodporovan²ch typ∙ karet (Matrox Mystique, Matrox Millenium, ATI 3D Xpression apod.) se musφte spokojit s maximßlnφm rozliÜenφm SVGA v 16 barvßch. ╚eskß kancelß° i CP podporujφ stejnou skupinu zvukov²ch karet, kterß Vßm m∙₧e nabφdnout zvuk v kvalit∞ Sound Blaster nebo Sound Blaster Pro/16. Podpora lepÜφch zvukov²ch karet (Gravis UltraSound, Sound Blaster 16 ASP, Sound Blaster AWE 32/64) nenφ zatφm bohu₧el k dispozici. Minimßlnφ instalace produktu vßm obsadφ asi 18 MB a maximßlnφ instalace 80 MB prostoru. P°i instalaci i pozd∞ji m∙₧eme urΦit ovladaΦ k tiskßrn∞ (systΘm jich nabφzφ asi 75). AΦkoliv m∙₧ete CP nainstalovat i na prehistorick² poΦφtaΦ PC/386SX s 4 MB RAM, faktem z∙stßvß, ₧e k prßci je reßln∞ nutn² poΦφtaΦ PC/486DX s nejmΘn∞ 8 MB RAM a 250 MB na disku. CP rovn∞₧ pracuje v sφti Novell.
Zßkladnφ aplikace
Zßkladnφ a °φdφcφ aplikacφ systΘmu je Sprßvce program∙, kter² je tvo°en zßkladnφm oknem pro vÜechny skupiny program∙ reprezentovanΘ ikonami. Sprßvce soubor∙ je zßkladnφ aplikacφ slou₧φcφ pro prßci se soubory, adresß°i, disky, disketami a jednotkami CD-ROM. V okn∞ Sprßvce soubor∙ m∙₧eme otev°φt libovoln² poΦet oken se strukturou adresß°∙. Sprßvce m∙₧eme ovlßdat pomocφ klasickΘho menu, nßstrojovΘ liÜty nebo hork²mi klßvesami. P°esouvßnφ pomocφ myÜi (Drag and drop) je podporovßno. Ze sprßvce m∙₧eme takΘ p°φmo spouÜt∞t aplikace DOSu i InView nebo p°etßhnout textov² soubor na ikonu editoru, kter² se potom spustφ s tφmto souborem. U ka₧dΘho soubor∙ m∙₧eme nastavit spojenφ podle p°φpony s p°φsluÜn²m spustiteln²m souborem.
Plßnovacφ kalendß° slou₧φ p°edevÜφm pro psanφ Φasov∞ vßzan²ch poznßmek. Plocha kalendß°e m∙₧e mφt dva r∙znΘ re₧imy. V prvnφm re₧imu jsou termφny a ·koly zobrazeny v odd∞len²ch oken, p°iΦem₧ pomocφ tlaΦφtek ve spodnφ Φßsti plochy m∙₧eme urΦit, jak velkß Φßst dne bude zobrazena. V druhΘm re₧imu jsou vÜechny termφny i ·koly zobrazeny v jednom okn∞.
Kdy₧ v Editoru ikon zaΦneme vytvß°et novou ikonu, m∙₧eme si definovat libovoln∞ velkou elipsu, kru₧nici nebo Φtverec. Ji₧ definovanΘ vybarvenφ ikony m∙₧eme najednou zam∞nit s jinou barvou. Ikonu m∙₧eme otßΦet kolem osy po 90 stupnφch.
Prohlφ₧eΦ obrßzk∙ umo₧≥uje pracovat s obrßzky ve formßtech PCX, BMP, TIFF, TGA, GIF, WPG, SCR, CUT, MAC a IMG (InView) a provßd∞t mezi t∞mito formßty konverze. Plocha prohlφ₧eΦe obrßzk∙ je tvo°ena obrßzkov²m DataView. Prohlφ₧eΦ umo₧≥uje provßd∞t v²°ezy, nahrazovat barvy Φernobφl²m vzorem a otßΦet i zrcadlov∞ p°evracet obrßzky. Navφc m∙₧eme vytvo°it jednoduchou slide show.
InView pracuje s stejn²m k≤dovßnφm pro ΦeÜtinu jako Windows (ISO 1250), co₧ vytvß°φ nutnost konvertovat soubory v DOS k≤dech Latin2 a Kamenick²ch. Proto jist∞ p°ivφtßte Konvertor, kter² mezi uveden²mi k≤dy umφ provßd∞t oboustrannou konverzi.
P°ehrßvaΦ maker slou₧φ k zaznamenßvßnφ udßlostφ, jako je stisk klßvesy, pohyb myÜi, stisk tlaΦφtka myÜi, vφcenßsobnΘ spuÜt∞nφ jednΘ aplikace apod. ZaznamenanΘ makro je mo₧nΘ upravovat v editoru zßznam∙.
InMail je programem elektronickΘ poÜty, kter² je urΦen pro komunikaci mezi jednotliv²mi poΦφtaΦi v sφti Novell. Umo₧≥uje rychlΘ p°edßvßnφ vzkaz∙ a p°ipojen²ch soubor∙ mezi u₧ivateli sφt∞, t°φd∞nφ doÜlΘ poÜty podle r∙zn²ch kritΘrii do po°adaΦ∙, prohlφ₧enφ doÜlΘ poÜty, jejφ kopφrovßnφ a rozesφlßnφ dalÜφm u₧ivatel∙m. Multimedißlnφ podporu reprezentujφ Φty°i kvalitnφ aplikace - CD p°ehrßvaΦ, P°ehrßvaΦ WAV soubor∙, Mixer a Radio. Mezi jednoduchΘ utility pat°φ Kalkulßtor a Hodiny. Pro zßbavu u₧ivatele slou₧φ jednoduchΘ hry Minolovec, Solitaire a Ze∩.
Mezi novinky systΘmu CP verze 2.22 nepochybn∞ pat°φ 2 novΘ nßstroje. Prohlφ₧eΦ FLI soubor∙ dovoluje prohlφ₧et animaΦnφ soubory ve formßtech FLC a FLI. Pokud vÜak jste nuceni pou₧φvat obecn² SVGA re₧im s 16 barvami, nebudete asi p°φliÜ spokojeni. Prohlφ₧eΦ HTML soubor∙ dovoluje prohlφ₧et internetovskΘ soubory ve formßtech HTM a GIF. Prohlφ₧eΦ umφ zobrazovat bohu₧el pouze velmi okleÜt∞nou verzi populßrnφho jazyka HTML 3.2. Oba novΘ nßstroje majφ celkem jednoduchΘ ovlßdßnφ.
Ve vÜech aplikacφch je k dispozici bublinkovß nßpov∞da obsahujφcφ zßkladnφ informace o jednotliv²ch Φinnostech. Mnohem vφce informacφ (vΦetn∞ popisu vÜech p°φkaz∙ a v²vojov²ch utilit) vßm ovÜem poskytne hypertextovß nßpov∞da v podob∞ ElektronickΘ knihy. Navφc v kompletnφm systΘmu CP 2.22 najdete nßsledujφcφ kancelß°skΘ aplikace:
Podrobn² popis t∞chto v²konn²ch aplikacφ najdete prßv∞ ve v²Üe zmφn∞nΘ recenzi "╚eskß cesta".
- Grafick² textov² editor InWord verze 1.65
- Tabulkov² kalkulßtor InCalc verze 2.37
- RelaΦnφ databßze InBase verze 2.09
- Vektorov² kreslicφ editor InDraw 1.04
- Bitmapov² kreslicφ editor Zebra 1.22
V²vojovΘ prost°edφ
Zßkladnφm poslßnφm CP je vytvß°enφ kvalitnφch pr∙myslov²ch aplikacφ, a proto se v n∞m vÜechno toΦφ kolem programovßnφ. Na v²voj aplikacφ v CP mß siln∞ pozitivnφ vliv pom∞rn∞ d∙slednΘ uplatn∞nφ objektovΘ technologie, otev°enß architekt∙ra a dvojcestnΘ programovßnφ. Na CD disku mß v²vojß° v adresß°i EXAMPLES k dispozici celkem 7 v∞tÜφch vzorov²ch aplikacφ ve zdrojovΘm tvaru.
Jßdrem v²vojovΘho prost°edφ jsou Φty°i jeho nosnΘ pilφ°e - specißlnφ grafick² editor, Paleta p°φstroj∙, subsystΘm DDK (Device Driver Kit) a aplikaΦnφ rozhranφ CP_API. V²vojß° v CP mß k dispozici specißlnφ editor, kter² umo₧≥uje programovat metodou dvojcestnΘho programovßnφ - v b∞₧nΘm "textovΘm" a ve vizußlnφ re₧imu (podobn∞ jako t°eba Visual dBASE 5.5). Plocha vizußlnφho editoru je rozd∞lena na 7 r∙zn²ch Φßstφ:
JednotlivΘ Φßsti jsou od sebe odd∞leny posuvn²mi liÜtami. Z grafick²m editorem ·zce spolupracuje Editor visußlnφ struktury, kter² je pro grafickΘ zobrazovßnφ p°esnΘ podoby vytvß°enΘ aplikace. Dφky n∞mu je mo₧nΘ p°i vytvß°enφ struktury programu umφstit p°φstroj p°φmo do editoru pomocφ Palety p°φstroj∙. Pro logickΘ (ΦasovΘ) zobrazenφ podoby vytvß°enΘho zdrojovΘho k≤du se v CP pou₧φvß Editor ΦasovΘ struktury. ╚asov² editor je v₧dy v prost°ednφ Φßsti grafickΘho editoru. Navφc lze nastavit i hornφ editor (standardn∞ vizußlnφ) na Φasov², tak₧e v²vojß° m∙₧e najednou pou₧φvat a₧ dva ΦasovΘ editory. P°i vytvß°enφ struktury programu m∙₧eme umφstit p°φstroje p°φmo do editoru s pomocφ Palety p°φstroj∙. P°φstroje (ΦasovaΦe) se za°adφ do strukt∙ry p°esn∞ v mφst∞, kde uvolnφme stisknutΘ tlaΦφtko myÜi.
- Editor vizußlnφ struktury
- Editor ΦasovΘ struktury
- NeΦasovanΘ p°φstroje
- NeviditelnΘ p°φstroje
- Hornφ, st°ednφ a dolnφ datovß plocha
V²voj a tvorbu specializovan²ch ovladaΦ∙ pro atypick² hardware v podob∞ DLL knihoven zajiÜ¥uje v CP subsystΘm Device Driver Kit (DDK). DDK v souΦasnΘ verzi generuje masky zdrojov²ch soubor∙ a projekty pro p°ekladaΦe TopSpeed Modula 2, TopSpeed Pascal a TopSpeed C/C++.
Cel² systΘm CP byl vytvo°en v objektovΘm jazyku Modula 2, co₧ vedle mnoha v²hod p°ineslo takΘ jednu silnou nev²hodu. K objekt∙m z Moduly 2 toti₧ nelze normßln∞ p°istupovat z jazyka C++. A prßv∞ omezenß mo₧nost spoluprßce s jazykem C++ p°inutila autory CP k vytvo°enφ procedurßlnφho aplikaΦnφho rozhranφ CP_API, kterΘ se vÜak sna₧φ chovat objektov∞. V CP_API jsou datovΘ prvky virtußlnφho p°φstroje sdru₧eny do zßznamu, tak₧e je mo₧nΘ vytvß°et vφce instancφ. K dispozici jsou procedury pracujφcφ s daty tohoto zßznamu nahrazujφcφ statickΘ metody. StatickΘ metody p°itom nelze pou₧φt jako nßhradu call-back funkcφ. Z tohoto d∙vodu jsou definovßny typy popisujφcφ virtußlnφ metody a souΦasn∞ je definovanß tabulka t∞chto metod spojenß s ka₧dou t°φdou virtußlnφch p°φstroj∙. Tabulka obsahuje ukazatele na virtußlnφ metody. Pokud jßdro systΘmu pot°ebuje vyvolat metodu virtußlnφho p°φstroje, odkß₧e se na metodu prßv∞ p°es tuto tabulku. Tento na prvnφ pohled zbyteΦn∞ slo₧it² mechanismus zajiÜ¥uje polymorfnφ chovßnφ objekt∙. ZkuÜen² v²vojß° toti₧ m∙₧e ukazatele na zvolenΘ metody v tabulce nahradit ukazateli na svΘ metody.
PakovaΦ aplikacφ
SouΦßstφ CP jsou takΘ 4 dopl≥kovΘ utility, kterΘ Vßm mohou v²razn∞ usnadnit ·dr₧bu vytvo°en²ch aplikacφ i samotnΘho IDE. PakovaΦ aplikacφ Vßm v²razn∞ usnadnφ shromß₧d∞nφ datov²ch soubor∙ aplikace do urΦenΘho adresß°e. Z relativn∞ nep°ehlednΘho mno₧stvφ r∙zn²ch ladφcφch ikon a obrßzk∙ v r∙zn²ch adresß°φch se automaticky vyberou pouze ty, kterΘ jsou pro aplikaci jeÜt∞ aktußlnφ. Cφlovß struktura soubor∙ je zbavena vÜech nadbyteΦn²ch datov²ch soubor∙, a proto je mnohem snadn∞ji p°enositelnß.
CP konfigurace p°edstavuje konfiguraΦnφ nßstroj v podob∞ textovΘho editoru, kter² umo₧≥uje kompletnφ prohlφdku i reinstalaci knihoven DLL. CP Backup editor umφ jednoduÜe editovat zßlo₧nφ soubory CBK. Konvertor z verze 1.xx slou₧φ k p°evodu ovladaΦ∙ pro Control Panel 1.x do aktußlnφ verze. PodrobnΘ informace k tomuto p°evodu naleznete v hypertextovΘ nßpov∞d∞.
CelkovΘ hodnocenφ
GrafickΘ prost°edφ InView sice stßle umφ spustit pouze jednu DOS aplikaci a je nekompatibilnφ s Windows, ale samotn² Control Panel je unikßtnφm objektov²m, v²vojov²m a monitorovacφm prost°edkem pro °φdφcφ aplikace v reßlnΘm Φase. Jeho schopnosti jsou ji₧ ov∞°eny v mnoha pr∙myslov²ch podnicφch (nap°. ZPS Zlφn). V²voj systΘmu CP je velmi rychl², nebo¥ aktußlnφ verze se stane brzy minulostφ, kterß bude nahrazena Control Panelem verze 3. Podle mΘho nßzoru je Control Panel ideßlnφ volbou pro v²voj menÜφch i st°edn∞ velk²ch pr∙myslov²ch aplikacφ.