日本語hp DECwindows Motif for hp OpenVMS
DEC 入力サーバ・ライブラリ


前へ 次へ 目次


1.4.1 DIMsNlocale

DIMsウィジェットがサポートするロケールを指定します。このリソースの値はDIMsLocaleInfo型で,次の構造体へのポインタです。


                     typedef struct_DIMsLocaleInfo { 
                             char    *language; 
                             short   num_support_codesets; 
                             char    **support_codesets; 
                     }  DIMsLocaleInfoRec, *DIMsLocaleInfo; 

languageフィールドには言語とテリトリを指定します。指定する値は,たとえば ja_JP のように, XNLSに準拠しているものでなければなりません。 DIMsウィジェットが複数のコードセットをサポートしている場合は,ヌル終了文字列の配列としてsupport_codesetsフィールドを指定してください。たとえば日本語DIMsウィジェットの場合, support_codesetsにはeucJP,deckanji,sdeckanji を指定することができます。 DIMsウィジェットがすべてのコード・セットをサポートする場合は, num_support_encodingsに0を, support_codesetsにNULLを指定してください。クライアントがIMSに接続された後,クライアントのロケールはDIMsLocale(w)を使用して得ることができます。 DIMsLocaleについての詳細は, 第 1.5 節 を参照してください。

このリソースはDIMsクラスの作成に必須です。

1.4.2 DIMsNserverName

接続に使用される一連のアトム名を指定します。このリソースの値は, DIMsStringList型で,次の構造体へのポインタです。


                     typedef struct_DIMsStringList { 
                             short   num_of_strings; 
                             char    **string_names; 
                     } DIMsStringListRec, *DIMsStringList; 

num_of_strings フィールドには,接続に使用される別名の数を指定します。 string_namesフィールドには,接続に使用されるアトムの名前を指定するヌル終了文字列の配列を指定します。たとえばOpenVMSでは,日本語IMSの省略時の名前はDEC であり,次のようなアトムが作成されます。


_XIM_ja_JP@DEC 

@DECで終わるアトムは弊社専用ですので,同じ名前でアトムを作成しないでください。 OpenVMS XIM とIMSとの接続方法については, 第 1.3.2 項 および 第 1.3.3 項 を参照してください。

このリソースはDIMsクラスの作成に必須です。

1.4.3 DIMsNversion

DIMsウィジェットがサポートする IM プロトコルのバージョンを範囲で指定します。このリソースの値はDIMsVersion型で,次の構造体へのポインタです。


                     typedef struct_DIMsVersion { 
                             short   highest_major_version; 
                             short   highest_minor_version; 
                             short   lowest_major_version; 
                             short   lowest_minor_version; 
                     } DIMsVersionRec, *DIMsVersion; 

highest_major_versionフィールドには, DIMsクラスがサポートする IM プロトコルの最高メジャー・バージョンを指定します。

highest_minor_versionフィールドには, DIMsクラスがサポートする IM プロトコルの最高マイナー・バージョンを指定します。

lowest_major_versionフィールドには, DIMsクラスがサポートする IM プロトコルの最低メジャー・バージョンを指定します。

lowest_major_versionフィールドには, DIMsクラスがサポートする IM プロトコルの最低マイナー・バージョンを指定します。

本バージョンでは通常次のように設定します。

highest_major_version = 3
highest_minor_version = 0
lowest_major_version = 3
lowest_minor_version = 0

このリソースは任意です。

1.4.4 DIMsNextIMAttr

DIMsウィジェットがサポートする拡張XIM属性(XIM値)を指定します。このリソースが指定されると,クライアントは,これらの拡張XIM値に対してXGetIMValues()を使用することができます。このリソースの値はDIMsExtAttr型で,次の構造体へのポインタです。


                     typedef struct_DIMsExtAttr { 
                             short   num_of_ext_attr; 
                             Attr    ext_attr; 
                     } DIMsExtAttrRec, *DIMsExtAttr; 

num_of_ext_attrフィールドには,拡張XIM属性の数を指定します。 ext_attrフィールドには,拡張XIMの属性の配列を指定します。このフィールドの値はAttr型で,次の構造体へのポインタです。


                     typedef struct_Attr { 
                            unsigned short   type; 
                            char             *attributes; 
                     } AttrRec, *Attr; 

