Myslím, že to s tým delegátom je najrozumnejšie riešenie, uvediem príklad na rovnakom princípe:
V Delphi je formulár, na ňom tlačítko. Po kliknutí na tlačítko sa má vyvolať nejaká činnosť, lenže tlačítko má len v sebe nadefinované metódy a nevie čo vykonať, tak zavolá delegáta OnMouseClick. Presne toto chcem vlastne urobiť ja. Červík sa bude chcieť prekresliť, pretože dôjde k nejakej udalosti a zavolá delagáta, ktorý vyvolá metódu zvonka a prekreslí určitú časť. Teraz už viem, že na tom idem dobre. Alebo sa predsa len mýlim?