On 5/20/06, Stephen J. Turnbull <stephen@xemacs.org> wrote:
>>>>> "Ben" == Ben Wing <benwing666@gmail.com > writes:

   Ben> we want instead an interface that works the same on *all*
   Ben> window systems (at least, X and MSW).

I agree with the request for a general interface, but would add that
John isn't responsible for implementing it on X.  I think there are
now agreed conventions that you can look up on freedesktop.org, but I
haven't heard from anybody who really wants them ... X implementation
is not a big rush.
 
agreed; i just want to see it be genericized.

 
   Ben> (note, i'm almost positive there is something equivalent
   Ben> already in the lwlib-menubar interface)

lwlib ... maybe it was a good idea 15 years ago, but we really should
scrap it and just make all those things Lisp objects (and properly
factor out consoles, devices, displays, etc while we're at it).

I've been doing some digging in the X code, and it just doesn't
conform to Xt conventions.  To get Xft to any sanity, the X
interfaces are going to have to be rationalized.  I think lwlib is
just going to get in the way.

I don't think lwlib conformance is something that people should be
requested to provide.  It's just too hairy and useless.
 
sure.
 

 
   Ben> it would also probably be OK to create a *general* interface
   Ben> for sending any kind of event (or as general as you can
   Ben> reasonably implement it); this should not be restricted to
   Ben> WM_SYSCOMMAND messages, should probably allow symbols as well
   Ben> as numbers, and should *not* be advertised as the primary way
   Ben> to do things like maximizing a frame.

Sure, but couldn't he just name the function -internal, wrap it with a
bit of Lisp to translate symbols to numbers, and then wrap minimize-,
maximize-, etc functions around that?
 
i'd kind of rather not have this; once something is exposed to lisp it becomes hard to change.  the major problem is that there's no reasonable way in elisp to hide a function other than giving it a strange name.  since in general this kind of stuff requires c support, i don't see why we shouldn't just do it all in c, the same as we do for existing functions that behave similarly.
 
ben