Max Vlasov schrieb:
tetris-inspired game and is gnu gpl. I would like to made it compatible with other platforms, but I'm not sure whether I should change region-based logic to something else in this case. I will be glad to hear any advice on this.
I don't know about concrete window managers, except for Windows, but IMO there is little room for very different algorithms. A window (screen) manager has to track modifications to a window (requiring repaint), and has to take into account possibly overlapping windows, and widgets inside the client area. In the simplest implementation all update and clip regions are implemented as lists of rectangles. The only choice is the implementation of clipping, which can be done by painting all update rectangles in explicit (sequential) painting requests, or otherwise leave clipping to the graphics library. In either case the paint handlers have to deal with a single rectangular area (ClipRect), IMO.
DoDi -- _______________________________________________ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus