--- a/TimeTracker/TimeTracker.py Sun Oct 21 15:33:36 2012 +0200 +++ b/TimeTracker/TimeTracker.py Sun Oct 21 17:03:22 2012 +0200 @@ -59,6 +59,7 @@ self.__currentEntry = None self.__widget.clear() + self.__widget.setEnabled(False) def projectOpened(self): """ @@ -75,6 +76,7 @@ self.__readTrackerEntries() self.__widget.showTrackerEntries(sorted(self.__entries.values(), reverse=True)) + self.__widget.setEnabled(True) self.startTrackerEntry() @@ -269,6 +271,18 @@ """ return self.__currentEntry + def getEntry(self, eid): + """ + Public method to get a tracker entry given its ID. + + @param eid ID of the tracker entry (integer) + @return entry for the given ID (TimeTrackEntry) or None + """ + if eid in self.__entries: + return self.__entries[eid] + else: + return None + def deleteTrackerEntry(self, eid): """ Public method to delete a tracker entry given its ID. @@ -336,3 +350,10 @@ self.__widget.clear() self.__widget.showTrackerEntries(sorted(self.__entries.values(), reverse=True)) self.__widget.setCurrentEntry(self.__currentEntry) + + def entryChanged(self): + """ + Public method to indicate an external change to any of the entries. + """ + if self.__plugin.getPreferences("AutoSave"): + self.saveTrackerEntries()