Как получить имя текущей активной вкладки из Eclipse IDE? - PullRequest
5 голосов
/ 14 июля 2011

Я хочу получить имя файла текущей открытой вкладки в eclipse-IDE-editor.По сути, я разрабатываю плагин на Java и хочу программно извлечь имя открытого в данный момент файла из eclipse-IDE-editor.

1 Ответ

8 голосов
/ 14 июля 2011

Возможно, существует более короткий путь, но этот код должен это сделать:

IWorkbenchPage activePage = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
String name = activePage.getActiveEditor().getEditorInput().getName();

Конечно, убедитесь, что вы проверили возможные пустые значения и т. Д.

РЕДАКТИРОВАТЬ: Запустите это изпоток пользовательского интерфейса.Например:

      final String[] name = new String[1];
        UIJob job = new UIJob("Get active editor") //$NON-NLS-1$
        {
            public IStatus runInUIThread(IProgressMonitor monitor)
            {
                try
                {
                    IWorkbenchPage activePage = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
                    name[0] = activePage.getActiveEditor().getEditorInput().getName();
                }
                catch (Exception e)
                {
                    // return some other status
                }

                return Status.OK_STATUS;
            }
        };
        job.schedule();
        job.join();
        System.out.println(name[0]);
...