Программное открытие редактора в Eclipse PDE View - PullRequest
0 голосов
/ 07 августа 2020

Я создаю плагин eclipse с представлением под названием DataView. Я хочу, чтобы Hex Editor Java открывался в моем DataView, который я создал. Я следил за этим сообщением vogella, в котором говорилось, что getViewSite (). GetPage () заставит редактор открыться в DataView. Однако, когда я тестирую код, DataView открывается отдельно от редактора. Примечание: я использую Java 8 в соответствии с требованиями компании.

Есть ли способ исправить это? Я прикрепил свой код и свои текущие результаты ниже:

@Override
    public void createPartControl(Composite parent) {
    
        Text text = new Text(parent, SWT.WRAP | SWT.READ_ONLY | SWT.V_SCROLL | SWT.H_SCROLL);
        Font font = new Font(text.getDisplay(), new FontData("Courier", 12 , SWT.NONE));
        text.setFont(font);
         
        File file = FileData.getDataFile();
        URI fileURI = file.toURI();
        
        //String workspacePath = ResourcesPlugin.getWorkspace().getRoot().getLocation().toString();

        IFileStore fileStore = EFS.getLocalFileSystem().getStore(fileURI);
        if (!fileStore.fetchInfo().isDirectory() && fileStore.fetchInfo().exists()) {
            IWorkbenchPage page = getViewSite().getPage();
            try {
                IDE.openEditor(page, fileURI, "net.sourceforge.javahexeditor", true);
            } catch (PartInitException e) {
                
            }
        }
    }

введите описание изображения здесь

1 Ответ

0 голосов
/ 07 августа 2020

Ссылка не говорит о том, что редактор откроется в представлении, а просто сообщает вам, как открыть редактор из представления. Редакторы всегда открываются отдельно в области редактора.

У вас не может быть редактора в представлении. Вы можете использовать в представлении основные классы редактора, такие как TextViewer и SourceViewer, но это означает, что вы не можете повторно использовать код из существующего редактора, если он не предназначен для этого.

...