]> git.saurik.com Git - cydia.git/blobdiff - iPhonePrivate.h
Cydia no longer needs its own Substrate Safe Mode.
[cydia.git] / iPhonePrivate.h
index 8e63ef126f78a893f4cb600e32cc05830380edfb..411ff9643680e6c263e3174cabd480624774f5a1 100644 (file)
@@ -1,7 +1,15 @@
 #ifndef CYDIA_UIKITPRIVATE_H
+#define CYDIA_UIKITPRIVATE_H
 
-#include <GraphicsServices/GraphicsServices.h>
+// #include <*> {{{
+#include <JavaScriptCore/JavaScriptCore.h>
+#include <UIKit/UIKit.h>
+// }}}
+// typedef GS* {{{
+typedef struct __GSEvent *GSEventRef;
+// }}}
 
+// enum UI* {{{
 typedef enum {
     UIGestureAttributeMinDegrees,                 /*float*/
     UIGestureAttributeMaxDegrees,                 /*float*/
@@ -20,21 +28,315 @@ typedef enum {
     UINavigationButtonStyleDestructive
 } UINavigationButtonStyle;
 
+static const UIActivityIndicatorViewStyle UIActivityIndicatorViewStyleWhiteSmall(static_cast<UIActivityIndicatorViewStyle>(3));
+static const UIActivityIndicatorViewStyle UIActivityIndicatorViewStyleGraySmall(static_cast<UIActivityIndicatorViewStyle>(4));
+static const UIActivityIndicatorViewStyle UIActivityIndicatorViewStyleWhiteTiny(static_cast<UIActivityIndicatorViewStyle>(5));
+// }}}
+// #define * * {{{
+#define UIDataDetectorTypeAutomatic 0x80000000
+// }}}
+
+// @class DOM*; {{{
+@class DOMRGBColor;
+// }}}
+// @class Web*; {{{
+@class WebDataSource;
+@class WebScriptObject;
+@class WebView;
+// }}}
+
+// enum DOM_* {{{
+enum {
+    DOM_CSS_UNKNOWN = 0,
+    DOM_CSS_NUMBER = 1,
+    DOM_CSS_PERCENTAGE = 2,
+    DOM_CSS_EMS = 3,
+    DOM_CSS_EXS = 4,
+    DOM_CSS_PX = 5,
+    DOM_CSS_CM = 6,
+    DOM_CSS_MM = 7,
+    DOM_CSS_IN = 8,
+    DOM_CSS_PT = 9,
+    DOM_CSS_PC = 10,
+    DOM_CSS_DEG = 11,
+    DOM_CSS_RAD = 12,
+    DOM_CSS_GRAD = 13,
+    DOM_CSS_MS = 14,
+    DOM_CSS_S = 15,
+    DOM_CSS_HZ = 16,
+    DOM_CSS_KHZ = 17,
+    DOM_CSS_DIMENSION = 18,
+    DOM_CSS_STRING = 19,
+    DOM_CSS_URI = 20,
+    DOM_CSS_IDENT = 21,
+    DOM_CSS_ATTR = 22,
+    DOM_CSS_COUNTER = 23,
+    DOM_CSS_RECT = 24,
+    DOM_CSS_RGBCOLOR = 25,
+    DOM_CSS_VW = 26,
+    DOM_CSS_VH = 27,
+    DOM_CSS_VMIN = 28,
+    DOM_CSS_VMAX = 29
+};
+// }}}
+// enum Web* {{{
+typedef NS_ENUM(NSUInteger, WebCacheModel) {
+    WebCacheModelDocumentViewer = 0,
+    WebCacheModelDocumentBrowser = 1,
+    WebCacheModelPrimaryWebBrowser = 2
+};
+
 typedef enum {
-    UIProgressIndicatorStyleLargeWhite,
-    UIProgressIndicatorStyleMediumWhite,
-    UIProgressIndicatorStyleMediumBrown,
-    UIProgressIndicatorStyleSmallWhite,
-    UIProgressIndicatorStyleSmallBlack,
-    UIProgressIndicatorStyleTinyWhite,
-} UIProgressIndicatorStyle;
+    WebEventMouseDown,
+    WebEventMouseUp,
+    WebEventMouseMoved,
+    WebEventScrollWheel,
+    WebEventKeyDown,
+    WebEventKeyUp,
+    WebEventTouchBegin,
+    WebEventTouchChange,
+    WebEventTouchEnd,
+    WebEventTouchCancel
+} WebEventType;
+
+enum {
+    WebKitErrorCannotShowMIMEType = 100,
+    WebKitErrorCannotShowURL = 101,
+    WebKitErrorFrameLoadInterruptedByPolicyChange = 102,
+};
+// }}}
+// @protocol Web*; {{{
+@protocol WebPolicyDecisionListener <NSObject>
+- (void) use;
+- (void) download;
+- (void) ignore;
+@end
+// }}}
+
+// @interface * : UIView {{{
+@interface UIFormAssistant : UIView
++ (UIFormAssistant *) sharedFormAssistant;
+- (CGRect) peripheralFrame;
+@end
 
