Hlavní okno či okna pro vaši aplikaci
Allan Day
aday@gnome.org

# Hlavní okna

Hlavní okno je základní kontejner nejvyšší úrovně pro uživatelské rozhraní vaší aplikace a měl by nabízet základní funkcionalitu vaší aplikace.

# Kdy použít

Každá aplikace by měla při aktivaci svého spouštěče zobrazit hlavní okno. Týká se to i aplikací, které poskytují převážně služby na pozadí.

# Typy aplikací

Existují dva hlavní modely pro hlavní okna:

## Aplikace s jednou instancí

Aplikace s jednou instancí má jedno hlavní okno. Jedná se o model běžný v komunikačních aplikacích pro účely, jako je e-mail, diskuze nebo kontakty.

## Aplikace s více instancemi

Aplikace s více instancemi mohou mít více hlavních oken. Typicky jsou všechna hlavní okna stejná. K aplikacím s více instancemi patří často prohlížeče a editory, například pro dokumenty nebo obrázky.

Jak aplikace s jednou instancí, tak aplikace s více instancemi mohou umožňovat otevřít více položek obsahu, buď pomocí použití karet nebo pomocí navigace ve stylu prohlížeče. Více oken ale nabízí dodatečné schopnosti, včetně:

Zobrazení několika položek obsahu vedle sebe naráz.

Umístění obsahu na různé pracovní plochy.

Uspořádání skupin obsahu do různých oken (pokud používají karty).

### Rodičovská/dceřiná okna

Aplikace s více instancemi má typicky identická hlavní okna (například více oken webového prohlížeče). Ale nemusí tomu tak být ve všech případech.

Hlavní okna mohou mít vztah rodič/potomek. V takovémto typu aplikace je vždy jen jedno rodičovské okno. Typicky obsahuje přehled položek, které mohou být otevřeny v rodičovském okně nebo v oddělených dceřiných oknech. Díky tomu lze otevřít více položek obsahu současně.

I když bylo dceřiné okno otevřeno z rodičovského okna, není na něm závisle v tom, jestli má zůstat otevřeno – zavření rodičovského okna nemá za následek zavření dceřiných oken v aplikaci.

Aplikace Poznámky z GNOME je dobrým příkladem hlavních oken se vztahem rodič/potomek.

# Obecné rady

Když je vaše aplikace spuštěna, mělo by se vždy zobrazit jedno hlavní okno.

Když je spouštěč vaší aplikace aktivován ve chvíli, kdy aplikace běží, měla by se zobrazit všechna její hlavní okna.

Hlavní okno by se mělo starat o hlavní funkcionalitu vaší aplikace. Nespoléhejte se s poskytnutím základní funkcionality na dialogová nebo podřízená okna.

Hlavní okno by mělo být nezávislé – zavření jednoho hlavního okna by nemělo mít za následek, že se zavřou další hlavní okna.

Dialogová okna by měly být vždy závislá na hlavním okně. Viz pokyny k dialogovým oknům.

Pokyny pro kompatibilitu s displejem jsou zvláště důležité pro hlavní okna: dávejte pozor, jestli je zajištěno, aby se řídila radami ohledně minimálních velikostí obrazovky, otočení displeje a přichytávání k polovině obrazovky.

Quit (Ukončit) by mělo zavřít všechna hlavní okna.

# Referenční příručka API

GtkWindow

GtkApplicationWindow