mirror of
https://github.com/nickshanks/ResKnife.git
synced 2024-11-17 12:05:12 +00:00
76 lines
2.9 KiB
Objective-C
76 lines
2.9 KiB
Objective-C
/* =============================================================================
|
|
PROJECT: ResKnife
|
|
FILE: ResKnifeResourceProtocol.h
|
|
|
|
PURPOSE: This protocol wraps up whatever implementation the host
|
|
application (i.e. ResKnife) uses for resources in a way that
|
|
every editor can get enough information about the resource
|
|
being edited.
|
|
|
|
Or in Nick's immortal words (which I found only *after* I had
|
|
written the stuff above):
|
|
|
|
This protocol allows your plug to interrogate a resource to
|
|
find out information about it.
|
|
|
|
AUTHORS: Nick Shanks, nick(at)nickshanks.com, (c) ~2001.
|
|
M. Uli Kusterer, witness(at)zathras.de, (c) 2003.
|
|
|
|
REVISIONS:
|
|
2003-08-05 UK Added nameForEditorWindow.
|
|
2003-07-31 UK Added document accessor, commented.
|
|
========================================================================== */
|
|
|
|
#import <Cocoa/Cocoa.h>
|
|
|
|
@protocol ResKnifeResourceProtocol
|
|
|
|
- (void)touch;
|
|
- (BOOL)isDirty;
|
|
|
|
- (NSString *)name;
|
|
- (void)setName:(NSString *)newName;
|
|
- (NSString *)type;
|
|
- (void)setType:(NSString *)newType;
|
|
- (NSNumber *)resID;
|
|
- (void)setResID:(NSNumber *)newResID;
|
|
- (NSNumber *)attributes;
|
|
- (void)setAttributes:(NSNumber *)newAttributes;
|
|
- (NSNumber *)size;
|
|
- (NSData *)data;
|
|
- (void)setData:(NSData *)newData;
|
|
|
|
- (NSString *)defaultWindowTitle;
|
|
- (NSDocument *)document; // Owner of this resource. Useful for looking for resources in same file as yours.
|
|
|
|
// These methods are used to retrieve resources other than the one you're editing.
|
|
// Passing a document of nil will indicate to search in all open documents.
|
|
// There is currently no way to search in files which haven't been opened.
|
|
// All returned objects are auoreleased. Retain if you want to keep them.
|
|
|
|
// This method may return an empty array
|
|
+ (NSArray *)allResourcesOfType:(NSString *)typeValue inDocument:(NSDocument *)searchDocument;
|
|
// The next two return the first matching resource found, or nil.
|
|
+ (id)resourceOfType:(NSString *)typeValue andID:(NSNumber *)resIDValue inDocument:(NSDocument *)searchDocument;
|
|
+ (id)resourceOfType:(NSString *)typeValue withName:(NSString *)nameValue inDocument:(NSDocument *)searchDocument;
|
|
|
|
@end
|
|
|
|
|
|
// See note in Notifications.m about usage of these
|
|
extern NSString *ResourceWillChangeNotification;
|
|
extern NSString *ResourceNameWillChangeNotification;
|
|
extern NSString *ResourceTypeWillChangeNotification;
|
|
extern NSString *ResourceIDWillChangeNotification;
|
|
extern NSString *ResourceAttributesWillChangeNotification;
|
|
extern NSString *ResourceDataWillChangeNotification;
|
|
extern NSString *ResourceWillBeSavedNotification;
|
|
|
|
extern NSString *ResourceNameDidChangeNotification;
|
|
extern NSString *ResourceTypeDidChangeNotification;
|
|
extern NSString *ResourceIDDidChangeNotification;
|
|
extern NSString *ResourceAttributesDidChangeNotification;
|
|
extern NSString *ResourceDataDidChangeNotification;
|
|
extern NSString *ResourceDidChangeNotification;
|
|
extern NSString *ResourceWasSavedNotification;
|