Platform-Specific Extensions (was Re: [GUI] Dynamic sizing.)

Glynn Clements glynn.clements@virgin.net
Sun, 27 Apr 2003 21:14:16 +0100


Wolfgang Thaller wrote:

> > In any case, my bottom line is that, even if you provide a portable
> > geometry management mechanism, I ought to be able to just use actual
> > XmForm, XmRowColumn etc widgets for the Motif version of an
> > application. In particular, stylistic attributes (e.g. spacing,
> > margins) which are set via resources need to be respected.
> 
> We could just add a platform-specific extension for the Motif backend.
> If somebody wants to implement a portable XmForm "clone", we could move 
> it to the CGA proper.

I think that the key issue is abstraction. Most of the API, and most
of the code which uses it, should be able to work with whatever
widgets are passed to it. Using a platform-specific widget class
should involve a minor change to the UI construction code; it
shouldn't require changes to the rest of the code.

> 2) Such platform-specific functions must be clearly marked as such.
> I suggest that we follow the example of OpenGL and mark extensions 
> using a suffix to the name, e.g.
> mkXmForm_EXT, loadNibFile_EXT, etc.

I'd rather just use modules and qualified names.

-- 
Glynn Clements <glynn.clements@virgin.net>