Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Peinhard,
15. Jul 2006
Ich wollt' nur sagen, daß das Thema für mich nicht gestorben ist - ich komm nur einfach im Moment nicht dazu, auch am WE nicht. Das 'observer pattern' ist mE deshalb nicht ganz zutreffend, weil ja das (beobachtete) 'Subjekt' die Schnittstelle(n), um die es geht (die Events) standardmäßig immer nur für einen Beobachter bereithalten - deshalb ja der Rückgriff auf die Verkettung, mit eben der Gefahr...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Peinhard,
10. Jul 2006
Grmpf. Ich hätte besser fragen sollen, nämlich: 'Was willst du hier mit einem solchen, wie ihn einsetzen?'
Wie gesagt, hat diese 'Technik' bei mir schon ziemlich um sich gegriffen, so daß die Aussicht auf eine weitgehend 'wartungsfreie' oder zumindest wartungsarme Implementation durchaus verlockend ist. Zumal ich mit einer abgeleiteten TADOConnection zumindest für Datasets schon eine quasi...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Peinhard,
10. Jul 2006
Hello again...
Blöd ausschauen, da die 'Observer-Komponente' immer noch unbekümmert den alten Handler aufrufen würde... es sei denn, ich rufe die Methode UpdateLinks des Observers auf, wenn ich den Handler 'umhänge' oder entferne...
Ich glaube aber, daß die eigentliche Funktionalität der jeweiligen Komponenten nicht wirklich weiter hilft - dafür sind es auch einfach zu viele in ihrer...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Peinhard,
10. Jul 2006
Moin marabu,
erstmal vielen Dank für die Antwort. Der constructor einer 'lauschenden' Komponente ist deshalb weniger geeignet, weil zu diesem Zeitpunkt andere über properties eingebundene Komponenten (die 'zu belauschenden') noch gar nicht verfügbar sind. Da wäre also Loaded die erste 'zentrale' Möglichkeit, aber wiederum auch nicht für zur Laufzeit zugewiesene Komponenten. Und dann lande ich...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Peinhard,
8. Jul 2006
Ich fange in einigen Komponenten gerne Ereignisse anderer Komponenten ein ('capture events') und speichere dabei einen Zeiger auf eine evt schon zugewiesene Ereignisroutine, damit diese nicht 'abgehängt' wird, sondern in der 'untergeschobenen' Routine ebenfalls mit aufgerufen werden kann. Das sieht in etwa so aus:
procedure TADOPosManager.UpdateLinks;
{inline compare:}
function...