00001 #ifndef INCLUDED_NIBCONTROLLER_H
00002 #define INCLUDED_NIBCONTROLLER_H
00003
00004
00005
00006
00007
00008
00009
00010 #import <Cocoa/Cocoa.h>
00011
00012
00013 @class NIBManager;
00014 @class NIBContext;
00015 @class MetadataParser;
00016
00021 @interface NIBController : NSObject {
00022
00023 NIBManager * manager;
00024 NSManagedObjectModel * model;
00025 NSMutableArray * controllers;
00026 NSMutableDictionary * menus;
00027 NSView * window;
00028 }
00029
00030
00031 - (NIBManager *)manager;
00032 - (NSManagedObjectModel *)model;
00033 - (NSMutableArray *)controllers;
00034 - (NSMutableDictionary *)menus;
00035 - (NSView *)window;
00036 - (void)setManager:(NIBManager *)myManager;
00037 - (void)setModel:(NSManagedObjectModel *)myModel;
00038 - (void)setControllers:(NSMutableArray *)myControllers;
00039 - (void)setMenus:(NSMutableDictionary *)myMenus;
00040 - (void)setWindow:(NSView *)myWindow;
00041 - (void)setEditable:(BOOL)editable withContext:(NIBContext *)context forContext:(NSString *)name;
00042 - (void)setEditable:(BOOL)editable withContext:(NIBContext *)context forEntity:(NSString *)entity forFilter:(NSString *)filter;
00043 - (void)addController:(NSObjectController *)myController withContext:(NIBContext *)context;
00044 - (NSObjectController *)getController:(int)index;
00045 - (NSManagedObject *)getObject:(NSString *)context;
00046 - (NSMenu *)getMenu:(NSString *)context;
00047 - (NSView *)determineWindow:(NSView *)myWindow;
00048 - (NSView *)processWindow:(NSView *)myWindow;
00049
00050 - (BOOL)isValid:(NSError **)error;
00051 - (BOOL)isValid:(NSError **)error forEntity:(NSString *)context;
00052 - (BOOL)isEnabled;
00053
00054 - (IBAction)doExecute:(id)sender;
00055 - (IBAction)doCallback:(id)sender;
00056
00057 - (void)doSetup;
00058 - (void)doValidate;
00059 - (void)doInitialise;
00060 - (void)doInitialiseWith:(NIBManager *)manager;
00061 - (BOOL)doMerge:(NIBController *)controller;
00062 + (BOOL)doMerge:(NSManagedObject *)source toObject:(NSManagedObject *)destination;
00063
00064 + (BOOL)isDynamicPopUp:(NSString*)key withMetadata:(MetadataParser *)parser;
00065
00066 - (void)doPopulateForKey:(NSString*)key withData:(NSDictionary *)data withMetadata:(MetadataParser *)parser withObject:(NSManagedObject *)object;
00067 - (void)doPopulate:(NSDictionary *)data withMetadata:(MetadataParser *)parser;
00068 - (void)doPopulate:(NSDictionary *)data withMetadata:(MetadataParser *)parser withEntity:(NSString *)context;
00069 - (void)doPopulate:(NSDictionary *)data withMetadata:(MetadataParser *)parser withObject:(NSManagedObject *)object;
00070 - (NSMutableDictionary *)doParse:(MetadataParser *)parser;
00071 - (NSMutableDictionary *)doParse:(MetadataParser *)parser stringifyDates:(BOOL)stringify;
00072 - (NSMutableDictionary *)doParse:(MetadataParser *)parser withEntity:(NSString *)context;
00073 - (NSMutableDictionary *)doParse:(MetadataParser *)parser withEntity:(NSString *)context stringifyDates:(BOOL)stringify;
00074 - (NSMutableDictionary *)doParse:(MetadataParser *)parser withObject:(NSManagedObject *)object stringifyDates:(BOOL)stringify;
00075
00076
00077 @end
00078 #endif