Adding icons to the dialpad
authorEd Page <eopage@byu.net>
Wed, 1 Dec 2010 04:01:26 +0000 (22:01 -0600)
committerEd Page <eopage@byu.net>
Wed, 1 Dec 2010 04:01:26 +0000 (22:01 -0600)
src/dialcentral_qt.py
src/gv_views.py

index ab0800c..dcec292 100755 (executable)
@@ -37,6 +37,7 @@ class Dialcentral(object):
                self._hiddenCategories = set()
                self._hiddenUnits = {}
                self._clipboard = QtGui.QApplication.clipboard()
+               self._dataPath = None
 
                self._mainWindow = None
 
@@ -139,6 +140,18 @@ class Dialcentral(object):
                with open(constants._user_settings_, "wb") as configFile:
                        config.write(configFile)
 
+       def get_icon(self, name):
+               if self._dataPath is None:
+                       for path in self._DATA_PATHS:
+                               if os.path.exists(os.path.join(path, name)):
+                                       self._dataPath = path
+                                       break
+               if self._dataPath is not None:
+                       icon = QtGui.QIcon(os.path.join(self._dataPath, name))
+                       return icon
+               else:
+                       return None
+
        @property
        def fsContactsPath(self):
                return os.path.join(constants._data_path_, "contacts")
@@ -341,23 +354,17 @@ class MainWindow(object):
                        self._tabWidget.setTabPosition(QtGui.QTabWidget.South)
                else:
                        self._tabWidget.setTabPosition(QtGui.QTabWidget.West)
-               _dataPath = None
                for tabIndex, (tabTitle, tabIcon) in enumerate(
                        zip(self._TAB_TITLES, self._TAB_ICONS)
                ):
-                       if _dataPath is None:
-                               for path in self._app._DATA_PATHS:
-                                       if os.path.exists(os.path.join(path, tabIcon)):
-                                               _dataPath = path
-                                               break
                        if IS_MAEMO:
-                               if _dataPath is None:
+                               icon = self._app.get_icon(tabIcon)
+                               if icon is None:
                                        self._tabWidget.addTab(self._tabsContents[tabIndex].toplevel, tabTitle)
                                else:
-                                       icon = QtGui.QIcon(os.path.join(_dataPath, tabIcon))
                                        self._tabWidget.addTab(self._tabsContents[tabIndex].toplevel, icon, "")
                        else:
-                               icon = QtGui.QIcon(os.path.join(_dataPath, tabIcon))
+                               icon = self._app.get_icon(tabIcon)
                                self._tabWidget.addTab(self._tabsContents[tabIndex].toplevel, icon, tabTitle)
                self._tabWidget.currentChanged.connect(self._on_tab_changed)
                self._tabWidget.setContentsMargins(0, 0, 0, 0)
index 4273973..7f49973 100644 (file)
@@ -56,9 +56,11 @@ class Dialpad(object):
                self._entryLayout.addWidget(self._entry, 1000)
                self._entryLayout.addWidget(self._back, 1, QtCore.Qt.AlignCenter)
 
-               self._smsButton = QtGui.QPushButton("SMS")
+               smsIcon = self._app.get_icon("messages.png")
+               self._smsButton = QtGui.QPushButton(smsIcon, "SMS")
                self._smsButton.clicked.connect(self._on_sms_clicked)
-               self._callButton = QtGui.QPushButton("Call")
+               callIcon = self._app.get_icon("dialpad.png")
+               self._callButton = QtGui.QPushButton(callIcon, "Call")
                self._callButton.clicked.connect(self._on_call_clicked)
 
                self._padLayout = QtGui.QGridLayout()