TimeTracker/TimeTrackerWidget.py

changeset 51
d0afa82c3deb
parent 47
f201a23a8cd7
child 57
02b9538f4095
--- a/TimeTracker/TimeTrackerWidget.py	Thu Apr 24 19:22:51 2014 +0200
+++ b/TimeTracker/TimeTrackerWidget.py	Sat Jul 12 16:29:25 2014 +0200
@@ -11,8 +11,9 @@
 
 import os
 
-from PyQt4.QtCore import pyqtSlot, QPoint, Qt, QDate, QTime, QFileInfo
-from PyQt4.QtGui import QWidget, QMenu, QTreeWidgetItem, QCursor, QDialog
+from PyQt5.QtCore import pyqtSlot, QPoint, Qt, QDate, QTime, QFileInfo
+from PyQt5.QtGui import QCursor
+from PyQt5.QtWidgets import QWidget, QMenu, QTreeWidgetItem, QDialog
 
 from E5Gui import E5MessageBox, E5FileDialog
 
@@ -127,10 +128,18 @@
         """
         menu = QMenu()
         
-        menu.addAction(self.tr("Edit"), self.__editEntry).setEnabled(
-            len(self.entriesList.selectedItems()) == 1)
+        act = menu.addAction(self.tr("Edit"), self.__editEntry)
+        act.setEnabled(
+            len(self.entriesList.selectedItems()) == 1 and
+            self.entriesList.selectedItems()[0].data(0, Qt.UserRole) > -1
+        )
         menu.addAction(self.tr("Add"), self.__addEntry)
-        menu.addAction(self.tr("Delete"), self.__deleteSelectedEntries)
+        act = menu.addAction(self.tr("Delete"), self.__deleteSelectedEntries)
+        act.setEnabled(
+            (len(self.entriesList.selectedItems()) == 1 and
+             self.entriesList.selectedItems()[0].data(0, Qt.UserRole) > -1) or
+            len(self.entriesList.selectedItems()) > 1
+        )
         menu.addSeparator()
         menu.addAction(self.tr("Save"), self.__saveEntries)
         menu.addSeparator()
@@ -204,9 +213,9 @@
         """
         res = E5MessageBox.yesNo(
             self,
-            self.trUtf8("Delete Selected Entries"),
-            self.trUtf8("""Do you really want to delete the selected"""
-                        """ entries?"""))
+            self.tr("Delete Selected Entries"),
+            self.tr("""Do you really want to delete the selected"""
+                    """ entries?"""))
         if res:
             for item in self.entriesList.selectedItems():
                 eid = item.data(0, Qt.UserRole)
@@ -231,16 +240,16 @@
             Utilities.getHomeDir()
         fname = E5FileDialog.getOpenFileName(
             None,
-            self.trUtf8("Import Tracker Entries"),
+            self.tr("Import Tracker Entries"),
             path,
-            self.trUtf8("Text Files (*.txt);;All Files (*)"))
+            self.tr("Text Files (*.txt);;All Files (*)"))
         if fname:
             fname = Utilities.toNativeSeparators(fname)
             if not os.path.exists(fname):
                 E5MessageBox.critical(
                     self,
-                    self.trUtf8("Import Tracker Entries"),
-                    self.trUtf8("<p>The file <b>{0}</b> does not exist.</p>")
+                    self.tr("Import Tracker Entries"),
+                    self.tr("<p>The file <b>{0}</b> does not exist.</p>")
                     .format(fname))
                 return
             
@@ -256,7 +265,7 @@
             Utilities.getHomeDir()
         fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter(
             self,
-            self.trUtf8("Export Tracker Entries"),
+            self.tr("Export Tracker Entries"),
             path,
             self.tr("Text Files (*.txt);;All Files (*)"),
             None,
@@ -270,9 +279,9 @@
             if QFileInfo(fname).exists():
                 res = E5MessageBox.yesNo(
                     self,
-                    self.trUtf8("Export Tracker Entries"),
-                    self.trUtf8("<p>The file <b>{0}</b> already exists."
-                                " Overwrite it?</p>").format(fname),
+                    self.tr("Export Tracker Entries"),
+                    self.tr("<p>The file <b>{0}</b> already exists."
+                            " Overwrite it?</p>").format(fname),
                     icon=E5MessageBox.Warning)
                 if not res:
                     return
@@ -298,10 +307,10 @@
         """
         res = E5MessageBox.yesNo(
             self,
-            self.trUtf8("Remove Duplicate Tracker Entries"),
-            self.trUtf8("""Are you sure you want to remove duplicate"""
-                        """ tracker entries? Only the one with the longest"""
-                        """ duration will be kept."""))
+            self.tr("Remove Duplicate Tracker Entries"),
+            self.tr("""Are you sure you want to remove duplicate"""
+                    """ tracker entries? Only the one with the longest"""
+                    """ duration will be kept."""))
         if res:
             self.__tracker.removeDuplicateTrackerEntries()
     
@@ -311,10 +320,10 @@
         """
         res = E5MessageBox.yesNo(
             self,
-            self.trUtf8("Merge Duplicate Tracker Entries"),
-            self.trUtf8("""Are you sure you want to merge duplicate"""
-                        """ tracker entries? The durations of duplicate"""
-                        """ ones will be added."""))
+            self.tr("Merge Duplicate Tracker Entries"),
+            self.tr("""Are you sure you want to merge duplicate"""
+                    """ tracker entries? The durations of duplicate"""
+                    """ ones will be added."""))
         if res:
             self.__tracker.mergeDuplicateTrackerEntries()
     

eric ide

mercurial