Index: [thread] [date] [subject] [author]
  From: Jon M. Taylor <taylorj@ecs.csus.edu>
  To  : ggi-develop@eskimo.com
  Date: Sun, 30 Aug 1998 14:51:00 -0700 (PDT)

Re: New function in libggiMisc RFC.

On Sun, 30 Aug 1998, Andrew Apted wrote:

> Tristan Wibberley writes:
> 
> >  I think something is needed for greater window system support (in X and
> >  eventually berlin).
> 
> Yep.
> 
> >  typedef struct {
> >  	GGI_WINSTD;
> >  	title;
> >  	resizeable;	/* not by default no way, but allows
> >  			   you to resize and check mode on EvExpose */
> >  	geometry;
> >  	winstyleflags;
> >  } ggimisc_xwin;
> >  
> >  typedef struct {
> >  	GGI_WINSTD;
> >  	title;
> >  	titleface;
> >  	blah;
> >  } ggimisc_berlin;
>   
> What I had in mind was extending ggi_mode to support the basics, as in:
                                   ^^^^^^^^

	Wouldn't extending ggi_visual be more appropriate?  After all, a
window is really just a specially-handled visual.  And as you can attach 
arbitrary metadata to a visual right now, LibGWT could just attach

>     ggi_coord window_pos;
>     char *window_title;
>     uint32 window_flags;

	...to the visuals it manages as windows and you are all set.
 
> The pos field would be parsed by ggiParseMode() [the code is already
> there to do this].  The window_flags flags (if this field was deemed
> worth having) would contain some very standardized values, for example:
> 
>     #define GGI_WINF_NO_TITLE       0x0001
>     #define GGI_WINF_NO_BORDER      0x0002  /* implies NO_TITLE */
>     #define GGI_WINF_NO_INPUT       0x0004
>     #define GGI_WINF_NO_MOVE        0x0008
>     #define GGI_WINF_ALWAYS_TOP     0x0010
>     #define GGI_WINF_ALWAYS_BOTTOM  0x0020
> /*  #define GGI_WINF_CAN_RESIZE     0x0100  */
> 
> Full screen targets would just ignore the window_* fields.  I'm not sure
> about resizing, I think it could get hairy and more trouble than it's
> worth (such as: how to define the minimum and maximum sizes).
> 
> What do people think ?

	If you want "window modes", keep them separate from display/buffer
modes.  Have LibGWT handle them internally, IMHO.

Jon

---
'Cloning and the reprogramming of DNA is the first serious step in 
becoming one with God.'
	- Scientist G. Richard Seed

Index: [thread] [date] [subject] [author]