This is an abstract class which provides a framework for a device independant window server. A window server handles the very basic control of the computer display and input. This includes basic window creation and handling, event handling, cursors, and providing miscellaneous information about the display.
Typically a backend library will provide a concrete subclass which implements the device specific methods described below.
In almost all cases, you should not call these methods directly in an application. You should use the equivalent methods available elsewhere in the library (e.g. NSWindow, NSScreen, etc).
Create a window server with attributes,
which contains key/value pairs which describe the
specifics of how the window server is to be
initialized. Typically these values are
specific to the concrete implementation. The
current set of attributes that can be
used with GSDisplayServer is.
GSDisplayName is window server specific and
shouldn't be used when creating a
GSDisplayServer (although you can
retrieve the value with the
-attributes
method). On X-Windows the value might be set to
something like "host:d.s" where host is the
host name, d is the display number and s is the
screen number. GSDisplayNumber indicates the
number of the display to open. GSScreenNumber
indicates the number of the screen to display
on. If not explicitly set, these
attributes may be taked from environment
variables or from other operating specific
information.
In almost all applications one would only create a single instance of a window server. Although it is possible, it is unlikely that you would need more than one window server (and you would have to be very careful how you handled window creation and events in this case).
YES
, otherwise
return NO
. Subclasses should override
this method, call 'super' and take appropriate action
if the method returns 'YES'.
nil
.
Sending any more messages to the receiver after
this is likely to cause severe problems and probably
crash the application.
YES
, otherwise
return NO
. If given 'nil' as the array
of types, remove ALL. Subclasses should
override this method, call 'super' and take
appropriate action if the method returns 'YES'.
Display
variable.
Window
variable.
YES
if the application should
create the miniwindow counterpart to the full size
window and own it. Some display systems handle the
miniwindow themselves. In this case the backend
subclass should override this method to return
NO
.
YES
and this message must be balanced
by a
-releasemouse
message.
nil
for fg and bg.