AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE DFM DIFF ... IDE oder Komponente speichert falsch?
Thema durchsuchen
Ansicht
Themen-Optionen

DFM DIFF ... IDE oder Komponente speichert falsch?

Ein Thema von haentschman · begonnen am 15. Jun 2022 · letzter Beitrag vom 15. Jun 2022
Antwort Antwort
Benutzerbild von haentschman
haentschman
Online

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.431 Beiträge
 
Delphi 12 Athens
 
#1

AW: DFM DIFF ... IDE oder Komponente speichert falsch?

  Alt 15. Jun 2022, 10:47
Zitat:
Nur wenn tatsächlich absichtliche Änderungen durch einen Entwickler vorgenommen wurden, wird dieses DFM committet, alles andere verworfen.
...das mache ich aus so. Das entbindet dich aber nicht von dem Anschauen der jeweiligen Zeile...könnte ja wichtig sein.
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.811 Beiträge
 
Delphi 12 Athens
 
#2

AW: DFM DIFF ... IDE oder Komponente speichert falsch?

  Alt 15. Jun 2022, 10:53
Zitat:
Nur wenn tatsächlich absichtliche Änderungen durch einen Entwickler vorgenommen wurden, wird dieses DFM committet, alles andere verworfen.
...das mache ich aus so. Das entbindet dich aber nicht von dem Anschauen der jeweiligen Zeile...könnte ja wichtig sein.
Ich bin da gnadenlos auf Krawall gebürstet, wenn es nach einem Pull knallt, weil die DFM Änderung doch Absicht war, aber vergessen wurde reinzustellen, muss ich mit diesem Sonderfall leben, aber ich vergeude keine Zeit mit DFM Kontrolle (mehr).

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman
Online

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.431 Beiträge
 
Delphi 12 Athens
 
#3

AW: DFM DIFF ... IDE oder Komponente speichert falsch?

  Alt 15. Jun 2022, 11:10
Zitat:
Entscheidend für die Reihenfolge der Properties ist die Reihenfolge in der sie published sind.
@Embacadero: ...ist das sooo ein großer Aufwand das nach dem Alphabet, unhabhängig von der Position, zu sortieren und zu speichern?
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.629 Beiträge
 
Delphi 12 Athens
 
#4

AW: DFM DIFF ... IDE oder Komponente speichert falsch?

  Alt 15. Jun 2022, 12:22
@Embacadero: ...ist das sooo ein großer Aufwand das nach dem Alphabet, unhabhängig von der Position, zu sortieren und zu speichern?
Das mag vielleicht möglich sein, aber es gibt auch Fälle, bei denen die Reihenfolge der Properties relevant ist. Beispiele aus der VCL sind TStandardColorMap, TActionManager, TMonthCalendar, TComboBoxEx, TComboBox. DevExpress hat da auch noch einige anzubieten.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Rolf Frei

Registriert seit: 19. Jun 2006
655 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: DFM DIFF ... IDE oder Komponente speichert falsch?

  Alt 15. Jun 2022, 12:35
Zitat:
Entscheidend für die Reihenfolge der Properties ist die Reihenfolge in der sie published sind.
@Embacadero: ...ist das sooo ein großer Aufwand das nach dem Alphabet, unhabhängig von der Position, zu sortieren und zu speichern?
Das darf nicht alphabetisch gemacht werden! Die Reihenfolge muss vom Entwickler gesteuert werden können, da die Reiehenfogle der eingelesenen Porperties unter Umständenn voneinander Abhängig sind und das würde nicht mehr funktionieren. Ob ein Property in das DFM kommt oder nur unter bestimmten Umständen, wird durch den Entwickler der Komponente gesteuert und nicht durch EMB. Wenn da ständig irgendwelche Properties rein- und rausfliegen, liegt das an der DevEx Komponente, die das je nach Situation speichert oder eben nicht. Das hat nichts mit der IDE zu tun.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.342 Beiträge
 
Delphi 12 Athens
 
#6

AW: DFM DIFF ... IDE oder Komponente speichert falsch?

  Alt 15. Jun 2022, 11:12
Da müsste man das vorher in eine Liste schreiben und erst am Ende in die DFM.
Zu viel Aufwand.

Es geht einfach in der Reihenfolge, wie es gefunden wird (RTTI).

Einige komponenten gehen auch davon aus, dass bestimmte Property zuerst geladen werden,
was dann bei Änderung der Reihenfolge knallt.
Aber hier sollten die Entwickler eh langsam mal lernen, dass man nicht ALLES sofort im SETTER behandelt, sondern beim csLoading das dan erst "einmal" im Loaded zu machen hat.




Nett ist auch, wenn man mit unterschiedlichen IDE-Versionen arbeitet. (z.B. noch das alte Delphi und Einige schonmal mit dem neuen Delphi)


Ich verwerfe sowas auch "meistens".
Bei kleinen Änderungen, lade ich dann nur das Gewollte hoch.

Bzw. bei großen Änderungen an der Unit dann auch mal sowas gleich mit (z.B. wenn sich an der DFM so viel geändert hat, dass Dieses eh nicht auffällt),
aber besser solche Änderungen als eigenen Commit, damit Sie bei Rückblicken (wann hatte sich was geändert) nicht störend einmischen (man die eine eigentlich geänderte Zeile nicht mehr sieht).



Natürlich könntest du nur beim Vergleichen, oder vor dem Commit einen Hook einsetzen, der die DFM sortiert, bzw. einen Comparer für DFMs hinzufügen, der es ohne Berücksichtigung der Reihenfolge vergleicht. (so ähnlich, wie es gern für XML Welche gibt, denen Formatierung und eventuell auch die Reihenfolge egal sind)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (15. Jun 2022 um 11:18 Uhr)
  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 10:51 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