Тони McGuckin добавлен фрагмент кода на openntf.org некоторое время назад, который, похоже, делает то, что вы задумываетесь:
https://openntf.org/XSnippets.nsf/snippet.xsp?id=set-dojoattributes-and-attrs-on-a-control-in-an-xpages-theme-file
Не пробовал себя до сих пор, но думаю, что это хорошая идея.
Редактировать: просто попробовал несколько вариантов самостоятельно; получили некоторые вещи для работы, другие вообще не отреагировали бы или даже выбросили ошибки времени выполнения. Вот список из , а какой нет:
Я определил пользовательский идентификатор темы для управления ccDocRtf.inputRichtext1
.
dojoType: Это вычисленное свойство на уровне управления; в рамках этой темы я ставлю его так:
<control>
<name>ccDocRtf.inputRichtext1</name>
<property mode="override">
<name>dojoType</name>
<value>#{javascript:@ClientType().equals("Web") ? "my.custom.packagename.CKEDITOR" : ""}</value>
</property>
dojoAttributes: все статические настройки атрибутов работают отлично, например .:
<property
mode="override">
<name>dojoAttributes</name>
<complex
type="xp_dojoAttribute">
<property>
<name>name</name>
<value>toolbar</value>
</property>
<property>
<name>value</name>
<value>myToolbarName</value>
</property>
</complex>
<complex
type="xp_dojoAttribute">
<property>
<name>name</name>
<value>extraPlugins</value>
</property>
<property>
<name>value</name>
<value>autogrow</value>
</property>
</complex>
<complex
type="xp_dojoAttribute">
<property>
<name>name</name>
<value>width</value>
</property>
<property>
<name>value</name>
<value>99%</value>
</property>
</complex>
</property>
</control>
У меня есть еще два атрибута, чтобы установить, которые должны быть вычислены; по какой-то причине я не мог заставить их работать. Может быть, я найду время для изучения немного дальше, поскольку считаю этот интересным вариантом.
Спасибо, Лотар !!! – Roman
Моя радость была преждевременной. Не работает :( – Roman
Я просто пробовал себя - некоторые параметры могут быть установлены другими, не см. Мой отредактированный ответ –