typeフィールドには,属性の型を定義する次のいずれかの値を指定します。


     #define byte_t                  1       /* 8 ビット符号なし整数*/ 
     #define word_t                  2       /* 16 ビット符号なし整数 */ 
     #define long_t                  3       /* 32 ビット符号なし整数 */ 
     #define string_t                4       /* char の配列 */ 
     #define window_t                5       /* Window フォーマット */ 
     #define ximstyles_t             10      /* XIMStyles フォーマット */ 
     #define xrectangle_t            11      /* XRectangle フォーマット */ 
     #define xpoint_t                12      /* XPoint フォーマット */ 
     #define xfontset_t              13      /* XFontSet フォーマット */ 
     #define ximhotkeytriggers_t     15      /* HotKeyTriggers フォーマット */ 
     #define ximhotkeystate_t        16      /* HotKeyState フォーマット */ 
     #define ximstringconversion_t   17      /* StringConversion フォーマット */ 
     #define ximpreeditstate         18      /* Preedit State フォーマット */ 
     #define ximresetstate           19      /* Reset State フォーマット */ 
     #define nestlist_t              0x7fff  /* Nested List フォーマット */ 

attributesフィールドには,拡張XIM値の名前を定義します。この値はヌル終了文字列でなければなりません。

このリソースは任意です。

1.4.5 DIMsNextICAttr

DIMsウィジェットがサポートする拡張XIC属性(XIC値)を指定します。このリソースが指定されると,クライアントはこれらの拡張XIC値に対して XGetICValues() および XSetICValues()を使用することができます。このリソースの値はDIMsExtAttr型で,次の構造体へのポインタです。


                     typedef struct_DIMsExtAttr { 
                             short   num_of_ext_attr; 
                             Attr    ext_attr; 
                     } DIMsExtAttrRec, *DIMsExtAttr; 

num_of_ext_attrフィールドには,拡張XIC属性の数を指定します。 ext_attrフィールドには,拡張XICの配列を指定します。このフィールドの値はAttr型で,次の構造体へのポインタです。


                     typedef struct_Attr { 
                            unsigned short   type; 
                            char             *attributes; 
                     } AttrRec, *Attr; 

typeフィールドには,属性の型を定義する次のいずれかの値を指定します。


     #define byte_t                  1       /* 8 ビット符号なし整数*/ 
     #define word_t                  2       /* 16 ビット符号なし整数 */ 
     #define long_t                  3       /* 32 ビット符号なし整数 */ 
     #define string_t                4       /* char の配列 */ 
     #define window_t                5       /* Window フォーマット */ 
     #define ximstyles_t             10      /* XIMStyles フォーマット */ 
     #define xrectangle_t            11      /* XRectangle フォーマット */ 
     #define xpoint_t                12      /* XPoint フォーマット */ 
     #define xfontset_t              13      /* XFontSet フォーマット */ 
     #define ximhotkeytriggers_t     15      /* HotKeyTriggers フォーマット */ 
     #define ximhotkeystate_t        16      /* HotKeyState フォーマット */ 
     #define ximstringconversion_t   17      /* StringConversion フォーマット */ 
     #define ximpreeditstate         18      /* Preedit State フォーマット */ 
     #define ximresetstate           19      /* Reset State フォーマット */ 
     #define nestlist_t              0x7fff  /* Nested List フォーマット */ 

attributesフィールドには,拡張XIC値の名前を定義します。この値はヌル終了文字列でなければなりません。

このリソースは任意です。

1.4.6 DIMsNsupportStyles

DIMsウィジェットがサポートする入力スタイルを指定します。このリソースの値はDIMsSupportStyles型で,次の構造体へのポインタです。


                     typedef struct_DIMsSupportStyles { 
                             short   num_support_styles; 
                             XIMStyle        *support_styles; 
                     } DIMsSupportStylesRec, *DIMsSupportStyles; 

