Organizace IuRe (Iuridicum Remedium) varuje před návrhem, který představilo belgické předsednictví Rady EU. Populární služby jako Messenger, WhatsApp nebo Signal by dle něj bylo možné plně používat až po odsouhlasení kontroly komunikace. Ta by měla zamezit šíření dětské pornografie. Podle IuRe by však taková kontrola přinesla hlavně závažný dopad na soukromí uživatelů.
NumPy (Wikipedie), tj. knihovna pro Python pro vědecké výpočty, byla po 18 letech vydána v nové major verzi 2.0.0. Přehled novinek v poznámkách k vydání. Důležité informace v průvodci migrací.
Vývojáři postmarketOS vydali verzi 24.06 tohoto před sedmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell, Phosh, KDE Plasma a Sxmo. Aktuálně podporovaných zařízení je 50.
Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.
Google Blog ČR informuje, že mobilní aplikaci Gemini a NotebookLM lze používat už také v Česku.
Byla vydána nová major verze 8 duálně licencovaného open source frameworku JUCE (Wikipedie, GitHub) pro vývoj multiplatformních audio aplikací.
Od 18. června bude možné předobjednat notebook DC-ROMA RISC-V LAPTOP II od společnosti DeepComputing s osmijádrovým 64-bit RISC-V AI CPU a s předinstalovaným Ubuntu.
Byla vydána verze 1.79.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání na GitHubu. Vyzkoušet Rust lze například na stránce Rust by Example.
Byly zveřejněny výsledky průzkumu (infografika) mezi uživateli FreeBSD.
Na konferenci DevConf.CZ 2024 je na stánku Furi Labs prezentován linuxový telefon FuriPhone FLX1. Jeho cena 499 dolarů.
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:
height
hidechrome
true
spôsobí, že okno nebude mať orámovanie.id
screenX
screenY
sizemode
maximized
minimized
normal
title
width
windowtype
Rozlož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:
orient
horzontal
vertical
pack
start
<box>
e budú
všetky prvky posunuté čo najviac naľavo, vo vertikálnom nahor).center
end
<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:
selectedIndex
Element <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.
eventnode
parent
window
document
handleCtrlPageUpDown
handleCtrlTab
grid
Element <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:
accesskey
crop
start
center
end
none
image
label
tabindex
<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.
accesskey
control
id
elementu, ku ktorému
je <label>
priradený. Ak užívateľ klikne na zobrazený
text, priradený element bude označený.crop
start
center
end
none
disabled
true
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.