comparison codeDoc/jobs.txt @ 175:1cbde9807293

Compile/link-time fixes for ldc & non-debug builds. Moved WidgetManager to widget/ Reverted IChildWidget to an interface, not an abstract class. Introduced a work-around for a compiler problem. May not cover all cases.
author Diggory Hardy <diggory.hardy@gmail.com>
date Fri, 11 Sep 2009 20:56:53 +0200
parents 3d58adc17d20
children d5d5fe04ca6c
comparison
equal deleted inserted replaced
174:3d58adc17d20 175:1cbde9807293
24 So make sure draw() and a few others are public, and invariants get called at these points. Thus a lot more must have at least package protection. 24 So make sure draw() and a few others are public, and invariants get called at these points. Thus a lot more must have at least package protection.
25 25
26 Implement a RootWidget moving functionality out of AWidgetManager, etc., now, or later? 26 Implement a RootWidget moving functionality out of AWidgetManager, etc., now, or later?
27 RequestRedraw becomes a function of the renderer. 27 RequestRedraw becomes a function of the renderer.
28 28
29 Undefined reference problem: (see ~/d/small/tests/compilerErrors/packageFunc.d)
30 Solution: access via a class base instead of an interface base.
31 Two ways to implement:
32 Leave IChildWidget an interface, but change stored refs to AChildWidget and cast references passed in functions before calling member functions.
33 Use AChildWidget directly or an abstract base class instead of IChildWidget, so that interfaced functions can pass the same type stored.
34 Making IChildWidget an abstact class seems to have partially solved it. But IPopupParentWidget (needs to be an interface), etc., still need some help.
35 Presumably setWidth is getting called from IChildWidget instead of AChildWidget now. ??
36 More link errors with ldc.
37 29
38 30
39 To do (importance 0-5: 0 pointless, 1 no obvious impact now, 2 todo sometime, 3 useful, 4 important, 5 urgent): 31 To do (importance 0-5: 0 pointless, 1 no obvious impact now, 2 todo sometime, 3 useful, 4 important, 5 urgent):
40 Also search for FIXME/NOTE/BUG/WARNING comment marks. 32 Also search for FIXME/NOTE/BUG/WARNING comment marks.
41 4 Move createWidget code out of WidgetManager. 33 4 Move createWidget code out of WidgetManager.