Difference between revisions of "GUI design/de"

From Lazarus wiki
Jump to navigationJump to search
m
 
(7 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
{{GUI design}}
 
{{GUI design}}
  
==Überblick==
+
== Überblick ==
  
Während der Arbeit an Lazarus müssen verschiedene Designrichtlinien berücksichtigt werden, um eine Vielfalt an Stilen zu vermeiden und die Übersichtlichkeit der Dialoge zu gewährleisten. Der nächste Artikel versucht, verschiedene Richtlinien zusammenzufassen, um ihnen bei der Gestaltung zu helfen.
+
Während der Arbeit an Lazarus müssen bestimmte Designrichtlinien berücksichtigt werden, um eine Verschiedenheit der Stile zu vermeiden und die Übersichtlichkeit der Dialoge zu gewährleisten. Dieser Artikel versucht diese Richtlinien zusammenzufassen, um ihnen beim Entwerfen zu helfen. Es ist auch ein Haufen von Screenshots, Vorlagen und Dialoginformationen verfügbar.
  
==Look and Feel==
+
* [[GUI_design_guidelines/de|GUI design guidelines]]
Dieser Abschnitt zeigt verschiedene Beispiele des look and feel Konzepts für Lazarus. Auf der rechten Seite wird das gegenwärtige Layout gezeigt. Bitte nehmen sie Stellung...
+
* [[Screenshots / examples]]
 +
* [[Lazarus dialogs information]]
 +
* [[Lazarus art work]]
  
Allgemeine Features sind;
+
== Kommentare ==
* Jeder Dialog hat einen Hilfe Button (gegenwärtig deaktiviert), der eine Hilfeseite anzeigt (Hinweis: das Lazarus Hilfesystem ist formatunabhängig, daher ist es normalerweise ausreichend, einen to add a unique help path, wie 'IDE/CodeExplorer/RefreshButton')
 
* Alle modal gezeigten Formulare sind bsSizeToolWin, nicht-modal gezeigte Formulare sind bsSizable
 
* Um Lazarus einfacher zu machen für nicht englisch sprechende wird empfohlen, Button Bilder zu verwenden, wann immer sie ein gutes Icon haben.
 
* Alle Hauptbedienelemente sind erreichbar mit Zugriffsschlüsseln wie "&Cancel". TODO: Was ist mit Übersetzungen? Pro Sprache müssen die Zugriffsschlüssel bestimmt werden.
 
  
 +
Was sie beachten müssen ist die cross-platform Natur von Lazarus.  If you make all the changes you suggest, the text on the buttons won't be visible in most standard GTK+ themes, oder es wird andere Probleme geben.  Ich unterstütze vollständig die Idee of some tweaks like this, but it should be tested in Linux, Win32 and even in MAC (you guys are running it in MAC already, right?) before it's committed.
 +
-[http://wiki.lazarus.freepascal.org/index.php/User:Tonymaro Tony Maro]
 +
:That's the only way to do it ;). I have patches of the different dialogs and I would encourage people to test them and post screenshots here. - Darius
 +
<br>
 +
<br>
  
[[Image:Todo.png]] [[Image:Todo_old.png]]
+
[[Category:Lazarus/de]]
 
 
Das todo Formular zeigt ein typisches Formular mit Schaltflächen. Anstatt die Buttons über die ganze Clientbreite zu strecken (Code explorer, Projektinspektor, etc.) wird oben eine toolbar mit beschrifteten Buttons gezeigt.
 
 
 
 
 
[[Image:UnitInformation.png]] [[Image:UnitInfo.png]]
 
 
 
Dieses Formular zeigt einen typischen Informationsdialog. Beachten sie das notebook, das die Informationen aufteilt, so daß nicht zu viele Informationen zur selben Zeit sichtbar sind.
 
 
 
 
 
[[Image:FindReplace.png]] [[Image:FindReplace_old2.png]]
 
 
 
Dieses Formular zeigt einen typischen Dialog. Captions vor den Bedienelementen sind gerade ausgerichtet (obwohl es in diesem Beispiel nicht gut zu sehen ist) und die Optionen sind gruppiert unter fett gedruckten Labels.
 
 
 
===Vorschlag für Präferenzformulare===
 
Hier ist ein Vorschlag für die in Lazarus benutzten Präferenzformulare. Ich möchte mich auf den Gebrauch von treeviews konzentrieren anstelle des üblichen Gebrauchs von tabs. Durch die Verwendung von eines treeview können Seiten einfacher aufgeteilt werden (weniger Optionen pro Seite) und auf der anderen Seite können mehr Optionen pro Dialog benutzt werden (vielleicht können einige Optionsdialoge zusammengeführt werden?). Bitte fügen sie unten ihre Kommentare hinzu.
 
 
 
[[Image:example_optionsdlg.png]] [[Image:Env options.png]]
 
 
 
====Kommentare zu: Vorschlag für Präferenzformulare====
 
 
 
==Dialoge==
 
Dialoge sind spezielle Formulare, die den Benutzer auffordern, einige Einstellungen zu erstellen bzw. zu ändern, bevor Lazarus fortfahren kann.
 
 
 
===Dialog Einstellungen===
 
Einstellungen, die im Allgemeinen gesetzt werden sollten, sind:
 
 
 
* '''BorderStyle''' : bsSizeToolWin
 
* '''Position''' : poScreenCenter
 
* '''FormStyle''' : fsStayOnTop (oder zeigen den Dialog unter Verwendung von ShowModal)
 
 
 
===Allgemeines Layout===
 
* Unten sollten alle benötigten Schaltflächen zum Schließen / Abbrechen des Dialogs oder um Hilfe zu erhalten platziert werden.
 
* Es sollte wenigstens für einen Bildschirm von 800x600 geeignet sein.
 
* Schließen mit Escape (wenn die Taste nicht anderweitig genutzt wird)
 
* Definieren einer Vorgabe Schaltfläche, die mit Return aktiviert wird (wenn die Taste nicht genutzt wird)
 
* Mittlere bis komplexere Dialoge sollten größenveränderbar sein und die Größe wird gespeichert.
 
 
 
====Schaltflächen Panel====
 
Das Schaltflächen Panel sollte wenigstens aus den folgenden Elementen bestehen:
 
 
 
* OK Schaltfläche
 
* Abbrechen Schaltfläche
 
* Weiter Schaltfläche (optional)
 
* Zurück Schaltfläche (optional)
 
* Hilfe Schaltfläche
 
 
 
Ein Beispiel wird unten gezeigt:
 
 
 
<center>bottom panel.jpg</center>
 
 
 
===Verankerung===
 
Um sicherzustellen, daß ein Dialog nach einer Größenänderung die Komponenten in einer brauchbaren Weise anzeigt, wird die Verankerung benutzt. Jede Komponente hat eine Eigenschaft Anchors. Mit dieser Eigenschaft können sie die Art und Weise bestimmen, mit der die Komponente an ihrem Vorgänger verankert wird.
 
 
 
===Ausrichtung===
 
Ein anderer Weg, um Komponenten zu organisieren, ist die Verwendung der Ausrichtung. Jede Komponente hat eine Eigenschaft Align. Durch Auswahl der gewünschten Ausrichtungsposition können verschiedene Komponenten genau postioniert werden.
 
 
 
====BorderSpacing====
 
Besonders hilfreich in Kombination mit Align ist die BorderSpacing Eigenschaft. (Auch im Anchors Dialog zu finden). Typischerweise wird ein borderspacing von 6 Pixeln um eine Komponente herum verwendet.
 
 
 
==Dialoge, die zu LFM konvertiert werden müssen==
 
<strike>Durchgestrichene Elemente</strike> sind bereits konvertiert.
 
 
 
An '''fettgeschriebenen Elementen''' wird gerade gearbeitet.
 
 
 
* /lazarus/ide/buildlazdialog.pas
 
* /lazarus/ide/cleandirdlg.pas (TShowDeletingFilesDialog, muß wahrscheinlich in eine eigene Unit gepackt werden)
 
* /lazarus/ide/clipboardhistory.pas
 
* /lazarus/ide/codetoolsoptions.pas
 
* /lazarus/ide/compileroptionsdlg.pp
 
* '''/lazarus/ide/exttooldialog.pas''' <D. Blaszijk>
 
* /lazarus/ide/exttooleditdlg.pas
 
* /lazarus/ide/findinfilesdlg.pas
 
* '''/lazarus/ide/findreplacedialog.pp''' <D. Blaszijk>
 
* /lazarus/ide/inputfiledialog.pas
 
* '''/lazarus/ide/keymapping.pp''' <D. Blaszijk>
 
* /lazarus/ide/macropromptdlg.pas
 
* /lazarus/ide/mainbar.pas
 
* '''/lazarus/ide/newprojectdlg.pp''' <D. Blaszijk>
 
* /lazarus/ide/patheditordlg.pas
 
* '''/lazarus/ide/sortselectiondlg.pas''' <D. Blaszijk>
 
* '''/lazarus/ide/unitdependencies.pas''' <D. Blaszijk>
 
* /lazarus/debugger/debuggerdlg.pp
 
* /lazarus/designer/designermenu.pp
 
* /lazarus/designer/menueditorform.pas
 
* /lazarus/designer/menupropedit.pp
 
* /lazarus/designer/noncontroldesigner.pas
 
* /lazarus/designer/objinspext.pas
 
* /lazarus/ideintf/columndlg.pp
 
* /lazarus/ideintf/componenteditors.pas
 
* '''/lazarus/ideintf/imagelisteditor.pp''' <T. Gregorovic>
 
* '''/lazarus/ideintf/listviewpropedit.pp''' <T. Gregorovic>
 
* /lazarus/packager/addtopackagedlg.pas
 
* /lazarus/packager/brokendependenciesdlg.pas
 
* /lazarus/packager/packagedefs.pas
 
* '''/lazarus/packager/pkggraphexplorer.pas''' <D. Blaszijk>
 
* /lazarus/packager/pkgoptionsdlg.pas
 

Latest revision as of 14:41, 5 April 2013

Deutsch (de) English (en) français (fr) 日本語 (ja)

Überblick

Während der Arbeit an Lazarus müssen bestimmte Designrichtlinien berücksichtigt werden, um eine Verschiedenheit der Stile zu vermeiden und die Übersichtlichkeit der Dialoge zu gewährleisten. Dieser Artikel versucht diese Richtlinien zusammenzufassen, um ihnen beim Entwerfen zu helfen. Es ist auch ein Haufen von Screenshots, Vorlagen und Dialoginformationen verfügbar.

Kommentare

Was sie beachten müssen ist die cross-platform Natur von Lazarus. If you make all the changes you suggest, the text on the buttons won't be visible in most standard GTK+ themes, oder es wird andere Probleme geben. Ich unterstütze vollständig die Idee of some tweaks like this, but it should be tested in Linux, Win32 and even in MAC (you guys are running it in MAC already, right?) before it's committed. -Tony Maro

That's the only way to do it ;). I have patches of the different dialogs and I would encourage people to test them and post screenshots here. - Darius