num_support_stylesフィールドには,サポートする入力スタイルの数を指定します。 support_stylesフィールドには,XIMStyleの配列を指定します。

クライアントがIMSと接続したら,クライアントが選択した入力スタイルを DIMsInputStyle(w)を使用して得ることができます。 DIMsInputStyle についての詳細は 第 1.5 節 を参照してください。

このリソースは必須です。

1.4.7 DIMsNsupportEncodings

DIMsウィジェットがサポートするエンコーディングを指定します。 XIMライブラリはIMS に対して,確定した文字列または前編集の文字列に使用するエンコーディングを決定するよう要求します。 IMSは省略時のエンコーディングとして少なくともCOMPOUND_TEXTをサポートする必要があります。このリソースの値は DIMsStringList型で,次の構造体へのポインタです。


                     typedef struct_DIMsStringList { 
                             short   num_of_strings; 
                             char    **string_names; 
                     } DIMsStringListRec, *DIMsStringList; 

num_of_stringsフィールドには,サポートするエンコーディングの数を指定します。

string_namesフィールドには, DIMsウィジェットのエンコーディングを優先順位の高い順に定義するヌル終了文字列の配列を指定します。たとえば,通信のためのエンコーディングとしてSTRINGを使用したい場合, string_namesフィールドに STRING,COMPOUND_TEXT の順でエンコーディングを指定します。 XIMライブラリがSTRINGエンコーディングをサポートする場合はSTRINGが通信に使用され, STRINGエンコーディングをサポートしない場合は COMPOUND_TEXT が使用されます。

これらの2つのフィールドが指定さていない場合, XIMライブラリはエンコーディングとしてCOMPOUND_TEXTを使用します。クライアントがIMSと接続したら,サポートされているエンコーディングはDIMsEncoding(w)を使用して得ることができます。 DIMsEncodingについての詳細は, 第 1.5 節 を参照してください。

1.4.8 DIMsNtriggerKeys

IMSのトリガ・キーのオン/オフを指定します。このリソースの値はDIMsTriggerKeys型で,次の構造体へのポインタです。


                     typedef struct_DIMsTriggerKeys { 
                             short           num_of_on_keys; 
                             XIMTriggerkey   on_keys; 
                             short           num_of_off_keys; 
                             XIMTriggerkey   off_keys; 
                     } DIMsTriggerKeysRec, *DIMsTriggerKeys; 

on_keysには,入力メソッドをトリガ・オンできるキーのリストを指定します。 num_of_on_keysには,リストに含まれるキーの数を指定します。

off_keysには,入力メソッドをトリガ・オフさせるキーのリストを指定します。 num_of_off_keysには,リストに含まれるキーの数を指定します。

XIMTriggerkey は次の構造体へのポインタです。


                     typedef struct_XIMTriggerkey 
                     { 
                         KeySym keysym; 
                         unsigned long modifier; 
                         unsigned long modifier_mask; 
                     } XIMTriggerkeyRec, *XIMTriggerkey; 

keysymフィールドには,たとえばXK_SPACEのような,入力メソッドをトリガ・オン/オフさせるためのキー・シンボルを指定します。

modifierフィールドには,トリガ・キー・シーケンスのキー・マスクを指定します。 ShiftMask,ControlMask,Mod1Mask (コンポーズ・マスク),あるいはこれらの組み合わせのいずれかです。

modifier_maskは, KeyPressイベントがトリガ・キーであるかどうかの評価に使用されるマスクです。たとえば,トリガー・オン(開始変換)キーが Ctrl〜Shift<key>スペースである場合,有効なトリガ・オン・キーの修飾子の状態は,ControlMaskに対してはon, ShiftMask に対しては off です。したがって,modifier_maskフィールドを ControlMask | ShiftMaskと設定するのに対して, modifierフィールドは ControlMaskと設定します。

入力メソッドのトリガ・オン/オフのテストのため,受け入れるどのキー・イベントの修飾子も,最初にmodifier_maskによってマスキングされます。この処理の結果は,修飾子の値と等しくなければなりません。

このリソースは,DIMsSetTriggerKeys()を呼び出すことによりいつでも変更することができます。 DIMsSetTriggerKeys についての詳細は, 第 1.5 節 を参照してください。

