<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to GUI</title><link>https://sourceforge.net/p/bsmanagement2/wiki/GUI/</link><description>Recent changes to GUI</description><atom:link href="https://sourceforge.net/p/bsmanagement2/wiki/GUI/feed" rel="self"/><language>en</language><lastBuildDate>Sun, 01 Jun 2014 14:05:18 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/bsmanagement2/wiki/GUI/feed" rel="self" type="application/rss+xml"/><item><title>GUI modified by Manuel Geier</title><link>https://sourceforge.net/p/bsmanagement2/wiki/GUI/</link><description>&lt;div class="markdown_content"&gt;&lt;div class="toc"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#graphic-user-interface-gui"&gt;Graphic User Interface (GUI)&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#systemarchitektur"&gt;Systemarchitektur&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#view"&gt;View&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#aufbau"&gt;Aufbau&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#was-gehort-hier-rein"&gt;Was gehört hier rein?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#was-gehort-hier-nicht-rein"&gt;Was gehört hier nicht rein?&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#presentationmodel"&gt;PresentationModel&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#aufbau_1"&gt;Aufbau&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#was-gehort-hier-rein_1"&gt;Was gehört hier rein?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#was-gehort-hier-nicht-rein_1"&gt;Was gehört hier nicht rein?&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#freigabe-von-ressourcen"&gt;Freigabe von Ressourcen&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#anzeige"&gt;Anzeige&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#hauptanzeige-andern"&gt;Hauptanzeige ändern&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#zur-letzen-anzeige-wechseln"&gt;Zur letzen Anzeige wechseln&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#siehe-auch"&gt;Siehe auch&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h1 id="graphic-user-interface-gui"&gt;Graphic User Interface (GUI)&lt;/h1&gt;
&lt;p&gt;Das GUI beschäftigt sich mit dem Aufbau der Oberfläche und den Interaktionen vom Benutzer und den Komponenten untereinander. Im folgenden werden alle nötigen Schritte beschrieben um selbst eine Oberfläche aufzubauen und zu integrieren. &lt;/p&gt;
&lt;h2 id="systemarchitektur"&gt;Systemarchitektur&lt;/h2&gt;
&lt;p&gt;Als erstes sollten wir uns die &lt;span&gt;[Systemarchitektur]&lt;/span&gt; ansehen. Zum Aufbau einer Oberfläche benötigen wir die obersten zwei Ebenen. Zum Einen ist das die &lt;code&gt;View&lt;/code&gt; und zum Anderen ist es ein &lt;code&gt;PresentationModel&lt;/code&gt;. Für jede Anzeige wird immer mindestens eine View und ein PresentationModel benötigt. Warum mindestens? Weil Views auch wiederum Views enthalten können und es auch mehrere PresentationModels geben kann. Dies wird in besonderen Fällen benötigt. &lt;/p&gt;
&lt;hr /&gt;
&lt;h2 id="view"&gt;View&lt;/h2&gt;
&lt;h3 id="aufbau"&gt;Aufbau&lt;/h3&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="n"&gt;public&lt;/span&gt; &lt;span class="n"&gt;class&lt;/span&gt; &lt;span class="n"&gt;XXXView&lt;/span&gt; &lt;span class="n"&gt;extends&lt;/span&gt; &lt;span class="n"&gt;CWView&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;

    &lt;span class="n"&gt;private&lt;/span&gt; &lt;span class="n"&gt;XXXPresentationModel&lt;/span&gt; &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="n"&gt;private&lt;/span&gt; &lt;span class="n"&gt;CWComponentFactory&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;CWComponentContainer&lt;/span&gt; &lt;span class="n"&gt;componentContainer&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

    &lt;span class="c1"&gt;// Components&lt;/span&gt;

    &lt;span class="c1"&gt;// Listener&lt;/span&gt;

    &lt;span class="n"&gt;public&lt;/span&gt; &lt;span class="nf"&gt;XXXView&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;XXXPresentationModel&lt;/span&gt; &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="n"&gt;super&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;false&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;model&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

        &lt;span class="n"&gt;initComponents&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
        &lt;span class="n"&gt;buildView&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
        &lt;span class="n"&gt;initEventHandling&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="n"&gt;private&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;initComponents&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="n"&gt;componentContainer&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;CWComponentFactory&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;createCWComponentContainer&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="n"&gt;private&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;initEventHandling&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="n"&gt;private&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;buildView&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="n"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;setHeaderInfo&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;getHeaderInfo&lt;/span&gt;&lt;span class="p"&gt;());&lt;/span&gt;

        &lt;span class="n"&gt;CWButtonPanel&lt;/span&gt; &lt;span class="n"&gt;buttonPanel&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;getButtonPanel&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
        &lt;span class="c1"&gt;// Add Buttons&lt;/span&gt;

        &lt;span class="n"&gt;FormLayout&lt;/span&gt; &lt;span class="n"&gt;layout&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt; &lt;span class="n"&gt;FormLayout&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
                &lt;span class="s"&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
                &lt;span class="s"&gt;&amp;quot;&amp;quot;&lt;/span&gt;
        &lt;span class="p"&gt;);&lt;/span&gt;
        &lt;span class="n"&gt;PanelBuilder&lt;/span&gt; &lt;span class="n"&gt;builder&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt; &lt;span class="n"&gt;PanelBuilder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;layout&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;getContentPanel&lt;/span&gt;&lt;span class="p"&gt;());&lt;/span&gt;
        &lt;span class="n"&gt;CellConstraints&lt;/span&gt; &lt;span class="n"&gt;cc&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;new&lt;/span&gt; &lt;span class="n"&gt;CellConstraints&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

        &lt;span class="c1"&gt;// Add Components&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="n"&gt;Override&lt;/span&gt;
    &lt;span class="n"&gt;public&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="n"&gt;dispose&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="n"&gt;componentContainer&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;dispose&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

        &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;dispose&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;h3 id="was-gehort-hier-rein"&gt;Was gehört hier rein?&lt;/h3&gt;
