From: Tomas Frydrych (tomas@frydrych.uklinux.net)
Date: Mon Aug 12 2002 - 09:23:00 EDT
First of all, my appologies for a substantial number of commits in the 
past 24 hours without message to the list; my ISP was transferring to 
a new mail server and all my messages were bouncing back as 
"unauthorised relay".
I have made a substantial progress on the transfer to a single units 
system, and got the rulers, status bar and scroll bars working on 
win32. The xp code is now fixed, so only some platform-specific 
changes are needed.
The gist of it is this: everthing in the layout, graphics, ruler and 
statusbar classes is internally handled in our logical units. Also the 
scrollers work in the internal logical units. The changes required are 
roughly
(1) in graphics classes, appropriate translation from the logical to 
the system units needs to be made where system calls are made. 
The getResolution() function needs to return the resolution in our 
logical units, e.g., if screen has a resolution 120 dpi then the 
resolution should be _UL(120) == 1024 * 120.
(2) in frame classes all data for our scroller objects needs to be set 
in the logical units; the same goes for status bar. In the case of 
rulers there is one exception, AFAIR, the ::draw() function expects 
bounding rectangle in device units (since it is mostly called from the 
frame this seemed sensible).
For the translation from one set of units to the other, please use the 
_UL/D and _UUL/D macros defined in ut_units.h; this will ensure we 
can change the resolution to anything we like later. The easiest way 
to work on this is probably to start with the drawing of the rulers; 
once they draw correctly, it is easier to debug the scrollers, since 
you can see how much the screen is or is not moving. As far as I 
remember, there should not be any changes necessary to the status 
bar platform code.
I will now start working on the document area of the window, which 
is not drawing at the moment.
Tomas
This archive was generated by hypermail 2.1.4 : Mon Aug 12 2002 - 09:28:03 EDT