AppleWM man page on MacOSX

Man page or keyword search:  
man Server   23457 pages
apropos Keyword Search (all sections)
Output format
MacOSX logo
[printable version]

APPLEWM(3)							    APPLEWM(3)

NAME
	AppleWM - Apple rootless window management extension.

SYNTAX
       #include <X11/extensions/applewm.h>

       Bool XAppleWMQueryExtension (Display *dpy,
	       int *event_basep, int *error_basep);

       Status XAppleWMQueryVersion (Display *dpy,
	       int *major_versionp, int *minor_versionp);

       Bool XAppleWMDisableUpdate (Display *dpy, int screen);

       Bool XAppleWMReenableUpdate (Display *dpy, int screen);

       Bool XAppleWMSelectInput (Display *dpy, unsigned long mask);

       Bool XAppleWMSetWindowMenu (Display *dpy, int nitems,
	       const char **items);

       Bool XAppleWMSetWindowMenuWithShortcuts (Display *dpy,
	       int nitems, const char **items,
	       const char *shortcuts);

       Bool XAppleWMSetWindowMenuCheck (Display *dpy, int index);

       Bool XAppleWMSetFrontProcess (Display *dpy);

       Bool XAppleWMSetWindowLevel (Display *dpy, Window window,
	       int level);

       Bool XAppleWMSetCanQuit (Display *dpy, Bool state);

       Bool XAppleWMFrameGetRect (Display *dpy,
	       unsigned int frame_class,
	       unsigned int frame_rect,
	       short inner_x, short inner_y,
	       short inner_w, short inner_h,
	       short outer_x, short outer_y,
	       short outer_w, short outer_h,
	       short *ret_x, short *ret_y,
	       short *ret_w, short *ret_h);

       unsigned int XAppleWMFrameHitTest (Display *dpy,
	       unsigned int frame_class,
	       short point_x, short point_y,
	       short inner_x, short inner_y,
	       short inner_w, short inner_h,
	       short outer_x, short outer_y,
	       short outer_w, short outer_h);

       Bool XAppleWMFrameDraw (Display *dpy, int screen,
	       Window window,
	       unsigned int frame_class,
	       unsigned int frame_attr,
	       short inner_x, short inner_y,
	       short inner_w, short inner_h,
	       short outer_x, short outer_y,
	       short outer_w, short outer_h,
	       unsigned int title_length,
	       const unsigned char *title_bytes);

ARGUMENTS
       dpy	 Specifies the connection to the X server.

       screen	 Specifies which screen.

       mask	 Mask of event types the client is interested in.

       window	 Specifies which window.

       level	 Specifies the window level.

       frame_class
		 Specifies the class of window frame decoration.

       frame_rect
		 Specifies  which  rectangle  to  return from the window frame
		 decoration.

       frame_attr
		 A mask specifying the attributes of the window frame  decora‐
		 tion.

       inner_x,inner_y,inner_w,inner_h
		 Rectangle of the window content inside the window frame deco‐
		 ration.

       outer_x,outer_y,outer_w,outer_h
		 Rectangle of the outer border of the window frame decoration.

       point_x,point_y
		 Specifies the coordinates of the mouse up event.

