XSetWMProperties(3X11)

名前
XSetWMProperties, XmbSetWMProperties, Xutf8SetWMProperties - 標準のウィンドウプロパティを設定する

書式
void XSetWMProperties(display, w, window_name, icon_name, argv, argc, normal_hints, wm_hints, class_hints)
      Display *display;
      Window w;
      XTextProperty *window_name;
      XTextProperty *icon_name;
      char **argv;
      int argc;
      XSizeHints *normal_hints;
      XWMHints *wm_hints;
      XClassHint *class_hints;

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;

void Xutf8SetWMProperties(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;

引き数

argc
    引き数の数を指定する。

argv
    アプリケーションの引き数リストを指定する。

class_hints
    使用する 構造体を指定する。

display
    X サーバへの接続を指定する。

icon_name
    アイコン名を指定する。 これは NULL で終わる文字列でなければならない。

normal_hints
    ウィンドウの通常の状態でのサイズヒントを指定する。

w   ウィンドウを指定する。

window_name
    ウィンドウ名を指定する。 これは NULL で終わる文字列でなければならない。

wm_hints
    使用する 構造体を指定する。

説明
簡易関数 は、他のクライアント(特にウィンドウマネージャやセッションマネージャ)との通 信に使われる重要なウィンドウプロパティを設定するための単一のプログラミ ングインタフェースを提供する。

引き数 window_name が NULL でなければ、 は を呼び出して WM_NAME プロパティを設定する(14.1.4 節を参照)。 引き数 icon_name が NULL でなければ、 は を呼び出して WM_ICON_NAME プロパティを設定する(14.1.5 節を参照)。 引き数 argv が NULL でなければ、 は を呼び出して WM_COMMAND プロパティを設定する(14.2.1節を参照)。 argc を 0 にして長さが 0 のコマンドを指示してもよい点に注意すること。 また、このマシンのホスト名は を使って保存されている点にも注意すること(14.2.2 節を参照)。

引き数 normal_hints が NULL でなければ、 は .ZN XSetWMNormalHints を呼び出し、この関数が WM_NORMAL_HINTS を設定する(14.1.7 節を参照)。 引き数 wm_hints が NULL でなければ、 は を呼び出して WM_HINTS プロパティを設定する(14.1.6 節を参照)。

引き数 class_hints が NULL でなければ、 は を呼び出して WM_CLASS プロパティを設定する(14.1.8 節を参照)。 構造体の res_name メンバに NULL ポインタが設定されており、かつ RESOURCE_NAME 環境変数が設定されていれば、環境変数の値が res_name に 代入される。 もし res_name メンバが NULL であり、環境変数が設定されておらず、argv と argv[0] が設定されている場合には argv[0] の値からディレクトリのプレフィックスを取り除いたものが res_name に代入される。

簡易関数 および は他のクライアント(特にウィンドウマネージャとセッションマネージャ)との 通信に用いられる重要なウィンドウプロパティを設定するための、簡単な プログラミングインタフェースを提供する。

もし引き数 window_name が NULL でなければ、これらの関数 は WM_NAME プロパティを設定する。 もし引き数 icon_name が NULL でなければ、これらの関数 は WM_ICON_NAME プロパティを設定する。 window_name と icon_name の引き数はどちらも NULL で終わる文字列であり、 の場合は現在のロケールのエンコーディング、 の場合は UTF-8 エンコーディングである。 もし引き数が完全に STRING エンコーディングに変換できる場合、プロパティは ``STRING'' 型で生成される。 そうでない場合、引き数はコンパウンドテキスト(compound text)に変換され、 プロパティは ``COMPOUND_TEXT'' 型で生成される。

引き数 normal_hints が NULL でない場合、 と は を呼び出す。 この関数は WM_NORMAL_HINTS プロパティを設定する(14.1.7 節を参照)。 引き数 wm_hints が NULL でない場合、 と は を呼び出す。 この関数は WM_HINTS プロパティを設定する(14.1.6 節参照)。

引き数 argv が NULL でない場合、 と は argv と argc の値を使って WM_COMMAND プロパティを設定する。 argc が 0 の場合は、コマンドの長さが 0 であるという意味になる。

マシンのホスト名は を使って格納される(14.2.2 節を参照)。

引き数 class_hints が NULL でない場合、 と は WM_CLASS プロパティを設定する。 構造体の res_name メンバに NULL ポインタが設定されていて、かつ環境変数 RESOURCE_NAME が設定されている場合、環境変数の値が res_name に代入され る。 res_name メンバが NULL で、環境変数の値も設定されておらず、argv と argv[0] が設定されている場合には、argv[0]の値からディレクトリの プレフィックスを取り除いたものが res_name に代入される。

与えられる class_hints.res_name, argv, 環境変数 RESOURCE_NAME, マシン のホスト名のエンコーディングは、現在のロケールのエンコーディング であるものと仮定される。 対応する WM_CLASS, WM_COMMAND, WM_CLIENT_MACHINE プロパティはローカル ホストのロケールアナウンサに従って型付けされる。 これらの文字列について、プロパティへの格納の前にはエンコーディングの 変換は行われない。

ロケールに従ってプロパティテキストを扱う必要があるクライアントのために、 と は WM_LOCALE_NAME プロパティに現在のロケールの名前を設定する。 この名前はエンコーディングがホストポータブル文字エンコーディングであり、 STRING に変換されてプロパティに格納されるものと仮定される。

はエラー を起こすことがある。

関数 は XFree86 4.0.2 から導入された XFree86 独自の拡張である。この関数が あるかどうかはマクロ で判定できる。

プロパティ

WM_CLASS
    ウィンドウマネージャやセッションマネージャがリソースデータベースから アプリケーションのリソースを取得できるように、アプリケーションプログラム によって設定される。

WM_CLIENT_MACHINE
    クライアントが動作しているマシンの名前を表す文字列。

WM_COMMAND
    アプリケーションの起動に使われたコマンドと引き数。 NULL で区切られている。

WM_HINTS
    ウィンドウマネージャに使われるようにクライアントが設定する、追加の ヒントのセット。 このプロパティの C 言語における型は である。

WM_ICON_NAME
    アイコンで使用される名前。

WM_NAME
    アプリケーションの名前。

WM_NORMAL_HINTS
    通常の状態のウィンドウに対するサイズヒント。 このプロパティの C 言語での型は である。

返り値

要求されたリソースやサーバメモリの割り当てにサーバが失敗した。

引き数 Window の値が、定義されたウィンドウを指していない。

関連項目
XAllocClassHint(3X11), XAllocIconSize(3X11), XAllocSizeHints(3X11), XAllocWMHints(3X11), XParseGeometry(3X11), XSetCommand(3X11), XSetTransientForHint(3X11), XSetTextProperty(3X11), XSetWMClientMachine(3X11), XSetWMColormapWindows(3X11), XSetWMIconName(3X11), XSetWMName(3X11), XSetWMProtocols(3X11), XStringListToTextProperty(3X11), XTextListToTextProperty(3X11)
Xlib - C Language X Interface