Показывать начальную страницу Eclipse RCP при каждом запуске - PullRequest
3 голосов
/ 12 марта 2010

Есть ли способ заставить продукт RCP показывать страницу приветствия каждый раз, когда на RCP смотрят? (По умолчанию страница приветствия отображается только при первом просмотре RCP.)

Я пытался org.eclipse.ui/SHOW_INTRO=true в plugin_customization.ini, но это не сработало ...

Спасибо, Frank

Ответы [ 4 ]

4 голосов
/ 14 марта 2010

В качестве альтернативы вы можете установить это программно, например, в методе инициализации вашего WorkbenchAdvisor.

 PrefUtil.getAPIPreferenceStore().setValue(
            IWorkbenchPreferenceConstants.SHOW_INTRO, true);
 PrefUtil.saveAPIPrefs();

Но поскольку PrefUtil является внутренним классом, это рекомендуется только в том случае, если вы не можете установить это свойство в своем XML (например, у вас есть вступление, которое не основано на стандартной странице вступления)

PS: проблема, с которой вы столкнулись, заключается в том, что при появлении вступления свойство предпочтения, заданное вами через plugin.customization, устанавливается в значение false, а plugin_customization устанавливает только значения по умолчанию для хранилища предпочтений, как только любой компонент устанавливает это значение значение по умолчанию становится устаревшим. С этим двухслойным режимом вы устанавливаете для этого ключа предпочтения значение true при каждом запуске, и вступление появится.

1 голос
/ 12 марта 2010

В вашем вступлении xml вы можете получить что-то вроде

<contentProvider id="awc" class="org.eclipse.ui.intro.contentproviders.AlwaysWelcomeCheckbox" pluginId="org.eclipse.ui.intro">
    <text></text>
</contentProvider>

, который позволяет пользователю выбирать, показывать ли каждый раз вводную страницу. Он отображает небольшой флажок, где бы вы его ни разместили. Не знаю, возможно ли включить его по умолчанию.

Если вы не хотите этого, вы, вероятно, могли бы как-то определить это в вашем workbench.xml и явно загрузить заставку при восстановлении сеанса RCP.

0 голосов
/ 01 марта 2017

Элемент «intro» имеет атрибут «contentDetector».

contentDetector - полное имя расширения класса org.eclipse.ui.intro.IntroContentDetector. Этот необязательный класс используется обнаруживать вновь добавленный вводный контент. Если новый контент доступно, представление, показывающее введение, будет снова открыто.

http://help.eclipse.org/kepler/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fextension-points%2Forg_eclipse_ui_intro.html

0 голосов
/ 12 марта 2010

Удалить -showsplash

...