Как использовать свой собственный значок в скрипте Python, интегрированном в меню сообщений?

Я пытаюсь настроить старый скрипт на python, который мне очень нравится, в частности, gmail-notifier. Он использует значок почты по умолчанию в меню сообщений вместо значка gmail, который используется во многих аналогичных программах. Мне было интересно, как использовать мою собственную иконку. Я просматривал код и ничего не выделялось мне в отношении того, что изменить для маленького значка в меню, я только смог изменить значок всплывающего уведомления. Я попытался изменить значок ярлыка, но в меню сообщений только значок ошибки.

Во всяком случае, я в тупик ... любой совет?

1
задан 5 May 2011 в 09:21

2 ответа

Нет простого и ясного ответа на этот вопрос. Я посмотрел на исходный код gmail-notifier . Невозможно установить собственный значок, используя какой-либо файл конфигурации. Поэтому вам придется либо изменить исходный код, перекомпилировать и переустановить, либо изменить существующий файл значков. Если вы выберете 2-й способ, вы найдете значок в /usr/share/pixmaps/gnome-gmail-notifier.svg. Когда вы замените этот файл другим SVG, значок изменится.

0
ответ дан 5 May 2011 в 09:21

Я сам создал небольшое приложение для уведомлений gmail. В скрипте python должен быть фрагмент кода:

server = indicate.indicate_server_ref_default()
server.set_desktop_file("/usr/share/applications/gmail_notifier.desktop")

Указанный выше файл .desktop определяет значок, который будет использоваться в меню обмена сообщениями. Соответствующая клавиша «Иконка» в моем файле .desktop выглядит следующим образом:

Icon=mail-unread

Описание клавиши «Иконка», приведенное в Спецификация записи рабочего стола , выглядит следующим образом: [ 1110]

Значок для отображения в файловом менеджере, меню и т. Д. Если имя является абсолютным путем, будет использован данный файл. Если имя не является абсолютным путем, алгоритм, описанный в Icon Theme Specification , будет использоваться для определения местоположения иконки.

В моем случае применяется вторая часть приведенного выше описания (т. е. алгоритм, описанный в Icon Theme Specification , используется для поиска значка, соответствующего «mail-unread») , Вместо этого вы можете указать абсолютный путь к вашей иконке, например:

Icon=/usr/share/icons/...

, или вы можете попробовать следующее (это будет работать, только если ваша тема значков имеет иконку, что редко. Именно поэтому я Я использую общую иконку "mail-unread".):

Icon=gmail

Я сейчас не на своей машине, но когда я ее получу, я скажу вам, где именно вы можете найти нужный вам значок и как его зовут. У меня также есть ссылки на (очень немногие) хорошие ресурсы, которые описывают, как интегрировать приложения с меню обмена сообщениями, но опять же мне нужно быть на моей машине для этого.

Если вас интересует весь код моего приложения, у меня есть его на GitHub .

0
ответ дан 5 May 2011 в 09:21

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

Похожие вопросы: