Das oder die Hauptfenster Ihrer Anwendung
Allan Day
aday@gnome.org
Christian Kirbach
christian.kirbach@gmail.com 2014
Mario Blättermann
mario.blaettermann@gmail.com 2016

# Primäre Fenster

Primäre Fenster sind der grundlegende Container der obersten Ebene für die Benutzeroberfläche Ihrer Anwendung. Sie sollten die Kernfunktionalität Ihrer Anwendung präsentieren.

# Anwendungsfälle

Jede Anwendung sollte ein primäres Fenster anzeigen, wenn der Starter aktiviert wird. Das schließt Anwendungen ein, die hauptsächlich einen Hintergrunddienst bieten.

# Anwendungstypen

Es gibt zwei Hauptmodelle für primäre Fenster:

## Anwendungen mit einer Instanz

Anwendungen mit einer einzelnen Instanz haben ein einzelnes primäres Fenster. Dieses Modell ist für Messaging-Anwendungen üblich, wie E-Mail, Chat oder Kontakte.

## Anwendungen mit mehreren Instanzen

Anwendungen mit mehreren Instanzen können mehrere Anwendungsfenster haben. Typischerweise sind die primären Fenster dabei identisch. Anwendungen mit mehreren Instanzen sind häufig Betrachter oder Editoren, zum Beispiel für Dokumente oder Bilder.

Both single and multiple instance applications can allow multiple content items to be opened, either through the use of tabs or browser-style navigation. However, multiple windows do offer additional capabilities, which include:

Viewing several content items alongside each other.

Placing content on different workspaces.

Organizing sets of content into different windows (if using tabs).

### Parent/child primary windows

Multiple instance applications typically have identical primary windows (in the case multiple web browser windows, for example). However, this is not always the case.

Primary windows can have a parent/child relationship. In this type of application, there is only ever one parent window. This typically contains an overview of content items which can be opened in the parent window, or in a separate child window. This allows multiple content items to be simultaneously open.

While child windows can only be opened through a parent window, they are not dependent on them in order to stay open: closing the parent window does not result in the closure of the application's child windows.

GNOME's Notes application is a good example of parent/child primary windows.

# Allgemeine Richtlinien

Ein einzelnes primäres Fenster sollte stets angezeigt werden, wenn Ihre Anwendung gestartet ist.

If your application launcher is activated while your application is running, all its primary windows should be displayed.

Primäre Fenster sollten die Hauptfunktionen Ihrer Anwendung bereitstellen. Verlagern Sie keine grundlegende Funktionalität in Dialoge oder sekundäre Fenster.

Primäre Fenster sollten unabhängig sein. Das bedeutet, dass durch das Schließen eines primären Fensters nicht auch die Schließung eines anderen primären Fensters ausgelöst werden sollte.

Dialogfenster sollten stets von einem primären Fenster abhängig sein. Erläuterungen hierzu finden Sie auf der Seite zu Dialogen.

Die Richtlinien zur Anzeigekompatibilität sind insbesondere für primäre Fenster relevant: Seien Sie vorsichtig, um sicherzustellen, dass diese den Anweisungen für minimale Bildschirmgrößen, der Anzeigeausrichtung und Einrasten im halben Bildschirm folgen.

Quit sollte alle primären Fenster schließen.

# API-Referenz

GtkWindow

GtkApplicationWindow