You can subscribe to this list here.
2007 |
Jan
|
Feb
|
Mar
(23) |
Apr
(254) |
May
(252) |
Jun
(209) |
Jul
(198) |
Aug
(192) |
Sep
(207) |
Oct
(120) |
Nov
(179) |
Dec
(52) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(48) |
Feb
(69) |
Mar
(129) |
Apr
(250) |
May
(113) |
Jun
(177) |
Jul
(228) |
Aug
(155) |
Sep
(218) |
Oct
(185) |
Nov
(109) |
Dec
(88) |
2009 |
Jan
(83) |
Feb
(39) |
Mar
(70) |
Apr
(47) |
May
(48) |
Jun
(67) |
Jul
(61) |
Aug
(97) |
Sep
(221) |
Oct
(141) |
Nov
(70) |
Dec
(61) |
2010 |
Jan
(45) |
Feb
(76) |
Mar
(178) |
Apr
(106) |
May
(57) |
Jun
(32) |
Jul
(64) |
Aug
(98) |
Sep
(96) |
Oct
(19) |
Nov
(34) |
Dec
(117) |
2011 |
Jan
(55) |
Feb
(48) |
Mar
(64) |
Apr
(21) |
May
(39) |
Jun
(53) |
Jul
(99) |
Aug
(56) |
Sep
(39) |
Oct
(26) |
Nov
(19) |
Dec
(69) |
2012 |
Jan
(17) |
Feb
(40) |
Mar
(17) |
Apr
|
May
(2) |
Jun
(8) |
Jul
(2) |
Aug
(10) |
Sep
(10) |
Oct
(38) |
Nov
(48) |
Dec
(70) |
2013 |
Jan
(43) |
Feb
(47) |
Mar
(39) |
Apr
(37) |
May
(25) |
Jun
(6) |
Jul
(20) |
Aug
(49) |
Sep
(33) |
Oct
(34) |
Nov
(75) |
Dec
(6) |
2014 |
Jan
(32) |
Feb
(10) |
Mar
(17) |
Apr
|
May
|
Jun
(26) |
Jul
(5) |
Aug
|
Sep
(4) |
Oct
(23) |
Nov
(80) |
Dec
(48) |
2015 |
Jan
(80) |
Feb
(50) |
Mar
(58) |
Apr
(20) |
May
(11) |
Jun
(16) |
Jul
(24) |
Aug
(27) |
Sep
(56) |
Oct
(30) |
Nov
(16) |
Dec
(6) |
2016 |
Jan
(31) |
Feb
(14) |
Mar
(23) |
Apr
(17) |
May
(40) |
Jun
(12) |
Jul
(17) |
Aug
(9) |
Sep
(32) |
Oct
(36) |
Nov
(23) |
Dec
(9) |
2017 |
Jan
(37) |
Feb
(23) |
Mar
(65) |
Apr
(22) |
May
(6) |
Jun
(3) |
Jul
|
Aug
|
Sep
(3) |
Oct
(22) |
Nov
(63) |
Dec
(71) |
2018 |
Jan
(83) |
Feb
(21) |
Mar
(35) |
Apr
(44) |
May
(14) |
Jun
(12) |
Jul
(8) |
Aug
(18) |
Sep
(10) |
Oct
(145) |
Nov
(144) |
Dec
(76) |
2019 |
Jan
(18) |
Feb
(28) |
Mar
(5) |
Apr
(208) |
May
(291) |
Jun
(158) |
Jul
(27) |
Aug
(8) |
Sep
(10) |
Oct
(83) |
Nov
(41) |
Dec
(31) |
2020 |
Jan
(16) |
Feb
(46) |
Mar
(100) |
Apr
(78) |
May
(69) |
Jun
(71) |
Jul
(28) |
Aug
(131) |
Sep
(176) |
Oct
(89) |
Nov
(147) |
Dec
(19) |
2021 |
Jan
(19) |
Feb
(25) |
Mar
(91) |
Apr
(98) |
May
(14) |
Jun
(44) |
Jul
(8) |
Aug
(3) |
Sep
(38) |
Oct
(57) |
Nov
(97) |
Dec
(74) |
2022 |
Jan
(89) |
Feb
(47) |
Mar
(15) |
Apr
(50) |
May
(54) |
Jun
(56) |
Jul
(80) |
Aug
(12) |
Sep
(11) |
Oct
(60) |
Nov
(48) |
Dec
(4) |
2023 |
Jan
(75) |
Feb
(49) |
Mar
(84) |
Apr
(24) |
May
(13) |
Jun
(74) |
Jul
(32) |
Aug
(66) |
Sep
(50) |
Oct
(38) |
Nov
(105) |
Dec
(181) |
2024 |
Jan
(21) |
Feb
(49) |
Mar
(77) |
Apr
(84) |
May
(20) |
Jun
(71) |
Jul
(53) |
Aug
(33) |
Sep
(54) |
Oct
(124) |
Nov
(151) |
Dec
(73) |
2025 |
Jan
(61) |
Feb
(17) |
Mar
(136) |
Apr
(72) |
May
(200) |
Jun
(238) |
Jul
(91) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <ho...@us...> - 2007-05-16 14:28:01
|
Revision: 2050 http://skim-app.svn.sourceforge.net/skim-app/?rev=2050&view=rev Author: hofman Date: 2007-05-16 07:27:57 -0700 (Wed, 16 May 2007) Log Message: ----------- Static strings for notification names Modified Paths: -------------- trunk/SKThumbnailTableView.m Modified: trunk/SKThumbnailTableView.m =================================================================== --- trunk/SKThumbnailTableView.m 2007-05-16 14:23:16 UTC (rev 2049) +++ trunk/SKThumbnailTableView.m 2007-05-16 14:27:57 UTC (rev 2050) @@ -39,6 +39,9 @@ #import "SKThumbnailTableView.h" #import "OBUtilities.h" +static NSString *SKScrollerWillScrollNotification = @"SKScrollerWillScrollNotification"; +static NSString *SKScrollerDidScrollNotification = @"SKScrollerDidScrollNotification"; + @interface NSScroller (SKExtensions) - (void)replacementTrackKnob:(NSEvent *)theEvent; @end @@ -52,9 +55,9 @@ } - (void)replacementTrackKnob:(NSEvent *)theEvent { - [[NSNotificationCenter defaultCenter] postNotificationName:@"SKScrollerWillScroll" object:self]; + [[NSNotificationCenter defaultCenter] postNotificationName:SKScrollerWillScrollNotification object:self]; originalTrackKnob(self, _cmd, theEvent); - [[NSNotificationCenter defaultCenter] postNotificationName:@"SKScrollerDidScroll" object:self]; + [[NSNotificationCenter defaultCenter] postNotificationName:SKScrollerDidScrollNotification object:self]; } @end @@ -78,8 +81,11 @@ } - (void)awakeFromNib { - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleScrollerWillScroll:) name:@"SKScrollerWillScroll" object:[[self enclosingScrollView] verticalScroller]]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleScrollerDidScroll:) name:@"SKScrollerDidScroll" object:[[self enclosingScrollView] verticalScroller]]; + NSScroller *scroller = [[self enclosingScrollView] verticalScroller]; + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleScrollerWillScroll:) + name:SKScrollerWillScrollNotification object:scroller]; + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleScrollerDidScroll:) + name:SKScrollerDidScrollNotification object:scroller]; } - (void)setFrame:(NSRect)frameRect { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-16 14:23:20
|
Revision: 2049 http://skim-app.svn.sourceforge.net/skim-app/?rev=2049&view=rev Author: hofman Date: 2007-05-16 07:23:16 -0700 (Wed, 16 May 2007) Log Message: ----------- Don't post flags changed notification, this was used in bibdesk. Modified Paths: -------------- trunk/BDSKImagePopUpButton.m Modified: trunk/BDSKImagePopUpButton.m =================================================================== --- trunk/BDSKImagePopUpButton.m 2007-05-16 14:02:35 UTC (rev 2048) +++ trunk/BDSKImagePopUpButton.m 2007-05-16 14:23:16 UTC (rev 2049) @@ -201,8 +201,6 @@ - (void)draggedImage:(NSImage *)anImage endedAt:(NSPoint)aPoint operation:(NSDragOperation)operation{ if ([delegate respondsToSelector:@selector(imagePopUpButton:cleanUpAfterDragOperation:)]) [delegate imagePopUpButton:self cleanUpAfterDragOperation:operation]; - // flag changes during a drag are not forwarded to the application, so we fix that at the end of the drag - [[NSNotificationCenter defaultCenter] postNotificationName:@"SKFlagsChangedNotification" object:[NSApp currentEvent]]; } #pragma mark Dragging destination This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-16 14:02:36
|
Revision: 2048 http://skim-app.svn.sourceforge.net/skim-app/?rev=2048&view=rev Author: hofman Date: 2007-05-16 07:02:35 -0700 (Wed, 16 May 2007) Log Message: ----------- Don't use mainWindowController accessor without checking if the document responds to it. Modified Paths: -------------- trunk/SKApplication.m trunk/SKApplicationController.m trunk/SKNotesDocument.m Modified: trunk/SKApplication.m =================================================================== --- trunk/SKApplication.m 2007-05-16 09:22:39 UTC (rev 2047) +++ trunk/SKApplication.m 2007-05-16 14:02:35 UTC (rev 2048) @@ -38,7 +38,6 @@ #import "SKApplication.h" #import "SKStringConstants.h" -#import "SKMainWindowController.h" #import "SKDocument.h" #import "SKPDFSynchronizer.h" #import "SKPDFView.h" @@ -133,7 +132,7 @@ - (void)reorganizeWindowsItem:(NSWindow *)aWindow { NSMenu *windowsMenu = [self windowsMenu]; NSWindowController *windowController = [aWindow windowController]; - SKMainWindowController *mainWindowController = [[windowController document] mainWindowController]; + NSWindowController *mainWindowController = [[[windowController document] windowControllers] objectAtIndex:0]; int numberOfItems = [windowsMenu numberOfItems]; int itemIndex = [windowsMenu indexOfItemWithTarget:aWindow]; Modified: trunk/SKApplicationController.m =================================================================== --- trunk/SKApplicationController.m 2007-05-16 09:22:39 UTC (rev 2047) +++ trunk/SKApplicationController.m 2007-05-16 14:02:35 UTC (rev 2048) @@ -131,7 +131,8 @@ fileURL = [NSURL fileURLWithPath:[dict objectForKey:@"fileName"]]; if(fileURL && NO == fileIsInTrash(fileURL) && (document = [[NSDocumentController sharedDocumentController] openDocumentWithContentsOfURL:fileURL display:NO error:NULL])) { [document makeWindowControllers]; - [[document mainWindowController] setupWindow:dict]; + if ([document respondsToSelector:@selector(mainWindowController)]) + [[document mainWindowController] setupWindow:dict]; [document showWindows]; } } Modified: trunk/SKNotesDocument.m =================================================================== --- trunk/SKNotesDocument.m 2007-05-16 09:22:39 UTC (rev 2047) +++ trunk/SKNotesDocument.m 2007-05-16 14:02:35 UTC (rev 2048) @@ -39,6 +39,7 @@ #import "SKNotesDocument.h" #import "SKDocument.h" #import "SKNoteOutlineView.h" +#import "BDAlias.h" @implementation SKNotesDocument @@ -175,13 +176,20 @@ // these are necessary for the app controller, we may change it there - (NSDictionary *)currentDocumentSetup { - return [NSDictionary dictionary]; + NSMutableDictionary *setup = [NSMutableDictionary dictionary]; + NSString *fileName = [self fileName]; + + if (fileName) { + NSData *data = [[BDAlias aliasWithPath:fileName] aliasData]; + + [setup setObject:fileName forKey:@"fileName"]; + if(data) + [setup setObject:data forKey:@"_BDAlias"]; + } + + return setup; } -- (NSWindowController *)mainWindowController { - return nil; -} - #pragma mark Accessors - (NSArray *)notes { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-16 09:22:43
|
Revision: 2047 http://skim-app.svn.sourceforge.net/skim-app/?rev=2047&view=rev Author: hofman Date: 2007-05-16 02:22:39 -0700 (Wed, 16 May 2007) Log Message: ----------- Fix option tom ask for reading notes. Modified Paths: -------------- trunk/SKDocument.m Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-05-15 18:26:25 UTC (rev 2046) +++ trunk/SKDocument.m 2007-05-16 09:22:39 UTC (rev 2047) @@ -314,7 +314,7 @@ NSString *path = [[[absoluteURL path] stringByDeletingPathExtension] stringByAppendingPathExtension:@"skim"]; if ([[NSFileManager defaultManager] fileExistsAtPath:path]) { int readOption = [[NSUserDefaults standardUserDefaults] integerForKey:@"SKReadMissingNotesFromSkimFileOption"]; - if (readOption == NSAlertDefaultReturn) { + if (readOption == NSAlertOtherReturn) { NSAlert *alert = [NSAlert alertWithMessageText:NSLocalizedString(@"Found Separate Notes", @"Message in alert dialog") defaultButton:NSLocalizedString(@"Yes", @"Button title") alternateButton:NSLocalizedString(@"No", @"Button title") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-15 18:26:29
|
Revision: 2046 http://skim-app.svn.sourceforge.net/skim-app/?rev=2046&view=rev Author: hofman Date: 2007-05-15 11:26:25 -0700 (Tue, 15 May 2007) Log Message: ----------- Avoid compiler warnings. Modified Paths: -------------- trunk/SKApplicationController.m trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.m Modified: trunk/SKApplicationController.m =================================================================== --- trunk/SKApplicationController.m 2007-05-15 18:22:27 UTC (rev 2045) +++ trunk/SKApplicationController.m 2007-05-15 18:26:25 UTC (rev 2046) @@ -259,6 +259,8 @@ case kRemoteButtonPlay: [controller togglePresentation:nil]; break; + default: + break; } } Modified: trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.m =================================================================== --- trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.m 2007-05-15 18:22:27 UTC (rev 2045) +++ trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.m 2007-05-15 18:26:25 UTC (rev 2046) @@ -13,7 +13,7 @@ @implementation AppleRemote -#pragma public interface +#pragma mark public interface - (id) init { if ( self = [super init] ) { @@ -331,7 +331,7 @@ memset(cookies, 0, sizeof(IOHIDElementCookie) * NUMBER_OF_APPLE_REMOTE_ACTIONS); */ allCookies = [[NSMutableArray alloc] init]; - int i; + unsigned int i; for (i=0; i< [elements count]; i++) { element = [elements objectAtIndex:i]; @@ -372,7 +372,7 @@ if (queue) { result = (*queue)->create(queue, 0, 12); //depth: maximum number of elements in queue before oldest elements in queue begin to be lost. - int i=0; + unsigned int i=0; for(i=0; i<[allCookies count]; i++) { IOHIDElementCookie cookie = (IOHIDElementCookie)[[allCookies objectAtIndex:i] intValue]; (*queue)->addElement(queue, cookie, 0); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-15 18:22:29
|
Revision: 2045 http://skim-app.svn.sourceforge.net/skim-app/?rev=2045&view=rev Author: hofman Date: 2007-05-15 11:22:27 -0700 (Tue, 15 May 2007) Log Message: ----------- Add note contextual menu items in note tool mode. Modified Paths: -------------- trunk/SKPDFView.m Modified: trunk/SKPDFView.m =================================================================== --- trunk/SKPDFView.m 2007-05-15 18:00:15 UTC (rev 2044) +++ trunk/SKPDFView.m 2007-05-15 18:22:27 UTC (rev 2045) @@ -861,6 +861,10 @@ item = [menu insertItemWithTitle:NSLocalizedString(@"Look Up in Dictionary", @"") action:@selector(lookUpCurrentSelectionInDictionary:) keyEquivalent:@"" atIndex:0]; } + + } + + if ([self toolMode] == SKTextToolMode || [self toolMode] == SKNoteToolMode) { [menu insertItem:[NSMenuItem separatorItem] atIndex:0]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-15 18:00:23
|
Revision: 2044 http://skim-app.svn.sourceforge.net/skim-app/?rev=2044&view=rev Author: hofman Date: 2007-05-15 11:00:15 -0700 (Tue, 15 May 2007) Log Message: ----------- fix typo Modified Paths: -------------- trunk/SKDocument.m Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-05-15 17:49:22 UTC (rev 2043) +++ trunk/SKDocument.m 2007-05-15 18:00:15 UTC (rev 2044) @@ -314,7 +314,7 @@ NSString *path = [[[absoluteURL path] stringByDeletingPathExtension] stringByAppendingPathExtension:@"skim"]; if ([[NSFileManager defaultManager] fileExistsAtPath:path]) { int readOption = [[NSUserDefaults standardUserDefaults] integerForKey:@"SKReadMissingNotesFromSkimFileOption"]; - if ([alert runModal] == NSAlertDefaultReturn) { + if (readOption == NSAlertDefaultReturn) { NSAlert *alert = [NSAlert alertWithMessageText:NSLocalizedString(@"Found Separate Notes", @"Message in alert dialog") defaultButton:NSLocalizedString(@"Yes", @"Button title") alternateButton:NSLocalizedString(@"No", @"Button title") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-15 17:49:24
|
Revision: 2043 http://skim-app.svn.sourceforge.net/skim-app/?rev=2043&view=rev Author: hofman Date: 2007-05-15 10:49:22 -0700 (Tue, 15 May 2007) Log Message: ----------- Wrong alert. Modified Paths: -------------- trunk/SKDocument.m Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-05-15 17:41:18 UTC (rev 2042) +++ trunk/SKDocument.m 2007-05-15 17:49:22 UTC (rev 2043) @@ -299,16 +299,12 @@ if ((data = [[NSData alloc] initWithContentsOfURL:absoluteURL options:0 error:&error]) && (pdfDoc = [[PDFDocument alloc] initWithURL:absoluteURL])) { if ([self readNotesFromExtendedAttributesAtURL:absoluteURL error:&error] == NO) { - int readOption = [[NSUserDefaults standardUserDefaults] integerForKey:@"SKReadMissingNotesFromSkimFileOption"]; - if (readOption == NSAlertOtherReturn) { - NSAlert *alert = [NSAlert alertWithMessageText:NSLocalizedString(@"Unable to Read Notes", @"Message in alert dialog") - defaultButton:NSLocalizedString(@"No", @"Button title") - alternateButton:NSLocalizedString(@"Yes", @"Button title") - otherButton:nil - informativeTextWithFormat:NSLocalizedString(@"Skim was not able to read the notes at %@. %@ Do you want to continue to open the PDF document anyway?", @"Informative text in alert dialog"), [[absoluteURL path] stringByAbbreviatingWithTildeInPath], [[error userInfo] objectForKey:NSLocalizedDescriptionKey]]; - readOption = [alert runModal]; - } - if (readOption == NSAlertDefaultReturn) { + NSAlert *alert = [NSAlert alertWithMessageText:NSLocalizedString(@"Unable to Read Notes", @"Message in alert dialog") + defaultButton:NSLocalizedString(@"No", @"Button title") + alternateButton:NSLocalizedString(@"Yes", @"Button title") + otherButton:nil + informativeTextWithFormat:NSLocalizedString(@"Skim was not able to read the notes at %@. %@ Do you want to continue to open the PDF document anyway?", @"Informative text in alert dialog"), [[absoluteURL path] stringByAbbreviatingWithTildeInPath], [[error userInfo] objectForKey:NSLocalizedDescriptionKey]]; + if ([alert runModal] == NSAlertDefaultReturn) { [data release]; data = nil; [pdfDoc release]; @@ -317,12 +313,16 @@ } else if ([noteDicts count] == 0) { NSString *path = [[[absoluteURL path] stringByDeletingPathExtension] stringByAppendingPathExtension:@"skim"]; if ([[NSFileManager defaultManager] fileExistsAtPath:path]) { - NSAlert *alert = [NSAlert alertWithMessageText:NSLocalizedString(@"Found Separate Notes", @"Message in alert dialog") - defaultButton:NSLocalizedString(@"Yes", @"Button title") - alternateButton:NSLocalizedString(@"No", @"Button title") - otherButton:nil - informativeTextWithFormat:NSLocalizedString(@"Unable to read notes for %@, but a Skim notes file with the same name was found. Do you want Skim to read the notes from this file?", @"Informative text in alert dialog"), [[absoluteURL path] stringByAbbreviatingWithTildeInPath]]; + int readOption = [[NSUserDefaults standardUserDefaults] integerForKey:@"SKReadMissingNotesFromSkimFileOption"]; if ([alert runModal] == NSAlertDefaultReturn) { + NSAlert *alert = [NSAlert alertWithMessageText:NSLocalizedString(@"Found Separate Notes", @"Message in alert dialog") + defaultButton:NSLocalizedString(@"Yes", @"Button title") + alternateButton:NSLocalizedString(@"No", @"Button title") + otherButton:nil + informativeTextWithFormat:NSLocalizedString(@"Unable to read notes for %@, but a Skim notes file with the same name was found. Do you want Skim to read the notes from this file?", @"Informative text in alert dialog"), [[absoluteURL path] stringByAbbreviatingWithTildeInPath]]; + readOption = [alert runModal]; + } + if (readOption == NSAlertDefaultReturn) { NSArray *array = [NSKeyedUnarchiver unarchiveObjectWithFile:path]; if (array) { [self setNoteDicts:array]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-15 17:41:19
|
Revision: 2042 http://skim-app.svn.sourceforge.net/skim-app/?rev=2042&view=rev Author: hofman Date: 2007-05-15 10:41:18 -0700 (Tue, 15 May 2007) Log Message: ----------- Add hidden pref option for reading missing notes from CAR .skim file. 1=always, 0=never, -1=ask (default). Modified Paths: -------------- trunk/InitialUserDefaults.plist trunk/SKDocument.m Modified: trunk/InitialUserDefaults.plist =================================================================== --- trunk/InitialUserDefaults.plist 2007-05-15 16:42:17 UTC (rev 2041) +++ trunk/InitialUserDefaults.plist 2007-05-15 17:41:18 UTC (rev 2042) @@ -143,8 +143,10 @@ <true/> <key>SKEnableAppleRemote</key> <true/> - <key>SUCheckAtStartup</key> - <false/> + <key>SKEnableAppleRemote</key> + <true/> + <key>SKReadMissingNotesFromSkimFileOption</key> + <integer>-1</integer> <key>SUScheduledCheckInterval</key> <integer>86400</integer> </dict> Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-05-15 16:42:17 UTC (rev 2041) +++ trunk/SKDocument.m 2007-05-15 17:41:18 UTC (rev 2042) @@ -299,12 +299,16 @@ if ((data = [[NSData alloc] initWithContentsOfURL:absoluteURL options:0 error:&error]) && (pdfDoc = [[PDFDocument alloc] initWithURL:absoluteURL])) { if ([self readNotesFromExtendedAttributesAtURL:absoluteURL error:&error] == NO) { - NSAlert *alert = [NSAlert alertWithMessageText:NSLocalizedString(@"Unable to Read Notes", @"Message in alert dialog") - defaultButton:NSLocalizedString(@"No", @"Button title") - alternateButton:NSLocalizedString(@"Yes", @"Button title") - otherButton:nil - informativeTextWithFormat:NSLocalizedString(@"Skim was not able to read the notes at %@. %@ Do you want to continue to open the PDF document anyway?", @"Informative text in alert dialog"), [[absoluteURL path] stringByAbbreviatingWithTildeInPath], [[error userInfo] objectForKey:NSLocalizedDescriptionKey]]; - if ([alert runModal] == NSAlertDefaultReturn) { + int readOption = [[NSUserDefaults standardUserDefaults] integerForKey:@"SKReadMissingNotesFromSkimFileOption"]; + if (readOption == NSAlertOtherReturn) { + NSAlert *alert = [NSAlert alertWithMessageText:NSLocalizedString(@"Unable to Read Notes", @"Message in alert dialog") + defaultButton:NSLocalizedString(@"No", @"Button title") + alternateButton:NSLocalizedString(@"Yes", @"Button title") + otherButton:nil + informativeTextWithFormat:NSLocalizedString(@"Skim was not able to read the notes at %@. %@ Do you want to continue to open the PDF document anyway?", @"Informative text in alert dialog"), [[absoluteURL path] stringByAbbreviatingWithTildeInPath], [[error userInfo] objectForKey:NSLocalizedDescriptionKey]]; + readOption = [alert runModal]; + } + if (readOption == NSAlertDefaultReturn) { [data release]; data = nil; [pdfDoc release]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-15 16:42:18
|
Revision: 2041 http://skim-app.svn.sourceforge.net/skim-app/?rev=2041&view=rev Author: hofman Date: 2007-05-15 09:42:17 -0700 (Tue, 15 May 2007) Log Message: ----------- Avoid early return. Modified Paths: -------------- trunk/SKPDFSynchronizer.m Modified: trunk/SKPDFSynchronizer.m =================================================================== --- trunk/SKPDFSynchronizer.m 2007-05-14 19:34:18 UTC (rev 2040) +++ trunk/SKPDFSynchronizer.m 2007-05-15 16:42:17 UTC (rev 2041) @@ -44,29 +44,25 @@ // NSFileManager is not thread safe static BOOL SKFileExistsAtPath(NSString *path) { - if (path == nil) - return NO; + FSRef fileRef; - FSRef ref; - - return noErr == FSPathMakeRef((UInt8 *)[path fileSystemRepresentation], &ref, NULL); + if (path && noErr == FSPathMakeRef((UInt8 *)[path fileSystemRepresentation], &fileRef, NULL)) + return YES; + else + return NO; } static NSDate *SKFileModificationDateAtPath(NSString *path) { - CFAbsoluteTime absoluteTime; - FSCatalogInfo info; FSRef fileRef; + FSCatalogInfo info; + CFAbsoluteTime absoluteTime; - if (NO == CFURLGetFSRef((CFURLRef)[NSURL fileURLWithPath:path], &fileRef)) + if (CFURLGetFSRef((CFURLRef)[NSURL fileURLWithPath:path], &fileRef) && + noErr == FSGetCatalogInfo(&fileRef, kFSCatInfoContentMod, &info, NULL, NULL, NULL) && + noErr == UCConvertUTCDateTimeToCFAbsoluteTime(&info.contentModDate, &absoluteTime)) + return [NSDate dateWithTimeIntervalSinceReferenceDate:(NSTimeInterval)absoluteTime]; + else return nil; - - if (noErr != FSGetCatalogInfo(&fileRef, kFSCatInfoContentMod, &info, NULL, NULL, NULL)) - return nil; - - if (noErr != UCConvertUTCDateTimeToCFAbsoluteTime(&info.contentModDate, &absoluteTime)) - return nil; - - return [NSDate dateWithTimeIntervalSinceReferenceDate:(NSTimeInterval)absoluteTime]; } static NSString *SKTeXSourceFile(NSString *file, NSString *base) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-14 19:34:22
|
Revision: 2040 http://skim-app.svn.sourceforge.net/skim-app/?rev=2040&view=rev Author: hofman Date: 2007-05-14 12:34:18 -0700 (Mon, 14 May 2007) Log Message: ----------- Add hidden defaults for arrow line ending styles, and for enabling apple remote control. Modified Paths: -------------- trunk/InitialUserDefaults.plist trunk/SKApplicationController.m trunk/SKPDFAnnotationNote.m trunk/SKStringConstants.h trunk/SKStringConstants.m Modified: trunk/InitialUserDefaults.plist =================================================================== --- trunk/InitialUserDefaults.plist 2007-05-14 17:23:06 UTC (rev 2039) +++ trunk/InitialUserDefaults.plist 2007-05-14 19:34:18 UTC (rev 2040) @@ -125,6 +125,10 @@ <real>2.0</real> <key>SKSquareNoteLineWidth</key> <real>2.0</real> + <key>SKArrowNoteStartLineStyle</key> + <integer>0</integer> + <key>SKArrowNoteEndLineStyle</key> + <integer>4</integer> <key>SKAutoCheckFileUpdate</key> <false/> <key>SKTeXEditorPreset</key> @@ -137,6 +141,8 @@ <false/> <key>SKActivatePresentationNavigationAtBottom</key> <true/> + <key>SKEnableAppleRemote</key> + <true/> <key>SUCheckAtStartup</key> <false/> <key>SUScheduledCheckInterval</key> @@ -187,6 +193,8 @@ <string>SKTextNoteFontSize</string> <string>SKCircleNoteLineWidth</string> <string>SKSquareNoteLineWidth</string> + <string>SKArrowNoteStartLineStyle</string> + <string>SKArrowNoteEndLineStyle</string> </array> <key>sync</key> <array> Modified: trunk/SKApplicationController.m =================================================================== --- trunk/SKApplicationController.m 2007-05-14 17:23:06 UTC (rev 2039) +++ trunk/SKApplicationController.m 2007-05-14 19:34:18 UTC (rev 2040) @@ -149,20 +149,25 @@ [self showReleaseNotes:nil]; [[NSUserDefaults standardUserDefaults] setObject:versionString forKey:SKLastVersionLaunchedKey]; } - [[AppleRemote sharedRemote] setDelegate:self]; + if ([[NSUserDefaults standardUserDefaults] boolForKey:SKEnableAppleRemoteKey]) + [[AppleRemote sharedRemote] setDelegate:self]; } - (void)applicationDidBecomeActive:(NSNotification *)aNotification { - [[AppleRemote sharedRemote] setListeningToRemote:YES]; + if ([[NSUserDefaults standardUserDefaults] boolForKey:SKEnableAppleRemoteKey]) + [[AppleRemote sharedRemote] setListeningToRemote:YES]; } - (void)applicationWillResignActive:(NSNotification *)aNotification { - [[AppleRemote sharedRemote] setListeningToRemote:NO]; + if ([[NSUserDefaults standardUserDefaults] boolForKey:SKEnableAppleRemoteKey]) + [[AppleRemote sharedRemote] setListeningToRemote:NO]; } - (void)applicationWillTerminate:(NSNotification *)aNotification { - [[AppleRemote sharedRemote] setListeningToRemote:NO]; - [[AppleRemote sharedRemote] setDelegate:nil]; + if ([[NSUserDefaults standardUserDefaults] boolForKey:SKEnableAppleRemoteKey]) { + [[AppleRemote sharedRemote] setListeningToRemote:NO]; + [[AppleRemote sharedRemote] setDelegate:nil]; + } } - (IBAction)visitWebSite:(id)sender{ Modified: trunk/SKPDFAnnotationNote.m =================================================================== --- trunk/SKPDFAnnotationNote.m 2007-05-14 17:23:06 UTC (rev 2039) +++ trunk/SKPDFAnnotationNote.m 2007-05-14 19:34:18 UTC (rev 2040) @@ -799,8 +799,8 @@ - (id)initWithBounds:(NSRect)bounds { if (self = [super initWithBounds:bounds]) { [self setColor:[NSUnarchiver unarchiveObjectWithData:[[NSUserDefaults standardUserDefaults] objectForKey:SKArrowNoteColorKey]]]; - [self setStartLineStyle:kPDFLineStyleNone]; - [self setEndLineStyle:kPDFLineStyleOpenArrow]; + [self setStartLineStyle:[[NSUserDefaults standardUserDefaults] integerForKey:SKArrowNoteStartLineStyleKey]]; + [self setEndLineStyle:[[NSUserDefaults standardUserDefaults] integerForKey:SKArrowNoteEndLineStyleKey]]; [self setStartPoint:NSMakePoint(0.5, 0.5)]; [self setEndPoint:NSMakePoint(NSWidth(bounds) - 0.5, NSHeight(bounds) - 0.5)]; } Modified: trunk/SKStringConstants.h =================================================================== --- trunk/SKStringConstants.h 2007-05-14 17:23:06 UTC (rev 2039) +++ trunk/SKStringConstants.h 2007-05-14 19:34:18 UTC (rev 2040) @@ -74,5 +74,8 @@ extern NSString *SKArrowNoteColorKey; extern NSString *SKCircleNoteLineWidthKey; extern NSString *SKSquareNoteLineWidthKey; +extern NSString *SKArrowNoteStartLineStyleKey; +extern NSString *SKArrowNoteEndLineStyleKey; extern NSString *SKDefaultPDFDisplaySettingsKey; extern NSString *SKDefaultFullScreenPDFDisplaySettingsKey; +extern NSString *SKEnableAppleRemoteKey; Modified: trunk/SKStringConstants.m =================================================================== --- trunk/SKStringConstants.m 2007-05-14 17:23:06 UTC (rev 2039) +++ trunk/SKStringConstants.m 2007-05-14 19:34:18 UTC (rev 2040) @@ -75,5 +75,8 @@ NSString *SKArrowNoteColorKey = @"SKArrowNoteColor"; NSString *SKCircleNoteLineWidthKey = @"SKCircleNoteLineWidth"; NSString *SKSquareNoteLineWidthKey = @"SKSquareNoteLineWidth"; +NSString *SKArrowNoteStartLineStyleKey = @"SKArrowNoteStartLineStyle"; +NSString *SKArrowNoteEndLineStyleKey = @"SKArrowNoteEndLineStyle"; NSString *SKDefaultPDFDisplaySettingsKey = @"SKDefaultPDFDisplaySettings"; NSString *SKDefaultFullScreenPDFDisplaySettingsKey = @"SKDefaultFullScreenPDFDisplaySettings"; +NSString *SKEnableAppleRemoteKey = @"SKEnableAppleRemote"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-14 17:23:07
|
Revision: 2039 http://skim-app.svn.sourceforge.net/skim-app/?rev=2039&view=rev Author: hofman Date: 2007-05-14 10:23:06 -0700 (Mon, 14 May 2007) Log Message: ----------- remove duplicate method declaration Modified Paths: -------------- trunk/SKMainWindowController.h Modified: trunk/SKMainWindowController.h =================================================================== --- trunk/SKMainWindowController.h 2007-05-14 16:03:47 UTC (rev 2038) +++ trunk/SKMainWindowController.h 2007-05-14 17:23:06 UTC (rev 2039) @@ -216,7 +216,6 @@ - (IBAction)enterFullScreen:(id)sender; - (IBAction)exitFullScreen:(id)sender; - (IBAction)toggleFullScreen:(id)sender; -- (IBAction)toggleFullScreen:(id)sender; - (IBAction)enterPresentation:(id)sender; - (IBAction)togglePresentation:(id)sender; - (IBAction)performFit:(id)sender; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-14 16:03:49
|
Revision: 2038 http://skim-app.svn.sourceforge.net/skim-app/?rev=2038&view=rev Author: hofman Date: 2007-05-14 09:03:47 -0700 (Mon, 14 May 2007) Log Message: ----------- Listen to remote controller when active. Modified Paths: -------------- trunk/SKApplicationController.m Modified: trunk/SKApplicationController.m =================================================================== --- trunk/SKApplicationController.m 2007-05-14 14:08:29 UTC (rev 2037) +++ trunk/SKApplicationController.m 2007-05-14 16:03:47 UTC (rev 2038) @@ -152,6 +152,19 @@ [[AppleRemote sharedRemote] setDelegate:self]; } +- (void)applicationDidBecomeActive:(NSNotification *)aNotification { + [[AppleRemote sharedRemote] setListeningToRemote:YES]; +} + +- (void)applicationWillResignActive:(NSNotification *)aNotification { + [[AppleRemote sharedRemote] setListeningToRemote:NO]; +} + +- (void)applicationWillTerminate:(NSNotification *)aNotification { + [[AppleRemote sharedRemote] setListeningToRemote:NO]; + [[AppleRemote sharedRemote] setDelegate:nil]; +} + - (IBAction)visitWebSite:(id)sender{ if([[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"http://skim-app.sourceforge.net/"]] == NO) NSBeep(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-14 14:08:34
|
Revision: 2037 http://skim-app.svn.sourceforge.net/skim-app/?rev=2037&view=rev Author: hofman Date: 2007-05-14 07:08:29 -0700 (Mon, 14 May 2007) Log Message: ----------- Add support for Apple Remote Control. Needs to be tested. Modified Paths: -------------- trunk/SKApplicationController.m trunk/Skim.xcodeproj/project.pbxproj Modified: trunk/SKApplicationController.m =================================================================== --- trunk/SKApplicationController.m 2007-05-14 14:02:19 UTC (rev 2036) +++ trunk/SKApplicationController.m 2007-05-14 14:08:29 UTC (rev 2037) @@ -48,6 +48,7 @@ #import "NSUserDefaultsController_SKExtensions.h" #import <Quartz/Quartz.h> #import <Sparkle/Sparkle.h> +#import "AppleRemote.h" @implementation SKApplicationController @@ -148,6 +149,7 @@ [self showReleaseNotes:nil]; [[NSUserDefaults standardUserDefaults] setObject:versionString forKey:SKLastVersionLaunchedKey]; } + [[AppleRemote sharedRemote] setDelegate:self]; } - (IBAction)visitWebSite:(id)sender{ @@ -199,4 +201,47 @@ return updater; } +- (void)appleRemoteButton:(AppleRemoteEventIdentifier)buttonIdentifier pressedDown:(BOOL)pressedDown { + NSArray *docs = [NSApp orderedDocuments]; + id document = [docs count] ? [docs objectAtIndex:0] : nil; + SKMainWindowController *controller = [document respondsToSelector:@selector(mainWindowController)]? [document mainWindowController] : nil; + + if (controller == nil) + return; + + switch (buttonIdentifier) { + case kRemoteButtonVolume_Plus: + if (pressedDown == NO) + break; + if ([controller isPresentation]) + [controller doAutoScale:nil]; + else + [controller doZoomIn:nil]; + break; + case kRemoteButtonVolume_Minus: + if (pressedDown == NO) + break; + if ([controller isPresentation]) + [controller doZoomToActualSize:nil]; + else + [controller doZoomOut:nil]; + break; + case kRemoteButtonRight_Hold: + if (pressedDown == NO) + break; + case kRemoteButtonRight: + [controller doGoToNextPage:nil]; + break; + case kRemoteButtonLeft_Hold: + if (pressedDown == NO) + break; + case kRemoteButtonLeft: + [controller doGoToPreviousPage:nil]; + break; + case kRemoteButtonPlay: + [controller togglePresentation:nil]; + break; + } +} + @end Modified: trunk/Skim.xcodeproj/project.pbxproj =================================================================== --- trunk/Skim.xcodeproj/project.pbxproj 2007-05-14 14:02:19 UTC (rev 2036) +++ trunk/Skim.xcodeproj/project.pbxproj 2007-05-14 14:08:29 UTC (rev 2037) @@ -143,6 +143,9 @@ CE54898C0B35D4EF00F8AFB6 /* InfoWindow.nib in Resources */ = {isa = PBXBuildFile; fileRef = CE54898A0B35D4EF00F8AFB6 /* InfoWindow.nib */; }; CE54898F0B35D50E00F8AFB6 /* SKInfoWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = CE54898E0B35D50E00F8AFB6 /* SKInfoWindowController.m */; }; CE54AA8F0BBC037400008750 /* ReleaseNotes.rtf in Resources */ = {isa = PBXBuildFile; fileRef = CE54AA8D0BBC037400008750 /* ReleaseNotes.rtf */; }; + CE5F42AE0BF89FE00069D89C /* AppleRemote.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = CE5F42AC0BF89FE00069D89C /* AppleRemote.h */; }; + CE5F42AF0BF89FE00069D89C /* AppleRemote.m in Sources */ = {isa = PBXBuildFile; fileRef = CE5F42AD0BF89FE00069D89C /* AppleRemote.m */; }; + CE5F43730BF8A3410069D89C /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CE5F42D30BF8A3400069D89C /* IOKit.framework */; }; CE67BB260BC44AC9007B6929 /* ZoomValues.strings in Resources */ = {isa = PBXBuildFile; fileRef = CE67BB240BC44AC9007B6929 /* ZoomValues.strings */; }; CE6C03F00BEDF759007BF0B5 /* NSParagraphStyle_SKExtensions.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = CE6C03EE0BEDF759007BF0B5 /* NSParagraphStyle_SKExtensions.h */; }; CE6C03F10BEDF759007BF0B5 /* NSParagraphStyle_SKExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = CE6C03EF0BEDF759007BF0B5 /* NSParagraphStyle_SKExtensions.m */; }; @@ -236,6 +239,7 @@ files = ( CE2BD8450BD4135600A5F4DB /* Sparkle.framework in CopyFiles */, CE6C03F00BEDF759007BF0B5 /* NSParagraphStyle_SKExtensions.h in CopyFiles */, + CE5F42AE0BF89FE00069D89C /* AppleRemote.h in CopyFiles */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -437,6 +441,9 @@ CE54898D0B35D50E00F8AFB6 /* SKInfoWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SKInfoWindowController.h; sourceTree = "<group>"; }; CE54898E0B35D50E00F8AFB6 /* SKInfoWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SKInfoWindowController.m; sourceTree = "<group>"; }; CE54AA8E0BBC037400008750 /* English */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = English; path = English.lproj/ReleaseNotes.rtf; sourceTree = "<group>"; }; + CE5F42AC0BF89FE00069D89C /* AppleRemote.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = AppleRemote.h; path = vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.h; sourceTree = "<group>"; }; + CE5F42AD0BF89FE00069D89C /* AppleRemote.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = AppleRemote.m; path = vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.m; sourceTree = "<group>"; }; + CE5F42D30BF8A3400069D89C /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = "<absolute>"; }; CE67BB250BC44AC9007B6929 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/ZoomValues.strings; sourceTree = "<group>"; }; CE67BB290BC44AD5007B6929 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Dutch; path = Dutch.lproj/ZoomValues.strings; sourceTree = "<group>"; }; CE67BD380BC44E79007B6929 /* Dutch */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = Dutch; path = Dutch.lproj/ReleaseNotes.rtf; sourceTree = "<group>"; }; @@ -502,6 +509,7 @@ F98E24BF0B702D9400914AF0 /* Carbon.framework in Frameworks */, F977319F0B939B7D002A7823 /* libbz2.dylib in Frameworks */, CE2BD83E0BD4132B00A5F4DB /* Sparkle.framework in Frameworks */, + CE5F43730BF8A3410069D89C /* IOKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -523,6 +531,7 @@ 1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */, F98E24BE0B702D9400914AF0 /* Carbon.framework */, 455989F70B2662FF00E5419B /* Quartz.framework */, + CE5F42D30BF8A3400069D89C /* IOKit.framework */, CE2BD82A0BD4132B00A5F4DB /* Sparkle.framework */, F977319E0B939B7D002A7823 /* libbz2.dylib */, ); @@ -629,6 +638,8 @@ 453DC2740B4F23E500A72509 /* 3rd-party Sources */ = { isa = PBXGroup; children = ( + CE5F42AC0BF89FE00069D89C /* AppleRemote.h */, + CE5F42AD0BF89FE00069D89C /* AppleRemote.m */, 453DC2750B4F242200A72509 /* BDAlias.m */, 453DC2760B4F242200A72509 /* BDAlias.h */, ); @@ -1209,6 +1220,7 @@ CE49726D0BDE8A7400D7F1D2 /* PDFSelection_SKExtensions.m in Sources */, CE49728B0BDE8B2900D7F1D2 /* SKToolbarItem.m in Sources */, CE6C03F10BEDF759007BF0B5 /* NSParagraphStyle_SKExtensions.m in Sources */, + CE5F42AF0BF89FE00069D89C /* AppleRemote.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-14 14:02:32
|
Revision: 2036 http://skim-app.svn.sourceforge.net/skim-app/?rev=2036&view=rev Author: hofman Date: 2007-05-14 07:02:19 -0700 (Mon, 14 May 2007) Log Message: ----------- Add new files for AppleRemote support from Martin Kahr Modified Paths: -------------- trunk/vendorsrc/andymatuschak/Sparkle/Sparkle.xcodeproj/project.pbxproj Added Paths: ----------- trunk/vendorsrc/martinkahr/ trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/ trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.h trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.m trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/license.txt Modified: trunk/vendorsrc/andymatuschak/Sparkle/Sparkle.xcodeproj/project.pbxproj =================================================================== --- trunk/vendorsrc/andymatuschak/Sparkle/Sparkle.xcodeproj/project.pbxproj 2007-05-14 13:43:32 UTC (rev 2035) +++ trunk/vendorsrc/andymatuschak/Sparkle/Sparkle.xcodeproj/project.pbxproj 2007-05-14 14:02:19 UTC (rev 2036) @@ -103,7 +103,7 @@ 61B5F8E409C4CE3C00B25A18 /* SUUpdater.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SUUpdater.m; sourceTree = "<group>"; }; 61B5F8E509C4CE3C00B25A18 /* NSFileManager+Authentication.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = "NSFileManager+Authentication.m"; sourceTree = "<group>"; }; 61B5F8F609C4CEB300B25A18 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = /System/Library/Frameworks/Security.framework; sourceTree = "<absolute>"; }; - 61B5F90209C4CEE200B25A18 /* Sparkle Test App.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Sparkle Test App.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 61B5F90209C4CEE200B25A18 /* Sparkle Test App.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = "Sparkle Test App.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 61B5F90409C4CEE200B25A18 /* Test Application-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = "Test Application-Info.plist"; path = "Test Application/Test Application-Info.plist"; sourceTree = "<group>"; }; 61B5F92409C4CFC900B25A18 /* main.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = main.m; path = "Test Application/main.m"; sourceTree = "<group>"; }; 61B5F92B09C4CFD800B25A18 /* English */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.plist.strings; name = English; path = "Test Application/English.lproj/InfoPlist.strings"; sourceTree = "<group>"; }; Added: trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.h =================================================================== --- trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.h (rev 0) +++ trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.h 2007-05-14 14:02:19 UTC (rev 2036) @@ -0,0 +1,94 @@ +// +// AppleRemote.h +// AppleRemote +// +// Created by Martin Kahr on 11.03.06. +// Copyright 2006 martinkahr.com. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import <mach/mach.h> +#import <mach/mach_error.h> +#import <IOKit/IOKitLib.h> +#import <IOKit/IOCFPlugIn.h> +#import <IOKit/hid/IOHIDLib.h> +#import <IOKit/hid/IOHIDKeys.h> + +enum AppleRemoteEventIdentifier +{ + kRemoteButtonVolume_Plus=0, + kRemoteButtonVolume_Minus, + kRemoteButtonMenu, + kRemoteButtonPlay, + kRemoteButtonRight, + kRemoteButtonLeft, + kRemoteButtonRight_Hold, + kRemoteButtonLeft_Hold, + kRemoteButtonMenu_Hold, + kRemoteButtonPlay_Sleep, + kRemoteControl_Switched +}; +typedef enum AppleRemoteEventIdentifier AppleRemoteEventIdentifier; + +/* Encapsulates usage of the apple remote control + This class is implemented as a singleton as there is exactly one remote per machine (until now) + The class is not thread safe +*/ +@interface AppleRemote : NSObject { + IOHIDDeviceInterface** hidDeviceInterface; + IOHIDQueueInterface** queue; + NSMutableArray* allCookies; + NSMutableDictionary* cookieToButtonMapping; + + BOOL openInExclusiveMode; + + int remoteId; + + IBOutlet id delegate; +} + +- (void) setRemoteId: (int) aValue; +- (int) remoteId; + +- (BOOL) isRemoteAvailable; + +- (BOOL) isListeningToRemote; +- (void) setListeningToRemote: (BOOL) value; + +- (BOOL) isOpenInExclusiveMode; +- (void) setOpenInExclusiveMode: (BOOL) value; + +- (void) setDelegate: (id) delegate; +- (id) delegate; + +- (IBAction) startListening: (id) sender; +- (IBAction) stopListening: (id) sender; +@end + +@interface AppleRemote (Singleton) + ++ (AppleRemote*) sharedRemote; + +@end + +/* Method definitions for the delegate of the AppleRemote class +*/ +@interface NSObject(NSAppleRemoteDelegate) + +- (void) appleRemoteButton: (AppleRemoteEventIdentifier)buttonIdentifier pressedDown: (BOOL) pressedDown; + +@end + +@interface AppleRemote (PrivateMethods) +- (NSDictionary*) cookieToButtonMapping; +- (IOHIDQueueInterface**) queue; +- (IOHIDDeviceInterface**) hidDeviceInterface; +- (void) handleEventWithCookieString: (NSString*) cookieString sumOfValues: (SInt32) sumOfValues; +@end + +@interface AppleRemote (IOKitMethods) +- (io_object_t) findAppleRemoteDevice; +- (IOHIDDeviceInterface**) createInterfaceForDevice: (io_object_t) hidDevice; +- (BOOL) initializeCookies; +- (BOOL) openDevice; +@end \ No newline at end of file Added: trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.m =================================================================== --- trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.m (rev 0) +++ trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/AppleRemote.m 2007-05-14 14:02:19 UTC (rev 2036) @@ -0,0 +1,404 @@ +// +// AppleRemote.m +// AppleRemote +// +// Created by Martin Kahr on 11.03.06. +// Copyright 2006 martinkahr.com. All rights reserved. +// + +#import "AppleRemote.h" + +const char* AppleRemoteDeviceName = "AppleIRController"; +const int REMOTE_SWITCH_COOKIE=19; + +@implementation AppleRemote + +#pragma public interface + +- (id) init { + if ( self = [super init] ) { + openInExclusiveMode = YES; + queue = NULL; + hidDeviceInterface = NULL; + cookieToButtonMapping = [[NSMutableDictionary alloc] init]; + + [cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonVolume_Plus] forKey:@"14_12_11_6_5_"]; + [cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonVolume_Minus] forKey:@"14_13_11_6_5_"]; + [cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMenu] forKey:@"14_7_6_5_14_7_6_5_"]; + [cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlay] forKey:@"14_8_6_5_14_8_6_5_"]; + [cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonRight] forKey:@"14_9_6_5_14_9_6_5_"]; + [cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonLeft] forKey:@"14_10_6_5_14_10_6_5_"]; + [cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonRight_Hold] forKey:@"14_6_5_4_2_"]; + [cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonLeft_Hold] forKey:@"14_6_5_3_2_"]; + [cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonMenu_Hold] forKey:@"14_6_5_14_6_5_"]; + [cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteButtonPlay_Sleep] forKey:@"18_14_6_5_18_14_6_5_"]; + [cookieToButtonMapping setObject:[NSNumber numberWithInt:kRemoteControl_Switched] forKey:@"19_"]; + } + + return self; +} + +- (void) dealloc { + [self stopListening:self]; + [cookieToButtonMapping release]; + [super dealloc]; +} + +- (void) setRemoteId: (int) value { + remoteId = value; +} +- (int) remoteId { + return remoteId; +} + +- (BOOL) isRemoteAvailable { + io_object_t hidDevice = [self findAppleRemoteDevice]; + if (hidDevice != 0) { + IOObjectRelease(hidDevice); + return YES; + } else { + return NO; + } +} + +- (BOOL) isListeningToRemote { + return (hidDeviceInterface != NULL && allCookies != NULL && queue != NULL); +} + +- (void) setListeningToRemote: (BOOL) value { + if (value == NO) { + [self stopListening:self]; + } else { + [self startListening:self]; + } +} + +- (void) setDelegate: (id) _delegate { + if ([_delegate respondsToSelector:@selector(appleRemoteButton:pressedDown:)]==NO) return; + + [_delegate retain]; + [delegate release]; + delegate = _delegate; +} +- (id) delegate { + return delegate; +} + +- (BOOL) isOpenInExclusiveMode { + return openInExclusiveMode; +} +- (void) setOpenInExclusiveMode: (BOOL) value { + openInExclusiveMode = value; +} + +- (IBAction) startListening: (id) sender { + if ([self isListeningToRemote]) return; + + io_object_t hidDevice = [self findAppleRemoteDevice]; + if (hidDevice == 0) return; + + if ([self createInterfaceForDevice:hidDevice] == NULL) { + goto error; + } + + if ([self initializeCookies]==NO) { + goto error; + } + + if ([self openDevice]==NO) { + goto error; + } + goto cleanup; + +error: + [self stopListening:self]; + +cleanup: + IOObjectRelease(hidDevice); +} + +- (IBAction) stopListening: (id) sender { + if (queue != NULL) { + (*queue)->stop(queue); + + //dispose of queue + (*queue)->dispose(queue); + + //release the queue we allocated + (*queue)->Release(queue); + + queue = NULL; + } + + if (allCookies != nil) { + [allCookies autorelease]; + allCookies = nil; + } + + if (hidDeviceInterface != NULL) { + //close the device + (*hidDeviceInterface)->close(hidDeviceInterface); + + //release the interface + (*hidDeviceInterface)->Release(hidDeviceInterface); + + hidDeviceInterface = NULL; + } +} + +@end + +@implementation AppleRemote (Singleton) + +static AppleRemote* sharedInstance=nil; + ++ (AppleRemote*) sharedRemote { + @synchronized(self) { + if (sharedInstance == nil) { + sharedInstance = [[self alloc] init]; + } + } + return sharedInstance; +} ++ (id)allocWithZone:(NSZone *)zone { + @synchronized(self) { + if (sharedInstance == nil) { + return [super allocWithZone:zone]; + } + } + return sharedInstance; +} +- (id)copyWithZone:(NSZone *)zone { + return self; +} +- (id)retain { + return self; +} +- (unsigned)retainCount { + return UINT_MAX; //denotes an object that cannot be released +} +- (void)release { + //do nothing +} +- (id)autorelease { + return self; +} + +@end + +@implementation AppleRemote (PrivateMethods) + +- (IOHIDQueueInterface**) queue { + return queue; +} + +- (IOHIDDeviceInterface**) hidDeviceInterface { + return hidDeviceInterface; +} + + +- (NSDictionary*) cookieToButtonMapping { + return cookieToButtonMapping; +} + +- (void) handleEventWithCookieString: (NSString*) cookieString sumOfValues: (SInt32) sumOfValues { + NSNumber* buttonId = [[self cookieToButtonMapping] objectForKey: cookieString]; + if (buttonId != nil) { + if (delegate) { + [delegate appleRemoteButton:[buttonId intValue] pressedDown: (sumOfValues>0)]; + } + } else { + NSLog(@"Unknown button for cookiestring %@", cookieString); + } +} + +@end + +/* Callback method for the device queue +Will be called for any event of any type (cookie) to which we subscribe +*/ +static void QueueCallbackFunction(void* target, IOReturn result, void* refcon, void* sender) { + AppleRemote* remote = (AppleRemote*)target; + + IOHIDEventStruct event; + AbsoluteTime zeroTime = {0,0}; + NSMutableString* cookieString = [NSMutableString string]; + SInt32 sumOfValues = 0; + while (result == kIOReturnSuccess) + { + result = (*[remote queue])->getNextEvent([remote queue], &event, zeroTime, 0); + if ( result != kIOReturnSuccess ) + continue; + + if (REMOTE_SWITCH_COOKIE == (int)event.elementCookie) { + [remote setRemoteId: event.value]; + [remote handleEventWithCookieString: @"19_" sumOfValues: 0]; + } else { + sumOfValues+=event.value; + [cookieString appendString:[NSString stringWithFormat:@"%d_", event.elementCookie]]; + } + + //printf("%d %d %d\n", event.elementCookie, event.value, event.longValue); + } + + [remote handleEventWithCookieString: cookieString sumOfValues: sumOfValues]; + +} + +@implementation AppleRemote (IOKitMethods) + +- (IOHIDDeviceInterface**) createInterfaceForDevice: (io_object_t) hidDevice { + io_name_t className; + IOCFPlugInInterface** plugInInterface = NULL; + HRESULT plugInResult = S_OK; + SInt32 score = 0; + IOReturn ioReturnValue = kIOReturnSuccess; + + hidDeviceInterface = NULL; + + ioReturnValue = IOObjectGetClass(hidDevice, className); + + if (ioReturnValue != kIOReturnSuccess) { + NSLog(@"Error: Failed to get class name."); + return NULL; + } + + ioReturnValue = IOCreatePlugInInterfaceForService(hidDevice, + kIOHIDDeviceUserClientTypeID, + kIOCFPlugInInterfaceID, + &plugInInterface, + &score); + if (ioReturnValue == kIOReturnSuccess) + { + //Call a method of the intermediate plug-in to create the device interface + plugInResult = (*plugInInterface)->QueryInterface(plugInInterface, CFUUIDGetUUIDBytes(kIOHIDDeviceInterfaceID), (LPVOID) &hidDeviceInterface); + + if (plugInResult != S_OK) { + NSLog(@"Error: Couldn't create HID class device interface"); + } + // Release + if (plugInInterface) (*plugInInterface)->Release(plugInInterface); + } + return hidDeviceInterface; +} + +- (io_object_t) findAppleRemoteDevice { + CFMutableDictionaryRef hidMatchDictionary = NULL; + IOReturn ioReturnValue = kIOReturnSuccess; + io_iterator_t hidObjectIterator = 0; + io_object_t hidDevice = 0; + + // Set up a matching dictionary to search the I/O Registry by class + // name for all HID class devices + hidMatchDictionary = IOServiceMatching(AppleRemoteDeviceName); + + // Now search I/O Registry for matching devices. + ioReturnValue = IOServiceGetMatchingServices(kIOMasterPortDefault, hidMatchDictionary, &hidObjectIterator); + + if ((ioReturnValue == kIOReturnSuccess) && (hidObjectIterator != 0)) { + hidDevice = IOIteratorNext(hidObjectIterator); + } + + // release the iterator + IOObjectRelease(hidObjectIterator); + + return hidDevice; +} + +- (BOOL) initializeCookies { + IOHIDDeviceInterface122** handle = (IOHIDDeviceInterface122**)hidDeviceInterface; + IOHIDElementCookie cookie; + long usage; + long usagePage; + id object; + NSArray* elements = nil; + NSDictionary* element; + IOReturn success; + + if (!handle || !(*handle)) return NO; + + // Copy all elements, since we're grabbing most of the elements + // for this device anyway, and thus, it's faster to iterate them + // ourselves. When grabbing only one or two elements, a matching + // dictionary should be passed in here instead of NULL. + success = (*handle)->copyMatchingElements(handle, NULL, (CFArrayRef*)&elements); + + if (success == kIOReturnSuccess) { + + [elements autorelease]; + /* + cookies = calloc(NUMBER_OF_APPLE_REMOTE_ACTIONS, sizeof(IOHIDElementCookie)); + memset(cookies, 0, sizeof(IOHIDElementCookie) * NUMBER_OF_APPLE_REMOTE_ACTIONS); + */ + allCookies = [[NSMutableArray alloc] init]; + int i; + for (i=0; i< [elements count]; i++) { + element = [elements objectAtIndex:i]; + + //Get cookie + object = [element valueForKey: (NSString*)CFSTR(kIOHIDElementCookieKey) ]; + if (object == nil || ![object isKindOfClass:[NSNumber class]]) continue; + if (object == 0 || CFGetTypeID(object) != CFNumberGetTypeID()) continue; + cookie = (IOHIDElementCookie) [object longValue]; + + //Get usage + object = [element valueForKey: (NSString*)CFSTR(kIOHIDElementUsageKey) ]; + if (object == nil || ![object isKindOfClass:[NSNumber class]]) continue; + usage = [object longValue]; + + //Get usage page + object = [element valueForKey: (NSString*)CFSTR(kIOHIDElementUsagePageKey) ]; + if (object == nil || ![object isKindOfClass:[NSNumber class]]) continue; + usagePage = [object longValue]; + + [allCookies addObject: [NSNumber numberWithInt:(int)cookie]]; + } + } else { + return NO; + } + + return YES; +} + +- (BOOL) openDevice { + HRESULT result; + + IOHIDOptionsType openMode = kIOHIDOptionsTypeNone; + if ([self isOpenInExclusiveMode]) openMode = kIOHIDOptionsTypeSeizeDevice; + IOReturn ioReturnValue = (*hidDeviceInterface)->open(hidDeviceInterface, openMode); + + if (ioReturnValue == KERN_SUCCESS) { + queue = (*hidDeviceInterface)->allocQueue(hidDeviceInterface); + if (queue) { + result = (*queue)->create(queue, 0, 12); //depth: maximum number of elements in queue before oldest elements in queue begin to be lost. + + int i=0; + for(i=0; i<[allCookies count]; i++) { + IOHIDElementCookie cookie = (IOHIDElementCookie)[[allCookies objectAtIndex:i] intValue]; + (*queue)->addElement(queue, cookie, 0); + } + + // add callback for async events + CFRunLoopSourceRef eventSource; + ioReturnValue = (*queue)->createAsyncEventSource(queue, &eventSource); + if (ioReturnValue == KERN_SUCCESS) { + ioReturnValue = (*queue)->setEventCallout(queue,QueueCallbackFunction, self, NULL); + if (ioReturnValue == KERN_SUCCESS) { + CFRunLoopAddSource(CFRunLoopGetCurrent(), eventSource, kCFRunLoopDefaultMode); + //start data delivery to queue + (*queue)->start(queue); + return YES; + } else { + NSLog(@"Error when setting event callout"); + } + } else { + NSLog(@"Error when creating async event source"); + } + } else { + NSLog(@"Error when opening device"); + } + } + return NO; +} + +@end \ No newline at end of file Added: trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/license.txt =================================================================== --- trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/license.txt (rev 0) +++ trunk/vendorsrc/martinkahr/AppleRemoteSource_R80/license.txt 2007-05-14 14:02:19 UTC (rev 2036) @@ -0,0 +1,7 @@ +Copyright (c) 2006 Martin Kahr + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-14 13:43:37
|
Revision: 2035 http://skim-app.svn.sourceforge.net/skim-app/?rev=2035&view=rev Author: hofman Date: 2007-05-14 06:43:32 -0700 (Mon, 14 May 2007) Log Message: ----------- Find panel find starts at current page when there is no selection. Wrap search. Modified Paths: -------------- trunk/SKMainWindowController.m Modified: trunk/SKMainWindowController.m =================================================================== --- trunk/SKMainWindowController.m 2007-05-13 14:41:15 UTC (rev 2034) +++ trunk/SKMainWindowController.m 2007-05-14 13:43:32 UTC (rev 2035) @@ -1679,8 +1679,16 @@ } - (void)findString:(NSString *)string options:(int)options{ + PDFSelection *sel = [pdfView currentSelection]; + unsigned pageIndex = [[pdfView document] indexForPage:[pdfView currentPage]]; + while ([sel string] == nil && pageIndex-- > 0) { + PDFPage *page = [[pdfView document] pageAtIndex:pageIndex]; + sel = [page selectionForRect:[page boundsForBox:kPDFDisplayBoxCropBox]]; + } findPanelFind = YES; - PDFSelection *selection = [[pdfView document] findString:string fromSelection:[pdfView currentSelection] withOptions:options]; + PDFSelection *selection = [[pdfView document] findString:string fromSelection:sel withOptions:options]; + if (selection == nil && [sel string]) + selection = [[pdfView document] findString:string fromSelection:nil withOptions:options]; findPanelFind = NO; if (selection) { [pdfView setCurrentSelection:selection]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-13 14:41:17
|
Revision: 2034 http://skim-app.svn.sourceforge.net/skim-app/?rev=2034&view=rev Author: hofman Date: 2007-05-13 07:41:15 -0700 (Sun, 13 May 2007) Log Message: ----------- Don't remove new anchored notes when they are not moved. Modified Paths: -------------- trunk/SKPDFView.m Modified: trunk/SKPDFView.m =================================================================== --- trunk/SKPDFView.m 2007-05-13 14:29:20 UTC (rev 2033) +++ trunk/SKPDFView.m 2007-05-13 14:41:15 UTC (rev 2034) @@ -675,7 +675,7 @@ [[self undoManager] endUndoGrouping]; // due to an Appkit bug, endUndoGrouping registers an extra change count, which is not reverted when the group is undone [[[[self window] windowController] document] updateChangeCount:NSChangeUndone]; - if (toolMode == SKNoteToolMode && draggingAnnotation && didDrag == NO) + if (toolMode == SKNoteToolMode && [activeAnnotation isResizable] && draggingAnnotation && didDrag == NO) [[self undoManager] undo]; } draggingAnnotation = NO; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-13 14:29:22
|
Revision: 2033 http://skim-app.svn.sourceforge.net/skim-app/?rev=2033&view=rev Author: hofman Date: 2007-05-13 07:29:20 -0700 (Sun, 13 May 2007) Log Message: ----------- Undo adding new not in note tool mode when it wasn't resized Modified Paths: -------------- trunk/SKPDFView.m Modified: trunk/SKPDFView.m =================================================================== --- trunk/SKPDFView.m 2007-05-12 17:41:04 UTC (rev 2032) +++ trunk/SKPDFView.m 2007-05-13 14:29:20 UTC (rev 2033) @@ -675,6 +675,8 @@ [[self undoManager] endUndoGrouping]; // due to an Appkit bug, endUndoGrouping registers an extra change count, which is not reverted when the group is undone [[[[self window] windowController] document] updateChangeCount:NSChangeUndone]; + if (toolMode == SKNoteToolMode && draggingAnnotation && didDrag == NO) + [[self undoManager] undo]; } draggingAnnotation = NO; break; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-12 17:41:09
|
Revision: 2032 http://skim-app.svn.sourceforge.net/skim-app/?rev=2032&view=rev Author: hofman Date: 2007-05-12 10:41:04 -0700 (Sat, 12 May 2007) Log Message: ----------- Don't create a new note in note tool mode on mousedown outside a page. Modified Paths: -------------- trunk/SKPDFView.m Modified: trunk/SKPDFView.m =================================================================== --- trunk/SKPDFView.m 2007-05-12 17:21:27 UTC (rev 2031) +++ trunk/SKPDFView.m 2007-05-12 17:41:04 UTC (rev 2032) @@ -615,7 +615,7 @@ p = [self convertPoint:p toPage:page]; if (readingBar && [[readingBar page] isEqual:page] && NSPointInRect(p, [readingBar currentBoundsForBox:[self displayBox]])) { [self dragReadingBarWithEvent:theEvent]; - } else if ([self selectAnnotationWithEvent:theEvent] == NO) { + } else if (page == nil || [self selectAnnotationWithEvent:theEvent] == NO) { PDFAreaOfInterest area = [self areaOfInterestForMouse:theEvent]; BOOL canSelectOrDrag = area == kPDFNoArea || toolMode == SKTextToolMode || annotationMode == SKHighlightNote || annotationMode == SKUnderlineNote || annotationMode == SKStrikeOutNote; if (area == kPDFNoArea || (canSelectOrDrag && area == kPDFPageArea && [[page selectionForRect:NSMakeRect(p.x - 30.0, p.y - 40.0, 60.0, 80.0)] string] == nil)) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-12 17:21:32
|
Revision: 2031 http://skim-app.svn.sourceforge.net/skim-app/?rev=2031&view=rev Author: hofman Date: 2007-05-12 10:21:27 -0700 (Sat, 12 May 2007) Log Message: ----------- Add hidden default for activation of navigation buttons in presentation mode. Modified Paths: -------------- trunk/InitialUserDefaults.plist trunk/SKMainWindowController.m Modified: trunk/InitialUserDefaults.plist =================================================================== --- trunk/InitialUserDefaults.plist 2007-05-12 12:16:31 UTC (rev 2030) +++ trunk/InitialUserDefaults.plist 2007-05-12 17:21:27 UTC (rev 2031) @@ -133,6 +133,10 @@ <string>mate</string> <key>SKTeXEditorArguments</key> <string>-l %line "%file"</string> + <key>SKActivateFullScreenNavigationAtBottom</key> + <false/> + <key>SKActivatePresentationNavigationAtBottom</key> + <true/> <key>SUCheckAtStartup</key> <false/> <key>SUScheduledCheckInterval</key> Modified: trunk/SKMainWindowController.m =================================================================== --- trunk/SKMainWindowController.m 2007-05-12 12:16:31 UTC (rev 2030) +++ trunk/SKMainWindowController.m 2007-05-12 17:21:27 UTC (rev 2031) @@ -1361,7 +1361,7 @@ else [self goFullScreen]; - [pdfView setHasNavigation:YES activateAtBottom:YES autohidesCursor:YES]; + [pdfView setHasNavigation:YES activateAtBottom:[[NSUserDefaults standardUserDefaults] boolForKey:@"SKActivateFullScreenNavigationAtBottom"] autohidesCursor:YES]; } - (IBAction)exitFullScreen:(id)sender { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-12 12:16:32
|
Revision: 2030 http://skim-app.svn.sourceforge.net/skim-app/?rev=2030&view=rev Author: hofman Date: 2007-05-12 05:16:31 -0700 (Sat, 12 May 2007) Log Message: ----------- Set current directory for tex editor task to the file's directory. You never know if the tool expects that. Modified Paths: -------------- trunk/SKDocument.m Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-05-12 01:36:44 UTC (rev 2029) +++ trunk/SKDocument.m 2007-05-12 12:16:31 UTC (rev 2030) @@ -661,7 +661,11 @@ [cmdString insertString:@" " atIndex:0]; [cmdString insertString:editorCmd atIndex:0]; - [NSTask launchedTaskWithLaunchPath:@"/bin/sh" arguments:[NSArray arrayWithObjects:@"-c", cmdString, nil]]; + NSTask *task = [[[NSTask alloc] init] autorelease]; + [task setLaunchPath:@"/bin/sh"]; + [task setArguments:[NSArray arrayWithObjects:@"-c", cmdString, nil]]; + [task setCurrentDirectoryPath:[file stringByDeletingLastPathComponent]]; + [task launch]; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ama...@us...> - 2007-05-12 01:36:47
|
Revision: 2029 http://skim-app.svn.sourceforge.net/skim-app/?rev=2029&view=rev Author: amaxwell Date: 2007-05-11 18:36:44 -0700 (Fri, 11 May 2007) Log Message: ----------- Remove extra quotes. Fix from Haris Skiadis on TextMate mailing list. Modified Paths: -------------- trunk/displayline Modified: trunk/displayline =================================================================== --- trunk/displayline 2007-05-11 20:55:09 UTC (rev 2028) +++ trunk/displayline 2007-05-12 01:36:44 UTC (rev 2029) @@ -23,4 +23,4 @@ fi # call the AppleScript -/usr/bin/osascript -e "tell application \"Skim\"" -e "activate" -e "open POSIX file \""${file}"\" at TeX line "${line}" from source POSIX file \""${source}"\"" -e "end tell" +/usr/bin/osascript -e "tell application \"Skim\"" -e "activate" -e "open POSIX file \"${file}\" at TeX line ${line} from source POSIX file \"${source}\"" -e "end tell" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-11 20:55:11
|
Revision: 2028 http://skim-app.svn.sourceforge.net/skim-app/?rev=2028&view=rev Author: hofman Date: 2007-05-11 13:55:09 -0700 (Fri, 11 May 2007) Log Message: ----------- 1-char shortcuts to change annotation mode in note tool mode. Modified Paths: -------------- trunk/SKPDFView.m Modified: trunk/SKPDFView.m =================================================================== --- trunk/SKPDFView.m 2007-05-11 18:19:13 UTC (rev 2027) +++ trunk/SKPDFView.m 2007-05-11 20:55:09 UTC (rev 2028) @@ -568,6 +568,22 @@ [self resizeActiveAnnotationForKey:eventChar byAmount:(modifiers & NSShiftKeyMask) ? 10.0 : 1.0]; } else if (readingBar && (eventChar == NSRightArrowFunctionKey || eventChar == NSLeftArrowFunctionKey || eventChar == NSUpArrowFunctionKey || eventChar == NSDownArrowFunctionKey) && (modifiers == NSAlternateKeyMask)) { [self moveReadingBarForKey:eventChar]; + } else if (isPresentation == NO && [self toolMode] == SKNoteToolMode && modifiers == 0 && eventChar == 't') { + [self setAnnotationMode:SKFreeTextNote]; + } else if (isPresentation == NO && [self toolMode] == SKNoteToolMode && modifiers == 0 && eventChar == 'n') { + [self setAnnotationMode:SKAnchoredNote]; + } else if (isPresentation == NO && [self toolMode] == SKNoteToolMode && modifiers == 0 && eventChar == 'c') { + [self setAnnotationMode:SKCircleNote]; + } else if (isPresentation == NO && [self toolMode] == SKNoteToolMode && modifiers == 0 && eventChar == 'b') { + [self setAnnotationMode:SKSquareNote]; + } else if (isPresentation == NO && [self toolMode] == SKNoteToolMode && modifiers == 0 && eventChar == 'h') { + [self setAnnotationMode:SKHighlightNote]; + } else if (isPresentation == NO && [self toolMode] == SKNoteToolMode && modifiers == 0 && eventChar == 'u') { + [self setAnnotationMode:SKUnderlineNote]; + } else if (isPresentation == NO && [self toolMode] == SKNoteToolMode && modifiers == 0 && eventChar == 's') { + [self setAnnotationMode:SKStrikeOutNote]; + } else if (isPresentation == NO && [self toolMode] == SKNoteToolMode && modifiers == 0 && eventChar == 'a') { + [self setAnnotationMode:SKArrowNote]; } else { [super keyDown:theEvent]; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-11 18:19:14
|
Revision: 2027 http://skim-app.svn.sourceforge.net/skim-app/?rev=2027&view=rev Author: hofman Date: 2007-05-11 11:19:13 -0700 (Fri, 11 May 2007) Log Message: ----------- Don't remove irrelevant files from nib's, for translators. Modified Paths: -------------- trunk/Skim.xcodeproj/project.pbxproj Modified: trunk/Skim.xcodeproj/project.pbxproj =================================================================== --- trunk/Skim.xcodeproj/project.pbxproj 2007-05-11 18:01:52 UTC (rev 2026) +++ trunk/Skim.xcodeproj/project.pbxproj 2007-05-11 18:19:13 UTC (rev 2027) @@ -1081,7 +1081,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "if [ ${BUILD_STYLE} = \"Debug\" ]; then\nexit 0\nfi\n\necho \"*** stripping header files from frameworks ***\"\nfind \"${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}\" -type file -name \"*.h\" -delete\n\necho \"*** stripping IB files from NIBs ***\"\nfind \"${BUILT_PRODUCTS_DIR}\" -type file \\( -name \"classes.nib\" -or -name \"info.nib\" -or -name \"data.dependency\" \\) -delete\n\nexit 0"; + shellScript = "if [ ${BUILD_STYLE} = \"Debug\" ]; then\nexit 0\nfi\n\necho \"*** stripping header files from frameworks ***\"\nfind \"${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}\" -type file -name \"*.h\" -delete\n\n#echo \"*** stripping IB files from NIBs ***\"\n#find \"${BUILT_PRODUCTS_DIR}\" -type file \\( -name \"classes.nib\" -or -name \"info.nib\" -or -name \"data.dependency\" \\) -delete\n\nexit 0"; }; CE4DA8D70B9E16190039E89C /* ShellScript */ = { isa = PBXShellScriptBuildPhase; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-05-11 18:01:54
|
Revision: 2026 http://skim-app.svn.sourceforge.net/skim-app/?rev=2026&view=rev Author: hofman Date: 2007-05-11 11:01:52 -0700 (Fri, 11 May 2007) Log Message: ----------- Add a menu item in the Help menu to visit the web site. RFE # 1717317. Modified Paths: -------------- trunk/Dutch.lproj/MainMenu.nib/classes.nib trunk/Dutch.lproj/MainMenu.nib/keyedobjects.nib trunk/Dutch.lproj/MainWindow.nib/data.dependency trunk/Dutch.lproj/MainWindow.nib/info.nib trunk/Dutch.lproj/MainWindow.nib/keyedobjects.nib trunk/English.lproj/MainMenu.nib/classes.nib trunk/English.lproj/MainMenu.nib/keyedobjects.nib trunk/SKApplicationController.h trunk/SKApplicationController.m Modified: trunk/Dutch.lproj/MainMenu.nib/classes.nib =================================================================== --- trunk/Dutch.lproj/MainMenu.nib/classes.nib 2007-05-11 17:20:49 UTC (rev 2025) +++ trunk/Dutch.lproj/MainMenu.nib/classes.nib 2007-05-11 18:01:52 UTC (rev 2026) @@ -60,6 +60,7 @@ openBookmark = id; showPreferencePanel = id; showReleaseNotes = id; + visitWebSite = id; }; CLASS = SKApplicationController; LANGUAGE = ObjC; Modified: trunk/Dutch.lproj/MainMenu.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/Dutch.lproj/MainWindow.nib/data.dependency =================================================================== --- trunk/Dutch.lproj/MainWindow.nib/data.dependency 2007-05-11 17:20:49 UTC (rev 2025) +++ trunk/Dutch.lproj/MainWindow.nib/data.dependency 2007-05-11 18:01:52 UTC (rev 2026) @@ -4,6 +4,7 @@ <dict> <key>IBPaletteDependency</key> <array> + <string>Controllers</string> <string>PDFKit</string> </array> </dict> Modified: trunk/Dutch.lproj/MainWindow.nib/info.nib =================================================================== --- trunk/Dutch.lproj/MainWindow.nib/info.nib 2007-05-11 17:20:49 UTC (rev 2025) +++ trunk/Dutch.lproj/MainWindow.nib/info.nib 2007-05-11 18:01:52 UTC (rev 2026) @@ -25,10 +25,6 @@ <array> <integer>208</integer> </array> - <key>IBOpenObjects</key> - <array> - <integer>168</integer> - </array> <key>IBSystem Version</key> <string>8P135</string> </dict> Modified: trunk/Dutch.lproj/MainWindow.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/English.lproj/MainMenu.nib/classes.nib =================================================================== --- trunk/English.lproj/MainMenu.nib/classes.nib 2007-05-11 17:20:49 UTC (rev 2025) +++ trunk/English.lproj/MainMenu.nib/classes.nib 2007-05-11 18:01:52 UTC (rev 2026) @@ -60,6 +60,7 @@ openBookmark = id; showPreferencePanel = id; showReleaseNotes = id; + visitWebSite = id; }; CLASS = SKApplicationController; LANGUAGE = ObjC; Modified: trunk/English.lproj/MainMenu.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/SKApplicationController.h =================================================================== --- trunk/SKApplicationController.h 2007-05-11 17:20:49 UTC (rev 2025) +++ trunk/SKApplicationController.h 2007-05-11 18:01:52 UTC (rev 2026) @@ -46,6 +46,8 @@ + (void)setupDefaults; +- (IBAction)visitWebSite:(id)sender; + - (IBAction)showPreferencePanel:(id)sender; - (IBAction)showReleaseNotes:(id)sender; Modified: trunk/SKApplicationController.m =================================================================== --- trunk/SKApplicationController.m 2007-05-11 17:20:49 UTC (rev 2025) +++ trunk/SKApplicationController.m 2007-05-11 18:01:52 UTC (rev 2026) @@ -150,6 +150,11 @@ } } +- (IBAction)visitWebSite:(id)sender{ + if([[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"http://skim-app.sourceforge.net/"]] == NO) + NSBeep(); +} + - (IBAction)showPreferencePanel:(id)sender{ [[SKPreferenceController sharedPrefenceController] showWindow:self]; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |