28#define _Class _ViewController
39 release(this->childViewControllers);
45#pragma mark - ViewController
53 assert(childViewController);
115 if (self->
view == NULL) {
133 if (parentViewController) {
146 assert(childViewController);
229 if (view != self->
view) {
237 self->
view = retain(view);
305#pragma mark - Class lifecycle
312 ((ObjectInterface *) clazz->interface)->dealloc =
dealloc;
315 ((ViewControllerInterface *) clazz->interface)->init =
init;
317 ((ViewControllerInterface *) clazz->interface)->loadViewIfNeeded =
loadViewIfNeeded;
321 ((ViewControllerInterface *) clazz->interface)->respondToEvent =
respondToEvent;
324 ((ViewControllerInterface *) clazz->interface)->setView =
setView;
325 ((ViewControllerInterface *) clazz->interface)->viewDidAppear =
viewDidAppear;
326 ((ViewControllerInterface *) clazz->interface)->viewDidDisappear =
viewDidDisappear;
327 ((ViewControllerInterface *) clazz->interface)->viewWillAppear =
viewWillAppear;
328 ((ViewControllerInterface *) clazz->interface)->viewWillDisappear =
viewWillDisappear;
340 clazz = _initialize(&(
const ClassDef) {
341 .name =
"ViewController",
342 .superclass = _Object(),
345 .interfaceSize =
sizeof(ViewControllerInterface),
static Box * initWithFrame(Box *self, const SDL_Rect *frame)
static void updateBindings(View *self)
static void addSubview(View *self, View *subview)
static void removeFromSuperview(View *self)
static void enumerate(View *self, ViewEnumerator enumerator, ident data)
static void viewWillAppear(ViewController *self)
static void addChildViewController(ViewController *self, ViewController *childViewController)
Class * _ViewController(void)
static void loadView(ViewController *self)
static void viewWillDisappear(ViewController *self)
static void viewDidAppear_enumerate(const Array *array, ident obj, ident data)
ArrayEnumerator for viewDidAppear recursion.
static void loadViewIfNeeded(ViewController *self)
static void moveToParentViewController(ViewController *self, ViewController *parentViewController)
static void viewWillAppear_enumerate(const Array *array, ident obj, ident data)
ArrayEnumerator for viewWillAppear recursion.
static void renderDeviceWillReset(ViewController *self)
static void viewDidAppear(ViewController *self)
static void removeChildViewController(ViewController *self, ViewController *childViewController)
static void renderDeviceWillReset_enumerate(const Array *array, ident obj, ident data)
ArrayEnumerator for renderDeviceWillReset recursion.
static void respondToEvent(ViewController *self, const SDL_Event *event)
static void renderDeviceDidReset(ViewController *self)
static ViewController * init(ViewController *self)
static void removeFromParentViewController(ViewController *self)
static void setView(ViewController *self, View *view)
static void dealloc(Object *self)
static void respondToEvent_enumerate(const Array *array, ident obj, ident data)
ArrayEnumerator for respondToEvent recursion.
static void initialize(Class *clazz)
static void renderDeviceDidReset_enumerate(const Array *array, ident obj, ident data)
ArrayEnumerator for renderDeviceDidReset recursion.
static void viewDidDisappear(ViewController *self)
static void viewDidDisappear_enumerate(const Array *array, ident obj, ident data)
ArrayEnumerator for viewDidDisappear recursion.
static void viewWillDisappear_enumerate(const Array *array, ident obj, ident data)
ArrayEnumerator for viewWillDisappear recursion.
A ViewController manages a View and its descendants.
A ViewController manages a View and its descendants.
Array * childViewControllers
The child view controllers.
View * view
The main view.
void loadView(ViewController *self)
Loads this ViewController's View.
ViewController * parentViewController
The parent view controller.
Views are the fundamental building blocks of ObjectivelyMVC user interfaces.
ViewController * viewController
The ViewController.
SDL_Window * window
The window.
int autoresizingMask
The ViewAutoresizing bitmask.