- Fix: The temporary file used for highlighting source code is now saved as UTF8
so files with non-ASCII characters will now be highlighted
- Fix: #152 MacGDBp would crash/segfault if you stepped at the end of a script
+- Change: Updated Sparkle to the latest bzr version
1.2
+++ /dev/null
-//
-// NSBundle+SUAdditions.h
-// Sparkle
-//
-// Created by Andy Matuschak on 12/21/07.
-// Copyright 2007 Andy Matuschak. All rights reserved.
-//
-
-#ifndef NSBUNDLE_PLUS_ADDITIONS_H
-#define NSBUNDLE_PLUS_ADDITIONS_H
-
-#import <Cocoa/Cocoa.h>
-
-@interface NSBundle (SUAdditions)
-/*!
- @method
- @abstract Returns a name for the bundle suitable for display to the user.
- @discussion This is performed by asking NSFileManager for the display name of the bundle.
-*/
-- (NSString *)name;
-
-/*!
- @method
- @abstract Returns the current internal version of the bundle.
- @discussion This uses the CFBundleVersion info value. This string is not appropriate for display to users: use -displayVersion instead.
-*/
-- (NSString *)version;
-
-/*!
- @method
- @abstract Returns the bundle's version, suitable for display to the user.
- @discussion If the CFBundleShortVersionString is available and different from the CFBundleVersion, this looks like CFBundleShortVersionString (CFBundleVersion). If the version strings are the same or CFBundleShortVersionString is not defined, this is equivalent to -version.
-*/
-- (NSString *)displayVersion;
-
-/*!
- @method
- @abstract Returns a suitable icon for this bundle.
- @discussion Uses the CFBundleIconFile icon if defined; otherwise, uses the default application icon.
-*/
-- (NSImage *)icon;
-
-/*!
- @method
- @abstract Returns whether the application is running from a disk image.
-*/
-- (BOOL)isRunningFromDiskImage;
-
-/*!
- @method
- @abstract Returns a profile of the users system useful for statistical purposes.
- @discussion Returns an array of dictionaries; each dictionary represents a piece of data and has keys "key", "visibleKey", "value", and "visibleValue".
-*/
-- (NSArray *)systemProfile;
-
-- (NSString *)publicDSAKey;
-@end
-
-#endif
+++ /dev/null
-//
-// NSFileManager+Aliases.h
-// Sparkle
-//
-// Created by Andy Matuschak on 2/4/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef NSFILEMANAGER_PLUS_ALIASES_H
-#define NSFILEMANAGER_PLUS_ALIASES_H
-
-#import <Cocoa/Cocoa.h>
-
-@interface NSFileManager (SUAliases)
-- (BOOL)isAliasFolderAtPath:(NSString *)path;
-@end
-
-#endif
+++ /dev/null
-//
-// NSFileManager+Authentication.m
-// Sparkle
-//
-// Created by Andy Matuschak on 3/9/06.
-// Copyright 2006 Andy Matuschak. All rights reserved.
-//
-
-#ifndef NSFILEMANAGER_PLUS_AUTHENTICATION_H
-#define NSFILEMANAGER_PLUS_AUTHENTICATION_H
-
-@interface NSFileManager (SUAuthenticationAdditions)
-- (BOOL)copyPathWithAuthentication:(NSString *)src overPath:(NSString *)dst error:(NSError **)error;
-@end
-
-#endif
+++ /dev/null
-//
-// NSFileManager+ExtendedAttributes.h
-// Sparkle
-//
-// Created by Mark Mentovai on 2008-01-22.
-// Copyright 2008 Mark Mentovai. All rights reserved.
-//
-
-#ifndef NSFILEMANAGER_PLUS_EXTENDEDATTRIBUTES
-#define NSFILEMANAGER_PLUS_EXTENDEDATTRIBUTES
-
-#import <Cocoa/Cocoa.h>
-
-@interface NSFileManager (MMExtendedAttributes)
-
-// Wraps the removexattr system call, allowing an AppKit-style NSString* to
-// be used for the pathname argument. Note that the order of the arguments
-// has changed from what removexattr accepts, so that code reads more
-// naturally.
-//
-// removexattr is only available on Mac OS X 10.4 ("Tiger") and later. If
-// built with an SDK that includes removexattr, this method will link against
-// removexattr directly. When using earlier SDKs, this method will dynamically
-// look up the removexattr symbol at runtime. If the symbol is not present,
-// as will be the case when running on 10.3, this method returns -1 and sets
-// errno to ENOSYS.
-- (int)removeXAttr:(const char*)name
- fromFile:(NSString*)file
- options:(int)options;
-
-// Removes the directory tree rooted at |root| from the file quarantine.
-// The quarantine was introduced on Mac OS X 10.5 and is described at:
-//
-// http://developer.apple.com/releasenotes/Carbon/RN-LaunchServices/index.html
-//#apple_ref/doc/uid/TP40001369-DontLinkElementID_2
-//
-// If |root| is not a directory, then it alone is removed from the quarantine.
-// Symbolic links, including |root| if it is a symbolic link, will not be
-// traversed.
-//
-// Ordinarily, the quarantine is managed by calling LSSetItemAttribute
-// to set the kLSItemQuarantineProperties attribute to a dictionary specifying
-// the quarantine properties to be applied. However, it does not appear to be
-// possible to remove an item from the quarantine directly through any public
-// Launch Services calls. Instead, this method takes advantage of the fact
-// that the quarantine is implemented in part by setting an extended attribute,
-// "com.apple.quarantine", on affected files. Removing this attribute is
-// sufficient to remove files from the quarantine.
-- (void)releaseFromQuarantine:(NSString*)root;
-
-@end
-
-#endif
+++ /dev/null
-//
-// NSFileManager+Verification.h
-// Sparkle
-//
-// Created by Andy Matuschak on 3/16/06.
-// Copyright 2006 Andy Matuschak. All rights reserved.
-//
-
-#ifndef NSFILEMANAGER_PLUS_VERIFICATION_H
-#define NSFILEMANAGER_PLUS_VERIFICATION_H
-
-// For the paranoid folks!
-@interface NSFileManager (SUVerification)
-- (BOOL)validatePath:(NSString *)path withEncodedDSASignature:(NSString *)encodedSignature withPublicDSAKey:(NSString *)pkeyString;
-@end
-
-#endif
+++ /dev/null
-//
-// NSWorkspace+SystemVersion.h
-// Sparkle
-//
-// Created by Andy Matuschak on 5/7/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef NSWORKSPACE_PLUS_SYSTEMVERSION_H
-#define NSWORKSPACE_PLUS_SYSTEMVERSION_H
-
-#import <Cocoa/Cocoa.h>
-
-@interface NSWorkspace (SUSystemVersion)
-+ (NSString *)systemVersionString;
-@end
-
-#endif
+++ /dev/null
-//
-// NSWorkspace_RBAdditions.h
-// PathProps
-//
-// Created by Rainer Brockerhoff on 10/04/2007.
-// Copyright 2007 Rainer Brockerhoff. All rights reserved.
-//
-
-#ifndef NSWORKSPACE_RBADDITIONS_H
-#define NSWORKSPACE_RBADDITIONS_H
-
-
-extern NSString* NSWorkspace_RBfstypename;
-extern NSString* NSWorkspace_RBmntonname;
-extern NSString* NSWorkspace_RBmntfromname;
-extern NSString* NSWorkspace_RBdeviceinfo;
-extern NSString* NSWorkspace_RBimagefilepath;
-extern NSString* NSWorkspace_RBconnectiontype;
-extern NSString* NSWorkspace_RBpartitionscheme;
-extern NSString* NSWorkspace_RBserverURL;
-
-@interface NSWorkspace (NSWorkspace_RBAdditions)
-
-// This method will return nil if the input path is invalid. Otherwise, the returned NSDictionary may contain
-// the following keys:
-//- NSWorkspace_RBfstypename: will always be present.Shows the filesystem type (usually "hfs"), from statfs.
-//- NSWorkspace_RBmntonname: will always be present. Shows the volume mount point.
-//- NSWorkspace_RBmntfromname: will always be present. Shows the BSD device path for local volumes; info for
-// remote volumes depends on the filesystem type.
-//- NSWorkspace_RBconnectiontype: should always be present for local volumes. Shows the connection type ("SATA", "USB", etc.).
-//- NSWorkspace_RBpartitionscheme: should always be present for local volumes. Shows the partition scheme.
-//- NSWorkspace_RBdeviceinfo: should always be present for local volumes. Shows some information about the
-// physical device; varies widely.
-//- NSWorkspace_RBimagefilepath: should be present for disk images only. Shows the path of the disk image file.
-//- NSWorkspace_RBserverURL: should be present for remote volumes only. Shows the server URL.
-
-- (NSDictionary*)propertiesForPath:(NSString*)path;
-
-@end
-
-#endif
+++ /dev/null
-//
-// NTSynchronousTask.h
-// CocoatechCore
-//
-// Created by Steve Gehrman on 9/29/05.
-// Copyright 2005 Steve Gehrman. All rights reserved.
-//
-
-#ifndef NTSYNCHRONOUSTASK_H
-#define NTSYNCHRONOUSTASK_H
-
-@interface NTSynchronousTask : NSObject
-{
- NSTask *mv_task;
- NSPipe *mv_outputPipe;
- NSPipe *mv_inputPipe;
-
- NSData* mv_output;
- BOOL mv_done;
- int mv_result;
-}
-
-// pass nil for directory if not needed
-// returns the result
-+ (NSData*)task:(NSString*)toolPath directory:(NSString*)currentDirectory withArgs:(NSArray*)args input:(NSData*)input;
-
-@end
-
-#endif
#ifndef SUAPPCAST_H
#define SUAPPCAST_H
-@class RSS, SUAppcastItem;
+@class SUAppcastItem;
@interface SUAppcast : NSObject {
NSArray *items;
NSString *userAgentString;
id delegate;
- NSMutableData *incrementalData;
+ NSString *downloadFilename;
}
- (void)fetchAppcastFromURL:(NSURL *)url;
#ifndef SUAPPCASTITEM_H
#define SUAPPCASTITEM_H
-
@interface SUAppcastItem : NSObject {
NSString *title;
NSDate *date;
- NSString *description;
+ NSString *itemDescription;
NSURL *releaseNotesURL;
- (NSString *)versionString;
- (NSString *)displayVersionString;
- (NSDate *)date;
-- (NSString *)description;
+- (NSString *)itemDescription;
- (NSURL *)releaseNotesURL;
- (NSURL *)fileURL;
- (NSString *)DSASignature;
+++ /dev/null
-//
-// SUAutomaticUpdateAlert.h
-// Sparkle
-//
-// Created by Andy Matuschak on 3/18/06.
-// Copyright 2006 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUAUTOMATICUPDATEALERT_H
-#define SUAUTOMATICUPDATEALERT_H
-
-#import "SUWindowController.h"
-
-typedef enum
-{
- SUInstallNowChoice,
- SUInstallLaterChoice,
- SUDoNotInstallChoice
-} SUAutomaticInstallationChoice;
-
-@class SUAppcastItem;
-@interface SUAutomaticUpdateAlert : SUWindowController {
- SUAppcastItem *updateItem;
- id delegate;
- NSBundle *hostBundle;
-}
-
-- (id)initWithAppcastItem:(SUAppcastItem *)item hostBundle:(NSBundle *)hostBundle delegate:delegate;
-- (IBAction)installNow:sender;
-- (IBAction)installLater:sender;
-- (IBAction)doNotInstall:sender;
-
-@end
-
-@interface NSObject (SUAutomaticUpdateAlertDelegateProtocol)
-- (void)automaticUpdateAlert:(SUAutomaticUpdateAlert *)aua finishedWithChoice:(SUAutomaticInstallationChoice)choice;
-@end
-
-#endif
+++ /dev/null
-//
-// SUAutomaticUpdateDriver.h
-// Sparkle
-//
-// Created by Andy Matuschak on 5/6/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUAUTOMATICUPDATEDRIVER_H
-#define SUAUTOMATICUPDATEDRIVER_H
-
-#import <Cocoa/Cocoa.h>
-#import "SUBasicUpdateDriver.h"
-
-@class SUAutomaticUpdateAlert;
-@interface SUAutomaticUpdateDriver : SUBasicUpdateDriver {
- BOOL postponingInstallation, showErrors;
- SUAutomaticUpdateAlert *alert;
-}
-
-@end
-
-#endif
+++ /dev/null
-//
-// SUBasicUpdateDriver.h
-// Sparkle,
-//
-// Created by Andy Matuschak on 4/23/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUBASICUPDATEDRIVER_H
-#define SUBASICUPDATEDRIVER_H
-
-#import <Cocoa/Cocoa.h>
-#import "SUUpdateDriver.h"
-
-@class SUAppcastItem, SUUnarchiver, SUAppcast, SUUnarchiver;
-@interface SUBasicUpdateDriver : SUUpdateDriver {
- NSBundle *hostBundle;
- SUAppcastItem *updateItem;
-
- NSURLDownload *download;
- NSString *downloadPath;
-
- NSString *relaunchPath;
-}
-
-- (void)checkForUpdatesAtURL:(NSURL *)appcastURL hostBundle:(NSBundle *)hb;
-
-- (void)appcastDidFinishLoading:(SUAppcast *)ac;
-- (void)appcast:(SUAppcast *)ac failedToLoadWithError:(NSError *)error;
-
-- (BOOL)isItemNewer:(SUAppcastItem *)ui;
-- (BOOL)hostSupportsItem:(SUAppcastItem *)ui;
-- (BOOL)itemContainsSkippedVersion:(SUAppcastItem *)ui;
-- (BOOL)itemContainsValidUpdate:(SUAppcastItem *)ui;
-- (void)didFindValidUpdate;
-- (void)didNotFindUpdate;
-
-- (void)downloadUpdate;
-- (void)download:(NSURLDownload *)d decideDestinationWithSuggestedFilename:(NSString *)name;
-- (void)downloadDidFinish:(NSURLDownload *)d;
-- (void)download:(NSURLDownload *)download didFailWithError:(NSError *)error;
-
-- (void)extractUpdate;
-- (void)unarchiverDidFinish:(SUUnarchiver *)ua;
-- (void)unarchiverDidFail:(SUUnarchiver *)ua;
-
-- (void)installUpdate;
-- (void)installerFinishedForHostBundle:(NSBundle *)hb;
-- (void)installerForHostBundle:(NSBundle *)hb failedWithError:(NSError *)error;
-
-- (void)relaunchHostApp;
-- (void)cleanUp;
-
-- (void)abortUpdate;
-- (void)abortUpdateWithError:(NSError *)error;
-
-@end
-
-#endif
+++ /dev/null
-//
-// SUConstants.h
-// Sparkle
-//
-// Created by Andy Matuschak on 3/16/06.
-// Copyright 2006 Andy Matuschak. All rights reserved.
-//
-
-
-#ifndef SUCONSTANTS_H
-#define SUCONSTANTS_H
-
-
-extern NSString *SUUpdaterWillRestartNotification;
-extern NSString *SUTechnicalErrorInformationKey;
-
-extern NSString *SUFeedURLKey;
-extern NSString *SUHasLaunchedBeforeKey;
-extern NSString *SUShowReleaseNotesKey;
-extern NSString *SUSkippedVersionKey;
-extern NSString *SUScheduledCheckIntervalKey;
-extern NSString *SULastCheckTimeKey;
-extern NSString *SUExpectsDSASignatureKey;
-extern NSString *SUPublicDSAKeyKey;
-extern NSString *SUPublicDSAKeyFileKey;
-extern NSString *SUAutomaticallyUpdateKey;
-extern NSString *SUAllowsAutomaticUpdatesKey;
-extern NSString *SUEnableAutomaticChecksKey;
-extern NSString *SUEnableAutomaticChecksKeyOld;
-extern NSString *SUEnableSystemProfilingKey;
-extern NSString *SUSendProfileInfoKey;
-
-extern NSString *SUSparkleErrorDomain;
-// Appcast phase errors.
-extern OSStatus SUAppcastParseError;
-extern OSStatus SUNoUpdateError;
-extern OSStatus SUAppcastError;
-extern OSStatus SURunningFromDiskImageError;
-
-// Downlaod phase errors.
-extern OSStatus SUTemporaryDirectoryError;
-
-// Extraction phase errors.
-extern OSStatus SUUnarchivingError;
-extern OSStatus SUSignatureError;
-
-// Installation phase errors.
-extern OSStatus SUFileCopyFailure;
-extern OSStatus SUAuthenticationFailure;
-extern OSStatus SUMissingUpdateError;
-extern OSStatus SUMissingInstallerToolError;
-extern OSStatus SURelaunchError;
-extern OSStatus SUInstallationError;
-
-// NSInteger is a type that was added to Leopard.
-// Here is some glue to ensure that NSInteger will work with pre-10.5 SDKs:
-#ifndef NSINTEGER_DEFINED
- #ifdef NS_BUILD_32_LIKE_64
- typedef long NSInteger;
- typedef unsigned long NSUInteger;
- #else
- typedef int NSInteger;
- typedef unsigned int NSUInteger;
- #endif
- #define NSIntegerMax LONG_MAX
- #define NSIntegerMin LONG_MIN
- #define NSUIntegerMax ULONG_MAX
- #define NSINTEGER_DEFINED 1
-#endif
-
-
-#endif
+++ /dev/null
-//
-// SUDiskImageUnarchiver.h
-// Sparkle
-//
-// Created by Andy Matuschak on 6/16/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUDISKIMAGEUNARCHIVER_H
-#define SUDISKIMAGEUNARCHIVER_H
-
-#import <Cocoa/Cocoa.h>
-#import "SUUnarchiver.h"
-
-@interface SUDiskImageUnarchiver : SUUnarchiver {
-}
-
-@end
-
-#endif
+++ /dev/null
-//
-// SUInstaller.h
-// Sparkle
-//
-// Created by Andy Matuschak on 4/10/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUINSTALLER_H
-#define SUINSTALLER_H
-
-#import <Cocoa/Cocoa.h>
-
-@interface SUInstaller : NSObject { }
-+ (void)installFromUpdateFolder:(NSString *)updateFolder overHostBundle:(NSBundle *)hostBundle delegate:delegate synchronously:(BOOL)synchronously;
-+ (void)_finishInstallationWithResult:(BOOL)result hostBundle:(NSBundle *)hostBundle error:(NSError *)error delegate:delegate;
-@end
-
-@interface NSObject (SUInstallerDelegateInformalProtocol)
-- (void)installerFinishedForHostBundle:(NSBundle *)hostBundle;
-- (void)installerForHostBundle:(NSBundle *)hostBundle failedWithError:(NSError *)error;
-@end
-
-#endif
+++ /dev/null
-//
-// SUPackageInstaller.h
-// Sparkle
-//
-// Created by Andy Matuschak on 4/10/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUPACKAGEINSTALLER_H
-#define SUPACKAGEINSTALLER_H
-
-#import "Sparkle.h"
-#import "SUPlainInstaller.h"
-
-@interface SUPackageInstaller : SUPlainInstaller { }
-+ (void)installPath:(NSString *)path overHostBundle:(NSBundle *)bundle delegate:delegate;
-@end
-
-#endif
+++ /dev/null
-//
-// SUPipedUnarchiver.h
-// Sparkle
-//
-// Created by Andy Matuschak on 6/16/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUPIPEDUNARCHIVER_H
-#define SUPIPEDUNARCHIVER_H
-
-#import <Cocoa/Cocoa.h>
-#import "SUUnarchiver.h"
-
-@interface SUPipedUnarchiver : SUUnarchiver {
-
-}
-
-@end
-
-#endif
+++ /dev/null
-//
-// SUPlainInstaller.h
-// Sparkle
-//
-// Created by Andy Matuschak on 4/10/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUPLAININSTALLER_H
-#define SUPLAININSTALLER_H
-
-#import "Sparkle.h"
-
-@interface SUPlainInstaller : SUInstaller { }
-+ (void)performInstallationWithPath:(NSString *)path hostBundle:(NSBundle *)hostBundle delegate:delegate synchronously:(BOOL)synchronously;
-@end
-
-#endif
+++ /dev/null
-//
-// SUProbingUpdateDriver.h
-// Sparkle
-//
-// Created by Andy Matuschak on 5/7/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUPROBINGUPDATEDRIVER_H
-#define SUPROBINGUPDATEDRIVER_H
-
-#import <Cocoa/Cocoa.h>
-#import "SUBasicUpdateDriver.h"
-
-// This replaces the old SUStatusChecker.
-@interface SUProbingUpdateDriver : SUBasicUpdateDriver { }
-@end
-
-#endif
+++ /dev/null
-//
-// SUScheduledUpdateDriver.h
-// Sparkle
-//
-// Created by Andy Matuschak on 5/6/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUSCHEDULEDUPDATEDRIVER_H
-#define SUSCHEDULEDUPDATEDRIVER_H
-
-#import <Cocoa/Cocoa.h>
-#import "SUUIBasedUpdateDriver.h"
-
-@interface SUScheduledUpdateDriver : SUUIBasedUpdateDriver {
- BOOL showErrors;
-}
-
-@end
-
-#endif
+++ /dev/null
-//
-// SUStandardVersionComparator.h
-// Sparkle
-//
-// Created by Andy Matuschak on 12/21/07.
-// Copyright 2007 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUSTANDARDVERSIONCOMPARATOR_H
-#define SUSTANDARDVERSIONCOMPARATOR_H
-
-
-#import "SUVersionComparisonProtocol.h"
-
-/*!
- @class
- @abstract Sparkle's default version comparator.
- @discussion This comparator is adapted from MacPAD, by Kevin Ballard. It's "dumb" in that it does essentially string comparison, in components split by character type.
-*/
-@interface SUStandardVersionComparator : NSObject <SUVersionComparison> { }
-
-/*!
- @method
- @abstract Returns a singleton instance of the comparator.
-*/
-+ (SUStandardVersionComparator *)defaultComparator;
-
-/*!
- @method
- @abstract Compares version strings through textual analysis.
- @discussion See the implementation for more details.
-*/
-- (NSComparisonResult)compareVersion:(NSString *)versionA toVersion:(NSString *)versionB;
-@end
-
-#endif
+++ /dev/null
-//
-// SUStatusController.h
-// Sparkle
-//
-// Created by Andy Matuschak on 3/14/06.
-// Copyright 2006 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUSTATUSCONTROLLER_H
-#define SUSTATUSCONTROLLER_H
-
-#import "SUWindowController.h"
-
-@interface SUStatusController : SUWindowController {
- double progressValue, maxProgressValue;
- NSString *title, *statusText, *buttonTitle;
- IBOutlet NSButton *actionButton;
- IBOutlet NSProgressIndicator* progressBar;
- NSBundle *hostBundle;
-}
-
-- (id)initWithHostBundle:(NSBundle *)hostBundle;
-
-// Pass 0 for the max progress value to get an indeterminate progress bar.
-// Pass nil for the status text to not show it.
-- (void)beginActionWithTitle:(NSString *)title maxProgressValue:(double)maxProgressValue statusText:(NSString *)statusText;
-
-// If isDefault is YES, the button's key equivalent will be \r.
-- (void)setButtonTitle:(NSString *)buttonTitle target:target action:(SEL)action isDefault:(BOOL)isDefault;
-- (void)setButtonEnabled:(BOOL)enabled;
-
-- (double)progressValue;
-- (void)setProgressValue:(double)value;
-- (double)maxProgressValue;
-- (void)setMaxProgressValue:(double)value;
-
-- (void)setStatusText:(NSString *)statusText;
-
-@end
-
-#endif
+++ /dev/null
-//
-// SUSystemProfiler.h
-// Sparkle
-//
-// Created by Andy Matuschak on 12/22/07.
-// Copyright 2007 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUSYSTEMPROFILER_H
-#define SUSYSTEMPROFILER_H
-
-@interface SUSystemProfiler : NSObject {}
-+ (SUSystemProfiler *)sharedSystemProfiler;
-- (NSMutableArray *)systemProfileArrayForHostBundle:(NSBundle *)hostBundle;
-@end
-
-#endif
+++ /dev/null
-//
-// SUUIBasedUpdateDriver.h
-// Sparkle
-//
-// Created by Andy Matuschak on 5/5/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUUIBASEDUPDATEDRIVER_H
-#define SUUIBASEDUPDATEDRIVER_H
-
-#import <Cocoa/Cocoa.h>
-#import "SUBasicUpdateDriver.h"
-
-@class SUStatusController, SUUpdateAlert;
-@interface SUUIBasedUpdateDriver : SUBasicUpdateDriver {
- SUStatusController *statusController;
- SUUpdateAlert *updateAlert;
-}
-
-@end
-
-#endif
+++ /dev/null
-//
-// SUUnarchiver.h
-// Sparkle
-//
-// Created by Andy Matuschak on 3/16/06.
-// Copyright 2006 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUUNARCHIVER_H
-#define SUUNARCHIVER_H
-
-@interface SUUnarchiver : NSObject {
- id delegate;
- NSURL *archiveURL;
-}
-
-+ (SUUnarchiver *)unarchiverForURL:(NSURL *)URL;
-- (void)setDelegate:delegate;
-
-- (void)start;
-
-@end
-
-@interface NSObject (SUUnarchiverDelegate)
-- (void)unarchiver:(SUUnarchiver *)unarchiver extractedLength:(long)length;
-- (void)unarchiverDidFinish:(SUUnarchiver *)unarchiver;
-- (void)unarchiverDidFail:(SUUnarchiver *)unarchiver;
-@end
-
-#endif
+++ /dev/null
-//
-// SUUnarchiver_Private.h
-// Sparkle
-//
-// Created by Andy Matuschak on 6/17/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUUNARCHIVER_PRIVATE_H
-#define SUUNARCHIVER_PRIVATE_H
-
-#import <Cocoa/Cocoa.h>
-#import "SUUnarchiver.h"
-
-@interface SUUnarchiver (Private)
-+ (void)_registerImplementation:(Class)implementation;
-+ (NSArray *)_unarchiverImplementations;
-+ (BOOL)_canUnarchiveURL:(NSURL *)URL;
-- _initWithURL:(NSURL *)URL;
-
-- (void)_notifyDelegateOfExtractedLength:(long)length;
-- (void)_notifyDelegateOfSuccess;
-- (void)_notifyDelegateOfFailure;
-@end
-
-@interface NSURL (SUTypeDetection)
-- (BOOL)conformsToType:(NSString *)type;
-@end
-
-#endif
+++ /dev/null
-//
-// SUUpdateAlert.h
-// Sparkle
-//
-// Created by Andy Matuschak on 3/12/06.
-// Copyright 2006 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUUPDATEALERT_H
-#define SUUPDATEALERT_H
-
-#import "SUWindowController.h"
-
-typedef enum
-{
- SUInstallUpdateChoice,
- SURemindMeLaterChoice,
- SUSkipThisVersionChoice
-} SUUpdateAlertChoice;
-
-@class WebView, SUAppcastItem;
-@interface SUUpdateAlert : SUWindowController {
- SUAppcastItem *updateItem;
- NSBundle *hostBundle;
- id delegate;
-
- IBOutlet WebView *releaseNotesView;
- IBOutlet NSTextField *description;
- NSProgressIndicator *releaseNotesSpinner;
- BOOL webViewFinishedLoading;
-}
-
-- (id)initWithAppcastItem:(SUAppcastItem *)item hostBundle:(NSBundle *)hostBundle;
-- (void)setDelegate:delegate;
-
-- (IBAction)installUpdate:sender;
-- (IBAction)skipThisVersion:sender;
-- (IBAction)remindMeLater:sender;
-
-@end
-
-@interface NSObject (SUUpdateAlertDelegate)
-- (void)updateAlert:(SUUpdateAlert *)updateAlert finishedWithChoice:(SUUpdateAlertChoice)updateChoice;
-@end
-
-#endif
+++ /dev/null
-//
-// SUUpdateDriver.h
-// Sparkle
-//
-// Created by Andy Matuschak on 5/7/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUUPDATEDRIVER_H
-#define SUUPDATEDRIVER_H
-
-#import <Cocoa/Cocoa.h>
-
-extern NSString *SUUpdateDriverFinishedNotification;
-
-@interface SUUpdateDriver : NSObject
-{
- BOOL finished;
- id delegate;
-}
-- (void)checkForUpdatesAtURL:(NSURL *)appcastURL hostBundle:(NSBundle *)hb;
-- (void)abortUpdate;
-- (BOOL)finished;
-
-- delegate;
-- (void)setDelegate:delegate;
-@end
-
-#endif
+++ /dev/null
-//
-// SUUpdatePermissionPrompt.h
-// Sparkle
-//
-// Created by Andy Matuschak on 1/24/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUUPDATEPERMISSIONPROMPT_H
-#define SUUPDATEPERMISSIONPROMPT_H
-
-#import "Sparkle.h"
-
-typedef enum {
- SUAutomaticallyCheck,
- SUDoNotAutomaticallyCheck
-} SUPermissionPromptResult;
-
-@interface SUUpdatePermissionPrompt : SUWindowController {
- NSBundle *hostBundle;
- id delegate;
- IBOutlet NSTextField *descriptionTextField;
- IBOutlet NSView *moreInfoView;
- IBOutlet NSButton *moreInfoButton;
- BOOL isShowingMoreInfo, shouldSendProfile;
-}
-+ (void)promptWithHostBundle:(NSBundle *)hb delegate:(id)d;
-- (IBAction)toggleMoreInfo:(id)sender;
-- (IBAction)finishPrompt:(id)sender;
-@end
-
-@interface NSObject (SUUpdatePermissionPromptDelegateInformalProtocol)
-- (void)updatePermissionPromptFinishedWithResult:(SUPermissionPromptResult)result;
-@end
-
-#endif
#ifndef SUUPDATER_H
#define SUUPDATER_H
-#import "SUUpdateAlert.h"
-#import "SUVersionComparisonProtocol.h"
+#import <Sparkle/SUVersionComparisonProtocol.h>
-@class SUUpdateDriver, SUAppcastItem, SUAppcast;
+@class SUUpdateDriver, SUAppcastItem, SUHost, SUAppcast;
@interface SUUpdater : NSObject {
NSTimer *checkTimer;
SUUpdateDriver *driver;
- NSBundle *hostBundle;
+ SUHost *host;
IBOutlet id delegate;
}
+ (SUUpdater *)sharedUpdater;
++ (SUUpdater *)updaterForBundle:(NSBundle *)bundle;
+- initForBundle:(NSBundle *)bundle;
+
+- (NSBundle *)hostBundle;
- (void)setDelegate:(id)delegate;
+- delegate;
+
+- (void)setAutomaticallyChecksForUpdates:(BOOL)automaticallyChecks;
+- (BOOL)automaticallyChecksForUpdates;
+
+- (void)setUpdateCheckInterval:(NSTimeInterval)interval;
+- (NSTimeInterval)updateCheckInterval;
+
+- (void)setFeedURL:(NSURL *)feedURL;
+- (NSURL *)feedURL;
+
+- (void)setSendsSystemProfile:(BOOL)sendsSystemProfile;
+- (BOOL)sendsSystemProfile;
+
+- (void)setAutomaticallyDownloadsUpdates:(BOOL)automaticallyDownloadsUpdates;
+- (BOOL)automaticallyDownloadsUpdates;
// This IBAction is meant for a main menu item. Hook up any menu item to this action,
// and Sparkle will check for updates and report back its findings verbosely.
// update is found, it will be downloaded and prepped for installation.
- (void)checkForUpdatesInBackground;
-// This forces an update to begin with a particular driver (see SU*UpdateDriver.h)
-- (void)checkForUpdatesWithDriver:(SUUpdateDriver *)driver;
+// Date of last update check. Returns null if no check has been performed.
+- (NSDate*)lastUpdateCheckDate;
-// For non-.app updates:
-// Call this when your bundle is loaded to tell Sparkle what to update.
-- (void)setHostBundle:(NSBundle *)hostBundle;
+// This begins a "probing" check for updates which will not actually offer to update to that version. The delegate methods, though,
+// (up to updater:didFindValidUpdate: and updaterDidNotFindUpdate:), are called, so you can use that information in your UI.
+- (void)checkForUpdateInformation;
-// Call this to appropriately reschedule or cancel the update checking timer if preferences for time interval or automatic checks change.
-// If you're using a .app, this'll be picked up automatically via NSUserDefaultsController, but for non-.apps, there's no way to observe changes.
-- (void)updatePreferencesChanged;
+// Call this to appropriately schedule or cancel the update checking timer according to the preferences for time interval and automatic checks. This call does not change the date of the next check, but only the internal NSTimer.
+- (void)resetUpdateCycle;
- (BOOL)updateInProgress;
@end
@interface NSObject (SUUpdaterDelegateInformalProtocol)
-// This method allows you to add extra parameters to the appcast URL, potentially based on whether or not
-// Sparkle will also be sending along the system profile. This method should return an array of dictionaries with the following keys:
-- (NSArray *)feedParametersForHostBundle:(NSBundle *)bundle sendingSystemProfile:(BOOL)sendingProfile;
+// This method allows you to add extra parameters to the appcast URL, potentially based on whether or not Sparkle will also be sending along the system profile. This method should return an array of dictionaries with keys: "key", "value", "displayKey", "displayValue", the latter two being specifically for display to the user.
+- (NSArray *)feedParametersForUpdater:(SUUpdater *)updater sendingSystemProfile:(BOOL)sendingProfile;
// Use this to override the default behavior for Sparkle prompting the user about automatic update checks.
-- (BOOL)shouldPromptForPermissionToCheckForUpdatesToHostBundle:(NSBundle *)bundle;
+- (BOOL)updaterShouldPromptForPermissionToCheckForUpdates:(SUUpdater *)bundle;
// Implement this if you want to do some special handling with the appcast once it finishes loading.
-- (void)appcastDidFinishLoading:(SUAppcast *)appcast forHostBundle:(NSBundle *)bundle;
+- (void)updater:(SUUpdater *)updater didFinishLoadingAppcast:(SUAppcast *)appcast;
// If you're using special logic or extensions in your appcast, implement this to use your own logic for finding
// a valid update, if any, in the given appcast.
-- (SUAppcastItem *)bestValidUpdateInAppcast:(SUAppcast *)appcast forHostBundle:(NSBundle *)bundle;
+- (SUAppcastItem *)bestValidUpdateInAppcast:(SUAppcast *)appcast forUpdater:(SUUpdater *)bundle;
// Sent when a valid update is found by the update driver.
-- (void)didFindValidUpdate:(SUAppcastItem *)update toHostBundle:(NSBundle *)bundle;
+- (void)updater:(SUUpdater *)updater didFindValidUpdate:(SUAppcastItem *)update;
// Sent when a valid update is not found.
-- (void)didNotFindUpdateToHostBundle:(NSBundle *)hb;
-
-// Sent when the user makes a choice in the update alert dialog (install now / remind me later / skip this version).
-- (void)userChoseAction:(SUUpdateAlertChoice)action forUpdate:(SUAppcastItem *)update toHostBundle:(NSBundle *)bundle;
+- (void)updaterDidNotFindUpdate:(SUUpdater *)update;
// Sent immediately before installing the specified update.
-- (void)updateWillInstall:(SUAppcastItem *)update toHostBundle:(NSBundle *)bundle;
+- (void)updater:(SUUpdater *)updater willInstallUpdate:(SUAppcastItem *)update;
// Return YES to delay the relaunch until you do some processing; invoke the given NSInvocation to continue.
-- (BOOL)shouldPostponeRelaunchForUpdate:(SUAppcastItem *)update toHostBundle:(NSBundle *)hostBundle untilInvoking:(NSInvocation *)invocation;
+- (BOOL)updater:(SUUpdater *)updater shouldPostponeRelaunchForUpdate:(SUAppcastItem *)update untilInvoking:(NSInvocation *)invocation;
// Called immediately before relaunching.
-- (void)updaterWillRelaunchApplication;
+- (void)updaterWillRelaunchApplication:(SUUpdater *)updater;
// This method allows you to provide a custom version comparator.
// If you don't implement this method or return nil, the standard version comparator will be used.
-- (id <SUVersionComparison>)versionComparatorForHostBundle:(NSBundle *)hb;
+- (id <SUVersionComparison>)versionComparatorForUpdater:(SUUpdater *)updater;
+
+// Returns the path which is used to relaunch the client after the update is installed. By default, the path of the host bundle.
+- (NSString *)pathToRelaunchForUpdater:(SUUpdater *)updater;
@end
+++ /dev/null
-//
-// SUUserDefaults.h
-// Sparkle
-//
-// Created by Andy Matuschak on 12/21/07.
-// Copyright 2007 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUUSERDEFAULTS_H
-#define SUUSERDEFAULTS_H
-
-/*!
- @class
- @abstract A substitute for NSUserDefaults that will work with arbitrary bundle identifiers.
- @discussion Make sure you call -setIdentifier: before using SUUserDefaults. The other methods in this class work just like those in NSUserDefaults.
-*/
-
-@interface SUUserDefaults : NSObject {
- NSString *identifier;
-}
-
-/*!
- @method
- @abstract Returns a singleton instance of the user defaults class.
-*/
-+ (SUUserDefaults *)standardUserDefaults;
-
-/*!
- @method
- @abstract Sets which bundle identifier to use when setting and retrieving defaults.
- @discussion It is imperative that you set the identifier through this method before trying to set or retrieve defaults.
-*/
-- (void)setIdentifier:(NSString *)identifier;
-
-- (id)objectForKey:(NSString *)defaultName;
-- (void)setObject:(id)value forKey:(NSString *)defaultName;
-- (BOOL)boolForKey:(NSString *)defaultName;
-- (void)setBool:(BOOL)value forKey:(NSString *)defaultName;
-@end
-
-#endif
+++ /dev/null
-//
-// SUUserInitiatedUpdateDriver.h
-// Sparkle
-//
-// Created by Andy Matuschak on 5/30/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUUSERINITIATEDUPDATEDRIVER_H
-#define SUUSERINITIATEDUPDATEDRIVER_H
-
-#import <Cocoa/Cocoa.h>
-#import "SUUIBasedUpdateDriver.h"
-
-@interface SUUserInitiatedUpdateDriver : SUUIBasedUpdateDriver {
- SUStatusController *checkingController;
- BOOL isCanceled;
-}
-
-@end
-
-#endif
+++ /dev/null
-//
-// SUVersionComparisonTest.h
-// Sparkle
-//
-// Created by Andy Matuschak on 4/15/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#import <SenTestingKit/SenTestingKit.h>
-
-
-@interface SUVersionComparisonTest : SenTestCase {
-
-}
-
-@end
+++ /dev/null
-//
-// SUWindowController.h
-// Sparkle
-//
-// Created by Andy Matuschak on 2/13/08.
-// Copyright 2008 Andy Matuschak. All rights reserved.
-//
-
-#ifndef SUWINDOWCONTROLLER_H
-#define SUWINDOWCONTROLLER_H
-
-#import <Cocoa/Cocoa.h>
-
-@interface SUWindowController : NSWindowController { }
-// We use this instead of plain old NSWindowController initWithWindowNibName so that we'll be able to find the right path when running in a bundle loaded from another app.
-- (id)initWithHostBundle:(NSBundle *)hb windowNibName:(NSString *)nibName;
-@end
-
-#endif
// Copyright 2006 Andy Matuschak. All rights reserved.
//
-//
-// Prefix header for all source files of the 'Sparkle' target in the 'Sparkle' project.
-//
-
#ifndef SPARKLE_H
#define SPARKLE_H
-#define SULocalizedString(key,comment) NSLocalizedStringFromTableInBundle(key, @"Sparkle", [NSBundle bundleForClass:[self class]], comment)
-#define SUAbstractFail() NSAssert2(nil, @"Can't call %@ on an instance of %@; this is an abstract method!", __PRETTY_FUNCTION__, [self class]);
-
-#ifdef __OBJC__
-#import <Cocoa/Cocoa.h>
-#import "SUConstants.h"
-#endif
-
-
// This list should include the shared headers. It doesn't matter if some of them aren't shared (unless
// there are name-space collisions) so we can list all of them to start with:
-#import "NSBundle+SUAdditions.h"
-#import "NSFileManager+Aliases.h"
-#import "NSFileManager+Authentication.h"
-#import "NSFileManager+Verification.h"
-#import "NSWorkspace_RBAdditions.h"
-#import "NSWorkspace+SystemVersion.h"
-
-#import "NTSynchronousTask.h"
+#import <Sparkle/SUUpdater.h>
-#import "SUAppcast.h"
-#import "SUAppcastItem.h"
-#import "SUAutomaticUpdateAlert.h"
-#import "SUAutomaticUpdateDriver.h"
-#import "SUBasicUpdateDriver.h"
-#import "SUConstants.h"
-#import "SUInstaller.h"
-#import "SUProbingUpdateDriver.h"
-#import "SUScheduledUpdateDriver.h"
-#import "SUStandardVersionComparator.h"
-#import "SUStatusController.h"
-#import "SUSystemProfiler.h"
-#import "SUUIBasedUpdateDriver.h"
-#import "SUUnarchiver.h"
-#import "SUUpdateAlert.h"
-#import "SUUpdateDriver.h"
-#import "SUUpdater.h"
-#import "SUUpdatePermissionPrompt.h"
-#import "SUUserInitiatedUpdateDriver.h"
-#import "SUUserDefaults.h"
-#import "SUVersionComparisonProtocol.h"
-#import "SUWindowController.h"
+#import <Sparkle/SUAppcast.h>
+#import <Sparkle/SUAppcastItem.h>
+#import <Sparkle/SUVersionComparisonProtocol.h>
#endif
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
- <string>1.5</string>
+ <string>340</string>
</dict>
</plist>
--- /dev/null
+Copyright (c) 2006 Andy Matuschak
+
+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
<plist version="1.0">
<dict>
<key>IBFramework Version</key>
- <string>667</string>
+ <string>670</string>
<key>IBLastKnownRelativeProjectPath</key>
<string>Sparkle.xcodeproj</string>
<key>IBOldestOS</key>
<integer>6</integer>
</array>
<key>IBSystem Version</key>
- <string>9D34</string>
+ <string>10A96</string>
<key>targetFramework</key>
<string>IBCocoaFramework</string>
</dict>
<plist version="1.0">
<dict>
<key>IBFramework Version</key>
- <string>667</string>
+ <string>670</string>
<key>IBLastKnownRelativeProjectPath</key>
<string>../Sparkle.xcodeproj</string>
<key>IBOldestOS</key>
<integer>5</integer>
<key>IBOpenObjects</key>
<array>
- <integer>89</integer>
+ <integer>18</integer>
</array>
<key>IBSystem Version</key>
- <string>9D34</string>
+ <string>10A96</string>
<key>targetFramework</key>
<string>IBCocoaFramework</string>
</dict>
<plist version="1.0">
<dict>
<key>IBFramework Version</key>
- <string>667</string>
+ <string>670</string>
<key>IBLastKnownRelativeProjectPath</key>
<string>../Sparkle.xcodeproj</string>
<key>IBOldestOS</key>
<key>IBOpenObjects</key>
<array>
<integer>6</integer>
- <integer>39</integer>
+ <integer>41</integer>
</array>
<key>IBSystem Version</key>
- <string>9D34</string>
+ <string>10A96</string>
<key>targetFramework</key>
<string>IBCocoaFramework</string>
</dict>
<key>IBOldestOS</key>
<integer>5</integer>
<key>IBOpenObjects</key>
- <array>
- <integer>6</integer>
- </array>
+ <array/>
<key>IBSystem Version</key>
- <string>9D34</string>
+ <string>9E17</string>
<key>targetFramework</key>
<string>IBCocoaFramework</string>
</dict>
<key>IBOpenObjects</key>
<array/>
<key>IBSystem Version</key>
- <string>9D34</string>
+ <string>9E17</string>
<key>targetFramework</key>
<string>IBCocoaFramework</string>
</dict>
--- /dev/null
+fr.lproj
\ No newline at end of file
<key>IBOldestOS</key>
<integer>5</integer>
<key>IBOpenObjects</key>
- <array>
- <integer>6</integer>
- </array>
+ <array/>
<key>IBSystem Version</key>
- <string>9D34</string>
+ <string>9E17</string>
<key>targetFramework</key>
<string>IBCocoaFramework</string>
</dict>
<key>IBOpenObjects</key>
<array/>
<key>IBSystem Version</key>
- <string>9D34</string>
+ <string>9E17</string>
<key>targetFramework</key>
<string>IBCocoaFramework</string>
</dict>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IBClasses</key>
+ <array>
+ <dict>
+ <key>CLASS</key>
+ <string>SUWindowController</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSWindowController</string>
+ </dict>
+ <dict>
+ <key>ACTIONS</key>
+ <dict>
+ <key>doNotInstall</key>
+ <string>id</string>
+ <key>installLater</key>
+ <string>id</string>
+ <key>installNow</key>
+ <string>id</string>
+ </dict>
+ <key>CLASS</key>
+ <string>SUAutomaticUpdateAlert</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>SUWindowController</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>FirstResponder</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSObject</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSObject</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ </dict>
+ </array>
+ <key>IBVersion</key>
+ <string>1</string>
+</dict>
+</plist>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IBFramework Version</key>
+ <string>670</string>
+ <key>IBLastKnownRelativeProjectPath</key>
+ <string>../Sparkle.xcodeproj</string>
+ <key>IBOldestOS</key>
+ <integer>5</integer>
+ <key>IBOpenObjects</key>
+ <array>
+ <integer>6</integer>
+ </array>
+ <key>IBSystem Version</key>
+ <string>9E17</string>
+ <key>targetFramework</key>
+ <string>IBCocoaFramework</string>
+</dict>
+</plist>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IBClasses</key>
+ <array>
+ <dict>
+ <key>CLASS</key>
+ <string>SUWindowController</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSWindowController</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSApplication</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSResponder</string>
+ </dict>
+ <dict>
+ <key>ACTIONS</key>
+ <dict>
+ <key>installUpdate</key>
+ <string>id</string>
+ <key>remindMeLater</key>
+ <string>id</string>
+ <key>skipThisVersion</key>
+ <string>id</string>
+ </dict>
+ <key>CLASS</key>
+ <string>SUUpdateAlert</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>OUTLETS</key>
+ <dict>
+ <key>delegate</key>
+ <string>id</string>
+ <key>description</key>
+ <string>NSTextField</string>
+ <key>releaseNotesView</key>
+ <string>WebView</string>
+ </dict>
+ <key>SUPERCLASS</key>
+ <string>SUWindowController</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>FirstResponder</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSObject</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSObject</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ </dict>
+ </array>
+ <key>IBVersion</key>
+ <string>1</string>
+</dict>
+</plist>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IBFramework Version</key>
+ <string>670</string>
+ <key>IBLastKnownRelativeProjectPath</key>
+ <string>../Sparkle.xcodeproj</string>
+ <key>IBOldestOS</key>
+ <integer>5</integer>
+ <key>IBOpenObjects</key>
+ <array>
+ <integer>6</integer>
+ </array>
+ <key>IBSystem Version</key>
+ <string>9E17</string>
+ <key>targetFramework</key>
+ <string>IBCocoaFramework</string>
+</dict>
+</plist>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IBClasses</key>
+ <array>
+ <dict>
+ <key>CLASS</key>
+ <string>NSObject</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>SUWindowController</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSWindowController</string>
+ </dict>
+ <dict>
+ <key>ACTIONS</key>
+ <dict>
+ <key>finishPrompt</key>
+ <string>id</string>
+ <key>toggleMoreInfo</key>
+ <string>id</string>
+ </dict>
+ <key>CLASS</key>
+ <string>SUUpdatePermissionPrompt</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>OUTLETS</key>
+ <dict>
+ <key>delegate</key>
+ <string>id</string>
+ <key>descriptionTextField</key>
+ <string>NSTextField</string>
+ <key>moreInfoButton</key>
+ <string>NSButton</string>
+ <key>moreInfoView</key>
+ <string>NSView</string>
+ </dict>
+ <key>SUPERCLASS</key>
+ <string>SUWindowController</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>FirstResponder</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSObject</string>
+ </dict>
+ </array>
+ <key>IBVersion</key>
+ <string>1</string>
+</dict>
+</plist>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IBFramework Version</key>
+ <string>670</string>
+ <key>IBLastKnownRelativeProjectPath</key>
+ <string>../Sparkle.xcodeproj</string>
+ <key>IBOldestOS</key>
+ <integer>5</integer>
+ <key>IBOpenObjects</key>
+ <array/>
+ <key>IBSystem Version</key>
+ <string>9E17</string>
+ <key>targetFramework</key>
+ <string>IBCocoaFramework</string>
+</dict>
+</plist>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IBClasses</key>
+ <array>
+ <dict>
+ <key>CLASS</key>
+ <string>SUWindowController</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSWindowController</string>
+ </dict>
+ <dict>
+ <key>ACTIONS</key>
+ <dict>
+ <key>doNotInstall</key>
+ <string>id</string>
+ <key>installLater</key>
+ <string>id</string>
+ <key>installNow</key>
+ <string>id</string>
+ </dict>
+ <key>CLASS</key>
+ <string>SUAutomaticUpdateAlert</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>SUWindowController</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>FirstResponder</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSObject</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSObject</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ </dict>
+ </array>
+ <key>IBVersion</key>
+ <string>1</string>
+</dict>
+</plist>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IBFramework Version</key>
+ <string>670</string>
+ <key>IBLastKnownRelativeProjectPath</key>
+ <string>../Sparkle.xcodeproj</string>
+ <key>IBOldestOS</key>
+ <integer>5</integer>
+ <key>IBOpenObjects</key>
+ <array>
+ <integer>6</integer>
+ </array>
+ <key>IBSystem Version</key>
+ <string>10A96</string>
+ <key>targetFramework</key>
+ <string>IBCocoaFramework</string>
+</dict>
+</plist>
--- /dev/null
+{
+ IBClasses = (
+ {
+ CLASS = FirstResponder;
+ LANGUAGE = ObjC;
+ SUPERCLASS = NSObject;
+ },
+ {
+ CLASS = NSApplication;
+ LANGUAGE = ObjC;
+ SUPERCLASS = NSResponder;
+ },
+ {
+ CLASS = NSObject;
+ LANGUAGE = ObjC;
+ },
+ {
+ ACTIONS = {
+ installUpdate = id;
+ remindMeLater = id;
+ skipThisVersion = id;
+ };
+ CLASS = SUUpdateAlert;
+ LANGUAGE = ObjC;
+ OUTLETS = {
+ delegate = id;
+ description = NSTextField;
+ releaseNotesView = WebView;
+ };
+ SUPERCLASS = SUWindowController;
+ },
+ {
+ CLASS = SUWindowController;
+ LANGUAGE = ObjC;
+ SUPERCLASS = NSWindowController;
+ }
+ );
+ IBVersion = 1;
+}
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IBDocumentLocation</key>
+ <string>69 14 356 240 0 0 1280 778 </string>
+ <key>IBFramework Version</key>
+ <string>489.0</string>
+ <key>IBLastKnownRelativeProjectPath</key>
+ <string>../Sparkle.xcodeproj</string>
+ <key>IBOldestOS</key>
+ <integer>5</integer>
+ <key>IBSystem Version</key>
+ <string>9D34</string>
+ <key>targetFramework</key>
+ <string>IBCocoaFramework</string>
+</dict>
+</plist>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IBClasses</key>
+ <array>
+ <dict>
+ <key>CLASS</key>
+ <string>SUWindowController</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSWindowController</string>
+ </dict>
+ <dict>
+ <key>ACTIONS</key>
+ <dict>
+ <key>finishPrompt</key>
+ <string>id</string>
+ <key>toggleMoreInfo</key>
+ <string>id</string>
+ </dict>
+ <key>CLASS</key>
+ <string>SUUpdatePermissionPrompt</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>OUTLETS</key>
+ <dict>
+ <key>delegate</key>
+ <string>id</string>
+ <key>descriptionTextField</key>
+ <string>NSTextField</string>
+ <key>moreInfoButton</key>
+ <string>NSButton</string>
+ <key>moreInfoView</key>
+ <string>NSView</string>
+ </dict>
+ <key>SUPERCLASS</key>
+ <string>SUWindowController</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>FirstResponder</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ <key>SUPERCLASS</key>
+ <string>NSObject</string>
+ </dict>
+ <dict>
+ <key>CLASS</key>
+ <string>NSObject</string>
+ <key>LANGUAGE</key>
+ <string>ObjC</string>
+ </dict>
+ </array>
+ <key>IBVersion</key>
+ <string>1</string>
+</dict>
+</plist>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>IBFramework Version</key>
+ <string>670</string>
+ <key>IBLastKnownRelativeProjectPath</key>
+ <string>../Sparkle.xcodeproj</string>
+ <key>IBOldestOS</key>
+ <integer>5</integer>
+ <key>IBOpenObjects</key>
+ <array>
+ <integer>6</integer>
+ </array>
+ <key>IBSystem Version</key>
+ <string>10A96</string>
+ <key>targetFramework</key>
+ <string>IBCocoaFramework</string>
+</dict>
+</plist>