http://www.mail-archive.com/udig-devel@lists.refractions.net/msg05384.html
однако в новых версиях совсем по жесткому хардкорить уже не надо. В целом получилось вполне симпотично:
1. Добавляем extension point:
<extension
point="net.refractions.udig.project.ui.toolManagers">
<toolManager
class="com.neopux.udigproject.plugin.CustomUDIGToolManager"
id="com.neopux.udigproject.customUDIGToolManager">
</toolManager>
</extension>
И класс CustomUDIGToolManager, который наследуем от ToolManager.2. Этот extension point лишь регистрирует "кандидатов" в ToolManager'ы. Но тот, который будет рулить в вашем плагине задается в Preferences с ключом IToolManager.P_TOOL_MANAGER. Мы можем задать это значение явно прописав в файле plugin_customization.ini:
net.refractions.udig.project.ui/toolManager = com.neopux.udigproject.customUDIGToolManager
3. Tеперь у нас есть кастомный ToolManager и можно бесчинствовать сколько влезет. К тому же специально для преследуемой нами цели авторы Udig оставили костыль. Перееопределяем метод filterTool в котором отфильтровываем все тулы, которые не нужны:
@Override
protected boolean filterTool(String categoryId, ToolProxy proxy,
Class categoryType)
{
String filter = "net.refractions.udig.tool.info.infoMode";
return filter.equals(proxy.getId());
}
4. Запускаем и радуемся, что исчезла вторая часть не нужных элементов :)
Комментариев нет:
Отправить комментарий