|
|||||||||||||||||
Searching XEmacs
Quick Links
About XEmacs
|
Removal of misc-user Event TypeAbstract: This page describes why the misc-user event type should be split up into a number of different event types, and how to do this. The misc-user event should not exist as a single event type. It
should be split up into a number of different event types: one for
scrollbar events, one for menu events, and one or two for drag-n-drop
events. Possibly there will be other event types created in the
future. The reason for this is that the misc-user event was a bad
design choice when I made it, and it has only gotten worse with
Oliver's attempts to add features to it to make it be used for
drag-n-drop. I know that there was originally a separate drag-n-drop
event type, and it was folded into the misc-user event type on my
recommendation, but I have now realized the error of my ways. I had
originally created a single event type in an attempt to prevent some
Lisp programs from breaking because they might have a case statement
over various event types, and would not be able to handle new event
types appearing. I think now that these programs simply need to be
written in a way to handle new event types appearing. It's not very
hard to do this. You just use predicates instead of doing a case
statement over the event type. If we preserve the existing predicate
called More specifically, the only clean way to design the misc-user event type would be to add a sub-type field to it, and then have the nature of all the other fields in the event type be dependent on this sub-type. But then in essence, we'd just be reimplementing the whole event-type scheme inside of misc-user events, which would be rather pointless. Ben Wing |
||||||||||||||||
|
|
||||||||||||||||
Conform with <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Automatically validated by PSGML