Huvudfönster för ditt program
Allan Day
aday@gnome.org
Anders Jonsson
anders.jonsson@norsjovallen.se 2015, 2018
Sebastian Rasmussen
sebras@gmail.com 2017, 2018

# Primära fönster

Primära fönster är den grundläggande högnivåbehållaren för ditt programs användargränssnitt, och bör presentera kärnfunktionaliteten för ditt program.

# När ska de användas

Varje program bör visa ett primärt fönster då dess startare har aktiverats. Detta inkluderar program som främst tillhandahåller en bakgrundstjänst.

# Programtyper

Det finns två huvudmodeller för primära fönster:

## Enkelinstansprogram

Enkelinstansprogram har ett ensamt primärt fönster. Denna modell är vanlig för meddelandeprogram så som e-post, chatt eller kontakter.

## Flerinstansprogram

Flerinstansprogram kan ha flera primära fönster. Typiskt kommer varje primärt fönster att vara identiskt. Flerinstansprogram är ofta visare eller redigerare, så som för dokument eller bilder.

Både enkel- och flerinstansprogram kan tillåta att flera innehållsobjekt öppnas, antingen genom användandet av flikar eller genom navigering av bläddrarstil. Flera fönster erbjuder dock ytterligare förmåga, vilket inkluderar:

Att visa flera innehållsobjekt vid sidan om varandra.

Att placera innehåll på olika arbetsytor.

Att organisera uppsättningar av innehåll in i olika fönster (om flikar används).

### Överordnade/underordnade primära fönster

Flerinstansprogram har typiskt identiska primära fönster (exempelvis i fallet med flera webbläsarfönster). Detta är dock inte alltid fallet.

Primära fönster kan ha en överordnad/underordnad-relation. I denna slags program finns det alltid bara ett överordnat fönster, Detta innehåller typiskt en översikt av innehållsobjekt som kan öppnas i det överordnade fönstret, eller i ett avskilt underordnat fönster. Detta tillåter att flera innehållsobjekt kan vara öppna samtidigt.

Medan underordnade fönster bara kan öppnas genom ett överordnat fönster så är de inte beroende av dem för att förbli öppna: att stänga det överordnade fönstret resulterar inte i stängandet av programmets underordnade fönster.

GNOME:s program Anteckningar är ett bra exempel på överordnade/underordnade primära fönster.

# Allmänna riktlinjer

Ett ensamt primärt fönster bör alltid visas då ditt program startas.

Om din programstartare aktiveras medan ditt program körs bör alla dess primära fönster visas.

Primära fönster bör innehålla ditt programs huvudfunktionalitet. Förlita dig inte på dialogrutor eller sekundära fönster för att erbjuda grundläggande funktionalitet.

Primära fönster bör vara oberoende — att stänga ett primärt fönster bör inte resultera i att andra primära fönster stängs.

Dialogfönster bör alltid vara beroende av ett primärt fönster. Se riktlinjerna på dialogsidan.

Riktlinjerna kring skärmkompatibilitet är speciellt relevanta för primära fönster: se till att säkerställa att de följer rådet om minsta visningsstorlekar, skärmformat och halvbreddsfästning.

Avsluta bör stänga alla primära fönster.

# API-referens

GtkWindow

GtkApplicationWindow