W środowisku Eclipse od wersji 3.1 RC2 języki dwukierunkowe są obsługiwane w środowisku JFace oraz środowisku roboczym. Język dwukierunkowy to taki, który w zależności od kontekstu może być zapisywany od prawej strony do lewej lub odwrotnie. Domyślnie platforma Eclipse jako dwukierunkowe rozpoznaje języki hebrajski, arabski, farsi i urdu.
Orientacja środowiska roboczego zostanie odwrócona w jeden z następujących sposobów (według priorytetu)
Wartości te zostaną użyte do wywołania metody org.eclipse.jface.Window#setDefaultOrientation(). Wszystkie podklasy klasy Window i elementy potomne tych okien będą miały określoną orientację. Orientacja domyślna to SWT#NONE.
Widoki i edytory będą domyślnie dziedziczyły orientację okna od ich elementów nadrzędnych. Okna dialogowe powinny dziedziczyć orientację przy użyciu atrybutu shellStyle ich elementów nadrzędnych podczas ustawiania własnej orientacji przez wywołanie metody super#getShellStyle.
Rysunek 1 - Zrzut ekranu perspektywy zasobu z orientacją od prawej strony do lewej
W wielu przypadkach umieszczenie normalnie stosowanych ikon w trybie od prawej strony do lewej nie ma sensu. W szczególności kwestia ta dotyczy ikon służących do edycji. Aby włączyć wyszukiwanie obrazów we fragmencie, wystarczy włączyć zmienną $nl$ do ścieżki i użyć obsługi pakunków platformy do wyszukania pliku z ikonami.
Na przykład:
String iconPath = "$nl$/icons/myicon.gif";
URL url = Platform.find( Platform.getBundle(MyPluginId), new Path(iconPath));
Image Descriptor descriptor = ImageDescriptor.createFromURL(url);
Jeśli odwołanie do ikony znajduje się w pliku plugin.xml, wystarczy upewnić się, że w ścieżce umieszczono przedrostek $nl$. Jeśli jest to punkt rozszerzenia zdefiniowany przez środowisko robocze, wyszukiwanie zostanie wykonane automatycznie. Należy jedynie utworzyć własny punkt rozszerzenia, który ładuje w ten sposób deskryptory ikon.
Nie istnieją żadne proste reguły dotyczące wybierania ikon do zastąpienia, ale należy zwykle skoncentrować się na ikonach, które narzucają kierunek tekstu za pomocą poziomej strzałki.