Seite 2 von 2

Verfasst: So, 17. Jun 2007 12:17
von Manfred
Das Teil erfordert aber auch einiges an Vorplanung.....

Ich habe zuerst die Statics für eine Gruppe erstellt, weil mir die Aufteilung schon im Kopf herumschwirrte. Dann wollte ich die Statics für den text und die SLE hineinbauen, jetzt kriege ich die aber nicht zur jeweiligen Gruppe zugeordnet. Ist sicherlich wieder nur eine Kleinigkeit.

Verfasst: So, 17. Jun 2007 12:22
von Lewi
Die Reihenfolge der Static´s (außer Gruppen) kann doch vernachlässigt werden, da sie ja nicht in Masken "angesprungen" werden.

Verfasst: So, 17. Jun 2007 12:28
von Manfred
Hm,

vielleicht liege ich hier auch falsch, aber ich war/bin der Meinung, dass ich dann nur die Gruppe bewegen muß und der Rest wird automatisch am Bildschirm im Designer mitbewegt. Außerdem werden doch dann die Positionen in Relation zur Gruppe angegeben. Oder gilt das nur, wenn man das händisch im Quelltext macht?

Verfasst: So, 17. Jun 2007 12:55
von Lewi
Zur Info: ein Verschieben von Controls in der Maske ändert nichts an der Reihenfolge!

Verfasst: So, 17. Jun 2007 13:26
von Manfred
Das meine ich auch nicht. Wenn ich im fertigen Quellcode eine Staticgruppe erstelle und darin dann Parts installiere, dann verschieben die sich gleichermassen, wie die Gruppe verschoben wird. Unda das geht auch innerhalb des Formdesigners. Ich verschiebe mit der Gruppe alle innenliegenden Elemente mit und habe somit einfache Formatierungsmöglichkeiten

Verfasst: So, 17. Jun 2007 13:37
von Manfred
Mich würde einmal interessieren, wo der Unterschied zwischen den .prg und Xff Dateien liegt.

Verfasst: So, 17. Jun 2007 13:51
von Lewi
Innerhalb einer XFF-Datei speichert der Formular-Designer die Daten für ein Formular. Ich vermute, es handelt sich dabei um eine Datei im MEM-Format.

Re: Form Designer

Verfasst: Mi, 22. Jul 2009 9:50
von Friedhelm
Wie Du richtig erkannt hast handelt es sich bei der .XFF-Datei um ein Xbase Memo Format. Alle notwendigen Informationen für den Dialog werden in eine Private Array gepackt und mit SAVE TO <.xff> ALL LIKE ... in die XFF-Datei geschrieben.
Wenn Du an die Informationen gelangen willst brauchst du nur die XFF-Datei mit RESTORE FROM <.xff> aufrufen und die erhältst mehrere Variablen duie mit p_ beginnen.

Da ich mich jetzt estmals in die Disskussion einmische, möchte ich hier mal meine Meinung äussern. Also wenn man eine Application mit vielen Dialogen entwickelt ist es einfach unproduktiv Formulare bzw. Dialoge per Hand zu codieren. Ich bin der Ansicht dass man sich in der Application auf das Wesentliche der Anwendung konzentrieren sollte und sich nicht mit so Dingen wie das ausrechnen und ausprobieren von Platzierungen einzelner Controls. Also verwendedete auch ich in der Regel der XPPFD Formdesigner um meine Dialoge zu entwerfen. Dabei nutzte ich stets den Classcode mit der Trennung zwischen Design-Class und Implementation-Class.

Folgende Schwierigkeiten habe sich in der Vergangenheit herausgestellt:
  1. Sind einzelne Controls erst einmal eine Parent zugeordnet. lassen sie sich nicht mehr bewegen.
  2. Es kann kein Browser in den Dialog eigebaut werden (geht nur über ein Static als Platzhalter).
  3. Es kann zwar eine TabPage eingebaut werden, die aber praktisch nutzlos ist, da die Verwaltung der TabPages fehlt.
  4. Es kann immer nur ein Dialog bearbeitet werden. Möchte man einzele Parts (bzw. Grupper von XbParts) von einem Dialog in den anderen kopieren hat man Pech gehabt.
  5. Es fehlt die Definition von Ereignissen für einzelne XbParts.
  6. Wurden Xbp mit Ihrem IVar-Namen versehen, kann man in der Platzierung der Parts auf dem Dialog nicht erkennen um welches Part es sich handelt.