DATATYPES
       Events
       typedef struct {
	   int type;		   * of event *
	   unsigned long serial;   * # of last request processed by server *
	   Bool send_event;	   * true if came from a SendEvent request *
	   Display *display;	   * Display the event was read from *
	   Window window;	   * window of event *
	   Time time;		   * server timestamp when event happened *
	   int kind;		   * subtype of event *
	   int arg;
       } XAppleWMNotifyEvent;
       XAppleWMNotifyEvent is sent to a client who has requested  notification
       of AppleWM events with XAppleWMSelectInput.

       Event types:
       #define AppleWMControllerNotify		     0
       #define AppleWMActivationNotify		     1
       #define AppleWMPasteboardNotify		     2

       Event masks:
       #define AppleWMControllerNotifyMask	     (1L << 0)
       #define AppleWMActivationNotifyMask	     (1L << 1)
       #define AppleWMPasteboardNotifyMask	     (1L << 2)

       Kinds of ControllerNotify events:
       #define AppleWMMinimizeWindow		     0
       #define AppleWMZoomWindow		     1
       #define AppleWMCloseWindow		     2
       #define AppleWMBringAllToFront		     3
       #define AppleWMHideWindow		     4
       #define AppleWMHideAll			     5
       #define AppleWMShowAll			     6
       #define AppleWMWindowMenuItem		     9
       #define AppleWMWindowMenuNotify		     10
       #define AppleWMNextWindow		     11
       #define AppleWMPreviousWindow		     12

       Kinds of ActivationNotify events:
       #define AppleWMIsActive			     0
       #define AppleWMIsInactive		     1

       Kinds of PasteboardNotify events:
       #define AppleWMCopyToPasteboard		     0

       Window Parameters

       Window level ids for XAppleWMSetWindowLevel:
       #define AppleWMWindowLevelNormal		     0
       #define AppleWMWindowLevelFloating	     1
       #define AppleWMWindowLevelTornOff	     2
       #define AppleWMWindowLevelDock		     3
       #define AppleWMWindowLevelDesktop	     4
       #define AppleWMNumWindowLevels		     5

       Values for frame_rect argument to XAppleWMFrameGetRect:
       #define AppleWMFrameRectTitleBar		     1
       #define AppleWMFrameRectTracking		     2
       #define AppleWMFrameRectGrowBox		     3

       Window frame classes:
       #define AppleWMFrameClassDocument	     1 << 0
       #define AppleWMFrameClassDialog		     1 << 1
       #define AppleWMFrameClassModalDialog	     1 << 2
       #define AppleWMFrameClassSystemModalDialog    1 << 3
       #define AppleWMFrameClassUtility		     1 << 4
       #define AppleWMFrameClassToolbar		     1 << 5
       #define AppleWMFrameClassMenu		     1 << 6
       #define AppleWMFrameClassSplash		     1 << 7
       #define AppleWMFrameClassBorderless	     1 << 8

       Window frame attributes:
       #define AppleWMFrameActive		     0x0001
       #define AppleWMFrameUrgent		     0x0002
       #define AppleWMFrameTitle		     0x0004
       #define AppleWMFramePrelight		     0x0008
       #define AppleWMFrameShaded		     0x0010
       #define AppleWMFrameCloseBox		     0x0100
       #define AppleWMFrameCollapseBox		     0x0200
       #define AppleWMFrameZoomBox		     0x0400
       #define AppleWMFrameAnyBox		     0x0700
       #define AppleWMFrameCloseBoxClicked	     0x0800
       #define AppleWMFrameCollapseBoxClicked	     0x1000
       #define AppleWMFrameZoomBoxClicked	     0x2000
       #define AppleWMFrameAnyBoxClicked	     0x3800
       #define AppleWMFrameGrowBox		     0x4000

DESCRIPTION
       AppleWM	is  a  simple  library designed to interface with the Apple-WM
       extension.  This extension allows X window managers to better  interact
       with  the  Mac  OS X Aqua user interface when running X11 in a rootless
       mode.

       A more complete description will be forthcoming eventually.

