<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" type="topic" id="primary-windows" xml:lang="de">

  <info>
    <link type="guide" xref="patterns#primary"/>
    <desc>Das oder die Hauptfenster Ihrer Anwendung</desc> 
    <credit type="author">
      <name>Allan Day</name>
      <email>aday@gnome.org</email>
    </credit>
    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Christian Kirbach</mal:name>
      <mal:email>christian.kirbach@gmail.com</mal:email>
      <mal:years>2014</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Mario Blättermann</mal:name>
      <mal:email>mario.blaettermann@gmail.com</mal:email>
      <mal:years>2016</mal:years>
    </mal:credit>
  </info>

<title>Primäre Fenster</title>

<media type="image" mime="image/svg" src="figures/patterns/primary-windows.svg"/>

<p>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.</p>

<section id="when-to-use">
<title>Anwendungsfälle</title>

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

</section>

<section id="application-types">
<title>Anwendungstypen</title>

<p>Es gibt zwei Hauptmodelle für primäre Fenster:</p>

<section id="single-instance-applications">
<title>Anwendungen mit einer Instanz</title>

<p>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.</p>

</section>

<section id="multiple-instance-applications">
<title>Anwendungen mit mehreren Instanzen</title>

<p>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.</p>

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

<list>
<item><p>Viewing several content items alongside each other.</p></item>
<item><p>Placing content on different workspaces.</p></item>
<item><p>Organizing sets of content into different windows (if using tabs).</p></item>
</list>

<section id="parent-child-primary-windows">
<title>Parent/child primary windows</title>

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

<p>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.</p>

<p>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.</p>

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

</section>

</section>
</section>

<section id="general-guidelines">
<title>Allgemeine Richtlinien</title>

<list>
<item><p>Ein einzelnes primäres Fenster sollte stets angezeigt werden, wenn Ihre Anwendung gestartet ist.</p></item>
<item><p>If your application launcher is activated while your application is running, all its primary windows should be displayed.</p></item>
<item><p>Primäre Fenster sollten die Hauptfunktionen Ihrer Anwendung bereitstellen. Verlagern Sie keine grundlegende Funktionalität in Dialoge oder sekundäre Fenster.</p></item>
<item><p>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.</p></item>
<item><p>Dialogfenster sollten stets von einem primären Fenster abhängig sein. Erläuterungen hierzu finden Sie auf der Seite zu <link xref="dialogs">Dialogen</link>.</p></item>
<item><p>Die Richtlinien zur <link xref="display-compatibility">Anzeigekompatibilität</link> 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.</p></item>
<item><p><gui>Quit</gui> sollte alle primären Fenster schließen.</p></item>
</list>

</section>

<section id="api-reference">
<title>API-Referenz</title>

<list>
<item><p><link href="https://developer.gnome.org/gtk3/stable/GtkWindow.html">GtkWindow</link></p></item>
<item><p><link href="https://developer.gnome.org/gtk3/stable/GtkApplicationWindow.html">GtkApplicationWindow</link></p></item>
</list>

</section>

</page>
