2013-01-16 46 views
2

是否可以在我的Eclipse-RCP產品中覆蓋內置透視圖的佈局?覆蓋Eclipse-RCP產品中的內置透視佈局

特別是,我希望添加一個自定義視圖並更改Debug透視圖的佈局。我知道如何用自定義的角度來做(IPerspectiveFactory.createInitialLayout())。我希望我的自定義佈局是永久性的 - 激活「重置透視圖」命令。

回答

2

創建一個實現IPerspectiveFactory的類。

爲您的plugin.xml添加透視擴展。這是我的一個。

<extension point="org.eclipse.ui.perspectives"> 
     <perspective 
      class="gov.bop.cobolsupport.perspectives.CobolPerspectiveFactory" 
      icon="icons/ispf_editor.gif" 
      id="gov.bop.cobolsupport.CobolPerspective" 
      name="Cobol"/>  
    </extension> 

你的用戶可以改變你的觀點,並保存他們的改變,如果他們願意。這是內置到Eclipse中。

但是,當您擴展透視圖時,「重置透視圖」命令會將透視圖重置爲您在Perspectivefactory類中定義它的方式。

+0

但我不想在這裏創建一個新的視角,我想修改一個內置的(Debug透視圖)。 – leonbloy

+1

您可以嘗試修改Eclipse RCP上的Debug透視圖,在保存時給它一個不同的名稱,並查看構建它時是否將新透視圖傳遞給RCP產品。否則,您將不得不創建自己的視角。 –

1

使用擴展點org.eclipse.ui.perspectiveExtensions可以擴展視角。

插件可以有助於 org.eclipse.ui.perspectiveExtensions擴展點添加自己的動作套,意見,以及各種快捷鍵 現有觀點。

爲了擴展默認調試透視貼在下面的代碼你plugin.xml

<extension 
     point="org.eclipse.ui.perspectiveExtensions"> 
     <perspectiveExtension 
      targetID="org.eclipse.debug.ui.DebugPerspective"> 
     <view 
       ratio="0.5" 
       relative="org.eclipse.ui.views.TaskList" 
       relationship="right" 
       id="com.jens.customdebug.views.SampleView"> 
     </view> 
     </perspectiveExtension> 
    </extension> 

你必須定義一個相對的觀點,(對我來說名爲org.eclipse.ui.views.TaskList任務視圖)和自己的id視圖(在我的情況com.jens.customdebug.views.SampleView

來源:

要獲得進一步的信息rmation如何使用這個擴展點,看看here。 對於這個擴展點的配置標記,你也可以看看this page.

+0

謝謝,這很有用。但是,這似乎允許將視圖添加到現有透視圖中,但不能重新定義默認佈局,如'createInitialLayout()' – leonbloy

+0

好吧,但也許你很幸運重寫了org.eclipse.debug.internal類。 ui.DebugPerspectiveFactory'?您必須在plugin.xml中添加依賴關係'org.eclipse.debug.ui'才能訪問此類。 (這是我的最後一個想法) –