Re: patch: XAP_app* in GR_Graphics object

Subject: Re: patch: XAP_app* in GR_Graphics object
From: Aaron Lehmann (
Date: Fri Jul 07 2000 - 18:48:12 CDT

I committed it. Too lazy to find my commit message from bonsai, but I
didn't have anything terribly funny to say.

On Fri, 7 Jul 2000, WJCarpenter wrote:

> This patch, against 070700 nightly sources, does three things.
> ================================================================
> The patch adds an XAP_App* m_pApp member to the GR_Graphics class.
> Complications come in, and the patch is so big, because the
> constructor for GR_Graphics is never called directly. Instead,
> constructors are called for application-specific graphics classes
> derived from it:
> GR_BeOSGraphics
> MacGraphics
> GR_QNXGraphics
> GR_UnixGraphics
> GR_Win32Graphics
> PS_Graphics
> So, signatures for the constructors for those classes were changed to
> also take an XAP_App* argument. I have tested the XP and Linux
> versions. Code changes have been made for all platforms, but I can't
> PLATFORMS. Hopefully, if it breaks it will be due to trivial typos or
> forgotten-to-#include headers.
> ================================================================
> The patch adds a tick counter to XAP_PrefsScheme objects. The tick is
> incremented every time any preference value is changed in that scheme.
> This is useful if an object needs to cache a preference value for
> performance reasons or whatever. If the scheme pointer is the same
> and the tick count is the same, the preferences haven't changed and
> the cached value is legit. Otherwise, the cached value is stale and
> should be refreshed. (Yeah, yeah, performance things shouldn't matter
> enough to create a need for this caching, but glyph remapping will in
> the worst case check 2-3 preference values at least twice for each
> glyph being rendered. Hash table or not, that's a lot of lookups.)
> ================================================================
> The patch adds but does not use (except for some UT_DEBUG()) four
> preference values which will soon be used for glyph remapping:
> RemapGlyphsDefault="°"
> RemapGlyphsMasterSwitch="1"
> RemapGlyphsNoMatterWhat="0"
> RemapGlyphsTable="‘`’'“"”""
> ================================================================
> The first two changes are needed to accommodate upcoming use of the
> third items for remapped glyphs / smart quotes.
> --
> bill@carpenter.ORG (WJCarpenter) PGP 0x91865119
> 38 95 1B 69 C9 C6 3D 25 73 46 32 04 69 D6 ED F3

This archive was generated by hypermail 2b25 : Fri Jul 07 2000 - 18:48:17 CDT