On 4/14/06, Stéphane Magnenat <[EMAIL PROTECTED]> wrote: > Hi, > Well, we fully agree with this criticism. In fact, we have already discussed > this and we indeed think that using a third "Drawer" object is the clean way > to go.I don't think it should go into the engine, but rather be just another > class. Now the question would be, should it be a widget. Theoretically it > would be cleaner, but would propagate the refactoring deep into the in game > GUI (in fact, invalidate the whole actual in game GUI). On the long term it > would be nice, but trust me, that's a big things even if it doesn't look > like, because there is dozens of small behaviour not easy to implement in a > generic way but critical for the smooth in game user interaction. What I > would suggest for now is taking the drawing code out of GameGUI object, put > it in a separate Drawer object, call this Drawer from GameGUI in the game and > make a widget that embedded this Drawer for MapEdit. > > Steph > > -- > http://nct.ysagoon.com > > > _______________________________________________ > glob2-devel mailing list > [email protected] > http://lists.nongnu.org/mailman/listinfo/glob2-devel >
Then it should be important to draw the line between "drawing" and "user interface" now, if we intend to not use libgag, at the very least. This is quite troublesome, because "drawing" is part of the user interface, so should our "Drawing" class truly handle the user interface? Like button clicks? It seems not, but then so, what should our "Drawing" class do? One idea is to have the Drawing class plain and simply draw things, and nothing else. Then have the MapEditor and GameGUI decide what is to be drawn and handle the user interface appropriettly, but this seems strangely like we could do this with libgag, having the "widgets" do drawing of individual parts for their oversear, MapEditor and GameGUI. I'm not sure of any other options, whats your opponion? _______________________________________________ glob2-devel mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/glob2-devel
