328 for file in allFiles: |
328 for file in allFiles: |
329 uptodate = True |
329 uptodate = True |
330 if file.repos_text_status != pysvn.wc_status_kind.none: |
330 if file.repos_text_status != pysvn.wc_status_kind.none: |
331 uptodate = uptodate and \ |
331 uptodate = uptodate and \ |
332 file.repos_text_status != \ |
332 file.repos_text_status != \ |
333 pysvn.wc_status_kind.modified |
333 pysvn.wc_status_kind.modified |
334 if file.repos_prop_status != pysvn.wc_status_kind.none: |
334 if file.repos_prop_status != pysvn.wc_status_kind.none: |
335 uptodate = uptodate and \ |
335 uptodate = uptodate and \ |
336 file.repos_prop_status != \ |
336 file.repos_prop_status != \ |
337 pysvn.wc_status_kind.modified |
337 pysvn.wc_status_kind.modified |
338 |
338 |
339 lockState = " " |
339 lockState = " " |
340 if file.entry is not None and \ |
340 if file.entry is not None and \ |
341 hasattr(file.entry, 'lock_token') and \ |
341 hasattr(file.entry, 'lock_token') and \ |
342 file.entry.lock_token is not None: |
342 file.entry.lock_token is not None: |
345 if lockState == "L" and file.repos_lock is None: |
345 if lockState == "L" and file.repos_lock is None: |
346 lockState = "B" |
346 lockState = "B" |
347 elif lockState == " " and file.repos_lock is not None: |
347 elif lockState == " " and file.repos_lock is not None: |
348 lockState = "O" |
348 lockState = "O" |
349 elif lockState == "L" and \ |
349 elif lockState == "L" and \ |
350 file.repos_lock is not None and \ |
350 file.repos_lock is not None and \ |
351 file.entry.lock_token != file.repos_lock["token"]: |
351 file.entry.lock_token != \ |
|
352 file.repos_lock["token"]: |
352 lockState = "S" |
353 lockState = "S" |
353 |
354 |
354 fpath = Utilities.normcasepath( |
355 fpath = Utilities.normcasepath( |
355 os.path.join(self.dname, file.path)) |
356 os.path.join(self.dname, file.path)) |
356 if fpath in changelistsDict: |
357 if fpath in changelistsDict: |
776 """ |
777 """ |
777 Private slot to handle the Break Lock context menu entry. |
778 Private slot to handle the Break Lock context menu entry. |
778 """ |
779 """ |
779 names = [os.path.join(self.dname, itm.text(self.__pathColumn)) |
780 names = [os.path.join(self.dname, itm.text(self.__pathColumn)) |
780 for itm in self.__getLockActionItems( |
781 for itm in self.__getLockActionItems( |
781 self.stealBreakLockIndicators)] |
782 self.stealBreakLockIndicators)] |
782 if not names: |
783 if not names: |
783 E5MessageBox.information( |
784 E5MessageBox.information( |
784 self, |
785 self, |
785 self.trUtf8("Break Lock"), |
786 self.trUtf8("Break Lock"), |
786 self.trUtf8("""There are no locked files""" |
787 self.trUtf8("""There are no locked files""" |
794 """ |
795 """ |
795 Private slot to handle the Break Lock context menu entry. |
796 Private slot to handle the Break Lock context menu entry. |
796 """ |
797 """ |
797 names = [os.path.join(self.dname, itm.text(self.__pathColumn)) |
798 names = [os.path.join(self.dname, itm.text(self.__pathColumn)) |
798 for itm in self.__getLockActionItems( |
799 for itm in self.__getLockActionItems( |
799 self.stealBreakLockIndicators)] |
800 self.stealBreakLockIndicators)] |
800 if not names: |
801 if not names: |
801 E5MessageBox.information( |
802 E5MessageBox.information( |
802 self, |
803 self, |
803 self.trUtf8("Steal Lock"), |
804 self.trUtf8("Steal Lock"), |
804 self.trUtf8("""There are no locked files""" |
805 self.trUtf8("""There are no locked files""" |