/* NSViewController.h Copyright (C) 2010 Free Software Foundation, Inc. This file is part of the GNUstep GUI Library. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; see the file COPYING.LIB. If not, see or write to the Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef _GNUstep_H_NSViewController #define _GNUstep_H_NSViewController #import #import #import #import #if OS_API_VERSION(MAC_OS_X_VERSION_10_5, GS_API_LATEST) @class NSArray, NSBundle, NSPointerArray, NSView, NSMapTable, NSStoryboard; #if OS_API_VERSION(MAC_OS_X_VERSION_10_10, GS_API_LATEST) enum { NSViewControllerTransitionNone = 0x0, NSViewControllerTransitionCrossfade = 0x1, NSViewControllerTransitionSlideUp = 0x10, NSViewControllerTransitionSlideDown = 0x20, NSViewControllerTransitionSlideLeft = 0x40, NSViewControllerTransitionSlideRight = 0x80, NSViewControllerTransitionSlideForward = 0x140, NSViewControllerTransitionSlideBackward = 0x180, NSViewControllerTransitionAllowUserInteraction = 0x1000, }; typedef NSUInteger NSViewControllerTransitionOptions; #endif APPKIT_EXPORT_CLASS @interface NSViewController : NSResponder { @private NSString *_nibName; NSBundle *_nibBundle; id _representedObject; NSString *_title; IBOutlet NSView *view; NSArray *_topLevelObjects; NSPointerArray *_editors; id _autounbinder; NSString *_designNibBundleIdentifier; NSMapTable *_segueMap; NSStoryboard *_storyboard; // a weak reference to the origin storyboard. struct ___vcFlags { unsigned int nib_is_loaded:1; unsigned int RESERVED:31; } _vcFlags; id _reserved; } - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil; - (void)setRepresentedObject:(id)representedObject; - (id)representedObject; - (void)setTitle:(NSString *)title; - (NSString *)title; - (void)setView:(NSView *)aView; - (NSView *)view; - (void)loadView; - (NSString *)nibName; - (NSBundle *)nibBundle; - (void) viewWillLoad; - (void) viewDidLoad; - (void) viewWillAppear: (BOOL)animated; - (void) viewIsAppearing: (BOOL)animated; - (void) viewDidAppear: (BOOL)animated; - (void) viewWillDisappear: (BOOL)animated; - (void) viewDidDisappear: (BOOL)animated; #if OS_API_VERSION(MAC_OS_X_VERSION_10_10, GS_API_LATEST) - (void) dismissViewController: (NSViewController *)viewController; - (void) dismissController: (id)sender; #endif @end #endif // OS_API_VERSION #endif /* _GNUstep_H_NSViewController */