ColorBox2 Framework -- specifikace Základni soucásti * hlavickové soubory tríd a knihovna s jejich implementací * program pro preklad modifikovaných uzivatelských zdrojových souboru do binární podoby (just-in-time prekladac) * modul webového serveru pro spoustení binární podoby uzivatelských zdrojových souboru * ukázkové zdrojové soubory a sablony demonstrující zpusob vyuzití tríd, vytvárení vhodných odvozených tríd apod. * dokumentace Trídy (Dialog API, Visual Template Layer) Hlavní trídy * CB2Class (hierarchický predek vsech tríd frameworku) * CB2Application (hlavní trída aplikace, implementující analogii smycky událostí) * CB2ApplicationElement (podprvek aplikace, metoda události nebo widget) * CB2Event (generická trída callbacku události) Widgety (Common Controls) * CB2Form, CB2FormElement (formulár) * CB2Button, CB2ListBox, CB2InputBox (vstupní widgety formuláre -- tlacítka, listboxy, inputboxy apod.) * CB2Menu (menu) * CB2TreeMenu (menu v podobe rozbalovacího stromu) * CB2Paragraph (textový odstavec) * CB2Image, CB2ImageDS (genericky renderovaný obrázek, obrázek z datového zdroje) * CB2Layout, CB2Spacer (logická definice vzhledu aplikace, rozmístení widgetu) Logické trídy (Common Dialogs) * CB2RichEditor (implementace WYSIWYG HTML editoru s pouzitím príslusných vlastností Internet Exploreru a Mozilly) * CB2RelationEditor (editor relací v tabulce definované svým datovým zdrojem a formátem, umoznující stránkovane procházet záznamy, trídit seznam, pridávat nové záznamy, editovat a mazat existující) Pomocné trídy * CB2DataSource, CB2DSMySQL, CB2DSFlatFile, CB2DSCSV, CB2DSXML (generický zdroj relacních dat, zdroj dat z databáze MySQL, z plochého souboru, z CSV souboru a XML souboru) * CB2String, CB2Text (reprezentace retezce a manipulace pomocí regulárních výrazu, manipulace s rich-textem) * CB2Template (engine pro generování výstupu na základe externích sablon) Just-in-time prekladac * jednoduchý systém reprezentující, z jakých zdrojových souboru (a hlavickových souboru) se skládá daná webová aplikace * kontrola aktuálnosti (resp. existence) binární podoby a prípadný inkrementální preklad novejsích zdrojových souboru (s prihlédnutím k závislostem) * samostatné rízení prekladu a linkování s knihovnou frameworku, kontrola chyb prekladu jednotlivých závislostí Modul webového serveru * prevzetí a zpracování HTTP pozadavku, kontrola existence odpovídající aplikace, zavolání just-in-time prekladace * prevod vstupních GET a POST parametru na formát pouzívaný frameworkem * spustení binární podoby jako samostatného podprocesu (volitelne s právy jiného uzivatele), prubezné zpracovávání výstupu * kontrola chyb Ukázky * demonstrace obsluhy událostí. datových zdroju a widgetu v jednoduché webové aplikaci pro správu publikacního systému, vcetne autorizace * demonstrace vyuzití trídy CB2RelationEditor a CB2RichEditor jako editacního nástroje jednoduchého publikacního systému * demonstrace vyuzití logické definice vzhledu a sablon pro verejnou cást publikacního systému