[M3devel] FW: Win32/ScrollerVBTClass.m3

Randy Coleburn rcoleburn at scires.com
Sun Dec 13 06:22:25 CET 2009

You are correct that I did not attempt to factor out common code.
At the time, we were more interested in correct behavior, and such factoring did not provide any benefits to the executing code.
The benefit of such factoring is in reducing the source tree size and potentially improved maintainability, if done right.  So to that end, I applaud your efforts.

>>> Jay K <jay.krell at cornell.edu> 12/13/2009 12:04 AM >>>
Randy, ok, thanks it sounds like you did one of the two things.
 1) Remerge old diffs to new tree.
 but not 2) Lift out what is common into a common file, instead of forking the entire file.
I didn't mean to imply Unix gui should look like Windows gui.
Just that the large amounts of common code should not be duplicated.
Probably what'd work is have one merged file with some if's sprinkled.
I think what Unix gui should look like is a perpetually unsolved problem and the answer is somewhere between "terrible" and "like Windows", with KDE at least near the second extreme. :)
Trestle seems to be among the uglier Unix gui libraries actually..
It'd be nice if there was an option to adapt to the current "theme", but Trestle to me is a very large unknown..
 - Jay
Date: Sun, 13 Dec 2009 00:02:34 -0500
From: rcoleburn at scires.com 
To: jay.krell at cornell.edu; m3devel at elegosoft.com 
Subject: Re: [M3devel] FW: Win32/ScrollerVBTClass.m3

Back in 2008 when I made these changes I did go to the current source tree and factor all this work into the then current tree.  It was not a file replace situation, but rather very careful work trying to merge the changes back into the current tree.  The POSIX implementation did not change, because the modifications were intended for Windows only.  I think it would be wrong to try and make the GUI on Unix look like Windows.

>>> Jay K <jay.krell at cornell.edu> 12/12/2009 10:41 PM >>>
2008-05-27 02:29  rcoleburn

  * m3-ui/vbtkit/src/: lego/m3makefile, vbtkitresources/ScrollBg,
    vbtkitresources/close.ppm, vbtkitresources/down.ppm,
    vbtkitresources/grow.ppm, vbtkitresources/left.ppm,
    vbtkitresources/m3makefile, vbtkitresources/right.ppm,
    vbtkitresources/up.ppm, lego/POSIX/ScrollerVBTClass.m3,
    lego/POSIX/ZChassisVBT.m3, lego/POSIX/m3makefile,
    vbtkitutils/m3makefile, lego/WIN32/ScrollerVBTClass.m3,
    lego/WIN32/ZChassisVBT.m3, lego/WIN32/m3makefile,
    vbtkitutils/POSIX/VBTKitEnv.i3, vbtkitutils/POSIX/m3makefile,
    vbtkitutils/WIN32/VBTKitEnv.i3, vbtkitutils/WIN32/m3makefile:

  Incorporate changes made to vbtkit by Critical Mass circa September 1997 that make the GUI appearance more like that of Windows.  The m3makefiles have been adjusted so that these changes affect only Windows (WIN32) platforms.  These changes were part of work sponsored by Randy Coleburn at Scientific Research Corporation (SRC).  The main files affected are VBTKitEnv.i3, ScrollerVBTClass.m3, and ZChassisVBT.m3, plus some new resource files have been added for WIN32 only.

Randy, are files from 1997 really correct to incorporate into the tree 11 years later? Or maybe they are rather out of date?
Can the work be redone against the 2008 versions? And factor out the common parts?
I guess I should go and diff these against the 3.6 or 4.1 versions?
And then apply those diffs to the Posix file to get the Win32 version?
(Or again, try to share what is the same?)
 - Jay
> Date: Sun, 13 Dec 2009 04:37:34 +0000
> To: m3commit at elegosoft.com 
> From: jkrell at elego.de 
> Subject: [M3commit] CVS Update: cm3
> CVSROOT: /usr/cvs
> Changes by: jkrell at birch. 09/12/13 04:37:34
> Modified files:
> cm3/m3-ui/vbtkit/src/lego/: Tag: release_branch_cm3_5_8 
> m3makefile 
> cm3/m3-ui/vbtkit/src/lego/WIN32/: Tag: release_branch_cm3_5_8 
> ScrollerVBTClass.m3 
> Log message:
> I forgot to mention: I'm really just guessing here. It seems to work.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20091213/8fab5e3e/attachment-0002.html>

More information about the M3devel mailing list