Skip to content

Commit 013de98

Browse files
committed
Added support for icons from theme
1 parent 01811a9 commit 013de98

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

PyQtTrayMenu.cfg

+3-3
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,16 @@
33
"version" : 1,
44
"menu" : {
55
"name" : "PyQtTrayMenu",
6-
"icon" : "/usr/share/icons/oxygen/32x32/apps/preferences-desktop-launch-feedback.png",
6+
"icon" : "preferences-desktop-launch-feedback",
77
"items" : [
88
{
99
"name" : "Konsole",
10-
"icon" : "/usr/share/icons/oxygen/32x32/apps/utilities-terminal.png",
10+
"icon" : "utilities-terminal",
1111
"command" : "konsole"
1212
},
1313
{
1414
"name" : "Altro",
15-
"icon" : "/usr/share/icons/oxygen/32x32/actions/edit-image-face-recognize.png",
15+
"icon" : "edit-image-face-recognize",
1616
"items" : [
1717
{ "name" : "Item 1", "command" : ["kdialog", "--msgbox", "Item 1"] },
1818
{ "name" : "Item 2", "command" : ["kdialog", "--msgbox", "Item 2"] },

modules/PyQtTrayMenuGui.py

+8-2
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,12 @@ def info(msg, err = None):
3636
w = QtGui.QWidget()
3737
QtGui.QMessageBox.information(w, "PyQtTrayMenu", m2)
3838

39+
def get_icon(icon):
40+
if icon[0] == "/":
41+
return QtGui.QIcon(icon)
42+
else:
43+
return QtGui.QIcon.fromTheme(icon)
44+
3945
class TrayIcon(QtGui.QSystemTrayIcon):
4046
__menu = None
4147

@@ -51,7 +57,7 @@ def __init__(self, parent = None):
5157

5258
def readConfig(self, menu):
5359
self.setToolTip(menu['name'])
54-
self.setIcon(QtGui.QIcon(menu['icon']))
60+
self.setIcon(get_icon(menu['icon']))
5561

5662
self.__menu.clear()
5763

@@ -68,7 +74,7 @@ def __scan_menu(self, m, item):
6874
return
6975
itemAction = m.addAction(item['name'])
7076
if 'icon' in item:
71-
itemAction.setIcon(QtGui.QIcon(item['icon']))
77+
itemAction.setIcon(get_icon(item['icon']))
7278
if 'command' in item:
7379
itemAction.triggered.connect(lambda: self.__menu_clicked(item))
7480
elif 'items' in item:

0 commit comments

Comments
 (0)