+@interface UIKeyboard : UIView
++ (void) initImplementationNow;
+@end
 
-@class WebView;
+@interface UIProgressBar : UIView
++ (CGSize) defaultSize;
+- (void) setProgress:(float)progress;
+- (void) setStyle:(NSInteger)style;
+@end
+
+@interface UIProgressHUD : UIView
+- (void) hide;
+- (void) setText:(NSString *)text;
+- (void) showInView:(UIView *)view;
+@end
+
+@interface UIScroller : UIView
+- (CGSize) contentSize;
+- (void) setDirectionalScrolling:(BOOL)directional;
+- (void) setEventMode:(NSInteger)mode;
+- (void) setOffset:(CGPoint)offset;
+- (void) setScrollDecelerationFactor:(CGFloat)factor;
+- (void) setScrollHysteresis:(CGFloat)hysteresis;
+- (void) setScrollerIndicatorStyle:(UIScrollViewIndicatorStyle)style;
+- (void) setThumbDetectionEnabled:(BOOL)enabled;
+@end
+
+@interface UITextLabel : UIView
+- (void) setCentersHorizontally:(BOOL)centers;
+- (void) setColor:(UIColor *)color;
+- (void) setFont:(UIFont *)font;
+- (void) setText:(NSString *)text;
+@end
+
+@interface UITransitionView : UIView
+@end
+
+@interface UIWebDocumentView : UIView
+- (CGRect) documentBounds;
+- (void) enableReachability;
+- (void) loadRequest:(NSURLRequest *)request;
+- (void) redrawScaledDocument;
+- (void) setAllowsImageSheet:(BOOL)allows;
+- (void) setAllowsMessaging:(BOOL)allows;
+- (void) setAutoresizes:(BOOL)autoresizes;
+- (void) setContentsPosition:(NSInteger)position;
+- (void) setDrawsBackground:(BOOL)draws;
+- (void) _setDocumentType:(NSInteger)type;
+- (void) setDrawsGrid:(BOOL)draws;
+- (void) setInitialScale:(float)scale forDocumentTypes:(NSInteger)types;
+- (void) setLogsTilingChanges:(BOOL)logs;
+- (void) setMinimumScale:(float)scale forDocumentTypes:(NSInteger)types;
+- (void) setMinimumSize:(CGSize)size;
+- (void) setMaximumScale:(float)scale forDocumentTypes:(NSInteger)tpyes;
+- (void) setSmoothsFonts:(BOOL)smooths;
+- (void) setTileMinificationFilter:(NSString *)filter;
+- (void) setTileSize:(CGSize)size;
+- (void) setTilingEnabled:(BOOL)enabled;
+- (void) setViewportSize:(CGSize)size forDocumentTypes:(NSInteger)types;
+- (void) setZoomsFocusedFormControl:(BOOL)zooms;
+- (void) useSelectionAssistantWithMode:(NSInteger)mode;
+- (WebView *) webView;
+@end
+
+@interface UIWebViewWebViewDelegate : NSObject {
+    @public UIWebView *uiWebView;
+}
 
