Поместите Java-приложение в контекстное меню файлового менеджера

Я использую Eclipse IDE на Ubuntu. Мое приложение предлагает услуги шифрования, и я хочу интегрировать его в клиентскую ОС. Мой вопрос: есть ли способ программно поместить мое приложение в контекстное меню (параметры правой кнопки мыши) файлового менеджера, независимо от файлового менеджера, который использует человек? Я также хотел бы знать, могу ли я сделать это и в проводнике Windows. Но я предполагаю, что это связано с добавлением значений в реестр и может быть легко достигнуто.

Итак, есть ли общее решение для добавления поддержки контекстного меню в файловые менеджеры Linux, а также, пожалуйста, поправьте меня, если я ошибаюсь, делая это в системе Windows.

Пожалуйста, сообщите мне, если вопрос не ясен.


person rahules    schedule 18.07.2012    source источник
comment
Какое контекстное меню какого конкретного элемента пользовательского интерфейса? Фон рабочего стола? Стартовое меню? Область уведомлений? Файл-браузер? (Кстати, я так не думаю - просто посмотрите, например, на различия между gnome-shell, kwin и awesome-WM ;-))   -  person amon    schedule 19.07.2012
comment
Не могли бы вы привести пример широко известного приложения, которое уже реализует желаемое вами поведение? Это помогло бы понять, что вы имеете в виду...   -  person amon    schedule 19.07.2012
comment
@amon Контекстное меню, о котором я говорю, это то, которое мы получаем, когда щелкаем правой кнопкой мыши файл в браузере / проводнике файлов. Например, в Ubuntu, когда вы щелкаете правой кнопкой мыши по файлу, вы получаете возможность для одного приложения Ubuntu поделиться файлом.   -  person rahules    schedule 19.07.2012
comment
А, теперь я вижу. вы имеете в виду не оконные менеджеры, а файловые менеджеры, такие как Explorer, Nautilus, Thunar, Finder, Dolphin, Konqueror, Commander и т. д. Эта ссылка описывает добавление пунктов меню в Nautilus в C: taschenorakel.de/svn /repos/bulldozer/tags/release-0.1.0/   -  person amon    schedule 19.07.2012
comment
@amon спасибо за эту ссылку. Но значит ли это, что я должен делать это специально для каждого файлового менеджера?   -  person rahules    schedule 19.07.2012
comment
@rahules Я действительно думаю, что простого пути нет, но я точно не знаю. Возможно, поможет поиск в Google, например Nautilus plugin tutorial или Dolphin plugin tutorial. Однако я очень сомневаюсь, что будет интерфейс Java; вам может понадобиться клей C++.   -  person amon    schedule 19.07.2012
comment
wiki.archlinux.org/index.php/ намекает, что добавление %U к Поле Exec=` в файле .desktop, возможно, должно отображать его в контекстном меню.   -  person tripleee    schedule 05.09.2012


Ответы (1)


Если вы нацелены на vanilla ubuntu, вы можете предположить, что файловый менеджер — это Gnome Nautilus. Вы можете написать расширение (возможно, на Vala/C/python) для nautilus:

http://developer.gnome.org/libnautilus-extension/stable/

Или вы можете повторно использовать существующие расширения, такие как nautilus-action или nautilus-script, которые позволяют привязывать сценарии к записям контекстного меню.

Если вы хотите поддерживать все существующие файловые менеджеры, обратите внимание на dolphin (для KDE), thunar (для xcfe) и, возможно, pcmanfm...

Редактировать: Если вы хотите написать свой плагин на java, вы можете посмотреть Gobject Introspection. Не знаю, работает ли это еще.

person Enjolras    schedule 19.07.2012