FUNCTIONS
       XAppleWMDisableUpdate causes any updates to the windows on  the	screen
       to  be  queued until updates are reenabled with XAppleWMReenableUpdate.
       This is useful to avoid intermediate redraws to the screen if a	number
       of  changes  are	 going to be made at once. Updates should only be dis‐
       abled temporarily while drawing to a window. These calls may be	nested
       and each call to XAppleWMDisableUpdate must be paired with a subsequent
       call to XAppleWMReenableUpdate. Updating is  not	 reenabled  until  the
       last unnested call to XAppleWMReenableUpdate. Disabling updates applies
       to window content; however, it is implementation dependent whether win‐
       dow size and position changes are disabled as well.

       XAppleWMSelectInput  is used to request that a client receive notifica‐
       tion of the AppleWM events listed above. The event mask	specifies  the
       event  types  the  client  is interested in receiving. Passing an event
       mask of 0 stops notification of events.

       XAppleWMSetWindowMenu and  XAppleWMSetWindowMenuWithShortcuts  set  the
       list  of	 windows displayed in the X server's "Window" menu in the Aqua
       menu bar. Other items may be listed in this menu by the X server, but a
       part  of this menu is set aside for use by the Apple-WM extension. This
       is intended to be used to set a list of important  top-level  X11  win‐
       dows.

       One item of the X server's "Window" menu can have a checkmark beside it
       to indicate it is the active or front most window.   XAppleWMSetWindow‐
       MenuCheck can be used to set the item number to put a checkmark beside.

       XAppleWMSetFrontProcess	directs	 the X server to make itself the front
       most application among all the other Mac OS X applications. This causes
       X11  windows  to	 move  above other applications' windows and for the X
       server to start receiving keyboard and mouse events.

       Windows can be placed into different Aqua window levels with  XAppleWM‐
       SetWindowLevel. The stacking of window levels takes precedence over the
       stacking of windows within a level. Thus the bottom window in  a	 level
       will  obscure  even  the	 top  most  window of a lower window level. By
       default all windows are placed in the lowest window level,  AppleWMWin‐
       dowLevelNormal. When a window is moved to a new level, it is ordered in
       front of all of its peers at the new level. Note, X11 does not have the
       concept of window levels and this function does not change the X11 win‐
       dow order. The result of trying to reorder an X11 window above  another
       window of higher level is undefined.  This should probably be changed.

       By  default,  the  X server will ask for confirmation whenever the user
       requests that it quit from the Aqua UI.	XAppleWMSetCanQuit can be used
       to  change  this	 behavior.  If a state of TRUE is passed, the X server
       will quit without confirmation when requested. If FALSE is passed,  the
       default behavior is used.

       XAppleWMFrameDraw  can  be used to decorate a top-level window with the
       standard Aqua window frame and widgets. The  frame_class	 controls  the
       overall	look  of the window frame and frame_attr specifies the details
       of how the various UI elements should be drawn. The dimensions  of  the
       X11  window  content are passed as the inner_* rectangle and the dimen‐
       sions of the Aqua window frame are passed  as  the  outer_*  rectangle.
       XAppleWMFrameGetRect is used to calculate the size of the outer rectan‐
       gle from the size of the window content, which is being reparented.

       XAppleWMFrameGetRect returns a rectangle that encloses  an  element  of
       the  window  frame  decoration.	 The frame_rect argument specifies the
       element of interest. The inner_* and outer_* rectangles	(as  described
       above)  specify	the  window  geometry.	If AppleWMFrameRectTitleBar is
       passed for frame_rect, the inner_* parameters are ignored. The returned
       rectangle  has  the dimensions of the outer_* rectangle except that its
       height is equal to the constant title  bar  height  for	the  specified
       frame_class. The proper outer rectangle for a given window content size
       is the union of inner  rectangle	 and  the  title  bar  rectangle.  The
       AppleWMFrameRectTracking	 and  AppleWMFrameRectGrowBox  rectangles  are
       primarily intended to be used by the window manager  to	determine  the
       correct	placement  for	child  windows to receive events. The tracking
       rectangle is the area of the window containing the close, collapse  and
       zoom  boxes.  Typically	when  the cursor is over this area, the window
       manager will highlight the close, collapse, and zoom buttons to conform
       to the standard Aqua interface.

       If a mouse up or down event is received in the tracking rectangle, XAp‐
       pleWMFrameHitTest is used to determine which button was clicked.	  XAp‐
       pleWMFrameHitTest  returns  AppleWMFrameCloseBox, AppleWMFrameCollapse‐
       Box, or AppleWMFrameZoomBox to indicate which button was clicked. If no
       button was clicked, 0 will be returned.

       Other  functions	 include:  XAppleWMQueryExtension,  which  returns the
       event and error base codes and XAppleWMQueryVersion, which returns  the
       current	version	 of  the extension. (This information is cached by the
       library.)

RESTRICTIONS
       AppleWM is only intended to be used on Mac OS X when running a rootless
       X server.

X Version 11		       libAppleWM 1.4.1			    APPLEWM(3)
[top]

List of man pages available for MacOSX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
...................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net