+- (void) _clearUIWebView;
+
+@end
+// }}}
+// @interface *Button : * {{{
+@interface UINavigationButton : UIButton
+- (id) initWithTitle:(NSString *)title style:(UINavigationButtonStyle)style;
+- (void) setBarStyle:(UIBarStyle)style;
+@end
+
+@interface UIPushButton : UIControl
+- (id) backgroundForState:(NSUInteger)state;
+- (void) setAutosizesToFit:(BOOL)autosizes;
+- (void) setBackground:(id)background forState:(NSUInteger)state;
+- (void) setDrawsShadow:(BOOL)draws;
+- (void) setStretchBackground:(BOOL)stretch;
+- (void) setTitle:(NSString *)title;
+- (void) setTitleFont:(UIFont *)font;
+@end
+
+@interface UIThreePartButton : UIPushButton
+@end
+// }}}
+// @interface * : NS* {{{
+@interface WebDefaultUIKitDelegate : NSObject
++ (WebDefaultUIKitDelegate *) sharedUIKitDelegate;
+@end
+// }}}
+// @interface DOM* {{{
+@interface DOMObject
+@end
+
+@interface DOMCSSValue : DOMObject
+@end
+
+@interface DOMCSSPrimitiveValue : DOMCSSValue
+@property (readonly) unsigned short primitiveType;
+- (DOMRGBColor *) getRGBColorValue;
+- (float) getFloatValue:(unsigned short)unit;
+@end
+
+@interface DOMRGBColor : DOMObject
+@property (readonly, strong) DOMCSSPrimitiveValue *red;
+@property (readonly, strong) DOMCSSPrimitiveValue *green;
+@property (readonly, strong) DOMCSSPrimitiveValue *blue;
+@property (readonly, strong) DOMCSSPrimitiveValue *alpha;
+@end
+
+@interface DOMCSSStyleDeclaration : DOMObject
+- (DOMCSSValue *) getPropertyCSSValue:(NSString *)name;
+- (void) setProperty:(NSString *)name value:(NSString *)value priority:(NSString *)priority;
+@end
+
+@interface DOMNode : DOMObject
+@end
+
+@interface DOMNodeList : DOMObject
+@property (readonly) unsigned length;
+- (DOMNode *) item:(unsigned)index;
+@end
+
+@interface DOMElement : DOMNode
+@property (readonly) int scrollHeight;
+@end
+
+@interface DOMHTMLElement : DOMElement
+@property (readonly, strong) DOMCSSStyleDeclaration *style;
+@end
+
+@interface DOMHTMLBodyElement : DOMHTMLElement
+@end
+
+@interface DOMHTMLIFrameElement : DOMHTMLElement
+@end
+
+@interface DOMDocument : DOMNode
+@property (strong) DOMHTMLElement *body;
+- (DOMCSSStyleDeclaration *) getComputedStyle:(DOMElement *)element pseudoElement:(NSString *)pseudo;
+- (DOMNodeList *) getElementsByTagName:(NSString *)name;
+@end
+// }}}
+// @interface WAK* : * {{{
+@interface WAKResponder : NSObject
+@end
+
+@interface WAKView : NSObject
++ (BOOL) hasLandscapeOrientation;
+@end
+
+@interface WAKWindow : NSObject
++ (BOOL) hasLandscapeOrientation;
+@end
+// }}}
+// @interface Web* {{{
+@interface WebPreferences : NSObject
+- (void) setCacheModel:(WebCacheModel)value;
+- (void) setJavaScriptCanOpenWindowsAutomatically:(BOOL)value;
+@end
+
+@interface WebFrame : NSObject
+@property (nonatomic, readonly, copy) NSArray *childFrames;
+@property (nonatomic, readonly, strong) WebDataSource *dataSource;
+@property (nonatomic, readonly, strong) DOMDocument *DOMDocument;
+@property (nonatomic, readonly, strong) DOMHTMLElement *frameElement;
+@property (nonatomic, readonly) JSGlobalContextRef globalContext;
+@property (nonatomic, readonly, strong) WebFrame *parentFrame;
+@property (nonatomic, readonly, strong) WebDataSource *provisionalDataSource;
+@property (nonatomic, readonly, strong) WebScriptObject *windowObject;
+@end
+
+@interface WebView : WAKView
+@property (nonatomic, readonly, strong) WebFrame *mainFrame;
+@property (nonatomic, strong) WebPreferences *preferences;
+- (IBAction) reloadFromOrigin:(id)sender;
+- (void) setApplicationNameForUserAgent:(NSString *)value;
+- (void) setShouldUpdateWhileOffscreen:(BOOL)value;
+@end
+
+@interface WebScriptObject : NSObject
+- (id) evaluateWebScript:(NSString *)script;
++ (BOOL) isKeyExcludedFromWebScript:(const char *)name;
+- (JSObjectRef) JSObject;
+- (void) setWebScriptValueAtIndex:(unsigned)index value:(id)value;
+- (id) webScriptValueAtIndex:(unsigned)index;
+@end
+
+@interface WebUndefined : NSObject
++ (WebUndefined *) undefined;
+@end
+// }}}
+// @interface UIWeb* : * {{{
+@interface UIWebBrowserView : UIWebDocumentView
+@end
+
+@interface UIWebTouchEventsGestureRecognizer : UIGestureRecognizer
+- (int) type;
+- (NSString *) _typeDescription;
+@end
+// }}}
+
+// @interface NS* (*) {{{
+@interface NSMutableURLRequest (Apple)
+- (void) setHTTPShouldUsePipelining:(BOOL)pipelining;
+@end
+
+@interface NSObject (Apple)
++ (BOOL) isKeyExcludedFromWebScript:(const char *)name;
+@end
 
 @interface NSString (Apple)
