28#define _Class _TabViewController
39 release(this->tabView);
44#pragma mark - ViewController
58 assert(this->tabView);
74 $(this->tabView,
addTab, tab);
93#pragma mark - TabViewController
116 assert(viewController);
118 if (viewController->
view) {
147#pragma mark - Class lifecycle
154 ((ObjectInterface *) clazz->interface)->dealloc =
dealloc;
156 ((ViewControllerInterface *) clazz->interface)->loadView =
loadView;
160 ((TabViewControllerInterface *) clazz->interface)->init =
init;
174 clazz = _initialize(&(
const ClassDef) {
175 .name =
"TabViewController",
179 .interfaceSize =
sizeof(TabViewControllerInterface),
static Box * initWithFrame(Box *self, const SDL_Rect *frame)
static void addSubview(View *self, View *subview)
static void addTab(TabView *self, TabViewItem *tab)
static void removeTab(TabView *self, TabViewItem *tab)
static void addChildViewController(ViewController *self, ViewController *childViewController)
static bool viewControllerForTab_predicate(const ident obj, ident data)
Predicate for viewControllerForTab.
static void loadView(ViewController *self)
static TabViewController * init(TabViewController *self)
static void removeChildViewController(ViewController *self, ViewController *childViewController)
static bool tabForViewController_predicate(const ident obj, ident data)
Predicate for tabViewItemFor.
static ViewController * viewControllerForTab(const TabViewController *self, const TabViewItem *tab)
static void dealloc(Object *self)
static TabViewItem * tabForViewController(const TabViewController *self, const ViewController *viewController)
static void initialize(Class *clazz)
Class * _TabViewController(void)
TabViewControllers arrange and manage their child ViewControllers in a tab view interface.
static TabViewItem * initWithView(TabViewItem *self, View *view)
@ ViewAutoresizingContain
Class * _ViewController(void)
TabViewControllers arrange and manage their child ViewControllers in a tab view interface.
ViewController viewController
The superclass.
TabView * tabView
The TabView.
TabViewItem * tabForViewController(const TabViewController *, const ViewController *)
Returns the TabViewItem for the specified child ViewController, or NULL.
TabViews allow for the display of multiple pages of information within a single view.
Array * tabs
The TabViewItems.
TabViewItems embed Views in a TabView.
View * view
The View this TabViewItem embeds.
A ViewController manages a View and its descendants.
Array * childViewControllers
The child view controllers.
View * view
The main view.
Views are the fundamental building blocks of ObjectivelyMVC user interfaces.
int autoresizingMask
The ViewAutoresizing bitmask.