All, --- Richard Frith-Macdonald <[EMAIL PROTECTED]> wrote:
<snip> > That being said, if I was writing a theme engine, I'd do it entirely > separately to start with ... and only when it was stable would I start > to gradually merge features into the gui code where it helps > performance and avoids code duplication. The -poseAs: feature of ObjC > is great here. It should be noted that poseAs: is a somewhat dangerous thing to use. Camaelon 1's use of poseAs: made caused problems with encoding in Gorm since it altered the class name used for images (from NSImage to Image). Subseqeuntly, the resulting .gorm file couldn't be loaded by people who didn't have the theme engine running because of this. :) This is detailed in Anytime you use poseAs: to replace class A with class B, especially in the case where of a "user bundle" which may alter the existing functionality in gnustep, it's necessary to also use -classForCoder in class B to ensure that class A is properly encoded. I have recently introduced some checks in Gorm for this which will warn the user about these potential problems if user bundles are loaded. There is also a default for Gorm now called "AllowUserBundles" which will turn the warnings off. Later, GJC ===== Gregory John Casamento -- CEO/President Open Logic Corp. (A MD Corp.) ## Maintainer of Gorm (IB Equiv.) for GNUstep. _______________________________________________ Discuss-gnustep mailing list [email protected] http://lists.gnu.org/mailman/listinfo/discuss-gnustep
