I have an application where I need to access model data from my subviews. I've been using bindings to pass data across views; however, the bindings to self
seem to be causing retain cycles (dealloc never gets called). When should I remove the bindings if not in the dealloc method? Thanks.
P.S. I know the method of binding to a proxy object controller, but I'd like to avoid using it if possible.
Here's an example of what I've been doing:
// Top-level Project view
@interface ProjectViewController : NSViewController {
FoldersView *foldersView;
}
@property (strong) NSObjectController *projectObjectController; // holds Project instance
end
// Displays folders
@interface FoldersView : NSView {
FolderView *folderView;
}
@property (weak) NSObjectController *projectObjectController; // binded from parent
@property (strong) NSArrayController *foldersArrayController; // binded to project.folders
@end
// Displays selected folder
@interface FolderView : NSView
@property (weak) NSArrayController *foldersArrayController; // binded from parent
@property (strong) NSObjectController *folderObjectController; // binded to folders.selection
@end