J'ai besoin de changer un grand nombre de Delphi composants définis dans un paquet de semblables dans un autre package. Beaucoup de grunt travail peut être fait en remplacement de texte (types de composants et propriétés) dans le DFM fichiers enregistrés au format texte, bien sûr.
J'ai cherché sur Stackoverflow et Google et je suis maintenant en adaptant le Felix Colibri DFM analyseur de http://www.felix-colibri.com/papers/colibri_utilities/dfm_parser/dfm_parser.html
Je tombe sur une option dans la DFM fichiers que l'analyseur étouffe sur: [nombre]s après le type de spécifications, comme ceci:
inherited DialoogEditAgenda: TDialoogEditAgenda
ActiveControl = PlanCalendar
Caption = 'Agenda'
[snip]
inherited PanelButtons: TRzPanel
Top = 537
[snip]
inherited ButtonCancel: TRzBitBtn [0] <== *here*
Left = 852
[snip]
end
object CheckBoxBeschikbaarheid: TRzCheckBox [1] <== *here*
Left = 8
[snip]
end
inherited ButtonOK: TRzBitBtn [2] <== *here*
Left = 900
[snip]
end
end
inherited PageControl: TRzPageControl
Left = 444
[snip]
end
object PanelBeschikbaarheid: TRzSizePanel [2] <== *here*
Left = 967
[snip]
end
object PanelScheduler: TRzPanel [3] <== *here*
Left = 23
Top = 22
[...]
Beaucoup de ces Smgf sont fortement héréditaire (j'ai dû m'adapter Colibri code pour que déjà), mais une petite application de test avec l'héritage échoué à produire le [nombre]s dans la DFM.
Ma question avant d'avoir à étendre l'analyseur de code: personne ne sait où ces [nombre]s viennent et, par conséquent, je peux peut-être enlever avant l'analyse de la DFM fichiers?
Merci
Jan