Как получить общее содержимое навигатора?

Похоже, все содержимое представления Package Explorer предоставляется через Common Navigator Framework.

Как я могу получить доступ к этим данным, хотя? Я хочу видеть имена всех проектов, файлов и методов внутри. Самое близкое, что я получил, это:

INavigatorContentService n = NavigatorContentServiceFactory.INSTANCE.createContentService(SampleView.ID);
ITreeContentProvider tcp = n.createCommonContentProvider();
Object[] els = tcp.getElements(new Object());

но els пуст, вероятно, потому что я понятия не имею, что передать в getElements.

Немного интересной отладки: когда я использую отладчик для погружения в вызов getElements, похоже, что findRootContentExtensions находит кучу NavigatorContentDescriptor, которые выглядят многообещающими, но затем они не возвращаются, поскольку они не проходят проверки isActive и isRootExtension. Затем он пытается найти другие вещи, которые нужно вернуть, но учитывает объект, который я передаю, и перестает работать. Я понятия не имею, что происходит.

Вся документация, которую я нашел, фокусируется на добавлении нового представления с использованием CNF, но не на просмотре существующего содержимого рабочей области. Есть ли хорошая документация для этого? Спасибо!

0 ответов

Другие вопросы по тегам