Es gibt sicherlich noch eine Reihe von Gründen, die den XPPFD als sehr sehr gewöhnungsbedürftig kennzeichen.

Ich habe mich deshalb dazu entschlossen, einen eigenen Formdesigner zu bauen. In ca. 3 Wochen habe ich nun die ersten Ergebnisse vor mir liegen
und die geben bereits ein Mehrfahches von dem her, was der XPPFD kann:
  • Gleichzeitiges bearbeiten beliebig vieler Dialoge gleichzeitig.
  • Kopieren / Ausschneiden und Einfügen komplexer Gruppen (auch zwischen den Dialogen)
  • Intelligentes Ausrichten von Parts und Parts-Gruppen
  • Zuweisung von Alignments von XbParts ( Sie sorgen dafür das Parts immer Oben im Dialog bleiben, oder sich dem Dialog anpassen).
  • Undo und ReDo Funtkionen.
  • Parts und Parts_Gruppen können innerhalb ihrer Parents selektiert und verschoben werden.
  • Gleichzeitige Definition von IVar-Properties für eine Gruppe von Parts.
  • Erstellung von Sourcecode on the Fly.
  • Einbindung von mehreren Tab-Seiten über eine XbpPageController (Umschaltung der Pages und Platzierung der Parts auf den Pages)
In Arbeit:
  • Die erstellung aller benötigen Sources für ein Projekt (Main.prg, Dialog1.prg ... DialogN.prg, Project.xpj, Project.ARC)
  • Die Festlegung und Einrichtung von Properties für komplexe Parts wie XppToolbar, XbpStatusbar, XbpBrowser usw.
  • Erstellung von Sourcecode über sogenannte Project-Templates (funktioniert bereits).
  • Project Manangement mit Versionskontrolle und automatischer Archiverstellung
  • Ereignismanagement - Übernahme von Callbacks in den Sourcecode ( OnClick, OnLbDown, On...)
  • Definition von Menüs, Hotkeys während der Designphase
  • Einbindung von Actionmanagment( Zusammenfassung von Aktionen des Anwenders, die auf den Dialog wirken )
  • Einbindung eine Sourcecode-Editors mit SyntaxHilight und Intellisense.
Für weitere Ideen bin ich Immer offen.

Für die jenigen, die es nicht glauben wollen - am 1. August (in Osnabrück XUG-Treffen) kann ich gerne den Prototypen mal zeigen.

Re: Form Designer

Verfasst: Do, 23. Jul 2009 9:17
von Martin Altmann
Hallo Friedhelm,
ich habe mir erlaubt, Deinen Beitrag ein wenig "aufzuhübschen" und die foreneigenen Möglichkeiten für Aufzählungen zu nutzen.

Bis in Osnabrück,
Martin

Re: Form Designer

Verfasst: Do, 30. Jul 2009 21:14
von Manfred
Und Friedhelm,

kommst Du voran?

Ich hoffe Du hast den 01.08.2009 nicht vergessen!?

Re: Form Designer

Verfasst: Mi, 13. Feb 2013 6:57
von peterdahlmann
Fast schon erschreckend wie wenig sich da in den letzten Jahren getan hat..

Re: Form Designer

Verfasst: Mi, 13. Feb 2013 10:04
von UliTs
Hallo Peter,

programmierst Du viel mit xBase?
Bisher aber ohne GUI-Dialoge und in Zukunft möchtest Du dies?

Vielleicht ist der Formdesigner von Friedhelm etwas für Dich. Wenn Du das für möglich hältst, schicke am besten Friedhelm mal eine PN.

Uli