Using class extension is probably a safe way to extends such classes.

@interface SXPhotoshopApplication (MyExtension)

- (void)myWrapper;

@end


> Le 29 juin 2015 à 13:54, Dave <d...@looktowindward.com> a écrit :
> 
> Hi,
> 
> I’m using the Scripting Bridge, and I was wondering if it ok to subclass 
> SBXXX classes. Basically, I have a header file generated by the “sdp” tool 
> with definitions as below:
> 
> And I’d like to subclass this to add some extra wrapping to hide some of the 
> nastiness from the rest of the app and provide a tighter integration with the 
> current app handling. I remember reading somewhere that these classes 
> shouldn’t be subclassed, but I can’t seem to find it again now.
> 
> Thanks a lot
> Dave
> 
> -------------------------
> 
> @interface SXPhotoshopApplication : SBApplication
> 
> - (SBElementArray *) documents;
> - (SBElementArray *) fonts;
> - (SBElementArray *) notifiers;
> 
> @property (copy, readonly) NSNumber *bestType;  // the best type for the 
> object's value
> @property (copy, readonly) NSNumber *defaultType;  // the default type for 
> the object's value
> @property (copy) NSDictionary *properties;  // all of this object's 
> properties returned in a single record
> @property (copy) SXPhotoshopColorValue *backgroundColor;
> @property (copy, readonly) NSString *build;  // the build number of Adobe 
> Photoshop application
> @property (copy) id colorSettings;  // name of selected color settings' set
> @property (copy) SXPhotoshopDocument *currentDocument;  // the frontmost 
> document
> @property SXPhotoshopE050 displayDialogs;  // controls whether or not 
> Photoshop displays dialogs
> @property (copy) SXPhotoshopColorValue *foregroundColor;
> @property (readonly) double freeMemory;  // the amount of unused memory 
> available to Adobe Photoshop
> @property (readonly) BOOL frontmost;  // is Photoshop the frontmost 
> application?
> @property (copy, readonly) NSString *locale;  // language locale of 
> application
> @property (copy, readonly) NSArray *macintoshFileTypes;  // list of file 
> image types Photoshop can open
> @property (copy, readonly) NSString *name;  // the application's name
> @property BOOL notifiersEnabled;  // enable or disable all notifiers
> @property (copy, readonly) id preferencesFolder;  // full path to the 
> preferences folder
> @property (copy, readonly) NSArray *recentFiles;  // files in the recent file 
> list
> @property (copy, readonly) NSString *scriptingBuildDate;  // the build date 
> of the scripting interface
> @property (copy, readonly) NSString *scriptingVersion;  // the version of the 
> Scripting interface
> @property (copy, readonly) SXPhotoshopSettingsObject *settings;  // 
> preference settings
> @property (copy, readonly) NSString *systemInformation;  // system 
> information of the host application and machine
> @property (copy, readonly) NSString *version;  // the version of Adobe 
> Photoshop application
> @property (copy, readonly) NSArray *windowsFileTypes;  // list of file image 
> extensions Photoshop can open
> 
> - (void) AETEScriptsScriptsJavaScriptNameName:(NSString *)JavaScriptNameName 
> JavaScriptFileFile:(NSString *)JavaScriptFileFile 
> JavaScriptTextText:(NSString *)JavaScriptTextText 
> JavaScriptDebuggingDebugging:(BOOL)JavaScriptDebuggingDebugging 
> JavaScriptMessageMessage:(NSString *)JavaScriptMessageMessage;  // Photoshop 
> scripting support plug-in
> - (void) open:(id)x as:(SXPhotoshopOpAs)as 
> withOptions:(SXPhotoshopOpenOptions *)withOptions 
> showingDialogs:(SXPhotoshopE050)showingDialogs smartObject:(BOOL)smartObject; 
>  // open the specified document file(s)
> - (void) print:(id)x sourceSpace:(SXPhotoshopE945)sourceSpace 
> printSpace:(NSString *)printSpace intent:(SXPhotoshopE130)intent 
> blackpointCompensation:(BOOL)blackpointCompensation;  // print the specified 
> object(s)
> - (void) quit;  // quit the application
> - (NSArray *) PhotoshopOpenDialog;  // use the Photoshop open dialog to 
> select files
> - (NSString *) batch:(NSString *)x fromFiles:(NSArray *)fromFiles 
> from:(NSString *)from withOptions:(SXPhotoshopBatchOptions *)withOptions;  // 
> run the batch automation routine
> - (NSString *) createPDFPresentationFromFiles:(NSArray *)fromFiles 
> toFile:(id)toFile withOptions:(SXPhotoshopPresentationOptions *)withOptions;  
> // create a PDF presentation file
> - (NSString *) createContactSheetFromFiles:(NSArray *)fromFiles 
> withOptions:(SXPhotoshopContactSheetOptions *)withOptions;  // create a 
> contact sheet from multiple files
> - (NSString *) createPhotoGalleryFromFolder:(id)fromFolder 
> toFolder:(id)toFolder withOptions:(SXPhotoshopGalleryOptions *)withOptions;  
> // Creates a web photo gallery
> - (NSString *) createPhotoMergeFromFiles:(NSArray *)fromFiles;  // 
> DEPRECATED. Merges multiple files into one, user interaction required.
> - (NSString *) createPicturePackageFromFiles:(NSArray *)fromFiles 
> withOptions:(SXPhotoshopPicturePackageOptions *)withOptions;  // create a 
> picture package from multiple files
> - (BOOL) featureEnabledName:(NSString *)name;  // is the feature with the 
> given name enabled?
> - (void) purge:(SXPhotoshopE150)x;  // purges one or more caches
> - (void) refresh;  // pause the script until the application refreshes
> - (SXPhotoshopRGBColor *) webSafeColorFor:(SXPhotoshopColorValue *)for_;  // 
> find the closest web safe color for a color
> - (void) clear;  // clear current selection
> - (void) copy NS_RETURNS_NOT_RETAINED;  // copy current selection to the 
> clipboard
> - (void) copyMerged NS_RETURNS_NOT_RETAINED;  // copy current selection to 
> the clipboard. Include data in all visible layers.
> - (void) cut;  // cut current selection to the clipboard
> - (void) doAction:(NSString *)x from:(NSString *)from;  // play an action 
> from the Actions Palette
> - (NSString *) doJavascript:(id)x withArguments:(NSArray *)withArguments 
> showDebugger:(SXPhotoshopE940)showDebugger;  // execute a JavaScript
> - (void) pasteClippingToSelection:(BOOL)clippingToSelection;  // paste 
> clipboard into the current document
> 
> @end
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> _______________________________________________
> 
> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
> 
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
> 
> Help/Unsubscribe/Update your Subscription:
> https://lists.apple.com/mailman/options/cocoa-dev/mailing%40xenonium.com
> 
> This email sent to mail...@xenonium.com


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to