Como uso meu próprio ícone em um script python integrado ao menu de mensagens?

1

Estou tentando personalizar um script Python antigo que eu gosto muito, especificamente o gmail-notifier. Ele usa o ícone de correio padrão no menu de mensagens, em vez do ícone do Gmail, que muitos programas similares usam. Eu queria saber como usar meu próprio ícone. Eu estive procurando pelo código e nada se destaca sobre o que mudar para o pequeno ícone no menu, só consegui alterar o ícone de notificação pop-up. Eu tentei alterar o ícone do atalho, mas isso só deu um ícone de erro no menu de mensagens.

De qualquer forma, estou perplexo ... algum conselho?

    
por user16534 05.05.2011 / 07:21

2 respostas

1

Eu mesmo criei um pequeno aplicativo notificador do Gmail. Deveria haver um pedaço de código no script python que diz:

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

O arquivo .desktop especificado acima é aquele que determina o ícone a ser usado no menu de mensagens. A tecla "Icon" correspondente no meu arquivo .desktop é assim:

Icon=mail-unread

A descrição da chave "Ícone", conforme especificado na Especificação de entrada na área de trabalho , é:

  

Ícone para exibir no gerenciador de arquivos, menus, etc. Se o nome for um caminho absoluto, o arquivo fornecido será usado. Se o nome não for um caminho absoluto, o algoritmo descrito na Especificação do Tema do Ícone será usado para localize o ícone.

No meu caso, a segunda parte da descrição acima se aplica (ou seja, o algoritmo descrito no Tema do ícone A especificação é usada para localizar o ícone correspondente a "mail-unread". Você pode dar o caminho absoluto para o seu ícone, como em:

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

ou você pode tentar o seguinte (ele funcionará somente se o tema do ícone tiver o ícone, o que é raro. É por isso que estou usando o ícone genérico "mail-unread".):

Icon=gmail

Não estou na minha máquina agora, mas quando chegar, direi exatamente onde você pode encontrar o ícone desejado e qual é o nome dele. Eu também tenho links para (os poucos) bons recursos que descrevem como integrar aplicativos com o menu de mensagens, mas novamente eu preciso estar na minha máquina para isso.

Se você tiver interesse em todo o código do meu aplicativo, eu o tenho no no GitHub .

    
por Vicky Chijwani 12.05.2011 / 15:49
1

Não há respostas fáceis e claras para essa pergunta. Analisei o código-fonte do gmail-notifier . Não há como definir um ícone próprio usando algum arquivo de configuração. Então você terá que alterar o código-fonte, recompilar e reinstalar ou alterar o arquivo de ícone existente. Se você escolher a segunda maneira, encontrará o ícone em /usr/share/pixmaps/gnome-gmail-notifier.svg . Quando você substituir este arquivo por algum outro SVG, o ícone mudará.

    
por qbi 08.04.2012 / 21:07