2015-03-25 2 views
0

У меня есть приложение rcp, которое состоит из двух точек зрения. в одной перспективе у меня есть дерево. При двойном щелчке по любому элементу дерева открывается информация о выбранном элементе дерева, но в той же перспективе. Я хочу переключить перспективу на двойной щелчок, а не открывать детали выбранного элемента в той же перспективе. Как мне это сделать?Переключение между перспективами в rcp

Мой двойной щелчок слушатель

// Add double click listener to open an element editor on double click action: 
    getViewer().addDoubleClickListener(new IDoubleClickListener() { 
     @Override 
     public void doubleClick(DoubleClickEvent event) { 
      if (currentTreeSelection instanceof StoreableElement) { 
       openElementContentEditor((StoreableElement)currentTreeSelection); 
      } 

     } 
    }); 

Редактор контента является та часть, которая отображает информацию о выбранном элементе дерева.

public void openElementContentEditor(StoreableElement element) { 

    ElementDescriptor ed = DataStoreManagement.getInstance().getElementDescriptorById(element.getDescriptor()); 
    String editorID = ed.getEditor(); 
    IDataStoreEditorInput editorInput = DataStoreManagement.getInstance().createEditorInput(element); 

    try { 
     PlatformUI.getWorkbench() 
       .getActiveWorkbenchWindow() 
       .getActivePage() 
       .openEditor(editorInput, editorID, true, 
         IWorkbenchPage.MATCH_INPUT); 

    } catch (PartInitException e) { 
     e.printStackTrace(); 
    } 
} 

Благодаря

ответ

0

Я использую следующий фрагмент кода для переключения перспективы:

IWorkbenchWindow workbenchWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); 
workbenchWindow.getWorkbench().showPerspective("PERSPECTIVE_ID", workbenchWindow); 
+0

Благодаря Сработало – wearybands

Смежные вопросы