【问题标题】:Eclipse RCP - relative field of view perspective extension not workingEclipse RCP - 相对视野透视扩展不起作用
【发布时间】:2013-11-01 19:31:05
【问题描述】:

问候 Stackoverflownians 的同胞,

目前正在开发一个 Eclipse RCP 应用程序。

我正在尝试在重置透视图时使视图出现在正确的位置。

在我的 plugin.xml 中:

<perspectiveExtension
            targetID="the.perspective.id">
         <view
               id="the.first.view.id"
               relationship="stack"
               relative="org.eclipse.ui.navigator.ProjectExplorer"
               visible="false">
         </view>
         <view
               id="the.second.view.id"
               relationship="left"
               relative="org.eclipse.ui.navigator.ProjectExplorer"
               visible="true">
         </view>
      </perspectiveExtension>

第一个和第二个视图在视图扩展点中声明。

根据eclipse.org

stack表示视图将与文件夹中的相对视图堆叠

问题在于,当我重置透视图时,我会在一个单独的位置(更准确地说,在右侧)获得视图,该位置占据了大约 50% 的工作台。

是否应该在我的 plugin.xml 中再次声明 ProjectExplorer 视图,以便 relative 字段的 stack 值起作用?

编辑:我查看了另一个插件项目

<view
              id="org.eclipse.search.ui.views.SearchView"
              minimized="false"
              relationship="stack"
              relative="dreisoft.tresos.launcher2.api.views.ErrorLog"
              visible="false">
        </view>

这似乎有效,我查看了IPerspectiveFactory,而createInitialLayout 是空的。尽管如此,这仍然有效。

尊敬的您,

弗拉德

【问题讨论】:

  • 您的IPerspectiveFactory 是否添加了ProjectExplorer 视图?
  • IPerspectiveFactory 的 createInitialLayout 为空。我将添加更多信息。

标签: java eclipse-plugin eclipse-rcp


【解决方案1】:

这有点奇怪。我之前试过你的方法,但对我也不起作用。相反,请采用程序化方法。

使用您在PerspectivecreateInitialLayout 方法中收到的IPageLayout,尝试创建一个IPlaceholderFolderLayout

final IPlaceholderFolderLayout folder = layout.createPlaceholderFolder("main.editor.area", IPageLayout.TOP, 0.8f, layout.getEditorArea()); //$NON-NLS-1$

您可以借助这些参数将每个视图定位在该文件夹中。 然后将您的视图添加到该文件夹​​:

folder.addPlaceholder("your.view.ID" + ":*"); //$NON-NLS-1$

我建议您将 ID 设为 static final String 常量。

【讨论】:

    猜你喜欢
    • 2023-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-15
    • 2014-05-27
    • 2011-01-13
    • 2014-11-25
    • 1970-01-01
    相关资源
    最近更新 更多