双方向言語テキストのサポート

双方向言語は、コンテキストに基づいて、右から左、または左から右のどちらにも書き込み可能な言語です。双方向言語テキストは、プラットフォーム全体でサポートされます。 Eclipse は、デフォルトではヘブライ語、アラビア語、ペルシャ語、およびウルドゥー語を認識します。

双方向言語サポートの使用可能化

以下の方法 (優先順位順) のいずれか 1 つでワークベンチの方向が決定します。

JFace では、org.eclipse.jface.Window#getDefaultOrientation() を呼び出すことで方向を決定することができます。独立型の JFace アプリケーションでは、org.eclipse.jface.Window#setDefaultOrientation() を呼び出すことでデフォルトの方向を設定する必要があります。設定しない場合、SWT.NONE のデフォルト値が使用されます。デフォルトの方向は、ワークベンチの実行時に自動的に設定されます。 org.eclipse.jface.Window のサブクラスはすべて、このデフォルトの方向を継承します。

ビューおよびエディターは、それぞれの親のウィンドウの方向を継承します。ダイアログは、シェルの作成時または構成時に super.getShellStyle() を呼び出すことで、それぞれのスーパークラスのシェル・スタイルを使用して方向を継承します。

BIDI イメージ

図 1 - リソース・パースペクティブの右から左の方向のスクリーン・ショット

代替アイコンの検索のためのプラグインの使用可能化

多くの場合、右から左のモードではアイコンは意味をなさなくなります。この問題は、特に、編集に関係するすべてのアイコンに共通しています。フラグメント内のイメージ検索を使用可能にするには、アイコン・パスで $nl$ を使用し、実行時のアイコン検索には org.eclipse.core.runtime.FileLocator クラスを使用します。

次に例を示します。

String iconPath = "$nl$/icons/myicon.gif";   URL url = FileLocator.find( Platform.getBundle(MyPluginId), new Path(iconPath), null);
Image Descriptor descriptor = ImageDescriptor.createFromURL(url);

アイコン参照が plugin.xml ファイル内にある場合は、$nl$ 接頭部がパスにあり、検索が処理されることを確認してください。アイコンを伴う独自の拡張ポイントを定義する場合は、同じ方法でイメージがロードされることを確認してください。

上書きするアイコンの選択方法

右から左への言語で上書きする必要があるアイコンを判別するための、厳密な規則はありません。一般的に、水平矢印を使用してテキストの方向を暗示しているアイコンに焦点を合わせます。