XmbSetWMProperties

Syntax

void XmbSetWMProperties(display, w, window_name, icon_name, argv, argc,
                      normal_hints, wm_hints, class_hints)
      Display *display;
      Window w;
      char *window_name;
      char *icon_name;
      char *argv[];
      int argc;
      XSizeHints *normal_hints;
      XWMHints *wm_hints;
      XClassHint *class_hints;

Arguments

display Specifies the connection to the X server.
w Specifies the window.
window_name Specifies the window name, which should be a null-terminated string.
icon_name Specifies the icon name, which should be a null-terminated string.
argv Specifies the application's argument list.
argc Specifies the number of arguments.
hints Specifies the size hints for the window in its normal state.
wm_hints Specifies the XWMHints structure to be used.
class_hints Specifies the XClassHint structure to be used.

Description

The XmbSetWMProperties() convenience function provides a simple programming interface for setting those essential window properties that are used for communicating with other clients (particularly window and session managers).

If the window_name argument is non-NULL, XmbSetWMProperties() sets the WM_ICON_NAME property. The window_name and icon_name arguments are null-terminated strings in the encoding of the current locale. If the arguments can be fully converted to the STRING encoding, the properties are created with type ``STRING''; otherwise, the arguments are converted to Compound Text, and the properties are created with type ``COMPOUND_TEXT''.

If the normal_hints argument is non-NULL, XmbSetWMProperties() calls XSetWMNormalHints(), which sets the Setting and Reading the WM_NORMAL_HINTS Property"). If the wm_hints argument is non-NULL, XmbSetWMProperties() calls XSetWMHints(), which sets the Setting and Reading the WM_HINTS Property").

If the argv argument is non-NULL, XmbSetWMProperties() sets the XSetWMClientMachine() (see section "Setting and Reading the WM_CLIENT_MACHINE Property").

If the class_hints argument is non-NULL, XmbSetWMProperties() sets the XClassHint structure is set to the NULL pointer and the RESOURCE_NAME environment variable is set, the value of the environment variable is substituted for res_name. If the res_name member is NULL, the environment variable is not set, and argv and argv[0] are set, then the value of argv[0], stripped of any directory prefixes, is substituted for res_name.

It is assumed that the supplied class_hints.res_name and argv, the RESOURCE_NAME environment variable, and the hostname of the machine are in the encoding of the locale announced for the LC_CTYPE category (on POSIX-compliant systems, the LC_CTYPE, else LANG environment variable). The corresponding WM_COMMAND, and XAllocClassHint(), XAllocIconSize(), XAllocSizeHints(), XAllocWMHints(), XParseGeometry(), XSetCommand(), XSetTransientForHint(), XSetTextProperty(), XSetWMClientMachine(), XSetWMColormapWindows(), XSetWMIconName(), XSetWMName(), XSetWMProperties(), XSetWMProtocols(), XStringListToTextProperty(), XTextPropertyToStringList(), "Using Window Manager Convenience Functions".


Christophe Tronche, ch.tronche@computer.org