Тематика Eclipse RAP RWT

У меня есть вопрос, касающийся RAP RWT Theming. Скинирование или стиль приложения (темы) в Eclipse RAP можно реализовать путем расширения брендинга путем применения нашего собственного стиля CSS, определяющего, к какой точке входа он должен применяться.

Мой вопрос: у меня есть основное приложение Workbench, скажем, в комплекте/плагине A. Перед заполнением окна Workbench я использую JAAS Security (для защиты доступа к моему приложению, указав правильное имя пользователя + пароль в LoginDialog). JAAS Security — это, скажем, пакет/плагин B. Когда я применяю брендинг к плагину A, это даже применяется к плагину B (у которого есть окно loginDialog). Если я делаю другой брендинг — скажем, я хочу, чтобы окно LoginDialog выглядело иначе, а для WorkbenchWindow — иначе, я делаю брендинг в плагине B (с другим стилем CSS).

Поведение следующее: брендинг плагина B применяется первым, потому что вызывается LoginDialog из pluginB, затем основное приложение запускается из pluginA, но второй брендинг никогда не применяется (похоже, что брендинг 1st из плагина B переопределяет также брендинг из плагина A).

Я был бы очень признателен за помощь, как сделать разные темы RWT для разных частей приложения RAP. У кого-нибудь есть опыт в этом?

заранее спасибо

Томас Крамарич


person To Kra    schedule 15.08.2012    source источник


Ответы (1)


Вы можете посмотреть на этой странице: Руководство для разработчиков RAP

Я сделал другое решение:

Этот код находится в Plugin.xml моего плагина темы:

<extension
     point="org.eclipse.rap.ui.themes">
  <theme
        file="theme/test/test.css"
        id="com.yourApplicationName.theme.test"
        name="Test Theme">
  </theme>

And this Code is in the Plugin.xml of my EntryWindow:

<extension
     id="mailapp.entrypoints"
     point="org.eclipse.rap.ui.entrypoint">

     <entrypoint
        applicationId="yourApplicationName"
        brandingId="yourApplicationName.testAPP.ui.branding.default"
        id="testAPP.entrypoint"
        path="/">
      </entrypoint>

      <entrypoint
        applicationId="yourApplicationName.testAPP"
        brandingId="yourApplicationName.theme.branding.test"
        id="test.entrypoint"
        path="/test">
      </entrypoint>

 </extension>

В браузере вы должны ввести это, чтобы открыть собственную тему: http://127.0.0.1:10080/testAPP/тест

person Grischpel    schedule 24.02.2016