Отображать виды в пользовательской перспективе затмения - PullRequest
0 голосов
/ 31 января 2019

У меня есть перспектива, которую я сделал, и несколько видов, которые я хотел бы отобразить в этой перспективе.Если я захожу в Window -> Show View -> Other, а затем выбираю мой вид, он работает нормально.Однако я хотел бы показать представление по умолчанию при открытии перспективы и разместить его там, где обычно находится проводник проекта.

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

public class PerspectiveFactory1 implements IPerspectiveFactory {
    public void createInitialLayout(IPageLayout layout) {
        layout.addView("VIEW_ID_HERE", IPageLayout.LEFT,
            IPageLayout.RATIO_MAX, IPageLayout.ID_PROJECT_EXPLORER);
   }
}

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

Вот мой плагин.xml

<plugin>
   <extension
         point="org.eclipse.ui.perspectives">
      <perspective
            class="packageName.PerspectiveFactory1"
            fixed="true"
            id="PerspectiveID"
            name="Software Application">
      </perspective>
   </extension>
   <extension
         point="org.eclipse.ui.perspectiveExtensions">
      <perspectiveExtension
            targetID="PerspectiveID">
         <view
               class="packageName.ShowApplications"
               icon="icons/sample.gif"
               id="packageName.ShowApplications"
                   minimized="false"
                   moveable="false"
                   name="listApps"
                   ratio="0.5"
                   relationship="left"
                   visible="true">
             </view>

1 Ответ

0 голосов
/ 31 января 2019

Поскольку у вас нет обозревателя проектов в этой перспективе, вы не можете использовать его идентификатор в параметре ссылочного идентификатора для addView.Вместо этого используйте идентификатор области редактора, который всегда разрешен:

layout.addView("view id", IPageLayout.LEFT,
    0.3f, layout.getEditorArea());

Вам также может понадобиться сбросить перспективу, если она была открыта ранее, чтобы получить новый макет (Окно> Перспектива> Сбросить перспективу).

Вид должен быть определен с использованием точки расширения org.eclipse.ui.views.

Вы также можете использовать org.eclipse.ui.perspectiveExtensions для определения позиции вида в перспективе вместо фабрики перспективы - ноэто все еще требует, чтобы представление было определено, используя org.eclipse.ui.views.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...