Revision: 7811
          http://skim-app.svn.sourceforge.net/skim-app/?rev=7811&view=rev
Author:   hofman
Date:     2012-12-06 13:32:15 +0000 (Thu, 06 Dec 2012)
Log Message:
-----------
Move implementation of temp dir to only method where it is used. Move trashed 
file check to NSURL category.

Modified Paths:
--------------
    trunk/NSFileManager_SKExtensions.h
    trunk/NSFileManager_SKExtensions.m
    trunk/NSURL_SKExtensions.h
    trunk/NSURL_SKExtensions.m
    trunk/SKBookmark.m
    trunk/SKDocumentController.m
    trunk/SKDragImageView.m

Modified: trunk/NSFileManager_SKExtensions.h
===================================================================
--- trunk/NSFileManager_SKExtensions.h  2012-12-06 12:38:41 UTC (rev 7810)
+++ trunk/NSFileManager_SKExtensions.h  2012-12-06 13:32:15 UTC (rev 7811)
@@ -41,11 +41,8 @@
 
 @interface NSFileManager (SKExtensions)
 
-- (BOOL)isTrashedFileAtURL:(NSURL *)aURL;
-
 - (NSArray *)applicationSupportDirectoryURLs;
 
 - (NSURL *)uniqueChewableItemsDirectoryURL;
-- (NSURL *)temporaryDirectoryURL;
 
 @end

Modified: trunk/NSFileManager_SKExtensions.m
===================================================================
--- trunk/NSFileManager_SKExtensions.m  2012-12-06 12:38:41 UTC (rev 7810)
+++ trunk/NSFileManager_SKExtensions.m  2012-12-06 13:32:15 UTC (rev 7811)
@@ -41,18 +41,6 @@
 
 @implementation NSFileManager (SKExtensions)
 
-- (BOOL)isTrashedFileAtURL:(NSURL *)aURL {
-    NSCParameterAssert([aURL isFileURL]);    
-    FSRef fileRef;
-    Boolean result = false;
-    if (CFURLGetFSRef((CFURLRef)aURL, &fileRef)) {
-        FSDetermineIfRefIsEnclosedByFolder(0, kTrashFolderType, &fileRef, 
&result);
-        if (result == false)
-            FSDetermineIfRefIsEnclosedByFolder(0, kSystemTrashFolderType, 
&fileRef, &result);
-    }
-    return result;
-}
-
 - (NSArray *)applicationSupportDirectoryURLs {
     static NSArray *applicationSupportDirectoryURLs = nil;
     if (applicationSupportDirectoryURLs == nil) {
@@ -93,17 +81,4 @@
    return uniqueURL;
 }
 
-- (NSURL *)temporaryDirectoryURL {
-    static NSURL *temporaryDirectoryURL = nil;
-    if (temporaryDirectoryURL == nil) {
-        char *template = strdup([[NSTemporaryDirectory() 
stringByAppendingPathComponent:@"Skim.XXXXXX"] fileSystemRepresentation]);
-        const char *tempPath = mkdtemp(template);
-        temporaryDirectoryURL = [[NSURL alloc] initFileURLWithPath:[self 
stringWithFileSystemRepresentation:tempPath length:strlen(tempPath)] ];
-        free(template);
-    }
-    if ([temporaryDirectoryURL checkResourceIsReachableAndReturnError:NULL] == 
NO)
-        [self createDirectoryAtPath:[temporaryDirectoryURL path] 
withIntermediateDirectories:YES attributes:nil error:NULL];
-    return temporaryDirectoryURL;
-}
-
 @end

Modified: trunk/NSURL_SKExtensions.h
===================================================================
--- trunk/NSURL_SKExtensions.h  2012-12-06 12:38:41 UTC (rev 7810)
+++ trunk/NSURL_SKExtensions.h  2012-12-06 13:32:15 UTC (rev 7811)
@@ -51,6 +51,8 @@
 
 - (NSURL *)uniqueFileURL;
 
+- (BOOL)isTrashedFileURL;
+
 - (NSAttributedString *)icon;
 - (NSAttributedString *)smallIcon;
 

Modified: trunk/NSURL_SKExtensions.m
===================================================================
--- trunk/NSURL_SKExtensions.m  2012-12-06 12:38:41 UTC (rev 7810)
+++ trunk/NSURL_SKExtensions.m  2012-12-06 13:32:15 UTC (rev 7811)
@@ -128,6 +128,18 @@
     return uniqueFileURL;
 }
 