-- (void) drawAtPoint:(CGPoint)point forWidth:(float)width withFont:(UIFont *)font ellipsis:(BOOL)ellipsis;
 - (NSString *) stringByAddingPercentEscapes;
 - (NSString *) stringByReplacingCharacter:(UniChar)from withCharacter:(UniChar)to;
 @end
@@ -49,12 +351,18 @@ typedef enum {
 - (NSURL *) youTubeURL;
 @end
 
+@interface NSURLRequest (Apple)
++ (BOOL) allowsAnyHTTPSCertificateForHost:(NSString *)host;
++ (void) setAllowsAnyHTTPSCertificate:(BOOL)allow forHost:(NSString *)host;
+@end
+
 @interface NSValue (Apple)
 + (NSValue *) valueWithSize:(CGSize)size;
 @end
-
-
+// }}}
+// @interface UI* (*) {{{
 @interface UIActionSheet (Apple)
+- (void) setContext:(NSString *)context;
 - (NSString *) context;
 @end
 
@@ -71,15 +379,16 @@ typedef enum {
 @end
 
 @interface UIApplication (Apple)
+- (void) suspendReturningToLastApp:(BOOL)returning;
+- (void) suspend;
+- (void) applicationSuspend;
 - (void) applicationSuspend:(GSEventRef)event;
 - (void) _animateSuspension:(BOOL)suspend duration:(double)duration startTime:(double)start scale:(float)scale;
 - (void) applicationOpenURL:(NSURL *)url;
 - (void) applicationWillResignActive:(UIApplication *)application;
 - (void) applicationWillSuspend;
 - (void) launchApplicationWithIdentifier:(NSString *)identifier suspended:(BOOL)suspended;
-- (void) removeApplicationBadge;
-- (void) setApplicationBadge:(NSString *)badge;
-- (void) setApplicationBadgeString:(NSString *)badge;
+- (void) openURL:(NSURL *)url asPanel:(BOOL)panel;
 - (void) setStatusBarShowsProgress:(BOOL)shows;
 - (void) _setSuspended:(BOOL)suspended;
 - (void) terminateWithSuccess;
@@ -98,33 +407,50 @@ typedef enum {
 @end
 
 @interface UIDevice (Apple)
-- (BOOL) isWildcat;
+- (NSString *) uniqueIdentifier;
 @end
 
 @interface UIImage (Apple)
-+ (UIImage *) applicationImageNamed:(NSString *)name;
 + (UIImage *) imageAtPath:(NSString *)path;
 @end
 
+@interface UILocalizedIndexedCollation (Apple)
+- (id) initWithDictionary:(NSDictionary *)dictionary;
+- (NSString *) transformedCollationStringForString:(NSString *)string;
+@end
+
 @interface UINavigationBar (Apple)
 + (CGSize) defaultSize;
 - (UIBarStyle) _barStyle:(BOOL)style;
 @end
 
+@interface UIScrollView (Apple)
+- (void) setScrollingEnabled:(BOOL)enabled;
+- (void) setShowBackgroundShadow:(BOOL)show;
+@end
+
 @interface UISearchBar (Apple)
 - (UITextField *) searchField;
 @end
 
+@interface UITabBarController (Apple)
+- (UITransitionView *) _transitionView;
+- (void) concealTabBarSelection;
+- (void) revealTabBarSelection;
+@end
+
 @interface UITabBarItem (Apple)
 - (void) setAnimatedBadge:(BOOL)animated;
+- (UIView *) view;
 @end
 
 @interface UITableViewCell (Apple)
 - (float) selectionPercent;
+- (void) _updateHighlightColorsForView:(id)view highlighted:(BOOL)highlighted;
 @end
 
 @interface UITextField (Apple)
-- (UITextInputTraits *) textInputTraits;
+- (NSObject<UITextInputTraits> *) textInputTraits;
 @end
 
 @interface UITextView (Apple)
@@ -136,16 +462,21 @@ typedef enum {
 @end
 
 @interface UIView (Apple)
+- (UIScroller *) _scroller;
+- (void) setClipsSubviews:(BOOL)clips;
 - (void) setEnabledGestures:(NSInteger)gestures;
+- (void) setFixedBackgroundPattern:(BOOL)fixed;
 - (void) setGestureDelegate:(id)delegate;
 - (void) setNeedsDisplayOnBoundsChange:(BOOL)needs;
 - (void) setValue:(NSValue *)value forGestureAttribute:(NSInteger)attribute;
 - (void) setZoomScale:(float)scale duration:(double)duration;
 - (void) _setZoomScale:(float)scale duration:(double)duration;
+- (void) setOrigin:(CGPoint)origin;
 @end
 
 @interface UIViewController (Apple)
 - (void) _updateLayoutForStatusBarAndInterfaceOrientation;
+- (void) unloadView;
 @end
 
 @interface UIWindow (Apple)
@@ -154,154 +485,134 @@ typedef enum {
 - (void) orderFront:(UIApplication *)application;
 @end
 
+@interface UIWebView (Apple)
+- (UIWebDocumentView *) _documentView;
+- (UIScrollView *) _scrollView;
+- (UIScroller *) _scroller;
+- (void) _updateViewSettings;
+- (void) webView:(WebView *)view addMessageToConsole:(NSDictionary *)message;
+//- (WebView *) webView:(WebView *)view createWebViewWithRequest:(NSURLRequest *)request;
+- (void) webView:(WebView *)view decidePolicyForNavigationAction:(NSDictionary *)action request:(NSURLRequest *)request frame:(WebFrame *)frame decisionListener:(id<WebPolicyDecisionListener>)listener;
+- (void) webView:(WebView *)view decidePolicyForNewWindowAction:(NSDictionary *)action request:(NSURLRequest *)request newFrameName:(NSString *)name decisionListener:(id<WebPolicyDecisionListener>)listener;
+- (void) webView:(WebView *)view didClearWindowObject:(WebScriptObject *)window forFrame:(WebFrame *)frame;
+- (void) webView:(WebView *)view didCommitLoadForFrame:(WebFrame *)frame;
+- (void) webView:(WebView *)view didFailLoadWithError:(NSError *)error forFrame:(WebFrame *)frame;
+- (void) webView:(WebView *)view didFailProvisionalLoadWithError:(NSError *)error forFrame:(WebFrame *)frame;
+- (void) webView:(WebView *)view didFinishLoadForFrame:(WebFrame *)frame;
+- (void) webView:(WebView *)view didReceiveTitle:(id)title forFrame:(id)frame;
+- (void) webView:(WebView *)view didStartProvisionalLoadForFrame:(WebFrame *)frame;
+- (void) webView:(WebView *)view resource:(id)identifier didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge fromDataSource:(WebDataSource *)source;
+- (void) webView:(WebView *)view resource:(id)identifier didCancelAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge fromDataSource:(WebDataSource *)source;
+- (NSURLRequest *) webView:(WebView *)view resource:(id)identifier willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)response fromDataSource:(WebDataSource *)source;
+- (NSURLRequest *) webThreadWebView:(WebView *)view resource:(id)identifier willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)response fromDataSource:(WebDataSource *)source;
+- (void) webView:(WebView *)view runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame;
+- (BOOL) webView:(WebView *)view runJavaScriptConfirmPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame;
+- (NSString *) webView:(WebView *)view runJavaScriptTextInputPanelWithPrompt:(NSString *)prompt defaultText:(NSString *)text initiatedByFrame:(WebFrame *)frame;
+- (void) webViewClose:(WebView *)view;
+@end
+// }}}
+// @interface Web* (*) {{{
+@interface WebFrame (Apple)
+- (void) setNeedsLayout;
+@end
+
+@interface WebPreferences (Apple)
++ (void) _setInitialDefaultTextEncodingToSystemEncoding;
+- (void) _setLayoutInterval:(NSInteger)interval;
+- (void) setOfflineWebApplicationCacheEnabled:(BOOL)enabled;
+@end
+
+@interface WebView (Apple)
+- (void) _preferencesChanged:(WebPreferences *)preferences;
+- (void) _preferencesChangedNotification:(NSNotification *)notification;
+- (void) _setLayoutInterval:(float)interval;
+- (void) _setAllowsMessaging:(BOOL)allows;
+@end
+// }}}
+
+// #ifndef AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER {{{
+#ifndef AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
+#define AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
+// XXX: this is a random jumble of garbage
 
-@interface UIFormAssistant : UIView
-+ (UIFormAssistant *) sharedFormAssistant;
-- (CGRect) peripheralFrame;
-@end
+typedef enum {
+    UIModalPresentationFullScreen,
+    UIModalPresentationPageSheet,
+    UIModalPresentationFormSheet,
+    UIModalPresentationCurrentContext,
+} UIModalPresentationStyle;
 
-@interface UIKeyboard : UIView
-+ (void) initImplementationNow;
-@end
+#define kSCNetworkReachabilityFlagsConnectionOnTraffic kSCNetworkReachabilityFlagsConnectionAutomatic
 
-@interface UIProgressBar : UIView
-+ (CGSize) defaultSize;
-- (void) setProgress:(float)progress;
-- (void) setStyle:(NSInteger)style;
-@end
+#define UIBarStyleBlack UIBarStyleBlackOpaque
 
-@interface UIProgressHUD : UIView
-- (id) initWithWindow:(UIWindow *)window;
-- (void) setText:(NSString *)text;
-- (void) show:(BOOL)show;
-@end
+@class NSUndoManager;
+@class UIPasteboard;
 
-@interface UIProgressIndicator : UIView
-+ (CGSize) defaultSizeForStyle:(NSUInteger)style;
-- (NSUInteger) activityIndicatorViewStyle;
-- (void) setStyle:(UIProgressIndicatorStyle)style;
-- (void) startAnimation;
+@interface UIActionSheet (iPad)
+- (void) showFromBarButtonItem:(UIBarButtonItem *)item animated:(BOOL)animated;
 @end
 
-@interface UIScroller : UIView
-- (CGSize) contentSize;
-- (BOOL) releaseRubberBandIfNecessary;
-- (void) scrollPointVisibleAtTopLeft:(CGPoint)point;
-- (void) scrollRectToVisible:(CGRect)rect animated:(BOOL)animated;
-- (void) setAdjustForContentSizeChange:(BOOL)adjust;
-- (void) setAllowsRubberBanding:(BOOL)allows;
-- (void) setBounces:(BOOL)bounces;
-- (void) setClipsSubviews:(BOOL)clips;
-- (void) setContentSize:(CGSize)size;
-- (void) setDelegate:(id)delegate;
-- (void) setDirectionalScrolling:(BOOL)directional;
-- (void) setEventMode:(NSInteger)mode;
-- (void) setFixedBackgroundPattern:(BOOL)fixed;
-- (void) setOffset:(CGPoint)offset;
-- (void) setScrollHysteresis:(float)hysteresis;
-- (void) setScrollerIndicatorSubrect:(CGRect)rect;
-- (void) setScrollingEnabled:(BOOL)enabled;
-- (void) setShowBackgroundShadow:(BOOL)shows;
-- (void) setThumbDetectionEnabled:(BOOL)enabled;
+@interface UIViewController (iPad)
+- (void) setModalPresentationStyle:(UIModalPresentationStyle)style;
 @end
 
-@interface UITextLabel : UIView
-- (void) setCentersHorizontally:(BOOL)centers;
-- (void) setColor:(UIColor *)color;
-- (void) setFont:(UIFont *)font;
-- (void) setText:(NSString *)text;
+@interface UIApplication (iOS_3_0)
+@property(nonatomic) BOOL applicationSupportsShakeToEdit;
 @end
 
-@interface UIWebDocumentView : UIView
-- (CGRect) documentBounds;
-- (void) enableReachability;
-- (void) loadRequest:(NSURLRequest *)request;
-- (void) redrawScaledDocument;
-- (UIScroller *) _scroller;
-- (void) setAllowsImageSheet:(BOOL)allows;
-- (void) setAllowsMessaging:(BOOL)allows;
-- (void) setAutoresizes:(BOOL)autoresizes;
-- (void) setContentsPosition:(NSInteger)position;
-- (void) setDataDetectorTypes:(NSUInteger)types;
-- (void) setDelegate:(id)delegate;
-- (void) setDetectsPhoneNumbers:(BOOL)detects;
-- (void) _setDocumentType:(NSInteger)type;
-- (void) setDrawsGrid:(BOOL)draws;
-- (void) setFormEditingDelegate:(id)delegate;
-- (void) setInitialScale:(float)scale forDocumentTypes:(NSInteger)types;
-- (void) setInteractionDelegate:(id)delegate;
-- (void) setLogsTilingChanges:(BOOL)logs;
-- (void) setMinimumScale:(float)scale forDocumentTypes:(NSInteger)types;
-- (void) setMinimumSize:(CGSize)size;
-- (void) setMaximumScale:(float)scale forDocumentTypes:(NSInteger)tpyes;
-- (void) setSmoothsFonts:(BOOL)smooths;
-- (void) setTileMinificationFilter:(NSString *)filter;
-- (void) setTileSize:(CGSize)size;
-- (void) setTilingEnabled:(BOOL)enabled;
-- (void) setViewportSize:(CGSize)size forDocumentTypes:(NSInteger)types;
-- (void) setZoomsFocusedFormControl:(BOOL)zooms;
-- (void) useSelectionAssistantWithMode:(NSInteger)mode;
-- (WebView *) webView;
-- (void) webView:(WebView *)view attachRootLayer:(id)layer;
-- (void) webView:(WebView *)view didCommitLoadForFrame:(WebFrame *)frame;
-- (void) webView:(WebView *)view didFailLoadWithError:(id)error forFrame:(WebFrame *)frame;
-- (void) webView:(WebView *)view didFinishDocumentLoadForFrame:(WebFrame *)frame;
-- (void) webView:(WebView *)view didFinishLoadForFrame:(WebFrame *)frame;
-- (void) webView:(WebView *)view didFirstLayoutInFrame:(WebFrame *)frame;
-- (void) webView:(WebView *)view didFirstVisuallyNonEmptyLayoutInFrame:(WebFrame *)frame;
-- (void) webView:(WebView *)view didHideFullScreenForPlugInView:(id)plugin;
-- (void) webView:(WebView *)view didObserveDeferredContentChange:(NSInteger)change forFrame:(WebFrame *)frame;
-- (void) webView:(WebView *)view didReceiveDocTypeForFrame:(WebFrame *)frame;
-- (void) webView:(WebView *)view didReceiveMessage:(id)message;
-- (void) webView:(WebView *)view didReceiveViewportArguments:(id)arguments forFrame:(WebFrame *)frame;
-- (void) webView:(WebView *)view formStateDidBlurNode:(id)state;
-- (void) webView:(WebView *)view formStateDidFocusNode:(id)state;
-- (void) webView:(WebView *)view needsScrollNotifications:(id)notifications forFrame:(WebFrame *)frame;
-- (id) webView:(WebView *)view plugInViewWithArguments:(id)arguments fromPlugInPackage:(id)package;
-- (void) webView:(WebView *)view restoreStateFromHistoryItem:(id)item forFrame:(WebFrame *)frame force:(BOOL)force;
-- (void) webView:(WebView *)view saveStateToHistoryItem:(id)item forFrame:(WebFrame *)frame;
-- (void) webView:(WebView *)view willAddPlugInView:(id)plugin;
-- (void) webView:(WebView *)view willCloseFrame:(WebFrame *)frame;
-- (void) webView:(WebView *)view willShowFullScreenForPlugInView:(id)plugin;
-- (BOOL) webView:(WebView *)view shouldScrollToPoint:(CGPoint)point forFrame:(WebFrame *)frame;
-- (void) webViewDidLayout:(WebView *)view;
-- (void) webViewDidPreventDefaultForEvent:(WebView *)view;
-- (void) webViewFormEditedStatusHasChanged:(WebView *)changed;
+@interface UIScrollView (iOS_3_0)
+@property(assign,nonatomic) CGFloat decelerationRate;
 @end
 
-
-@interface UINavigationButton : UIButton
-- (id) initWithTitle:(NSString *)title style:(UINavigationButtonStyle)style;
-- (void) setBarStyle:(UIBarStyle)style;
+@interface UIWebView (iOS_3_0)
+@property(assign,nonatomic) NSUInteger dataDetectorTypes;
 @end
 
-@interface UIPushButton : UIControl
-- (id) backgroundForState:(NSUInteger)state;
-- (void) setAutosizesToFit:(BOOL)autosizes;
-- (void) setBackground:(id)background forState:(NSUInteger)state;
-- (void) setDrawsShadow:(BOOL)draws;
-- (void) setStretchBackground:(BOOL)stretch;
-- (void) setTitle:(NSString *)title;
-- (void) setTitleFont:(UIFont *)font;
-@end
+extern CGFloat const UIScrollViewDecelerationRateNormal;
 
-@interface UIThreePartButton : UIPushButton
-@end
+#endif//AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
+// }}}
+// #if __IPHONE_OS_VERSION_MIN_REQUIRED < 30000 {{{
+#if __IPHONE_OS_VERSION_MIN_REQUIRED < 30000
 
+#define kSCNetworkReachabilityFlagsConnectionOnDemand (1 << 5)
+#define kCFCoreFoundationVersionNumber_iPhoneOS_3_0 478.47
 
-@interface WebDefaultUIKitDelegate : NSObject
-+ (WebDefaultUIKitDelegate *) sharedUIKitDelegate;
-@end
+#endif
+// }}}
 
+#ifndef kCFCoreFoundationVersionNumber_iPhoneOS_4_0
+#define kCFCoreFoundationVersionNumber_iPhoneOS_4_0 550.32
+#endif
 
-extern "C" CFStringRef const kGSDisplayIdentifiersCapability;
+@interface UITabBarItem (iOS_7_0)
+- (id) initWithTitle:(NSString *)title image:(UIImage *)image selectedImage:(UIImage *)selectedImage;
+@end
 
-extern "C" float const UIWebViewGrowsAndShrinksToFitHeight;
-extern "C" float const UIWebViewScalesToFitScale;
+@interface UIScreen (iOS_4_0)
+@property(nonatomic,readonly) CGFloat scale;
+@end
 
+@interface DOMHTMLIFrameElement (IDL)
+- (WebFrame *) contentFrame;
+@end
 
+// extern *; {{{
+extern CFStringRef const kGSDisplayIdentifiersCapability;
+extern float const UIWebViewGrowsAndShrinksToFitHeight;
+extern float const UIWebViewScalesToFitScale;
+extern NSString *WebKitErrorDomain;
+// }}}
+// extern "C" *(); {{{
+extern "C" void *reboot2(uint64_t flags);
+extern "C" mach_port_t SBSSpringBoardServerPort();
+extern "C" int SBBundlePathForDisplayIdentifier(mach_port_t port, const char *identifier, char *path);
+extern "C" NSArray *SBSCopyApplicationDisplayIdentifiers(bool active, bool debuggable);
+extern "C" NSString *SBSCopyLocalizedApplicationNameForDisplayIdentifier(NSString *);
+extern "C" NSString *SBSCopyIconImagePathForDisplayIdentifier(NSString *);
 extern "C" UIImage *_UIImageWithName(NSString *name);
 extern "C" void UISetColor(CGColorRef color);
-
+// }}}
 
 #endif//CYDIA_UIKITPRIVATE_H