Manuál
- browser.js
Detekce klientského prostředí v závislosti na vlastnostech JavaScriptu (pokud je to možné, jinak dle vlastnosti navigator.userAgent). - classmaker.js
Statická třída sestavující dědičnost rozšiřováním prototypového objektu doplňováním základních metod a testováním závislostí. - components.js
Rozhraní určené pro vytváření hierarchie objektů na základě "komponent", Pokud bude mít naše aplikace podobnou strukturu jako ukázkový graf (jednotlivé větve jsou instance tříd), napomáhá automatizaci při jejím vytváření a rušení, včetně rušení jen jednotlivých větví, případně při dynamickém doplňování destruktoru.MAIN |__ child_1 |__ child_2 |__child_2.1 |__child_2.2
- decorator.js
Základní nástroje pro práci s "dekorátory". Úvozovky okolo názvu jsou na místě, neb nejde o realizaci návrhového vzoru, ale o naše vlastní, monkeypatch-based řešení. - dom.js
Statická třída posytující některé praktické metody na úpravy a práci s DOM stromem, např. vytváření a získávání elementů. - error.js
Chybovy handler pro unifikované neobstruktivní zpracovaní chyb - events.js
Třída sloužící ke zpracovavaní udalostí a časovačů poskytovaných DOM modelem. - main.js
Deklarace "jmenného prostoru" knihoven JAK. Dále obsahuje rozšíření práce s poli dle definice JavaScriptu verze 1.6. Při použití této knihovny je nutné pole vždy procházet pomocí for (var i=0; arr.length > i; i++). - object.js
Nastroje pro práci s objekty: kopírování, serializace, porovnání. - request.js
Třída pro práci s HTTPXmlRequestem pro komunikaci klient - server. - siginterface.js
Rozhraní určené k práci s uživatelskými událostmi a "globálními" zprávami, které zjednodušuje práci s objektem, který se o uživatelsky definované události stará - signals.js
Vytváření a zachytávání vlastních uživatelských událostí, správa globálních zpráv
browser.js
Detekce klientského prostředí v závislosti na vlastnostech JavaScriptu (pokud je to možné, jinak dle vlastnosti navigator.userAgent).
| Návratová hodnota | Popis metody |
| void |
SZN.Browser (
)
Statická třída obsahující vlastnosti platform, client, version a agent, které určují uživatelovo prostředí |
| void |
getBrowser (
)
Implicitní konkstruktor, je volán při načtení skriptu |
- <static> SZN.Browser() [constructor]
-
Statická třída obsahující vlastnosti platform, client, version a agent, které určují uživatelovo prostředí
Vlastnosti:
- platform (string) - platform system uzivatele
- client (string) - client prohlizec uzivatele
- version (string) - version verze prohlizece
- agent (string) - agent hodnota systemove promene "navigator.userAgent"
- mouse (object) - mouse objekt s vlastnostmi left, right, middle které lze použít k identifikaci stisknutého tlačítka myši
-
getBrowser()
metoda objektu SZN.Browser -
Implicitní konkstruktor, je volán při načtení skriptu
classmaker.js
Statická třída sestavující dědičnost rozšiřováním prototypového objektu doplňováním základních metod a testováním závislostí.
| Návratová hodnota | Popis metody |
| void |
SZN.ClassMaker (
)
Konstruktor se nevyužívá. Vždy rovnou voláme metody, tedy např.: SZN.ClassMaker.makeClass(...). |
| void |
makeClass (
params,
params.NAME,
params.VERSION,
params.CLASS,
params.EXTEND,
params.IMPLEMENT,
params.DEPEND
)
Vlastní metoda pro vytvoření třídy, v jediném parametru se dozví informace o třídě, kterou má vytvořit. |
| void |
makeSingleton (
params
)
Vlastní metoda pro vytvoření Jedináčka (Singleton), odlišnost od tvorby třídy přes makeClass je, že třídě vytvoří statickou metodu getInstance, která vrací právě jednu instanci a dále, že konstruktor nelze zavolat pomocí new (resp. pokud je alespoň jedna instance vytvořena.) Instance je uschována do vlastnosti třídy _instance |
| void |
makeInterface (
params
)
Vlastní metoda pro vytvoření "třídy" charakterizující rozhranní |
| void |
makeStatic (
params,
params.NAME,
params.VERSION
)
Vlastní metoda pro vytvoření statické třídy, tedy jmeného prostoru |
| void |
_makeDefaultParams (
params
)
Vytvoření defaultních hodnot objektu params, pokud nejsou zadané autorem |
| void |
_preMakeTests (
params
)
Otestování parametrů pro tvorbu třídy |
| void |
_addConstructorProperties (
constructor,
params
)
Vytvořenému konstruktoru nové třídy musíme do vínku dát výchozí hodnoty a metody |
| void |
_getInstance (
)
Statická metoda pro všechny singletony |
| void |
_destroy (
obj
)
Metoda sloužící ke zdědění jako statická metoda vytvářené třídy; nastavuje všechny vlastnosti svého argumentu na null |
| void |
_setInheritance (
extend
)
Volá vlastní kopírování prototypových vlastností jednotlivých rodičů |
| void |
_makeInheritance (
constructor,
parent,
noSuper
)
Provádí vlastní kopírovaní prototypových vlastností z rodiče do potomka pokud je prototypová vlastnost typu object zavolá metodu, která se pokusí vytvořit hlubokou kopii teto vlastnosti |
| bool |
_testDepend (
depend
)
Testuje závislosti vytvářené třídy, pokud jsou nastavené |
| void |
_callSuper (
methodName,
callingFunction
)
Metoda sloužící ke zdědění jako prototypová metoda vytvářené třídy vrátí funkci která zavolá metodu předka třídy jako vlastní |
| void |
_$super (
)
Další pokus o volání předka. Přímo volá stejně pojmenovanou metodu předka a předá jí zadané parametry. |
- <static> SZN.ClassMaker() [constructor]
-
Konstruktor se nevyužívá. Vždy rovnou voláme metody, tedy např.: SZN.ClassMaker.makeClass(...).
Vlastnosti:
- VERSION (string) - verze třídy
- NAME (string) - název třídy
- CLASS (string) - typ třídy (static|class)
- copyObj (object) - instance třídy ObjCopy, je-li k dispozici (používá se ke kopírování prototypových vlastností, které jsou objekty)
-
makeClass(params)
metoda objektu SZN.ClassMaker -
Vlastní metoda pro vytvoření třídy, v jediném parametru se dozví informace o třídě, kterou má vytvořit.
Argumenty:
- params (object) - parametry pro tvorbu nové třídy
- params.NAME (string) - povinný název třídy
- params.VERSION (string) -
- [params.CLASS] (string) - "class"/"static", statická třída odpovídá literálovému objektu a nemůže nic dědit, @deprecated
- params.EXTEND (function) -
- params.IMPLEMENT (function[]) -
- params.DEPEND (object[]) -
-
makeSingleton(params)
metoda objektu SZN.ClassMaker -
Vlastní metoda pro vytvoření Jedináčka (Singleton), odlišnost od tvorby třídy přes makeClass je, že třídě vytvoří statickou metodu getInstance, která vrací právě jednu instanci a dále, že konstruktor nelze zavolat pomocí new (resp. pokud je alespoň jedna instance vytvořena.) Instance je uschována do vlastnosti třídy _instance
Argumenty:
- params () -
-
makeInterface(params)
metoda objektu SZN.ClassMaker -
Vlastní metoda pro vytvoření "třídy" charakterizující rozhranní
Argumenty:
- params () -
-
makeStatic(params)
metoda objektu SZN.ClassMaker -
Vlastní metoda pro vytvoření statické třídy, tedy jmeného prostoru
Argumenty:
- params (object) - parametry pro tvorbu nové třídy
- params.NAME (string) - povinný název třídy
- params.VERSION (string) - verze třídy
-
_makeDefaultParams(params)
metoda objektu SZN.ClassMaker -
Vytvoření defaultních hodnot objektu params, pokud nejsou zadané autorem
Argumenty:
- params (object) - parametry pro tvorbu nové třídy
-
_preMakeTests(params)
metoda objektu SZN.ClassMaker -
Otestování parametrů pro tvorbu třídy
Argumenty:
- params (object) - parametry pro tvorbu nové třídy
-
_addConstructorProperties(constructor, params)
metoda objektu SZN.ClassMaker -
Vytvořenému konstruktoru nové třídy musíme do vínku dát výchozí hodnoty a metody
Argumenty:
- constructor () -
- params () -
-
_getInstance()
metoda objektu SZN.ClassMaker -
Statická metoda pro všechny singletony
-
_destroy(obj)
metoda objektu SZN.ClassMaker -
Metoda sloužící ke zdědění jako statická metoda vytvářené třídy; nastavuje všechny vlastnosti svého argumentu na null
Argumenty:
- obj (object) - cisteny objekt
-
_setInheritance(extend)
metoda objektu SZN.ClassMaker -
Volá vlastní kopírování prototypových vlastností jednotlivých rodičů
Argumenty:
- extend (array) - pole rodicovskych trid
-
_makeInheritance(constructor, parent, noSuper)
metoda objektu SZN.ClassMaker -
Provádí vlastní kopírovaní prototypových vlastností z rodiče do potomka pokud je prototypová vlastnost typu object zavolá metodu, která se pokusí vytvořit hlubokou kopii teto vlastnosti
Argumenty:
- constructor (object) - Potomek, jehož nové prototypové vlastnosti nastavujeme
- parent (object) - Rodič, z jehož vlastnosti 'protype' budeme kopírovat
- noSuper (bool) - Je-li true, jen kopírujeme vlasnosti (IMPLEMENT)
-
bool _testDepend(depend)
metoda objektu SZN.ClassMaker -
Testuje závislosti vytvářené třídy, pokud jsou nastavené
Argumenty:
- depend (array) - Pole závislostí, ktere chceme otestovat
Návratová hodnota:
- bool - out true = ok; false = ko
-
_callSuper(methodName, callingFunction)
metoda objektu SZN.ClassMaker -
Metoda sloužící ke zdědění jako prototypová metoda vytvářené třídy vrátí funkci která zavolá metodu předka třídy jako vlastní
Argumenty:
- methodName (string) - název metody předka
- callingFunction (function) - odkaz na metodu v jejímž kontextu je metoda volána mělo bz to být vždy arguments.callee
Např.:
//trida Car dedi z tridy Vehicle, Vehicle ma metodu getPassangers, kterou trida Car dedi //pak mohu predefinovat metodu takto: Car.prototype.getPassangers() { var count = this.callSuper('getPassangers', arguments.callee )(); //ty zavorky jsou dulezite! return count + 1; } -
_$super()
metoda objektu SZN.ClassMaker -
Další pokus o volání předka. Přímo volá stejně pojmenovanou metodu předka a předá jí zadané parametry.
components.js
Rozhraní určené pro vytváření hierarchie objektů na základě "komponent", Pokud bude mít naše aplikace podobnou strukturu jako ukázkový graf (jednotlivé větve jsou instance tříd), napomáhá automatizaci při jejím vytváření a rušení, včetně rušení jen jednotlivých větví, případně při dynamickém doplňování destruktoru.
MAIN |__ child_1 |__ child_2 |__child_2.1 |__child_2.2
| Návratová hodnota | Popis metody |
| void |
SZN.Components (
)
|
| boolean |
hasComponents (
)
zjišťuje zda má daná třída definované komponenty |
| boolean |
addAllComponents (
)
přidá všechny komponenty uvedené v poli componets dané třídy |
| void |
addNewComponent (
component
)
přidá novou komponentu za běhu programu |
| void |
registredMethod (
owner
)
vytváří volání vlastních metod z objektu, ktery je definován argumentem owner tak že čte vlastnost 'access' svých metod, vlastost acces je string jehož první částí je specifikátor přístupu (poviný) s hodnotou 'public' a za ním následuje mezerou oddělený název pod jakým se má volání vytvořit, není-li uveden použije se název vytvořený ze jména objektu a metody |
| void |
unregistredMethod (
owner
)
odregistrace metod, z objektu owner, ktere byly vytvoreny volanim registredMethod |
| string |
_createMethodName (
obj,
methodName
)
metoda pouzivana registredMethod a unregistredMethod pro vytvoreni jmena metody |
| object |
getMain (
)
slouží k nalezení hlavniho objektu, který vytváří danou část programu a má definovanou vlastnost TOP_LEVEL |
| void |
callChildDestructor (
)
slouží k postupnému volání destruktorů všech komponent, daného objektu |
| void |
removeComponent (
component,
withDestruction
)
odebere komponentu, ktera je zadana nazvem, nebo objektem |
- <static> SZN.Components() [constructor]
-
Třída pro dědění rozhraní "Components", jedná se v podstatě o "abstraktní třídu", u které nemá smysl vytvářet její instance a slouží pouze k definování děděných vlastností.
-
boolean hasComponents()
metoda objektu SZN.Components -
zjišťuje zda má daná třída definované komponenty
Návratová hodnota:
- boolean - true pokud má komponenty, false pokud ne
-
boolean addAllComponents()
metoda objektu SZN.Components -
přidá všechny komponenty uvedené v poli componets dané třídy
Návratová hodnota:
- boolean - true pokud má komponenty, false pokud ne
-
addNewComponent(component)
metoda objektu SZN.Components -
přidá novou komponentu za běhu programu
Argumenty:
- component (object) - objekt s vlastnostmi:
- part {function} odkaz na třídu, která je komponentou
- name {string} název pod kterým se má komponenta vytvořit jako vlastnost objektu
- component (object) - objekt s vlastnostmi:
-
registredMethod(owner)
metoda objektu SZN.Components -
vytváří volání vlastních metod z objektu, ktery je definován argumentem owner tak že čte vlastnost 'access' svých metod, vlastost acces je string jehož první částí je specifikátor přístupu (poviný) s hodnotou 'public' a za ním následuje mezerou oddělený název pod jakým se má volání vytvořit, není-li uveden použije se název vytvořený ze jména objektu a metody
Argumenty:
- owner (object) - reference na objekt, ve kterém se volání vytvoří
-
unregistredMethod(owner)
metoda objektu SZN.Components -
odregistrace metod, z objektu owner, ktere byly vytvoreny volanim registredMethod
Argumenty:
- owner (object) -
-
string _createMethodName(obj, methodName)
metoda objektu SZN.Components -
metoda pouzivana registredMethod a unregistredMethod pro vytvoreni jmena metody
Argumenty:
- obj (object) -
- methodName (string) -
Návratová hodnota:
- string -
-
object getMain()
metoda objektu SZN.Components -
slouží k nalezení hlavniho objektu, který vytváří danou část programu a má definovanou vlastnost TOP_LEVEL
Návratová hodnota:
- object - refetrence na hlavni objekt
-
callChildDestructor()
metoda objektu SZN.Components -
slouží k postupnému volání destruktorů všech komponent, daného objektu
-
removeComponent(component, withDestruction)
metoda objektu SZN.Components -
odebere komponentu, ktera je zadana nazvem, nebo objektem
Argumenty:
- component (object) -
- withDestruction (boolean) - - zda ma zavolat destruktor komponenty
decorator.js
Základní nástroje pro práci s "dekorátory". Úvozovky okolo názvu jsou na místě, neb nejde o realizaci návrhového vzoru, ale o naše vlastní, monkeypatch-based řešení.
| Návratová hodnota | Popis metody |
| void |
SZN.AbstractDecorator (
)
|
| object |
decorate (
instance
)
Dekorační metoda |
| void |
_$super (
)
Metoda volání "předka", magie pro otrlé. Volá stejně pojmenovanou metodu objektu před odekorováním. Pokud je voláno z neodekorované metody, chová se jako $super z ClassMakeru. |
| void |
SZN.AutoDecorator (
)
|
| void |
decorate (
instance
)
|
| void |
SZN.IDecorable (
)
|
| object |
decorate (
decorator
)
Odekorování této instance zadaným dekorátorem |
- <static> SZN.AbstractDecorator() [constructor]
-
Abstraktní dekorátor, jedináček
-
object decorate(instance)
metoda objektu SZN.AbstractDecorator -
Dekorační metoda
Argumenty:
- instance (object) - To, co chceme poupravit
Návratová hodnota:
- object - Vrací to, co obdrží
-
_$super()
metoda objektu SZN.AbstractDecorator -
Metoda volání "předka", magie pro otrlé. Volá stejně pojmenovanou metodu objektu před odekorováním. Pokud je voláno z neodekorované metody, chová se jako $super z ClassMakeru.
- <static> SZN.AutoDecorator() [constructor]
-
Automatický dekorátor - předá instanci veškeré své metody
-
decorate(instance)
metoda objektu SZN.AutoDecorator -
Argumenty:
- instance () -
- <static> SZN.IDecorable() [constructor]
-
Dekorační rozhraní; implementuje ho ten, kdo chce být dekorován
-
object decorate(decorator)
metoda objektu SZN.IDecorable -
Odekorování této instance zadaným dekorátorem
Argumenty:
- decorator (function) - Konstruktor dekorátoru
Návratová hodnota:
- object - Vrací this
dom.js
Statická třída posytující některé praktické metody na úpravy a práci s DOM stromem, např. vytváření a získávání elementů.
| Návratová hodnota | Popis metody |
| void |
SZN.Dom (
)
Statický konstruktor, nemá smysl vytvářet jeho instance. |
| void |
SZN.cEl (
tagName,
id,
className,
styleObj,
doc
)
Vytvoří DOM node, je možné rovnou zadat id, CSS třídu a styly |
| void |
SZN.cTxt (
str,
doc
)
Alias pro document.createTextNode |
| object |
SZN.gEl (
ids
)
zjednodušený přístup k metodě DOM document.getElementById |
| void |
append (
pole1...poleN
)
Propoji zadané DOM uzly |
| bool |
hasClass (
element,
className
)
Otestuje, má-li zadany DOM uzel danou CSS třídu |
| void |
addClass (
element,
className
)
Přidá DOM uzlu CSS třídu. Pokud ji již má, pak neudělá nic. |
| void |
removeClass (
element,
className
)
Odebere DOM uzlu CSS třídu. Pokud ji nemá, neudělá nic. |
| void |
clear (
element
)
Vymaže (removeChild) všechny potomky daného DOM uzlu |
| object |
getDocSize (
)
vrací velikost dokumentu, lze použít ve standardním i quirk módu |
| object |
getBoxPosition (
obj,
ref,
fixed
)
vrací polohu "obj" ve stránce nebo uvnitř objektu který předám jako druhý argument |
| object |
getFullBoxPosition (
obj,
parent,
fixed
)
vrací polohu "obj" v okně nebo uvnitř objektu který předáme jako druhý argument, zahrnuje i potencialni odskrolovani kdekoliv nad objektem Par noticek k výpočtům odscrollovaní:
|
| object |
getBoxScroll (
obj,
ref,
fixed
)
vrací dvojici čísel, o kolik je "obj" odscrollovaný vůči oknu nebo vůči zadanému rodičovskému objektu |
| object |
getScrollPos (
)
vrací aktuální odskrolování stránky |
| void |
getStyle (
elm,
property
)
vraci současnou hodnotu nějaké css vlastnosti |
| void |
setStyle (
elm,
style
)
nastavuje objektu konkretni styly, ktere jsou zadany v objektu pojmenovanych vlastnosti (nazev_CSS : hodnota) |
| node |
writeStyle (
css
)
Přidá do dokumentu zadaný CSS řetězec |
| void |
elementsHider (
HTML,
elements,
action
)
skrývá elementy které se mohou objevit v nejvyšší vrstvě a překrýt obsah, resp. nelze je překrýt dalším obsahem (typicky <SELECT> v internet exploreru) |
| array |
getElementsByClass (
searchClass,
node,
tag
)
Vrátí kolekci elementů, které mají nadefinovanou třídu searchClass |
| array |
arrayFromCollection (
col
)
Převede html kolekci, kterou vrací napr. document.getElementsByTagName, na pole, které lze lépe procházet a není "živé" (z které se při procházení můžou ztrácet prvky zásahem jiného skriptu) |
| string[] |
separateCode (
str
)
Rozdělí kus HTML kódu na ne-javascriptovou a javascriptovou část. Chceme-li pak simulovat vykonání kódu prohlížečem, první část vyinnerHTMLíme a druhou vyevalíme. |
| int[] |
shiftBox (
box
)
Spočítá, o kolik je nutno posunout prvek tak, aby byl vidět v průhledu. |
- <static> SZN.Dom() [constructor]
-
Statický konstruktor, nemá smysl vytvářet jeho instance.
- <static> SZN.cEl(tagName, id, className, styleObj, doc)
-
Vytvoří DOM node, je možné rovnou zadat id, CSS třídu a styly
Argumenty:
- tagName (String) - jméno tagu (lowercase)
- id (String) - id uzlu
- className (String) - název CSS trid(y)
- styleObj (Object) - asociativní pole CSS vlastností a jejich hodnot
- doc (Object) - dokument, v jehož kontextu se node vyrobí (default: document)
- <static> SZN.cTxt(str, doc)
-
Alias pro document.createTextNode
Argumenty:
- str (String) - řetězec s textem
- doc (Object) - dokument, v jehož kontextu se node vyrobí (default: document)
- <static> object SZN.gEl(ids)
-
zjednodušený přístup k metodě DOM document.getElementById
Argumenty:
- ids (string) - id HTML elementu, který chceme získat, NEBO přímo element
Návratová hodnota:
- object - HTML element s id = ids, pokud existuje, NEBO element specifikovaný jako parametr
-
append()
metoda objektu SZN.Dom -
Propoji zadané DOM uzly
Argumenty:
- pole1...poleN (Array) - libovolný počet polí; pro každé pole se vezme jeho první prvek a ostatní se mu navěsí jako potomci
-
bool hasClass(element, className)
metoda objektu SZN.Dom -
Otestuje, má-li zadany DOM uzel danou CSS třídu
Argumenty:
- element (Object) - DOM uzel
- className (String) - CSS třída
Návratová hodnota:
- bool - true|false
-
addClass(element, className)
metoda objektu SZN.Dom -
Přidá DOM uzlu CSS třídu. Pokud ji již má, pak neudělá nic.
Argumenty:
- element (Object) - DOM uzel
- className (String) - CSS třída
-
removeClass(element, className)
metoda objektu SZN.Dom -
Odebere DOM uzlu CSS třídu. Pokud ji nemá, neudělá nic.
Argumenty:
- element (Object) - DOM uzel
- className (String) - CSS třída
-
clear(element)
metoda objektu SZN.Dom -
Vymaže (removeChild) všechny potomky daného DOM uzlu
Argumenty:
- element (Object) - DOM uzel
-
object getDocSize()
metoda objektu SZN.Dom -
vrací velikost dokumentu, lze použít ve standardním i quirk módu
Návratová hodnota:
- object - s vlastnostmi:
- width - šířka dokumentu
- height - výška dokumentu
- object - s vlastnostmi:
-
object getBoxPosition(obj, ref, fixed)
metoda objektu SZN.Dom -
vrací polohu "obj" ve stránce nebo uvnitř objektu který předám jako druhý argument
Argumenty:
- obj (object) - HTML element, jehož pozici chci zjistit
- [ref] (object) - volitelný HTML element, vůči kterému chci zjistit pozici obj, element musí být jeho rodič
- fixed (bool) - volitelný flag, má-li se brát ohled na "fixed" prvky
Návratová hodnota:
- object - s vlastnostmi :
- left(px) - horizontální pozice prvku
- top(px) - vertikální pozice prvku
-
object getFullBoxPosition(obj, parent, fixed)
metoda objektu SZN.Dom -
vrací polohu "obj" v okně nebo uvnitř objektu který předáme jako druhý argument, zahrnuje i potencialni odskrolovani kdekoliv nad objektem Par noticek k výpočtům odscrollovaní:
- rodič body je html (documentElement), rodič html je document
- v strict mode má scroll okna nastavené html
- v quirks mode má scroll okna nastavené body
- opera dává vždy do obou dvou
- safari dává vždy jen do body
Argumenty:
- obj (object) - HTML elmenet, jehož pozici chci zjistit
- parent (object) - volitelný HTML element, vůči kterému chci zjistit pozici obj, element musí být jeho rodič
- fixed (bool) - volitelný flag, má-li se brát ohled na "fixed" prvky
Návratová hodnota:
- object - s vlastnostmi :
- left(px) - horizontalní pozice prvku
- top(px) - vertikální pozice prvku
-
object getBoxScroll(obj, ref, fixed)
metoda objektu SZN.Dom -
vrací dvojici čísel, o kolik je "obj" odscrollovaný vůči oknu nebo vůči zadanému rodičovskému objektu
Argumenty:
- obj (object) - HTML elmenet, jehož odskrolovaní chci zjistit
- ref (object) - volitelný HTML element, vůči kterému chci zjistit odskrolování obj, element musí být jeho rodič
- fixed (bool) - volitelný flag, má-li se brát ohled na "fixed" prvky
Návratová hodnota:
- object - s vlastnostmi :
- left(px) - horizontální scroll prvku
- top(px) - vertikální scroll prvku
-
object getScrollPos()
metoda objektu SZN.Dom -
vrací aktuální odskrolování stránky
Návratová hodnota:
- object - s vlastnostmi:
- x(px) - horizontální odskrolování
- y(px) - vertikální odskrolování
- object - s vlastnostmi:
-
getStyle(elm, property)
metoda objektu SZN.Dom -
vraci současnou hodnotu nějaké css vlastnosti
Argumenty:
- elm (object) - HTML elmenet, jehož vlasnost nás zajímá
- property (string) - řetězec s názvem vlastnosti ("border","backgroundColor",...)
-
setStyle(elm, style)
metoda objektu SZN.Dom -
nastavuje objektu konkretni styly, ktere jsou zadany v objektu pojmenovanych vlastnosti (nazev_CSS : hodnota)
Argumenty:
- elm (object) - HTML element, jehož vlastnosti měním
- style (object) - objekt nastavovaných vlastností, např.: {color: 'red', backgroundColor: 'white'}
-
node writeStyle(css)
metoda objektu SZN.Dom -
Přidá do dokumentu zadaný CSS řetězec
Argumenty:
- css (string) - Kus CSS deklarací
Návratová hodnota:
- node - vyrobený prvek
-
elementsHider(HTML, elements, action)
metoda objektu SZN.Dom -
skrývá elementy které se mohou objevit v nejvyšší vrstvě a překrýt obsah, resp. nelze je překrýt dalším obsahem (typicky <SELECT> v internet exploreru)
Argumenty:
- HTML (object, string) - element nebo jeho ID pod kterým chceme skrývat problematické prvky
- elements (array) - pole obsahující názvy problematických elementů
- action (string) - akce kterou chceme provést 'hide' pro skrytí 'show' nebo cokoli jiného než hide pro zobrazení
-
array getElementsByClass(searchClass, node, tag)
metoda objektu SZN.Dom -
Vrátí kolekci elementů, které mají nadefinovanou třídu searchClass
Argumenty:
- searchClass (string) - vyhledávaná třída
- node (object) - element dokumentu, ve kterém se má hledat, je-li null prohledává se celý dokument
- tag (string) - název tagu na který se má hledání omezit, je-li null prohledávají se všechny elementy
Návratová hodnota:
- array - pole které obsahuje všechny nalezené elementy, které mají definovanou třídu searchClass
-
array arrayFromCollection(col)
metoda objektu SZN.Dom -
Převede html kolekci, kterou vrací napr. document.getElementsByTagName, na pole, které lze lépe procházet a není "živé" (z které se při procházení můžou ztrácet prvky zásahem jiného skriptu)
Argumenty:
- col (HTMLCollection) -
Návratová hodnota:
- array -
-
string[] separateCode(str)
metoda objektu SZN.Dom -
Rozdělí kus HTML kódu na ne-javascriptovou a javascriptovou část. Chceme-li pak simulovat vykonání kódu prohlížečem, první část vyinnerHTMLíme a druhou vyevalíme.
Argumenty:
- str (string) - HTML kód
Návratová hodnota:
- string[] - pole se dvěma položkami - čistým HTML a čistým JS
-
int[] shiftBox(box)
metoda objektu SZN.Dom -
Spočítá, o kolik je nutno posunout prvek tak, aby byl vidět v průhledu.
Argumenty:
- box (node) -
Návratová hodnota:
- int[] -
error.js
Chybovy handler pro unifikované neobstruktivní zpracovaní chyb
| Návratová hodnota | Popis metody |
| void |
SZN.Error (
)
Konstruktor třídy, nemá smysl vytvářet jeho instance. |
| void |
log (
e
)
Metoda uchová chybu v zásobniku chyb |
| string |
dump (
)
Vypíše dosud zachycené chyby |
| void |
clear (
)
Vymaže cache |
- <static> SZN.Error() [constructor]
-
Konstruktor třídy, nemá smysl vytvářet jeho instance.
Vlastnosti:
- cache (array) - cache, zásobník chyb
-
log(e)
metoda objektu SZN.Error -
Metoda uchová chybu v zásobniku chyb
Argumenty:
- e (Error) - JavaScriptový chybový objekt
-
string dump()
metoda objektu SZN.Error -
Vypíše dosud zachycené chyby
Návratová hodnota:
- string - seznam chyb
-
clear()
metoda objektu SZN.Error -
Vymaže cache
events.js
Třída sloužící ke zpracovavaní udalostí a časovačů poskytovaných DOM modelem.
| Návratová hodnota | Popis metody |
| void |
SZN.Events (
)
Statický konstruktor, nemá smysl vytvářet jeho instance. |
| void |
onDomReady (
obj,
func
)
metoda kterou použijeme, pokud chceme navěsit vlastní kód na událost, kdy je DOM strom připraven k použití. Je možné navěsit libovolný počet volaných funkcí. |
| void |
destructor (
)
destruktor, odvěsí všechny handlované události a jejich posluchače a zruší se. |
| void |
getEvent (
e
)
vraci událost, která je právě zpracovávána. |
| void |
getTarget (
e
)
vrací cíl události, tedy na kterém DOM elementu byla vyvolána. |
| string |
addListener (
elm,
eType,
obj,
func,
capture
)
zavěšuje posluchače na danou událost, vytváří a ukládá si anonymní funkci která provede vlastní volání registroveného posluchače tak aby se provedl ve správném oboru platnost. (this uvnitř posluchače se bude vztahovat k objektu jehož je naslouchající funkce metodou a jako parametry se jí předá odkaz na událost, která byla zachycena a element, na kterém se naslouchalo. POZOR! Dle specifikace se nevolá capture posluchač, pokud je navěšený na prvek, na kterém událost vznikla (jen na jeho předcích). Dodržuje to však pouze Opera, Gecko ne (viz https://bugzilla.mozilla.org/show_bug.cgi?id=235441). |
| void |
removeListener (
elm,
eType,
obj,
func,
capture,
cached
)
odebírání posluchačů události, buď zadáním stejných údajů jako při handlování (nedoporučeno) nebo zadáním id (cached), které vrací medoda addListener a) pokud je zadán jen jeden argument, nebo je první argument string, je považován za hodnotu id (chached) b) jinak se zkusi standardní odvěšení |
| void |
removeAllListeners (
)
provede odvěšení všech posluchačů, kteří jsou uloženi v eventFolder |
| void |
stopEvent (
e
)
zastaví probublávaní události stromem dokumentu |
| void |
cancelDef (
e
)
zruší výchozí akce (definované klientem) pro danou událost (např. prokliknutí odkazu) |
| void |
addTimeFunction (
owner,
handleFuncName,
exeFunc,
exeObj
)
provádí transformaci předané metody tak aby se zavolala v kontextu objektu owner při použití v intervalu nebo timeoutu, v oboru platnosti owner vytvoří funkci, která provede volání exeFunc v oboru platnosti owner. Vlastně to samé jako SZN.bind(). |
| void |
getInfo (
)
metoda vrací strukturovaný objekt s informacemi o nabindovaných udalostech. struktura je vhodná pro bookmark Visual Event (http://www.sprymedia.co.uk/article/Visual+Event) od Allana Jardine. Po spuštění jeho JS bookmarku jsou navěšené události vizualizovány na dané stránce |
- <static> SZN.Events() [constructor]
-
Statický konstruktor, nemá smysl vytvářet jeho instance.
-
onDomReady(obj, func)
metoda objektu SZN.Events -
metoda kterou použijeme, pokud chceme navěsit vlastní kód na událost, kdy je DOM strom připraven k použití. Je možné navěsit libovolný počet volaných funkcí.
Argumenty:
- obj (object) - objekt ve kterém se bude událost zachytávat, pokud je volána globalní funkce musí byt 'window' případně 'document'
- func (function, string) - funkce, která se bude provádět jako posluchač
-
destructor()
metoda objektu SZN.Events -
destruktor, odvěsí všechny handlované události a jejich posluchače a zruší se.
-
getEvent(e)
metoda objektu SZN.Events -
vraci událost, která je právě zpracovávána.
Argumenty:
- e (object) - událost
-
getTarget(e)
metoda objektu SZN.Events -
vrací cíl události, tedy na kterém DOM elementu byla vyvolána.
Argumenty:
- e (object) - událost
-
string addListener(elm, eType, obj, func, capture)
metoda objektu SZN.Events -
zavěšuje posluchače na danou událost, vytváří a ukládá si anonymní funkci která provede vlastní volání registroveného posluchače tak aby se provedl ve správném oboru platnost. (this uvnitř posluchače se bude vztahovat k objektu jehož je naslouchající funkce metodou a jako parametry se jí předá odkaz na událost, která byla zachycena a element, na kterém se naslouchalo.
POZOR! Dle specifikace se nevolá capture posluchač, pokud je navěšený na prvek, na kterém událost vznikla (jen na jeho předcích). Dodržuje to však pouze Opera, Gecko ne (viz https://bugzilla.mozilla.org/show_bug.cgi?id=235441).Argumenty:
- elm (object) - element, který událost zachytává
- eType (string) - typ události bez předpony "on"
- obj (object) - objekt ve kterém se bude událost zachytávat, pokud je volána globalní funkce musí byt 'window' případně 'document'
- func (function, string) - funkce, která se bude provádět jako posluchač string pokud jde o metodu obj nebo reference na funkci, která se zavolá jako metoda obj
- capture (boolean) - hodnata použitá jako argument capture pro DOM zachytávání pro IE je ignorována
Návratová hodnota:
- string - identifikátor handleru v eventFolder prostřednictvím, kterého se událost odvěšuje, pokud je cached vyhodnoceno jako true
-
removeListener(elm, eType, obj, func, capture, cached)
metoda objektu SZN.Events -
odebírání posluchačů události, buď zadáním stejných údajů jako při handlování (nedoporučeno) nebo zadáním id (cached), které vrací medoda addListener
a) pokud je zadán jen jeden argument, nebo je první argument string, je považován za hodnotu id (chached)
b) jinak se zkusi standardní odvěšeníArgumenty:
- elm (object) - elemnet na kterém se poslouchalo
- eType (string) - událost která se zachytávala
- obj (object) - objekt v jehož oboru platnosti se zachycená událost zpracovala
- func (function, string) - funkce/metoda která událost zpracovávala
- capture (boolean) - hodnota capture pro DOM odvěšování
- cached (string) - id pod kterým jsou uložena data k odvěšení v eventFolder
-
removeAllListeners()
metoda objektu SZN.Events -
provede odvěšení všech posluchačů, kteří jsou uloženi v eventFolder
-
stopEvent(e)
metoda objektu SZN.Events -
zastaví probublávaní události stromem dokumentu
Argumenty:
- e (object) - zpracovávaná událost
-
cancelDef(e)
metoda objektu SZN.Events -
zruší výchozí akce (definované klientem) pro danou událost (např. prokliknutí odkazu)
Argumenty:
- e (object) - zpracovávaná událost
-
addTimeFunction(owner, handleFuncName, exeFunc, exeObj)
metoda objektu SZN.Events -
provádí transformaci předané metody tak aby se zavolala v kontextu objektu owner při použití v intervalu nebo timeoutu, v oboru platnosti owner vytvoří funkci, která provede volání exeFunc v oboru platnosti owner. Vlastně to samé jako SZN.bind().
Argumenty:
- owner (object) - objekt v jehož oboru platnosti se bude vykonávat funkce/metoda exeFunc v časovači
- handleFuncName (string) - název vlastnosti objektu owner, která se bude spouštět v časovači
- exeFunc (function) - funkce/metoda, kterou chceme provádět
- exeObj (function) - objekt, nad kterym chceme provádět metodu execFunc, není-li zadán je prováděna v kontextu owner
-
getInfo()
metoda objektu SZN.Events -
metoda vrací strukturovaný objekt s informacemi o nabindovaných udalostech. struktura je vhodná pro bookmark Visual Event (http://www.sprymedia.co.uk/article/Visual+Event) od Allana Jardine. Po spuštění jeho JS bookmarku jsou navěšené události vizualizovány na dané stránce
main.js
Deklarace "jmenného prostoru" knihoven JAK. Dále obsahuje rozšíření práce s poli dle definice JavaScriptu verze 1.6. Při použití této knihovny je nutné pole vždy procházet pomocí for (var i=0; arr.length > i; i++).
| Návratová hodnota | Popis metody |
| void |
SZN (
)
|
| function |
bind (
obj,
fnc
)
vytvoření funkce, která vrací volání funkce ve svém argumentu "fnc" jako metody objektu z argumentu "obj" s předanými argumenty. Metodu používají další třídy v SZN (např. SZN.Components) |
| string |
idGenerator (
)
generátor unikatních ID |
| function |
bind (
thisObj
)
ES5 Function.prototype.bind Vrací funkci zbindovanou do zadaného kontextu. Zbylé volitelné parametry jsou předány volání vnitřní funkce. |
| void |
lpad (
character,
count
)
Doplneni zadanym znakem zleva na pozadovanou delku |
| void |
rpad (
character,
count
)
Doplneni zadanym znakem zprava na pozadovanou delku |
| void |
trim (
)
Oriznuti bilych znaku ze zacatku a konce textu |
| void |
format (
str
)
Formatovani data shodne s http://php.net/date |
- <static> SZN() [constructor]
-
SZN statický objekt, který se používá pro "zapouzdření" všech definic a deklarací. V podmínce se nalezá pro jistotu, protože může být definován ještě před svou deklarací při použití slovníků, nebo konfigurací.
-
function bind(obj, fnc)
metoda objektu SZN -
vytvoření funkce, která vrací volání funkce ve svém argumentu "fnc" jako metody objektu z argumentu "obj" s předanými argumenty. Metodu používají další třídy v SZN (např. SZN.Components)
Argumenty:
- obj (object) - objekt v jehož oboru platnosti bude volán druhý argument
- fnc (function) - funkce která bude provedena v oboru platnosti prvního argumentu
Např.:
var test = function(){ alert(this.value); } window.value = 1; var obj = {value:2}; var pokus = SZN.bind(obj,test) test(); // alert(1); pokus(); // alert(2);Návratová hodnota:
- function - volání takto vytvořené funkce
-
<static> string idGenerator()
metoda objektu SZN -
generátor unikatních ID
Návratová hodnota:
- string - unikátní ID
-
function bind(thisObj)
metoda objektu Function -
ES5 Function.prototype.bind Vrací funkci zbindovanou do zadaného kontextu. Zbylé volitelné parametry jsou předány volání vnitřní funkce.
Argumenty:
- thisObj (object) - Nový kontext
Návratová hodnota:
- function -
-
lpad(character, count)
metoda objektu String -
Doplneni zadanym znakem zleva na pozadovanou delku
Argumenty:
- character () -
- count () -
-
rpad(character, count)
metoda objektu String -
Doplneni zadanym znakem zprava na pozadovanou delku
Argumenty:
- character () -
- count () -
-
trim()
metoda objektu String -
Oriznuti bilych znaku ze zacatku a konce textu
-
format(str)
metoda objektu Date -
Formatovani data shodne s http://php.net/date
Argumenty:
- str () -
object.js
Nastroje pro práci s objekty: kopírování, serializace, porovnání.
| Návratová hodnota | Popis metody |
| void |
SZN.ObjLib (
)
|
| void |
$constructor (
)
implicitní konstruktor, |
| void |
$destructor (
)
implicitni destruktor, zatím se nepoužívá |
| object |
reSetOptions (
options,
options.functionResistant,
options.recursionResistant,
options.depthResistant,
options.sortedSerialization,
options.showFlag,
options.depth,
set
)
Metoda provede merge mezi výchozím nastavením serializace a novým předaným v options vrací nové nastavení, je-li parametr "set" vyhodnocen jako true změní přímo výchozí nastavení |
| string |
pretty (
str,
sep
)
převede řetězec obsahující JSON zápis do čitelnější podoby (přidá zalomení na konci řádků a odsazení) |
| string |
serialize (
objToSource,
options,
options.functionResistant,
options.recursionResistant,
options.depthResistant,
options.sortedSerialization,
options.showFlag,
options.depth
)
převádí objekt na řetězec obsahující literalovou formu zapisu objektu (JSON) případně ho převádí do lidsky čitelné podoby (nelze pak unserializovat) |
| object |
unserialize (
serializedString
)
převede řetězec obsahující literálovou formu zápisu pole nebo objektu na pole nebo objekt |
|
match (
refObj,
matchObj,
options,
options.functionResistant,
options.recursionResistant,
options.depthResistant,
options.sortedSerialization,
options.showFlag,
options.depth
)
porovnává dva objekty zda jsou datově shodné, porovnavanim jejich serializovanych retezcu POZOR: V případě, že jsou atributy options parametru příliš benevolntní nemusí být výsledek porovnání relevantní !! |
|
| object |
copy (
objToCopy,
options,
options.functionResistant,
options.recursionResistant,
options.depthResistant,
options.sortedSerialization,
options.showFlag,
options.depth
)
pokusí se vytvořit datově identickou kopii objektu který dostane jako vstupní argument objekt nesmí obsahovat metody a cyklické reference, vlastní kopírování probíhá tak, že se předný objekt serializuje a výsledný string se unserializuje. POZOR: V případě, že jsou atributy options parametru příliš benevolntní nevznikne identická kopie a uživatel se o tom nedoví !! |
| array |
arrayCopy (
arrayToCopy,
options,
options.functionResistant,
options.recursionResistant,
options.depthResistant,
options.sortedSerialization,
options.showFlag,
options.depth
)
kopíruje pole, vytváří datově a typově shodnou kopii pole, které dostane, jako argument |
| void |
SZN.ObjCopy (
)
|
- <static> SZN.ObjLib() [constructor]
-
třída provádí operace s objekty jako je jejich porovnávaní a serializace a deserializace dědí z třídy ObjCopy, takže umí i kopírovat, dědí též všechna omezení svého rodiče (maximalní hloubka zanoření, umí pracovat pouze s datovými objekty)
-
$constructor()
metoda objektu SZN.ObjLib -
implicitní konstruktor,
-
$destructor()
metoda objektu SZN.ObjLib -
implicitni destruktor, zatím se nepoužívá
-
object reSetOptions(options, set)
metoda objektu SZN.ObjLib -
Metoda provede merge mezi výchozím nastavením serializace a novým předaným v options vrací nové nastavení, je-li parametr "set" vyhodnocen jako true změní přímo výchozí nastavení
Argumenty:
- options (object) - objekt popisující chování serializace
- options.functionResistant (boolean) - určuje, jak se zachovat v případě že vlastnost objektu je funkce (vyvolat výjimku nebo místo její hodnoty vypsat zprávu "function: jmeno vlastnosti]")
- options.recursionResistant (boolean) - určuje, jak se zachovat v případě nalezení cyklické reference (vyvolat výjimku nebo místo její hodnoty vypsat zprávu "circular reference found")
- options.depthResistant (boolean) - určuje, jak se zachovat v případě překročení maximální povolené hloubky zanoření do objektu (buď vyvoláním výjimky nebo na místo překročení vypíše zprávu max depth overrun)
- options.sortedSerialization (boolean) - určuje, zda vlastnosti objektu budou v serializovaném výstupu seřazeny
- options.showFlag (string) - je-li definován a jeho hodnota se vyhodnotí jako "true" upřesňuje vzhled "pretty" výstupu
- options.depth (number) - maximální hloubka do jaké objekt zkoumáme
- [set] (boolean) - přepínáč způsobu zpracování true||false = pouze vrátit || přepsat
Návratová hodnota:
- object - nové nastavení po merge
-
string pretty(str, sep)
metoda objektu SZN.ObjLib -
převede řetězec obsahující JSON zápis do čitelnější podoby (přidá zalomení na konci řádků a odsazení)
Argumenty:
- str (string) - převáděný řetězec
- [sep] (string) - řetězec, který se použije na odsazování řádek
Návratová hodnota:
- string -
-
string serialize(objToSource, options)
metoda objektu SZN.ObjLib -
převádí objekt na řetězec obsahující literalovou formu zapisu objektu (JSON) případně ho převádí do lidsky čitelné podoby (nelze pak unserializovat)
Argumenty:
- objToSource (object) - objekt, který chceme serializovat
- [options] (object) - objekt popisující chování serializace
- [options.functionResistant] (boolean) - určuje, jak se zachovat v případě že vlastnost objektu je funkce (vyvolat výjimku nebo místo její hodnoty vypsat zprávu "function: jmeno vlastnosti]")
- [options.recursionResistant] (boolean) - určuje, jak se zachovat v případě nalezení cyklické reference (vyvolat výjimku nebo místo její hodnoty vypsat zprávu "circular reference found")
- [options.depthResistant] (boolean) - určuje, jak se zachovat v případě překročení maximální povolené hloubky zanoření do objektu (buď vyvoláním výjimky nebo na místo překročení vypíše zprávu max depth overrun)
- [options.sortedSerialization] (boolean) - určuje, zda vlastnosti objektu budou v serializovaném výstupu seřazeny
- [options.showFlag] (string) - je-li definován a jeho hodnota se vyhodnotí jako "true" upřesňuje vzhled "pretty" výstupu
- [options.depth] (number) - maximální hloubka do jaké objekt zkoumáme
Návratová hodnota:
- string - řetězcová reprezantace objektu
-
object unserialize(serializedString)
metoda objektu SZN.ObjLib -
převede řetězec obsahující literálovou formu zápisu pole nebo objektu na pole nebo objekt
Argumenty:
- serializedString (string) - řetězec k převedení
Návratová hodnota:
- object - vytvořený ze vstupního řetězce
-
match(refObj, matchObj, options)
metoda objektu SZN.ObjLib -
porovnává dva objekty zda jsou datově shodné, porovnavanim jejich serializovanych retezcu
POZOR: V případě, že jsou atributy options parametru příliš benevolntní nemusí být výsledek porovnání relevantní !!Argumenty:
- refObj (object) - objekt, s kterým porovnáváme
- matchObj (object) - objekt, který porovnáváme
- [options] (object) - objekt popisující chování serializace
- [options.functionResistant] (boolean) - určuje, jak se zachovat v případě že vlastnost objektu je funkce (vyvolat výjimku nebo místo její hodnoty vypsat zprávu "function: jmeno vlastnosti]")
- [options.recursionResistant] (boolean) - určuje, jak se zachovat v případě nalezení cyklické reference (vyvolat výjimku nebo místo její hodnoty vypsat zprávu "circular reference found")
- [options.depthResistant] (boolean) - určuje, jak se zachovat v případě překročení maximální povolené hloubky zanoření do objektu (buď vyvoláním výjimky nebo na místo překročení vypíše zprávu max depth overrun)
- [options.sortedSerialization] (boolean) - určuje, zda vlastnosti objektu budou v serializovaném výstupu seřazeny
- [options.showFlag] (string) - je-li definován a jeho hodnota se vyhodnotí jako "true" upřesňuje vzhled "pretty" výstupu
- [options.depth] (number) - maximální hloubka do jaké objekt zkoumáme
Návratová hodnota:
- - true = jsou shodné, false = nejsou shodné
-
object copy(objToCopy, options)
metoda objektu SZN.ObjLib -
pokusí se vytvořit datově identickou kopii objektu který dostane jako vstupní argument objekt nesmí obsahovat metody a cyklické reference, vlastní kopírování probíhá tak, že se předný objekt serializuje a výsledný string se unserializuje.
POZOR: V případě, že jsou atributy options parametru příliš benevolntní nevznikne identická kopie a uživatel se o tom nedoví !!Argumenty:
- objToCopy (object) - kopírovaný objekt
- [options] (object) - objekt popisující chování serializace
- [options.functionResistant] (boolean) - určuje, jak se zachovat v případě že vlastnost objektu je funkce (vyvolat výjimku nebo místo její hodnoty vypsat zprávu "function: jmeno vlastnosti]")
- [options.recursionResistant] (boolean) - určuje, jak se zachovat v případě nalezení cyklické reference (vyvolat výjimku nebo místo její hodnoty vypsat zprávu "circular reference found")
- [options.depthResistant] (boolean) - určuje, jak se zachovat v případě překročení maximální povolené hloubky zanoření do objektu (buď vyvoláním výjimky nebo na místo překročení vypíše zprávu max depth overrun)
- [options.sortedSerialization] (boolean) - určuje, zda vlastnosti objektu budou v serializovaném výstupu seřazeny
- [options.showFlag] (string) - je-li definován a jeho hodnota se vyhodnotí jako "true" upřesňuje vzhled "pretty" výstupu
- [options.depth] (number) - maximální hloubka do jaké objekt zkoumáme
Návratová hodnota:
- object -
-
array arrayCopy(arrayToCopy, options)
metoda objektu SZN.ObjLib -
kopíruje pole, vytváří datově a typově shodnou kopii pole, které dostane, jako argument
Argumenty:
- arrayToCopy (array) - pole ke zkopírování
- [options] (object) - objekt popisující chování serializace
- [options.functionResistant] (boolean) - určuje, jak se zachovat v případě že vlastnost objektu je funkce (vyvolat výjimku nebo místo její hodnoty vypsat zprávu "function: jmeno vlastnosti]")
- [options.recursionResistant] (boolean) - určuje, jak se zachovat v případě nalezení cyklické reference (vyvolat výjimku nebo místo její hodnoty vypsat zprávu "circular reference found")
- [options.depthResistant] (boolean) - určuje, jak se zachovat v případě překročení maximální povolené hloubky zanoření do objektu (buď vyvoláním výjimky nebo na místo překročení vypíše zprávu max depth overrun)
- [options.sortedSerialization] (boolean) - určuje, zda vlastnosti objektu budou v serializovaném výstupu seřazeny
- [options.showFlag] (string) - je-li definován a jeho hodnota se vyhodnotí jako "true" upřesňuje vzhled "pretty" výstupu
- [options.depth] (number) - maximální hloubka do jaké objekt zkoumáme
Návratová hodnota:
- array - kopie pole arrayToCopy
- <static> SZN.ObjCopy() [constructor]
-
třída která umožňuje vytvářet hluboké kopie objektů v případě, že je hloubka objektu konečná a menší než hloubka určená konstantou DEEP, objekty, které se odvolávají sami na sebe nelze kopírovat (cyklická reference), kopírovat lze pouze objekty, které obsahují data a nikoli metody.
Třída je přítomna pouze z důvodu zpětné kompatibility, veškerou funkcionalitu implementuje SZN.ObjLib
Třída poskytuje identickou funkcionalitu jako třída SZN.ObjLib!
request.js
Třída pro práci s HTTPXmlRequestem pro komunikaci klient - server.
| Návratová hodnota | Popis metody |
| void |
SZN.HTTPRequest (
)
|
| void |
$constructor (
url,
callBackObj,
callBackFunc
)
|
| void |
SZN.HTTPRequest.Setting (
url,
method,
postData,
headers,
mode,
format
)
|
| void |
destructor (
)
destruktor |
| void |
init (
)
inicializace nepoužívá se |
| void |
setMethod (
method
)
nastavuje metodu komunikace klient - server dle argumentu, pokud argument není definován v objektu METHOD použije se výchozí (get) |
| void |
setMode (
mode
)
nastavuje möd komunikace klient - server dle argumentu, pokud argument není definován v objektu MODE použije se výchozí |
| void |
setFormat (
format
)
nastavuje format odpovědi serveru dle argumentu, pokud argument není definován v objektu FORMAT použije se výchozí |
| void |
setHeaders (
headers
)
nastavuje HTTP hlavičky dotazu |
| void |
setPostData (
data
)
nastavuje data, která se mají posílat metodou POST |
| object |
send (
url,
callBackObj,
callBackFunc,
requestData,
returnOnly
)
vlastní vyvolání HTTPxmlRequestu, předané parametry se použijí pro konkretní dotaz pokud některý není definován použije se výchozí, nebo nastavený |
| void |
abort (
XHR
)
umožňuje zrušit asynchroní dotaz pokud již není zpracováván |
- <static> SZN.HTTPRequest() [constructor]
-
třída provádějící komunikaci klient - server prostřednictvím HTTPxmlRequest defaultně posíláme dotaz metodou GET, asynchroně a odpověď očekáváme v TXT formátu
Vlastnosti:
- data (object) - aktuální nastavení pro request
- url (string) - url na které se ptáme
- callBackObj (object) - objekt v jehož oboru platnosti zpracujeme odpověď
- callBackFunc (function) - metoda, která odpověď zpracuje
- METHOD (object) - konstanta výčtové pole metod, které se mouhou používat a definice defaultní metody
- FORMAT (object) - konstanta výčtové pole formatů odpovědí, které se mouhou používat a definice defaultního formatu
- MODE (object) - konstanta výčtové pole modu dotazu, které se mouhou používat a definice defaultního modu
- HEADER (array) - konstanta výchozí nastaveni http hlavičky dotazu
-
$constructor(url, callBackObj, callBackFunc)
metoda objektu SZN.HTTPRequest -
Argumenty:
- url (string) - url, na které budeme posílat dotazy
- callBackObj (object) - objekt, v jehož oboru platnosti zpracováváme odpověď
- callBackFunc (string) - metoda, která bude odpověď zpracovávat
- <static> SZN.HTTPRequest.Setting(url, method, postData, headers, mode, format) [constructor]
-
konstruktor vytváří "objekt" nastavení (settings) pro instanci SZN.Request
Vlastnosti:
- url (string) - url serveru, kterého se ptáme
- method (string) - metoda dotazu [post,get = default]
- mode (string) - mod dotazu [sync,async = default]
- format (string) - formát odpovědi [xml = default]
- headers (array) - nastavení hlaviček, pole objektů s vlatnostmi type a content
- postData (string) - data pro dotaz posílaný metodou post
Argumenty:
- [url] (string) - url serveru, kterého se ptáme
- [method] (string) - metoda dotazu [post,get = default]
- [postData] (string) - data pro dotaz posílaný metodou post
- [headers] (array) - nastavení hlaviček, pole objektů s vlatnostmi type a content
- [mode] (string) - mod dotazu [sync,async = default]
- [format] (string) - formát odpovědi [xml = default]
-
destructor()
metoda objektu SZN.HTTPRequest -
destruktor
-
init()
metoda objektu SZN.HTTPRequest -
inicializace nepoužívá se
-
setMethod(method)
metoda objektu SZN.HTTPRequest -
nastavuje metodu komunikace klient - server dle argumentu, pokud argument není definován v objektu METHOD použije se výchozí (get)
Argumenty:
- method (string) - metoda komunikace klient server [get,post]
-
setMode(mode)
metoda objektu SZN.HTTPRequest -
nastavuje möd komunikace klient - server dle argumentu, pokud argument není definován v objektu MODE použije se výchozí
Argumenty:
- mode (string) - mod komunikace klient server [sync,async]
-
setFormat(format)
metoda objektu SZN.HTTPRequest -
nastavuje format odpovědi serveru dle argumentu, pokud argument není definován v objektu FORMAT použije se výchozí
Argumenty:
- format (string) - format odpovědi serveru [xml,txt]
-
setHeaders(headers)
metoda objektu SZN.HTTPRequest -
nastavuje HTTP hlavičky dotazu
Argumenty:
- headers (array) - pole objektu s vlastnostmi:
- typ - typ hlavičky
- content - hodnota hlavičky
- headers (array) - pole objektu s vlastnostmi:
-
setPostData(data)
metoda objektu SZN.HTTPRequest -
nastavuje data, která se mají posílat metodou POST
Argumenty:
- data (string) - data, která se budou posílat POSTem
-
object send(url, callBackObj, callBackFunc, requestData, returnOnly)
metoda objektu SZN.HTTPRequest -
vlastní vyvolání HTTPxmlRequestu, předané parametry se použijí pro konkretní dotaz pokud některý není definován použije se výchozí, nebo nastavený
Argumenty:
- url (string) - url, na které budeme posílat dotazy (musí být zadán, ale může být prazdný)
- callBackObj (object) - objekt v jehož oboru platnosti zpracováváme odpověď (musí být zadán, ale může být prazdný)
- callBackFunc (string) - metoda, ktera bude odpoved zpracovavat (musí být zadán, ale může být prazdný)
- requestData (object) - [volitelne] instance objektu Setting s dalšími daty
- [returnOnly] (bool) - pokud používáme synchronní request určuje zda se volá callback funkce (parametr má hodnou "false" nebo není zadán - výchozí stav ), nebo bude pouze vracet odpověď od serveru (parametr má hodnotu "true") musí být zadán pokaždé, když použijeme metodu send a nechceme výchozí chování, na asynchroní volání nemá vliv
Návratová hodnota:
- object -
- v případě asynchroního requestu objekt reprezentující request
- v případě synchroního requestu vrací odpověď serveru jako objekt s vlastnostmi status a data je-li returnOnly zadáno jako true, jinak nevrací nic
-
abort(XHR)
metoda objektu SZN.HTTPRequest -
umožňuje zrušit asynchroní dotaz pokud již není zpracováván
Argumenty:
- XHR (object) - objekt requestu vracený metodou send
siginterface.js
Rozhraní určené k práci s uživatelskými událostmi a "globálními" zprávami, které zjednodušuje práci s objektem, který se o uživatelsky definované události stará
| Návratová hodnota | Popis metody |
| void |
SZN.SigInterface (
)
|
| object |
setInterface (
interfaceName
)
slouží k nalezení rozhraní u rodičovských tříd, hledá v nadřazených třídách třídu, ktera ma nastavenou vlastnost TOP_LEVEL a v ni očekává instanci třídy SZN.Signals s nazvem "interfaceName" |
| int |
addListener (
type,
handleFunction,
sender
)
slouží k registraci zachytávaní události nad objektem, který implementuje toto rozhraní |
| void |
removeListener (
type,
handleFunction,
sender
)
Slouží k zrušení zachytáváni události objektem, který implementuje toto rozhraní. Lze též zadat jen ID navěšené události (jako jediný parametr). |
| void |
makeEvent (
type,
accessType,
data
)
vytváří novou událost, kterou zachytáva instance třídy SZN.Signals |
| void |
setSysMessage (
msgName,
msgValue
)
nastavuje zprávu se jménem msgName na hodnotu msgValue |
| any |
getSysMessage (
msgName
)
čte zprávu se jménem msgName |
- <static> SZN.SigInterface() [constructor]
-
třída pro dědění rozhraní "SigInterface", jedná se v podstatě o "abstraktní třídu", u které nemá smysl vytvářet její instance a slouží pouze k definování děděných vlastností. Rozhraní pro práci s uživatelsky definovanými událostmi a zprávami vyžaduje referenci na instanci třídy SZN.signals, všechny následující metody jsou určeny k použití pouze jako zděděné vlastnosti rozhraní,
-
object setInterface(interfaceName)
metoda objektu SZN.SigInterface -
slouží k nalezení rozhraní u rodičovských tříd, hledá v nadřazených třídách třídu, ktera ma nastavenou vlastnost TOP_LEVEL a v ni očekává instanci třídy SZN.Signals s nazvem "interfaceName"
Argumenty:
- interfaceName (string) - název instance třídy SZN.Signals v daném objektu
Návratová hodnota:
- object - referenci na instanci třídy SZN.Signals
-
int addListener(type, handleFunction, sender)
metoda objektu SZN.SigInterface -
slouží k registraci zachytávaní události nad objektem, který implementuje toto rozhraní
Argumenty:
- type (string) - název události, kterou chceme zachytit
- handleFunction (string) - název metody objektu 'myListener', která bude zpracovávat událost
- sender (object) - objekt, jehož událost chceme poslouchat. Pokud není zadáno (nebo false), odesilatele nerozlišujeme
Návratová hodnota:
- int - 1 v případě neúspěchu, 0 v pripade úspěchu
-
removeListener(type, handleFunction, sender)
metoda objektu SZN.SigInterface -
Slouží k zrušení zachytáváni události objektem, který implementuje toto rozhraní. Lze též zadat jen ID navěšené události (jako jediný parametr).
Argumenty:
- type (string) - název události, kterou jsme zachytávali
- handleFunction (string) - název metody objektu 'myListener', která udalost zpracovávala
- sender (object) - objekt, jehož událost jsme poslouchali
-
makeEvent(type, accessType, data)
metoda objektu SZN.SigInterface -
vytváří novou událost, kterou zachytáva instance třídy SZN.Signals
Argumenty:
- type (string) - název vyvolané události
- accessType (string) - určuje zda bude událost viditelná i ve veřejném rozhraní
- [data] (object) - objekt s vlastnostmi specifickými pro danou událost nebo pouze vnitrnim objektum [private | public]
-
setSysMessage(msgName, msgValue)
metoda objektu SZN.SigInterface -
nastavuje zprávu se jménem msgName na hodnotu msgValue
Argumenty:
- msgName (string) - název zprávy
- msgValue (any) - obsah zprávy
-
any getSysMessage(msgName)
metoda objektu SZN.SigInterface -
čte zprávu se jménem msgName
Argumenty:
- msgName (string) - název zprávy
Návratová hodnota:
- any - obsah zprávy
signals.js
Vytváření a zachytávání vlastních uživatelských událostí, správa globálních zpráv
| Návratová hodnota | Popis metody |
| void |
SZN.Signals (
)
|
| void |
$constructor (
owner,
name
)
|
| void |
setMessage (
msgName,
msgValue
)
vkládání "globálních" zpráv |
| any |
getMessage (
msgName
)
metoda pro získání hodnoty konkrétní "globální" zprávy |
| id |
addListener (
owner,
type,
functionName,
sender
)
registrace posluchače uživatelské události, pokud je již na stejný druh události zaregistrována shodná metoda shodného objektu nic se neprovede, |
| int |
removeListener (
owner,
type,
functionName,
sender
)
Odstranění naslouchání události. Lze též zadat jen ID navěšené události (jako jediný parametr). |
| void |
makeEvent (
type,
trg,
accessType,
timestamp,
data
)
vytváří událost, ukládá ji do zásobníku události a předává ji ke zpracování |
| void |
SZN.Signals.NewEvent (
type,
trg,
accessType,
timestamp,
ids,
data
)
|
| void |
myEventHandler (
myEvent
)
zpracuje událost - spustí metodu, která byla zaragistrována jako posluchač a je-li definované API a událost je veřejná předá ji API handleru definovaného API nakonec zavolá zrušení události |
| void |
destroyEvent (
ids
)
destruktor události, odstraní událost definovanou v zásobniku a smaže ji |
- <static> SZN.Signals() [constructor]
-
třída pro práci s uživatelsky definovanými událostmi a správou globálních zpráv.
Vlastnosti:
- messageFolder (object) - zásobník zpráv pro asyncroní processy apod...
- myEventFolder (object) - asociativní pole, do kterého se vkládají vzniklé události a odkud se zpracovávají
- _myHandleFolder (object) - zásobník posluchačů událostí
- _myIdFolder (object) - pomocný IDčkový index pro rychlé odebírání
- apiHandler (object) - proměná, která určuje, zda je definováno nějaké veřejné API pro události
-
$constructor(owner, name)
metoda objektu SZN.Signals -
Argumenty:
- owner (object) - objekt vlastnící instanci třídy
- name (string) - název instance
-
setMessage(msgName, msgValue)
metoda objektu SZN.Signals -
vkládání "globálních" zpráv
Argumenty:
- msgName (string) - název zprávy
- msgValue (any) - hodnota zprávy
-
any getMessage(msgName)
metoda objektu SZN.Signals -
metoda pro získání hodnoty konkrétní "globální" zprávy
Argumenty:
- msgName (string) - název zprávy
Návratová hodnota:
- any - hodnotu uložená zprávy
-
id addListener(owner, type, functionName, sender)
metoda objektu SZN.Signals -
registrace posluchače uživatelské události, pokud je již na stejný druh události zaregistrována shodná metoda shodného objektu nic se neprovede,
Argumenty:
- owner (object) - objekt/třída, která naslouchá, a v jehož oboru platnosti se zpracovaní události provede
- type (string) - typ události, kterou chceme zachytit
- functionName (string) - funkce/metoda posluchače, která má danou událost zpracovat
- sender (object) - objekt, jehož událost chceme poslouchat. Pokud není zadáno (nebo false), odesilatele nerozlišujeme
Návratová hodnota:
- id - id události / null
-
int removeListener(owner, type, functionName, sender)
metoda objektu SZN.Signals -
Odstranění naslouchání události. Lze též zadat jen ID navěšené události (jako jediný parametr).
Argumenty:
- owner (object) - objekt/třída ktera naslouchala, a v jehož oboru platnosti se zpracování události provádělo
- type (string) - typ události, kterou jsme zachytávali
- functionName (string) - funkce/metoda posluchače, která danou událost zpracovávala
- sender (object) - objekt, jehož událost jsme poslouchali
Návratová hodnota:
- int - 0 v případě úspěchu, 1 v případě neúspěchu
-
makeEvent(type, trg, accessType, timestamp, data)
metoda objektu SZN.Signals -
vytváří událost, ukládá ji do zásobníku události a předává ji ke zpracování
Argumenty:
- type (string) - název nové události
- trg (object) - reference na objekt, který událost vyvolal
- accessType (string) - určuje zda bude událost viditeláa i ve veřejném rozhraní (je-li definováno) nebo pouze vnitřním objektům [public | private]
- timestamp (int) - čas vzniku události
- [data] (object) - objekt s vlastnostmi specifickými pro danou událost
- <static> SZN.Signals.NewEvent(type, trg, accessType, timestamp, ids, data) [constructor]
-
konstruktor vnitřní události
Vlastnosti:
- type (string) - typ události
- target (object) - objekt, který událost vyvolal
- accessType (string) - specifikace přístupových prav [public|private]
- timeStamp (int) - timestamp
- data (object) - data specifická pro danou událost (definuje je původce události)
Argumenty:
- type (string) - název nové události
- trg (object) - reference na objekt, který událost vyvolal
- accessType (string) - určuje zda bude událost viditeláa i ve veřejném rozhraní (je-li definováno) nebo pouze vnitřním objektům [public | private]
- timestamp (int) - čas vzniku události
- ids (string) - unikatní ID
- [data] (object) - objekt s vlastnostmi specifickými pro danou událost
-
myEventHandler(myEvent)
metoda objektu SZN.Signals -
zpracuje událost - spustí metodu, která byla zaragistrována jako posluchač a je-li definované API a událost je veřejná předá ji API handleru definovaného API nakonec zavolá zrušení události
Argumenty:
- myEvent (object) - zpracovávaná událost
-
destroyEvent(ids)
metoda objektu SZN.Signals -
destruktor události, odstraní událost definovanou v zásobniku a smaže ji
Argumenty:
- ids (string) - identifikátor události v zásobníku
