TL; DR : RTL поддерживается в Ext 4.2+ с апреля 2013 года. Подробности см. В последнем обновлении ниже.
В настоящее время в Ext нет встроенной поддержки RTL, хотя многие члены сообщества решают эту проблему с разным успехом. Если ваши потребности ограничены (например, только содержимым Panel), то, вероятно, лучше просто переопределить соответствующий CSS самостоятельно. Если вам нужна более полная поддержка RTL, вам, вероятно, следует обратиться непосредственно на форумы Ext к другим пользователям, имеющим дело с такими же проблемами.
Существует внешний проект для добавления поддержки RTL в Ext 3.x, хотя я понятия не имею, активен ли он или какое качество (последние обновления были несколько месяцев назад). Могу направить вас в правильном направлении.
ОБНОВЛЕНИЕ : поддержка RTL по сообщениям будет значительно улучшена, если не будет полностью реализована, в Ext 4 (в первом квартале 2011 года). Еще не видел, но об этом сообщили на SenchaCon.
ОБНОВЛЕНИЕ Сентябрь 2012 : RTL имеет , а не , но официально сделал это в Ext 4 начиная с 4.1, но в последний раз я слышал, что он все еще был на дорожной карте, возможно, на более поздний срок. .x релиз.
ОБНОВЛЕНИЕ Апр 2013 : RTL приземлился. Подробности см. В вводном блоге Ext 4.2 . Основная суть в том, что для включения RTL в 4.2+ вы делаете следующее:
- Требуется
Ext.rtl.*
пространство имен
- Установите конфигурацию
rtl: true
для ваших контейнеров / компонентов - обратите внимание, что этот параметр каскадно и может быть переопределен дочерними компонентами, что здорово
- Включить RTL в стилях, установив переменную SASS:
$include-rtl: true;
Пример включения RTL в компоненте приложения:
Ext.define('MyApp.views.Viewport', {
extend: 'Ext.container.Viewport',
requires: [
'Ext.rtl.*'
],
rtl: true,
...
});