Dockmanager

Rund um die LCL und andere Komponenten
schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Also brauchen wir ein Dummy-Formular, das sich in FPC/Lazarus, Delphi, Kylix einbinden läßt und ein Template zur Verfügung stellt auf dem sich visuelle Komponenten (zusammengesetzte Komponenten) zusammenbauen lassen.

Das muß sich hinterher an ein Formular oder jede andere visuelle Komponente mit Create(Owner) binden lassen ohne das man irgendwelchen Heckmeck veranstaltet. Und das muß unabhängig vom BS immer klappen. Das muß also eine lfm-, dfm- oder xfm-Datei erzeugen.

Mithin unterhalb von TForm angesiedelt, sozusagen in einer Kompatibiltäts-Schicht.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Ich hab mal was, was ich mir von der Seele schreiben muss. Es würde mich interessieren, wie Ihr darüber denkt:

Ich glaube es gibt Grenzen, hinter denen man sich mit der ganzen RAD-erei und den Komponenten nur selber auf die Füsse tritt.

Beispiel Indy: Viele glauben, man könne nur TCP/IP Programmieren mit dieser Klickerei im Objekt -Inspektor. Dabei kommt doch meist nur Käse raus. Ausserdem möchte ich nicht wissen, wie viele Stunden auf dieser Welt schon verbraten wurden, mit dem Versuch Indy zu installieren.
Das nennt sich dann effizient.

Beispiel VirtualTrees: Sobald's ein bisschen komplexer wird, leite ich mir immer eine Klasse von VTV ab und packe dort die ganze Funktionalität rein. Somit kann man den Code sauber trennen, protected Methoden überschreiben und muss vor allem nicht alles in "Unit1" unterbringen, was total unübersichtlich ist.

Genauso mit dieser ganzen visual Form inheritance. Sowas habe ich noch nie gebraucht.
Wozu soll das gut sein? Ist doch nur undurchsichtig, kompliziert und fehleranfällig.

Auch OPBitmap: Das funktioniert nur auf Kylix, Delphi und FPC / Laz, weil es rein gar nichts mit den visuellen Komponenten zu tun hat.

Versteht mich nicht falsch, ich bastle auch gern ein MainMenu und ein paar Buttons auf das Formular mit den Komponenten.
Aber man muss doch auch wissen wann Schluss ist.

Wie denkt ihr darüber?

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Na mach mal, ich verstehe zwar nicht was das soll aber mach einfach. Wäre es nicht besser die lcl funktionen zu korrigieren, ist doch nicht so wie bei Delphi wo du keinen source hast. Und wo das problem ist weiss ich immer noch nicht das es geht hab ich dir ja mit dem Screenshot bewiesen. Nein da willst du irgendwelche riesen workarounds bauen.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Ich hab bei Delphi die Sourcen, war auch teuer genug... :lol:

Ich hab schon was, das hab ich jetzt soweit ich das aus dem Stegreif wußte angepaßt. Nun weiß ich nur nicht wie ich den Wizard in die IDE kriege. Zusätzlich müssen da eventuell noch ein paar uses-Einträge korrigiert werden.

Das stellt einen Wizard für TForm, TFrame, TDataModule, TBox (neu) und TScrollerBox (neu) zur Verfügung. Produiziert dafür dfm, xfm. Allerdings finde ich auf die Schnelle die entsprechenden Designer-Units nicht (DesignIntf,...). Als Ergebnis bekomm man eine registrierbare Komponente mit Unit und dfm, xfm.

Ich bau jetzt mal proforma die beiden Package-Dateien zusammen, dann braucht man danach nicht auch noch suchen.

Und was man daran nicht versteht versteh ich nun nicht. Nimm mal eine Einfache Adresseingabe, die sieht immer gleich aus. Die kann man also mit der gesamten Logik als fertige Komponente bauen und braucht im Zweifel nur die Datenbank-Verbindung (DataSource) drauflegen. Dann braucht man sich beim Entwickeln um den Schmonses dahinter nicht mehr kümmern. Also mindestens eine Strassenangabe, Name, PLZ, Ort, Land, Hausnummer als Plichtfelder mitsamt der Fehlerbehandlung.

Komponente auf's Formular oder sonstwohin packen und fertig ist die Laube.

Auf gleiche Weise kann man sich häufig benötigte ToolBars oder ähnliches vorfabrizieren und ergänzt die eventuell noch. Oder man bastelt sich eine Editor-Komponente für mehrere Formate und benutzt sie da wo man sie braucht und kümmert sich nur noch um Datenbetrieb (TextFileName) und gut dem Dinge.


//Komponentenwizard zu Komponenten und Units verschoben - monta
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Also ich gebe theo vollkommen recht.
Und habe immer noch nicht verstanden wo dein problem ist und erst recht nicht wozu du nun nen komponentenwizard brauchst. Am besten du versuchst es mir aber nicht zu erklären, ich klink mich an dieser Stelle aus ich hab oft genug gefragt wo eigentlich das Problem ist.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Antworten