&lt;h3 id="was-gehort-hier-nicht-rein"&gt;Was gehört hier nicht rein?&lt;/h3&gt;
&lt;hr /&gt;
&lt;h2 id="presentationmodel"&gt;PresentationModel&lt;/h2&gt;
&lt;h3 id="aufbau_1"&gt;Aufbau&lt;/h3&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="n"&gt;public&lt;/span&gt; &lt;span class="n"&gt;class&lt;/span&gt; &lt;span class="n"&gt;XXXPresentationModel&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;

    &lt;span class="c1"&gt;// Models&lt;/span&gt;

    &lt;span class="c1"&gt;// Listenere&lt;/span&gt;

    &lt;span class="n"&gt;public&lt;/span&gt; &lt;span class="n"&gt;XXXPresentationModel&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="n"&gt;initModels&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
        &lt;span class="n"&gt;initEventHandling&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="n"&gt;private&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="n"&gt;initModels&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="n"&gt;private&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="n"&gt;initEventHandling&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="n"&gt;public&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="n"&gt;dispose&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;h3 id="was-gehort-hier-rein_1"&gt;Was gehört hier rein?&lt;/h3&gt;
&lt;h3 id="was-gehort-hier-nicht-rein_1"&gt;Was gehört hier nicht rein?&lt;/h3&gt;
&lt;hr /&gt;
&lt;h2 id="freigabe-von-ressourcen"&gt;Freigabe von Ressourcen&lt;/h2&gt;
&lt;hr /&gt;
&lt;h2 id="anzeige"&gt;Anzeige&lt;/h2&gt;
&lt;h3 id="hauptanzeige-andern"&gt;Hauptanzeige ändern&lt;/h3&gt;
&lt;h3 id="zur-letzen-anzeige-wechseln"&gt;Zur letzen Anzeige wechseln&lt;/h3&gt;
&lt;hr /&gt;
&lt;h2 id="siehe-auch"&gt;Siehe auch&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span&gt;[Komponenten]&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Manuel Geier</dc:creator><pubDate>Sun, 01 Jun 2014 14:05:18 -0000</pubDate><guid>https://sourceforge.netc43edf00ab700275357e866bac8f394c67bb9a7c</guid></item></channel></rss>