+- (BOOL)isTrashedFileURL {
+    NSCParameterAssert([self isFileURL]);    
+    FSRef fileRef;
+    Boolean result = false;
+    if (CFURLGetFSRef((CFURLRef)self, &fileRef)) {
+        FSDetermineIfRefIsEnclosedByFolder(0, kTrashFolderType, &fileRef, 
&result);
+        if (result == false)
+            FSDetermineIfRefIsEnclosedByFolder(0, kSystemTrashFolderType, 
&fileRef, &result);
+    }
+    return result;
+}
+
 - (NSAttributedString *)icon {
     NSAttributedString *attrString = nil;
     

Modified: trunk/SKBookmark.m
===================================================================
--- trunk/SKBookmark.m  2012-12-06 12:38:41 UTC (rev 7810)
+++ trunk/SKBookmark.m  2012-12-06 13:32:15 UTC (rev 7811)
@@ -41,7 +41,7 @@
 #import "NSImage_SKExtensions.h"
 #import "NSDocument_SKExtensions.h"
 #import "SKDocumentController.h"
-#import "NSFileManager_SKExtensions.h"
+#import "NSURL_SKExtensions.h"
 #import "SKMainDocument.h"
 #import "SKMainWindowController.h"
 #import "NSError_SKExtensions.h"
@@ -517,7 +517,7 @@
         document = [[NSDocumentController sharedDocumentController] 
openDocumentWithSetup:[self properties] error:&error];
     } else {
         NSURL *fileURL = [self fileURL];
-        if (fileURL && NO == [[NSFileManager defaultManager] 
isTrashedFileAtURL:fileURL] && 
+        if (fileURL && NO == [fileURL isTrashedFileURL] && 
             (document = [[NSDocumentController sharedDocumentController] 
openDocumentWithContentsOfURL:fileURL display:YES error:&error]) &&
             [document isPDFDocument] && [self pageIndex] != NSNotFound)
             [[document mainWindowController] setPageNumber:[self pageIndex] + 
1];

Modified: trunk/SKDocumentController.m
===================================================================
--- trunk/SKDocumentController.m        2012-12-06 12:38:41 UTC (rev 7810)
+++ trunk/SKDocumentController.m        2012-12-06 13:32:15 UTC (rev 7811)
@@ -43,7 +43,6 @@
 #import "NSURL_SKExtensions.h"
 #import "SKStringConstants.h"
 #import "SKApplicationController.h"
-#import "NSFileManager_SKExtensions.h"
 #import "BDAlias.h"
 #import "SKMainWindowController.h"
 #import "NSError_SKExtensions.h"
@@ -314,7 +313,7 @@
     NSURL *fileURL = [[BDAlias aliasWithData:[setup 
objectForKey:SKDocumentSetupAliasKey]] fileURL];
     if(fileURL == nil && [setup objectForKey:SKDocumentSetupFileNameKey])
         fileURL = [NSURL fileURLWithPath:[setup 
objectForKey:SKDocumentSetupFileNameKey]];
-    if(fileURL && [fileURL checkResourceIsReachableAndReturnError:NULL] && NO 
== [[NSFileManager defaultManager] isTrashedFileAtURL:fileURL]) {
+    if(fileURL && [fileURL checkResourceIsReachableAndReturnError:NULL] && NO 
== [fileURL isTrashedFileURL]) {
         if ((document = [self documentForURL:fileURL])) {
             // the document was already open, don't call makeWindowControllers 
because that adds new empty windows
             [document applySetup:setup];

Modified: trunk/SKDragImageView.m
===================================================================
--- trunk/SKDragImageView.m     2012-12-06 12:38:41 UTC (rev 7810)
+++ trunk/SKDragImageView.m     2012-12-06 13:32:15 UTC (rev 7811)
@@ -56,9 +56,16 @@
         return;
     }
     
-    NSFileManager *fm = [NSFileManager defaultManager];
-    NSURL *fileURL = [[fm temporaryDirectoryURL] 
URLByAppendingPathComponent:@"SkimNote.tiff"];
-    fileURL = [fileURL uniqueFileURL];
+    static NSURL *temporaryDirectoryURL = nil;
+    if (temporaryDirectoryURL == nil) {
+        char *template = strdup([[NSTemporaryDirectory() 
stringByAppendingPathComponent:@"Skim.XXXXXX"] fileSystemRepresentation]);
+        const char *tempPath = mkdtemp(template);
+        temporaryDirectoryURL = [[NSURL alloc] 
initFileURLWithPath:[[NSFileManager defaultManager] 
stringWithFileSystemRepresentation:tempPath length:strlen(tempPath)] ];
+        free(template);
+    }
+    if ([temporaryDirectoryURL checkResourceIsReachableAndReturnError:NULL] == 
NO)
+        [[NSFileManager defaultManager] 
createDirectoryAtPath:[temporaryDirectoryURL path] 
withIntermediateDirectories:YES attributes:nil error:NULL];
+    NSURL *fileURL = [[temporaryDirectoryURL 
URLByAppendingPathComponent:@"SkimNote.tiff"] uniqueFileURL];
     [[image TIFFRepresentation] writeToURL:fileURL atomically:YES];
     [[NSWorkspace sharedWorkspace] openURL:fileURL];
 }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to