]> code.delx.au - notipod/blobdiff - NotiPod.py
Fixed playlist
[notipod] / NotiPod.py
index f302f6f9ed167a3b01843a482990e51cb778dbcc..4bb501dfee0c2ec870f717da1a3fc582cdb02b84 100644 (file)
@@ -134,17 +134,26 @@ class NotiPodAppDelegate(NSObject):
                self.runGeneratorNext()
 
        def runGeneratorNext(self):
+               if self.gen is None or self.finish is None:
+                       return
                try:
                        msg = self.gen.next()
                        self.loadingLabel.setStringValue_(msg)
                        self.performSelector_withObject_afterDelay_(
                                self.runGeneratorNext, None, 0)
                except StopIteration:
-                       self.gen = None
-                       NSApp.endSheet_(self.loadingSheet)
-                       self.loadingSheet.orderOut_(self)
-                       self.finish()
-                       self.finish = None
+                       self.stopGenerator()
+
+       def stopGenerator(self):
+               self.gen = None
+               NSApp.endSheet_(self.loadingSheet)
+               self.loadingSheet.orderOut_(self)
+               self.finish()
+               self.finish = None
+
+       @objc.IBAction
+       def doCancel_(self, sender):
+               self.stopGenerator()
 
        @objc.IBAction
        def doSync_(self, sender):
@@ -165,7 +174,7 @@ class NotiPodAppDelegate(NSObject):
                                        dry_run=False,
                                        source=self.library.folder,
                                        dest=folder, 
-                                       files=all_tracks
+                                       files_to_copy=all_tracks
                                )
                        ,
                        finish