日本語DECwindows Motif 1.2の国際化機能を使用して,XmおよびDXmのウィジェットで日本語の表示, 入力ができます。
言語設定が日本語の場合,XmFileSelectionBox,DXmColorMix等のウィジェット内の省略時のラベルは自動的に日本語になります。 また,ウィジェットの省略時のフォント・ リストは,以下のフォントからなる日本語用のフォント・ セットを持ちます。
-JDECW-Kmenu-Medium-R-Normal--*-120-*-*-P-*-ISO8859-1 -JDECW-Gothic-Medium-R-Normal--*-120-*-*-M-*-JISX0201.1976-0 -JDECW-Gothic-Medium-R-Normal--*-120-*-*-M-*-JISX0208.1983-1
日本語を扱うアプリケーションの開発には,日本語DECwindows Motif 1.2 のXmFontListEntryLoad() ,XmFontListAppendEntry()等で作成される, フォント・セットを用いたフォント・リストや, XmStringCreateLocalized()等で作成される,XmFONTLIST_DEFAULT_TAG を用いたコンパウンド・ストリングが使用できます。UILでそのようなコンパウンド・ ストリングを生成するためのコマンド・オプションは, OpenVMSでは"/LOCALE"です。
なお,以前のバージョンとソース互換性を保つため,DXmCvtFCtoCS()等の関数も動作します。 これらについては,以前のバージョンの日本語Motif 日本語機能説明書を参照してください。
DECwindows Motif 1.2のXmImの機能を使用して日本語の入力ができます。 ウィジェットではDXmCSTextに加えてXmText, XmTextFieldでも日本語が入力できます。 ただし,DEC日本語入力サーバ(DECW$JIM),またはDEC入力サーバ・ ライブラリを使用した他の入力サーバが動作している事が必要です。XmText, XmTextField ウィジェットはOnTheSpotスタイルをサポートするように拡張されています。
VendorShellのXmNinputMethodに"DEC"を指定するとDEC入力サーバが使用されます。 何も指定しない場合も同様に動作します。
VendorShellのXmNpreeditTypeリソースは,以下の値を取ることが出来ます。
XmNpreeditType: type[,type...]
typeにはOnTheSpot,OverTheSpot,OffTheSpot,Root のいずれかの文字列を指定します。XmNpreeditTypeの省略時の値は"OverTheSpot,OffTheSpot,Root" です。
日本語DECwindows Motifでは,リソース・ファイル内にコンパウンド・ストリング・ リソースの値として書かれた日本語文字列は,各キャラクタセットごとのタグを持ったコンパウンド・ ストリングに変換されていました。
本バージョンでは日本語DECwindows Motif 1.2に従い,XmFONTLIST_ DEFAULT_TAGを持ったコンパウンド・ストリングに変換されます。また, XmCommand,XmSelectionBox,XmFileSelectionBoxのcallbackでアプリケーションに渡されるコンパウンド・ ストリングも本バージョンからは, XmFONTLIST_DEFAULT_TAGを持ったものになります。
これらのコンパウンド・ストリングが以前のバージョンのタイプである必要がある場合には論理名DECW$AMOTIF11 をセットしてください。
define DECW$AMOTIF11 T
キーボードからDXmCSTextに文字列を入力して,その文字列をDXmCSTextGetString() 関数等で取り出した場合,文字列はコンパウンド・ ストリング内で,キャラクタ・セットごとのセグメントに分割されています。 日本語DECwindows Motifでは,そのようなコンパウンド・ストリングで日本語を扱ってきました。
DECwindows Motifの本バージョンでは,そのようなコンパウンド・ストリングに加えて, 複数のキャラクタ・セットを含んだコード・セットの文字列をXmFONT_LIST_DEFAULT_TAG のセグメントで取り扱う事ができます。 キーボードから入力したCSTextの文字列がXmFONT_LIST_DEFAULT_TAGを用いたコンパウンド・ ストリングで取り出されるようにするには,論理名DECW$AMOTIF12 をセットしてください。
define DECW$AMOTIF12 T
本バージョンより,DXmCSTextのDXmNinputMethodリソースは作用しません。 入力サーバの切り換え等の制御には,VendorShellのXmNinputMethod リソースを使用してください。