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.
Každá aplikace by měla mít aspoň jedno hlavní okno, které k ní patří.
Existují dva hlavní modely pro hlavní okna:
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 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).
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
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.
GtkWindow
GtkApplicationWindow