AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Pascal Project Manager & Editor
Thema durchsuchen
Ansicht
Themen-Optionen

Pascal Project Manager & Editor

Ein Thema von Harry Stahl · begonnen am 13. Mär 2016 · letzter Beitrag vom 15. Sep 2024
Antwort Antwort
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.909 Beiträge
 
Delphi 12 Athens
 
#1

AW: Pascal Project Manager & Editor

  Alt 18. Apr 2016, 03:56
Das hätte ich schon für beliebige Komponenten brauchen können. Wie wäre es denn, wenn man eine Liste konfigurieren könnte, welche Komponenten in der VCL welchen in Firemonkey entsprechen und welche Eigenschaften übernommen werden sollen?
Standardkomponenten sollten natürlich möglichst schon drin sein.

Hintergrund ist, dass ich die Positionierung und Benennung bisher in VCL und Firemonkey jedes Mal erneut machen muss. Diese ließe sich aber in der Regel problemlos konvertieren, zumindest in Richtung Firemonkey. Selbst wenn keine weiteren Eigenschaften übernommen würden, wäre das schon eine Erleichterung.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.557 Beiträge
 
Delphi 12 Athens
 
#2

AW: Pascal Project Manager & Editor

  Alt 18. Apr 2016, 17:16
Das hätte ich schon für beliebige Komponenten brauchen können. Wie wäre es denn, wenn man eine Liste konfigurieren könnte, welche Komponenten in der VCL welchen in Firemonkey entsprechen und welche Eigenschaften übernommen werden sollen?
Standardkomponenten sollten natürlich möglichst schon drin sein.

Hintergrund ist, dass ich die Positionierung und Benennung bisher in VCL und Firemonkey jedes Mal erneut machen muss. Diese ließe sich aber in der Regel problemlos konvertieren, zumindest in Richtung Firemonkey. Selbst wenn keine weiteren Eigenschaften übernommen würden, wäre das schon eine Erleichterung.
Das wäre dann so etwas wie der Mida-Converter Light, aber eben nur für die Zwischenablage.

Jedenfalls interessante Idee, will ich mal näher prüfen und berichte dann.

Hatte aus meiner Sicht schon das Stringgrid als weiteres Konvertierungs-Objekt im Auge, da auch hier der Mida-Converter keine Spalten übernimmt (jedenfalls bis Version 5.01), außerdem wäre auch der Wunsch, statt StringGrid in das Grid umzuwandeln, weil man damit sehr viel mehr Möglichkeiten als mit dem Stringrid hat.
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.557 Beiträge
 
Delphi 12 Athens
 
#3

AW: Pascal Project Manager & Editor

  Alt 18. Apr 2016, 23:00
So, habe jetzt mal Deinen Vorschlag aufgegriffen und eine erste Umsetzung gemacht (noch nicht ganz fertig, das gezeigte Beispiel funktioniert aber schon).

Der anliegende Screenshot verdeutlicht die Situation:

Ein TLabel aus einem im Pascal Project Manager-Editor geöffneten VCL-Programm ausgewählt, aus Menü "Aktion" den Befehl "Kopieren und zu FMX konvertieren gewählt" (Objekt und Text in Grün).

Dann erscheint der gezeigte Dialog, der das VCL-Objekt mit den "Eigenschaften" und "Werten" repräsentiert und gleichzeitig für die Umwandlung die angepassten Daten für eben "Eigenschaften" und ggfls. auch "Werte" enthält.

Die nicht im FMX-Framework enthaltenen Eigenschaften sind deaktiviert. Bei Bedarf kann man selber noch editieren oder Werte aktivieren oder deaktivieren.

Man kann dann das Ergebnis direkt in die Zwischenablage übernehmen und in das FMX-Formular einfügen (an der originalen Position). Oder man lässt mit dem Schalter "Testen" kurz ein Testprogramm für die entsprechende Plattform starten, welches die Komponente enthält und zur Laufzeit anzeigt (wenn alles OK ist, oder man eben ansonsten eine Fehlermeldung erhält).

Das praktische daran ist, dass man auch ein FMX-Objekt in ein VCL-Objekt umwandeln kann.
Miniaturansicht angehängter Grafiken
convert_vcl_to_fmx.jpg  
  Mit Zitat antworten Zitat
mensch72

Registriert seit: 6. Feb 2008
838 Beiträge
 
#4

AW: Pascal Project Manager & Editor

  Alt 19. Apr 2016, 01:07
das Konzept Komponentenweise StepByStep per manueller Aktion sowas über die Zwischenablage wieder zusammenzusetzen incl. deiner Funktionalität die Erstellungsreihenfolge später nochmal zu verändern... das hat etwas

Aber du würdest dir viel Fleißarbeit sparen, wenn du nicht selbst alle Zuordnungen für die dir bekannten Komponenten fix im Code vordefinierst, sondern diese nachladbar und extern editierbar gestalten würdest.

Dann könnte ich mir z.B. die Arbeit machen um die Zuordnungsdefinition für TMS-VCL-Grid<->TMS-FXM-Grid samt aller zugehörigen untergeordneten "TMS üblichen Listenobjekte&Typen".
Dein Programm würde dann wie beim TLabel-Object nur schauen, ob es für ein TAdv???-Object schon ein passendes "Mapping" zum Nachladen gibt... es muss&würde ja nicht beim Grid bleiben.

Um die Erstellung einer Mappingdefinition zu erleichtern, würde man für VCL&FMX manuell je einen Strukturexport (also Objectpropertys mit Typ, aber ohne Daten) machen, wo im Prinzip das gleiche drin ist... das wären die ersten 2 "Blöcke" einer MappingDefinition... der dritte Block enthält dann die manuellen Zuordnungen und Typ basierten Werteumwandlungsregeln von VCL.XXX(Typ->Value) auf FMX.YYY(Typ->ValueRule)
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.557 Beiträge
 
Delphi 12 Athens
 
#5

AW: Pascal Project Manager & Editor

  Alt 25. Apr 2016, 01:20
Das hätte ich schon für beliebige Komponenten brauchen können. Wie wäre es denn, wenn man eine Liste konfigurieren könnte, welche Komponenten in der VCL welchen in Firemonkey entsprechen und welche Eigenschaften übernommen werden sollen?
Standardkomponenten sollten natürlich möglichst schon drin sein.
Aber du würdest dir viel Fleißarbeit sparen, wenn du nicht selbst alle Zuordnungen für die dir bekannten Komponenten fix im Code vordefinierst, sondern diese nachladbar und extern editierbar gestalten würdest.

Dann könnte ich mir z.B. die Arbeit machen um die Zuordnungsdefinition für TMS-VCL-Grid<->TMS-FXM-Grid samt aller zugehörigen untergeordneten "TMS üblichen Listenobjekte&Typen".
Genau so habe ich es jetzt gemacht. Es gibt eine Fixe Liste von mir, die ich mit jedem Update erweitern möchte. Und es gibt eine Anwenderliste, wo dieser eigene Einträge machen kann (und da bei Bedarf auch meine Vorgaben überschreiben kann).

Das funktioniert mit eine Reihe von Standard-Komponenten schon ganz gut, muss hier aber noch einiges ergänzen.

Anliegend drei Screenshots und hier auch ein kurzes Video:

https://youtu.be/FQObFYkCagU
Miniaturansicht angehängter Grafiken
convert1.jpg   convert2.jpg   convert3.jpg  
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz