-
Notifications
You must be signed in to change notification settings - Fork 5
/
ObjCPluginManager.h
40 lines (32 loc) · 1015 Bytes
/
ObjCPluginManager.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
//
// ObjCPluginManager.h
// PluginManager
//
// Created by Grayson Hansard
// Copyright 2009 From Concentrate Software. All rights reserved.
//
#import <Cocoa/Cocoa.h>
#import "PluginManager.h"
#import "PluginManagerProtocol.h"
enum {
ObjCPMBundleLoadError = 1,
ObjCPMClassLoadError = 2
};
@interface ObjCPluginManager : NSObject <PluginManagerProtocol> {
NSMutableDictionary *_plugins;
}
@property (retain) NSMutableDictionary *plugins;
-(NSString *)name;
-(NSArray *)extensions;
-(NSArray *)pluginsForProperty:(NSString *)property forValue:(id)forValue withValue:(id)value;
-(void)runPlugin:(NSDictionary *)plugin forValue:(id)forValue withValue:(id)withValue;
-(id)runScriptAtPath:(NSString *)path;
-(BOOL)canRunAsScript;
@end
@protocol ObjCPlugin
-(NSString *)actionProperty;
-(BOOL)actionEnableForValue:(id)forValue withValue:(id)withValue;
-(NSString *)actionTitleForValue:(id)forValue withValue:(id)withValue;
-(void)actionPerformForValue:(id)forValue withValue:(id)withValue;
-(id)run;
@end