From 64508b7dbff33691bdc3bd84814e8c18086caa1a Mon Sep 17 00:00:00 2001 From: James Bunton Date: Sun, 2 Jan 2011 19:31:31 +1100 Subject: [PATCH] Win! --- English.lproj/NotiPod.xib | 192 +++++++++++++++++++------------------- NotiPod.py | 29 ++---- 2 files changed, 101 insertions(+), 120 deletions(-) diff --git a/English.lproj/NotiPod.xib b/English.lproj/NotiPod.xib index 7e0f0f3..16c523e 100644 --- a/English.lproj/NotiPod.xib +++ b/English.lproj/NotiPod.xib @@ -10,8 +10,6 @@ YES - - YES @@ -345,21 +343,21 @@ - + 268 YES - - + + 2304 YES - - + + 256 {327, 338} - + YES @@ -368,7 +366,7 @@ YES - + selected 4.000000e+01 1.600000e+01 @@ -386,19 +384,19 @@ 3 MC4zMzMzMzI5ODU2AA - + 6 System headerTextColor - + 67239424 131072 - + 1211912703 130 @@ -416,9 +414,9 @@ 1 YES YES - + - + playlist 2.810000e+02 1.000000e+01 @@ -437,14 +435,14 @@ MQA - + - + 337772096 2048 - + 6 System @@ -455,7 +453,7 @@ 1 YES - + 3.000000e+00 @@ -480,39 +478,39 @@ {{1, 1}, {327, 338}} - - - + + + 4 - - + + -2147483392 {{313, 1}, {15, 323}} - - + + _doScroller: 9.970502e-01 - - + + -2147483392 {{1, 324}, {327, 15}} - + 1 - + _doScroller: 9.969512e-01 {{32, 160}, {329, 340}} - + 562 - - - + + + QSAAAEEgAABBmAAAQZgAAA @@ -535,7 +533,7 @@ {3.40282e+38, 3.40282e+38} - + 256 YES @@ -567,18 +565,17 @@ {204, 74} - {{0, 0}, {1024, 746}} {3.40282e+38, 3.40282e+38} - + PlaylistModel - + FolderModel - + 15 2 {{196, 429}, {279, 81}} @@ -586,40 +583,39 @@ Synchronising NSWindow - - + + 256 YES - - + + 268 {{17, 44}, {245, 17}} - + YES - + 68288064 272630784 Synchronising.. This may take a while. - + - - + + 1292 {{18, 16}, {243, 20}} - + 16394 2.000000e+01 1.000000e+02 {279, 81} - {{0, 0}, {1280, 778}} {3.40282e+38, 3.40282e+38} @@ -687,15 +683,15 @@ outlineView - - + + 478 folderPopup - + 493 @@ -703,7 +699,7 @@ doSelectFolder: - + 495 @@ -711,7 +707,7 @@ window - + 496 @@ -728,7 +724,7 @@ playlistModel - + 498 @@ -736,7 +732,7 @@ folderModel - + 499 @@ -760,7 +756,7 @@ synchronizingSheet - + 508 @@ -927,7 +923,7 @@ - + @@ -1074,111 +1070,111 @@ 467 - + YES - - - + + + 468 - - + + 469 - - + + 470 - + YES - - + + - + 472 - + YES - + - + 477 - + 484 - - + + 485 - + YES - + - + 486 - - + + 490 - + 503 - + YES - + SynchronizingSheet 504 - + YES - - + + - + 505 - + YES - + - + 506 - - + + 507 - - + + @@ -1310,8 +1306,8 @@ {74, 862} {{529, 476}, {148, 20}} - {{238, 116}, {381, 545}} - {{238, 116}, {381, 545}} + {{249, 142}, {381, 545}} + {{249, 142}, {381, 545}} {{505, 213}, {252, 190}} com.apple.InterfaceBuilder.CocoaPlugin @@ -1349,7 +1345,7 @@ {{42, 607}, {279, 81}} com.apple.InterfaceBuilder.CocoaPlugin {{42, 607}, {279, 81}} - + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin diff --git a/NotiPod.py b/NotiPod.py index df65459..b844b34 100644 --- a/NotiPod.py +++ b/NotiPod.py @@ -113,7 +113,10 @@ class NotiPodAppDelegate(NSObject): def applicationDidFinishLaunching_(self, _): NSApp.beginSheet_modalForWindow_modalDelegate_didEndSelector_contextInfo_(self.loadingSheet, self.window, None, None, None) - self.performSelectorInBackground_withObject_(self.loadFromThread, None) + self.library = libsyncitunes.ITunesLibrary.alloc().init() + self.playlistModel.setPlaylists(self.library.get_playlists()) + NSApp.endSheet_(self.loadingSheet) + self.loadingSheet.orderOut_(self) def applicationWillTerminate_(self, _): self.prefs().synchronize() @@ -121,25 +124,9 @@ class NotiPodAppDelegate(NSObject): def applicationShouldTerminateAfterLastWindowClosed_(self, _): return True - - def loadFromThread(self): - pool = NSAutoreleasePool.alloc().init() - self.library = libsyncitunes.ITunesLibrary.alloc().init() - self.performSelectorOnMainThread_withObject_waitUntilDone_(self.finishLoading, None, True) - del pool - - def finishLoading(self): - self.playlistModel.setPlaylists(self.library.get_playlists()) - NSApp.endSheet_(self.loadingSheet) - self.loadingSheet.close() - @objc.IBAction def doSync_(self, sender): NSApp.beginSheet_modalForWindow_modalDelegate_didEndSelector_contextInfo_(self.synchronizingSheet, self.window, None, None, None) - self.performSelectorInBackground_withObject_(self.syncFromThread, None) - - def syncFromThread(self): - pool = NSAutoreleasePool.alloc().init() folder = self.folders()[0] playlists = [self.library.get_playlist_pid(pid) for pid in self.playlists()] @@ -153,12 +140,10 @@ class NotiPodAppDelegate(NSObject): libsyncitunes.sync(dry_run=False, source=self.library.folder, dest=folder, files=all_tracks) - self.performSelectorOnMainThread_withObject_waitUntilDone_(self.finishSync, None, True) - del pool - - def finishSync(self): NSApp.endSheet_(self.synchronizingSheet) - self.synchronizingSheet.close() + self.synchronizingSheet.orderOut_(self) + + NSRunAlertPanel("Complete!", "Synchronisation is complete", "Ok", None, None) # Public accessors -- 2.39.2