1
0
mirror of https://github.com/arsenetar/dupeguru.git synced 2026-01-22 14:41:39 +00:00

Began the transition to a HSOutline based result outline. There's still a lot of glitches, the most glaring one being the lack of support for multiple selection.

This commit is contained in:
Virgil Dupras
2010-02-11 17:52:18 +01:00
parent 87351b5920
commit 42559f13d8
14 changed files with 340 additions and 217 deletions

View File

@@ -104,6 +104,11 @@ class DupeGuru(RegistrableApplication, Broadcaster):
path = Path(str_path)
return fs.get_file(path, self.directories.fileclasses)
def _job_completed(self, jobid):
# Must be called by subclasses when they detect that an async job is completed.
if jobid in (JOB_SCAN, JOB_LOAD, JOB_MOVE, JOB_DELETE):
self.notify('results_changed')
@staticmethod
def _open_path(path):
raise NotImplementedError()
@@ -233,6 +238,7 @@ class DupeGuru(RegistrableApplication, Broadcaster):
if g not in changed_groups:
self.results.make_ref(dupe)
changed_groups.add(g)
self.notify('results_changed')
def open_selected(self):
if self.selected_dupes:
@@ -283,6 +289,11 @@ class DupeGuru(RegistrableApplication, Broadcaster):
self.results.groups = []
self._start_job(JOB_SCAN, do)
def toggle_selected_mark_state(self):
for dupe in self.selected_dupes:
self.results.mark_toggle(dupe)
self.notify('results_changed')
def without_ref(self, dupes):
return [dupe for dupe in dupes if self.results.get_group_of_duplicate(dupe).ref is not dupe]