このリソースは任意です。このリソースを指定しない場合は静的イベント・フローが使用されるため,すべてのイベントがクライアントからIMSに転送されます。イベント・フロー・モデルについての詳細は, 第 1.3.3 項 を参照してください。

1.4.9 DIMsNgetExtIMValuesCb

拡張XIM属性の値を得るために,クライアントがXGetIMValuesを呼び出すときに呼び出されるコールバックを指定します。詳細については, 第 1.5 節 を参照してください。

このリソースは任意です。

1.4.10 DIMsNcreateICCb

クライアントがXCreateICを呼び出すときに呼び出されるコールバックを指定します。このコールバックを呼び出す前にDIMsウィジェットが作成されます。 IMSプログラマは,すべての初期化作業を行い,通常はDIMsウィジェットに対応する入力メソッド特定データを作成する必要があります。詳細については, 第 1.5 節 を参照してください。

このリソースは任意です。

1.4.11 DIMsNdestroyICCb

クライアントがXDestroyICを呼び出すときに呼び出されるコールバックを指定します。 IMSプログラマは, DIMsウィジェット作成時に作成したすべてのデータを解放しなければなりません。詳細については, 第 1.5 節 を参照してください。

このリソースは任意です。

1.4.12 DIMsNsetExtICValuesCb

拡張XIC属性の値を設定するために,クライアントがXSetICValuesを呼び出すときに呼び出されるコールバックを指定します。詳細は, 第 1.5 節 を参照してください。

このリソースは任意です。

1.4.13 DIMsNgetExtICValuesCb

拡張XIC属性の値を取得するために,クライアントがXGetICValuesを呼び出すときに呼び出されるコールバックを指定します。詳細は, 第 1.5 節 を参照してください。

このリソースは任意です。

1.4.14 DIMsNsetICFocusCb

クライアントがXSetICFocusを呼び出すときに呼び出されるコールバックを指定します。詳細は, 第 1.5 節 を参照してください。

このリソースは任意です。

1.4.15 DIMsNunsetICFocusCb

クライアントがXUnsetICFocusを呼び出すときに呼び出されるコールバックを指定します。詳細は, 第 1.5 節 を参照してください。

このリソースは任意です。

1.4.16 DIMsNresetICCb

クライアントがXmbResetICまたはXwcResetICを呼び出すときに呼び出されるコールバックを指定します。詳細は, 第 1.5 節 を参照してください。

このリソースは任意です。

1.4.17 DIMsNprocessEventCb

クライアントがIMSに要求されたイベントを転送するときに呼び出されるコールバックを指定します。詳細は, 第 1.5 節 を参照してください。

このリソースは必須です。

1.4.18 DIMsNsetAreaCb

XIC属性の1つとしてXNAreaを設定するために,クライアントがXSetICValuesを呼び出すときに呼び出されるコールバックを指定します。詳細は, 第 1.5 節 を参照してください。

このリソースは任意です。

1.4.19 DIMsNsetAreaNeededCb

XIC属性の1つとしてXNAreaNeededを設定するために,クライアントがXSetICValuesを呼び出すときに呼び出されるコールバックを指定します。詳細は, 第 1.5 節 を参照してください。

このリソースは任意です。

1.4.20 DIMsNsetSpotLocationCb

XIC属性の1つとしてXNSpotLocationを設定するために,クライアントが XSetICValuesを呼び出すときに呼び出されるコールバックを指定します。詳細は, 第 1.5 節 を参照してください。

このリソースは任意です。

1.4.21 DIMsNsetColormapCb

XIC属性の1つとしてXNColormapを設定するために,クライアントが XSetICValuesを呼び出すときに呼び出されるコールバックを指定します。詳細は, 第 1.5 節 を参照してください。

このリソースは任意です。

1.4.22 DIMsNsetStdColormapCb

XIC属性の1つとしてXNStdColormapを設定するために,クライアントが XSetICValuesを呼び出すときに呼び出されるコールバックを指定します。詳細は, 第 1.5 節 を参照してください。

このリソースは任意です。


前へ 次へ 目次