Cloudflare, tj. společnost poskytující "cloudové služby, které zajišťují bezpečnost, výkon a spolehlivost internetových aplikací", má výpadek.
Letos se uskuteční již 11. ročník soutěže v programování Kasiopea. Tato soutěž, (primárně) pro středoškoláky, nabízí skvělou příležitost procvičit logické myšlení a dozvědět se něco nového ze světa algoritmů – a to nejen pro zkušené programátory, ale i pro úplné začátečníky. Domácí kolo proběhne online od 22. 11. do 7. 12. 2025 a skládá se z 9 zajímavých úloh různé obtížnosti. Na výběru programovacího jazyka přitom nezáleží – úlohy jsou
… více »Byla vydána nová verze 2.52.0 distribuovaného systému správy verzí Git. Přispělo 94 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.
VKD3D-Proton byl vydán ve verzi 3.0. Jedná se fork knihovny vkd3d z projektu Wine pro Proton. Knihovna slouží pro překlad volání Direct3D 12 na Vulkan. V přehledu novinek je vypíchnuta podpora AMD FSR 4 (AMD FidelityFX Super Resolution 4).
Poštovní klient Thunderbird byl vydán v nové verzi 145.0. Podporuje DNS přes HTTPS nebo Microsoft Exchange skrze Exchange Web Services. Ukončena byla podpora 32bitového Thunderbirdu pro Linux.
U příležitosti státního svátku 17. listopadu probíhá na Steamu i GOG.com již šestý ročník Czech & Slovak Games Week aneb týdenní oslava a také slevová akce českých a slovenských počítačových her.
Byla vydána nová verze 9.19 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze například nový balíček BirdNET-Go, tj. AI řešení pro nepřetržité monitorování a identifikaci ptáků.
Byla vydána nová verze 3.38 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.10 souvisejícího programovacího jazyka Dart (Wikipedie).
Organizace Apache Software Foundation (ASF) vydala verzi 28 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
Byl vydán Debian 13.2, tj. druhá opravná verze Debianu 13 s kódovým názvem Trixie. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
Aby bol nasledujúci dokument zrozumiteľný a sebestačný, na úvod zhrniem základné poznatky o XUL.
XUL (XML User interface Language) je multiplatformový jazyk na tvorbu GUI, ktorý sa v mnohom podobá na XHTML. XUL je ukladaný v XML formáte, vzhľad a čiastočne aj správanie XUL dokumentov sú riadené kaskádovými štýlmi (CSS).
Logika aplikácií je programovaná pomocou JavaScriptu. JavaScript a XUL sú prepojené pomocou DOM (Document Object Model).
Tento dokument nemá byť rozsiahla referenčná príručka, ale má poukázať na niektoré XUL elementy, ktoré neboli spomenuté ani v seriáli, ani v tutoriále.
Rozsiahlu referenčnú príručku k jazyku XUL nájdete na stránkach XUL planet. Doplňujúce informácie o všetkých technológiách Mozilly nájdete na stránkach Mozilla developer center.
XUL sa používa na mnoho účelov. Niekedy v ňom definujeme hlavné okno aplikácie, inokedy dialóg, alebo ho využijeme pri tvorbe webovej aplikácie. XUL dokumenty môžu mať rozličné kmeňové elementy a každý z nich ponúka rozličné funkcie.
<page><iframe src="URL
dokumentu"/>. (Používa sa napríklad pri tvorbe bočného
panelu pre Firefox).<window><window> je primárne určený na tvorbu
hlavného okna aplikácie, ale jeho funkcie sú užitočné aj pri tvorbe
webových aplikácií. (Napríklad atribút title umožňuje
nastaviť titulok stránky, alebo okna aplikácie.)<dialog><window>, ale má odlišné
správanie, ktoré záleží na platforme. Tento element je užitočný pri tvorbe
dialógových okien. (Ponúka napríklad niekoľko atribútov, ktoré vytvoria
tlačidlá OK, Cancel a pod.).<wizard><window>. Tentokrát ide o ešte
sofistikovanejší nástroj na tvorbu sprievodcov, takzaných wizardov.
Sprievodca sa skladá z niekoľkých stránok, medzi ktorými sa užívateľ
pohybuje vpred, prípadne vzad. Jednotlivé stránky sú vnorené do elementov
<wizardpage>. (Pohyb medzi stránkami nemusí byť
lineárny a môžete definovať komplexnejšiu navigáciu.)<overlay><window>Najčastejšie používaný koreňový element XUL dokumentov.
Atribúty:
heighthidechrometrue spôsobí, že okno nebude mať orámovanie.idscreenXscreenYsizemodemaximizedminimizednormaltitlewidthwindowtypeRozloženie textu a obrázkov sa v HTML kedysi riešilo pomocou tabuliek. Dnes sa na tento účel používajú kaskádové štýly CSS a výsledkom sú prispôsobivejšie HTML stránky. V XUL je tiež možné použiť CSS, ale výsledkom sú zväčša ovládacie prvky, ktoré lietajú po hlavnom okne.
XUL jazyk preto používa špeciálne elementy ako praktických správcov rozloženia. Pomocou nich je možné ovládacie prvky umiestňovať na jednu pevnú pozíciu.
<box>, <hbox> a
<vbox>Element <box> môže obsahovať ľubovolný počet
ovládacích prvkov XUL. Prvky budú usporiadané vodorovne zľava do
prava.
Element <hbox> je identický s
<box>om. Element <vbox> je identický
s <box>om, až na to, že ovládacie prvky usporiadáva
zvyslo z hora nadol.
Element <box> nemá žiadne špeciálne atribúty, okrem
atribútov spoločných pre všetky XUL elementy. Za zmienku stoja dva z
nich:
orienthorzontalverticalpackstart<box>e budú
všetky prvky posunuté čo najviac naľavo, vo vertikálnom nahor).centerend<stack> a <deck>Elementy <stack> a <deck>
umiestňujú ovládacie prvky jeden nad druhý. Rozdiel medzi nimi je ten, že
<stack> zobrazí všetky elementy naraz a tie sa budú
navzájom prekrývať a <deck> zobrazí stále iba
jeden z nich.
Element <deck> má jeden atribút:
selectedIndexElement <deck> má v JavaScripte jednu metódu:
selectedPanel<tabbox>Element <tabbox> je manažér záložiek (on má
na starosti napríklad viac panelové prehliadanie vo Firefoxe). Element
<tabbox> by mal obsahovať elementy
<tabs> a <tabpanels>. V elemente
<tabs> by ďalej mali byť elementy
<tab> a v každom z nich obsah jednotlivých záložiek.
V elemente <tabpanels> majú byť umiestnané elementy
<tabpanel> a každý z nich má obsahovať obsah
jednotlivých tabov.
eventnodeparentwindowdocumenthandleCtrlPageUpDownhandleCtrlTabgridElement <grid> umiestňuje ovládacie prvky do
tabuľky. Okraj tabuľky sa nezobrazuje. Element <grid>
by mal obsahovať jeden element <rows> a ten môže
obsahovať ľubovolný počet elementov <row>. Každý
element <row> je jeden riadok a každý prvok, ktorý sa v
ňom nachádza, je umiestnený do jedného stĺpca podľa poradia.
Ak potrebujete ovládať vlastnosti celých stĺpcov, do elementu
<grid> môžete umiestniť element
<columns> a do neho ľubovolný počet elementov
<column>. Takto definujete stĺpce namiesto riadkov.
Ani jeden z uvedených elementov nemá žiadne špeciálne atribúty.
Kontajnery sú aj všetky kmeňové elementy a správcovia rozloženia, ale
tie sú veľmi špecifické. Kontajner je taký XUL element do vnútra ktorého
sa vkladajú iné ovládacie prvky. <groupbox> sa nedá
zaradiť do žiadnej inej skupiny.
<groupbox>Element <groupbox> zobrazí okolo svojho obsahu rám s
malým nadpisom. Používa sa na zoskupovanie podobných nastavení, alebo
informácií na dialógoch.
Nadpis je určený vnoreným elementom <caption>. Text
nadpisu sa vkladá do atribútu label.
Element <groupbox> nemá žiadne špeciálne atribúty.
Element <caption> má nasledujúce atribúty:
accesskeycropstartcenterendnoneimagelabeltabindex<spacer>
Element <spacer> sa vôbec nezobrazuje a vytvára v
XUL dokumente prázdne miesto. Vizuálne oddeluje ovládacie prvky.
Nemá žiadne špeciálne atribúty.
<label>
Label zobrazuje text. Zväčša sa používa na popisovanie ovládacích prvkov, alebo indikáciu nejakého stavu, alebo oznámenia.
accesskeycontrolid elementu, ku ktorému
je <label> priradený. Ak užívateľ klikne na zobrazený
text, priradený element bude označený.cropstartcenterendnonedisabledtrue spôsobí, že text bude vykreslený šedou
farbou a nebude vôbec reagovať.value<tree>, nie <listbox>.
<listbox> nie je o nič jednoduchší ako
<tree>a je omnoho pomalší. Ukážku jednoduchého použitia
<tree> nájdete v Tutoriáli AbcLinuxu 7.Do XUL dokumentov môžete vkladať XHTML kód. XUL a XHTML tagy musíte rozlíšíť pomocou XML namespace:
<?xml version="1.0"?>
<window
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
xmlns:html="http://www.w3.org/1999/xhtml"
title="AbcLinuxu.cz - Rozsirte si Firefox a Thunderbird - sami!
- 7 - príklad XHTML">
<label value="XUL Label"/>
<html:p>XHTML odstavec</html:p>
</window>
Pozri príklad XHTML
online.Do nového tutoriálu som pridal dlho sľubovaný bočný panel napísaný v XUL. JavaScript som optimalizoval a teraz je rozšírenie naozaj rýchle. Ak vás zmeny zaujímajú stiahnite si Tutoriáli AbcLinuxu 7.
Ďalší diel seriálu bude náš posledný. Do ukážkového rozšírenia pridám vyhladávacie políčko pre bočný panel a možno vylepším otváranie odkazov. Seriál ukončím zhrnutím nových vlastností pripravovaného Firefoxu 1.5, poradím ako pri vývoji rozšírení postupovať samostatne a ako vedomosti získané v tomto seriáli uplatniť pri vývoji pre Thunderbird.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
Ja som autor...
Nepamätám si, že by som bol poledný polrok na inom IRC kanále ako irc.mozilla.org#firefox... ale nepamätám sa, pretože mám krátku pamäť.
Na nešťastie som bol počas písania tohto dielu veľmi zaneprázdnený a tak som ho kontroloval len po semantickej stránke. Z môjho prvého článku DevFS vs. udev som sa poučil a svoje články dôkladne kontrolujem... Aj ja milujem dokonalú gramatiku, len si ju nevšímam.