]> git.saurik.com Git - cydia.git/blob - iPhonePrivate.h
No longer on gcc 4.2, so let's go Objective-C++11.
[cydia.git] / iPhonePrivate.h
1 #ifndef CYDIA_UIKITPRIVATE_H
2 #define CYDIA_UIKITPRIVATE_H
3
4 // #include <*> {{{
5 #include <GraphicsServices/GraphicsServices.h>
6 #include <UIKit/UIKit.h>
7 // }}}
8 // #import <*> {{{
9 #import <WebKit/DOMHTMLIFrameElement.h>
10 #import <WebKit/WebFrame.h>
11 #import <WebKit/WebPreferences.h>
12 // }}}
13 // typedef enum {*} *; {{{
14 typedef enum {
15 UIGestureAttributeMinDegrees, /*float*/
16 UIGestureAttributeMaxDegrees, /*float*/
17 UIGestureAttributeMinScale, /*float*/
18 UIGestureAttributeMaxScale, /*float*/
19 UIGestureAttributeIsZoomRubberBandEnabled, /*BOOL*/
20 UIGestureAttributeZoomsFromCurrentToMinOrMax, /*BOOL*/
21 UIGestureAttributeVisibleSize, /*CGSize*/
22 UIGestureAttributeUpdatesScroller, /*BOOL*/
23 } UIGestureAttribute;
24
25 typedef enum {
26 UINavigationButtonStyleNormal,
27 UINavigationButtonStyleBack,
28 UINavigationButtonStyleHighlighted,
29 UINavigationButtonStyleDestructive
30 } UINavigationButtonStyle;
31
32 static const UIActivityIndicatorViewStyle UIActivityIndicatorViewStyleWhiteSmall(static_cast<UIActivityIndicatorViewStyle>(3));
33 static const UIActivityIndicatorViewStyle UIActivityIndicatorViewStyleGraySmall(static_cast<UIActivityIndicatorViewStyle>(4));
34 static const UIActivityIndicatorViewStyle UIActivityIndicatorViewStyleWhiteTiny(static_cast<UIActivityIndicatorViewStyle>(5));
35 // }}}
36 // #define * * {{{
37 #define UIDataDetectorTypeAutomatic 0x80000000
38 // }}}
39 // @class Web*; {{{
40 @class WebDataSource;
41 @class WebScriptObject;
42 @class WebView;
43 // }}}
44 // @protocol *; {{{
45 @protocol WebPolicyDecisionListener;
46 // }}}
47
48 // @interface * : UIView {{{
49 @interface UIFormAssistant : UIView
50 + (UIFormAssistant *) sharedFormAssistant;
51 - (CGRect) peripheralFrame;
52 @end
53
54 @interface UIKeyboard : UIView
55 + (void) initImplementationNow;
56 @end
57
58 @interface UIProgressBar : UIView
59 + (CGSize) defaultSize;
60 - (void) setProgress:(float)progress;
61 - (void) setStyle:(NSInteger)style;
62 @end
63
64 @interface UIProgressHUD : UIView
65 - (void) hide;
66 - (void) setText:(NSString *)text;
67 - (void) showInView:(UIView *)view;
68 @end
69
70 @interface UIScroller : UIView
71 - (CGSize) contentSize;
72 - (void) setDirectionalScrolling:(BOOL)directional;
73 - (void) setEventMode:(NSInteger)mode;
74 - (void) setOffset:(CGPoint)offset;
75 - (void) setScrollDecelerationFactor:(float)factor;
76 - (void) setScrollHysteresis:(float)hysteresis;
77 - (void) setScrollerIndicatorStyle:(UIScrollViewIndicatorStyle)style;
78 - (void) setThumbDetectionEnabled:(BOOL)enabled;
79 @end
80
81 @interface UITextLabel : UIView
82 - (void) setCentersHorizontally:(BOOL)centers;
83 - (void) setColor:(UIColor *)color;
84 - (void) setFont:(UIFont *)font;
85 - (void) setText:(NSString *)text;
86 @end
87
88 @interface UITransitionView : UIView
89 @end
90
91 @interface UIWebDocumentView : UIView
92 - (CGRect) documentBounds;
93 - (void) enableReachability;
94 - (void) loadRequest:(NSURLRequest *)request;
95 - (void) redrawScaledDocument;
96 - (void) setAllowsImageSheet:(BOOL)allows;
97 - (void) setAllowsMessaging:(BOOL)allows;
98 - (void) setAutoresizes:(BOOL)autoresizes;
99 - (void) setContentsPosition:(NSInteger)position;
100 - (void) setDrawsBackground:(BOOL)draws;
101 - (void) _setDocumentType:(NSInteger)type;
102 - (void) setDrawsGrid:(BOOL)draws;
103 - (void) setInitialScale:(float)scale forDocumentTypes:(NSInteger)types;
104 - (void) setLogsTilingChanges:(BOOL)logs;
105 - (void) setMinimumScale:(float)scale forDocumentTypes:(NSInteger)types;
106 - (void) setMinimumSize:(CGSize)size;
107 - (void) setMaximumScale:(float)scale forDocumentTypes:(NSInteger)tpyes;
108 - (void) setSmoothsFonts:(BOOL)smooths;
109 - (void) setTileMinificationFilter:(NSString *)filter;
110 - (void) setTileSize:(CGSize)size;
111 - (void) setTilingEnabled:(BOOL)enabled;
112 - (void) setViewportSize:(CGSize)size forDocumentTypes:(NSInteger)types;
113 - (void) setZoomsFocusedFormControl:(BOOL)zooms;
114 - (void) useSelectionAssistantWithMode:(NSInteger)mode;
115 - (WebView *) webView;
116 @end
117
118 @interface UIWebViewWebViewDelegate : NSObject {
119 @public UIWebView *uiWebView;
120 }
121
122 - (void) _clearUIWebView;
123
124 @end
125 // }}}
126 // @interface *Button : * {{{
127 @interface UINavigationButton : UIButton
128 - (id) initWithTitle:(NSString *)title style:(UINavigationButtonStyle)style;
129 - (void) setBarStyle:(UIBarStyle)style;
130 @end
131
132 @interface UIPushButton : UIControl
133 - (id) backgroundForState:(NSUInteger)state;
134 - (void) setAutosizesToFit:(BOOL)autosizes;
135 - (void) setBackground:(id)background forState:(NSUInteger)state;
136 - (void) setDrawsShadow:(BOOL)draws;
137 - (void) setStretchBackground:(BOOL)stretch;
138 - (void) setTitle:(NSString *)title;
139 - (void) setTitleFont:(UIFont *)font;
140 @end
141
142 @interface UIThreePartButton : UIPushButton
143 @end
144 // }}}
145 // @interface * : NS* {{{
146 @interface WebDefaultUIKitDelegate : NSObject
147 + (WebDefaultUIKitDelegate *) sharedUIKitDelegate;
148 @end
149 // }}}
150 // @interface UIWeb* : * {{{
151 @interface UIWebBrowserView : UIWebDocumentView
152 @end
153
154 @interface UIWebTouchEventsGestureRecognizer : UIGestureRecognizer
155 - (int) type;
156 - (NSString *) _typeDescription;
157 @end
158 // }}}
159 // @interface WAK* : * {{{
160 @interface WAKWindow : NSObject
161 + (BOOL) hasLandscapeOrientation;
162 @end
163 // }}}
164
165 // @interface NS* (*) {{{
166 @interface NSMutableURLRequest (Apple)
167 - (void) setHTTPShouldUsePipelining:(BOOL)pipelining;
168 @end
169
170 @interface NSString (Apple)
171 - (NSString *) stringByAddingPercentEscapes;
172 - (NSString *) stringByReplacingCharacter:(UniChar)from withCharacter:(UniChar)to;
173 @end
174
175 @interface NSURL (Apple)
176 - (BOOL) isGoogleMapsURL;
177 - (BOOL) isSpringboardHandledURL;
178 // XXX: make this an enum
179 - (NSURL *) itmsURL:(NSInteger *)store;
180 - (NSURL *) mapsURL;
181 - (NSURL *) phobosURL;
182 - (NSURL *) youTubeURL;
183 @end
184
185 @interface NSURLRequest (Apple)
186 + (BOOL) allowsAnyHTTPSCertificateForHost:(NSString *)host;
187 + (void) setAllowsAnyHTTPSCertificate:(BOOL)allow forHost:(NSString *)host;
188 @end
189
190 @interface NSValue (Apple)
191 + (NSValue *) valueWithSize:(CGSize)size;
192 @end
193 // }}}
194 // @interface UI* (*) {{{
195 @interface UIActionSheet (Apple)
196 - (void) setContext:(NSString *)context;
197 - (NSString *) context;
198 @end
199
200 @interface UIAlertView (Apple)
201 - (void) addTextFieldWithValue:(NSString *)value label:(NSString *)label;
202 - (id) buttons;
203 - (NSString *) context;
204 - (void) setContext:(NSString *)context;
205 - (void) setNumberOfRows:(int)rows;
206 - (void) setRunsModal:(BOOL)modal;
207 - (UITextField *) textField;
208 - (UITextField *) textFieldAtIndex:(NSUInteger)index;
209 - (void) _updateFrameForDisplay;
210 @end
211
212 @interface UIApplication (Apple)
213 - (void) applicationSuspend:(GSEventRef)event;
214 - (void) _animateSuspension:(BOOL)suspend duration:(double)duration startTime:(double)start scale:(float)scale;
215 - (void) applicationOpenURL:(NSURL *)url;
216 - (void) applicationWillResignActive:(UIApplication *)application;
217 - (void) applicationWillSuspend;
218 - (void) launchApplicationWithIdentifier:(NSString *)identifier suspended:(BOOL)suspended;
219 - (void) openURL:(NSURL *)url asPanel:(BOOL)panel;
220 - (void) setStatusBarShowsProgress:(BOOL)shows;
221 - (void) _setSuspended:(BOOL)suspended;
222 - (void) terminateWithSuccess;
223 @end
224
225 @interface UIBarButtonItem (Apple)
226 - (UIView *) view;
227 @end
228
229 @interface UIColor (Apple)
230 + (UIColor *) pinStripeColor;
231 @end
232
233 @interface UIControl (Apple)
234 - (void) addTarget:(id)target action:(SEL)action forEvents:(NSInteger)events;
235 @end
236
237 @interface UIDevice (Apple)
238 - (NSString *) uniqueIdentifier;
239 @end
240
241 @interface UIImage (Apple)
242 + (UIImage *) applicationImageNamed:(NSString *)name;
243 + (UIImage *) imageAtPath:(NSString *)path;
244 @end
245
246 @interface UINavigationBar (Apple)
247 + (CGSize) defaultSize;
248 - (UIBarStyle) _barStyle:(BOOL)style;
249 @end
250
251 @interface UIScrollView (Apple)
252 - (void) setScrollingEnabled:(BOOL)enabled;
253 - (void) setShowBackgroundShadow:(BOOL)show;
254 @end
255
256 @interface UISearchBar (Apple)
257 - (UITextField *) searchField;
258 @end
259
260 @interface UITabBarController (Apple)
261 - (UITransitionView *) _transitionView;
262 - (void) concealTabBarSelection;
263 - (void) revealTabBarSelection;
264 @end
265
266 @interface UITabBarItem (Apple)
267 - (void) setAnimatedBadge:(BOOL)animated;
268 - (UIView *) view;
269 @end
270
271 @interface UITableViewCell (Apple)
272 - (float) selectionPercent;
273 - (void) _updateHighlightColorsForView:(id)view highlighted:(BOOL)highlighted;
274 @end
275
276 @interface UITextField (Apple)
277 - (UITextInputTraits *) textInputTraits;
278 @end
279
280 @interface UITextView (Apple)
281 - (UIFont *) font;
282 - (void) setAllowsRubberBanding:(BOOL)rubberbanding;
283 - (void) setFont:(UIFont *)font;
284 - (void) setMarginTop:(int)margin;
285 - (void) setTextColor:(UIColor *)color;
286 @end
287
288 @interface UIView (Apple)
289 - (UIScroller *) _scroller;
290 - (void) setClipsSubviews:(BOOL)clips;
291 - (void) setEnabledGestures:(NSInteger)gestures;
292 - (void) setFixedBackgroundPattern:(BOOL)fixed;
293 - (void) setGestureDelegate:(id)delegate;
294 - (void) setNeedsDisplayOnBoundsChange:(BOOL)needs;
295 - (void) setValue:(NSValue *)value forGestureAttribute:(NSInteger)attribute;
296 - (void) setZoomScale:(float)scale duration:(double)duration;
297 - (void) _setZoomScale:(float)scale duration:(double)duration;
298 - (void) setOrigin:(CGPoint)origin;
299 @end
300
301 @interface UIViewController (Apple)
302 - (void) _updateLayoutForStatusBarAndInterfaceOrientation;
303 - (void) unloadView;
304 @end
305
306 @interface UIWindow (Apple)
307 - (UIResponder *) firstResponder;
308 - (void) makeKey:(UIApplication *)application;
309 - (void) orderFront:(UIApplication *)application;
310 @end
311
312 @interface UIWebView (Apple)
313 - (UIWebDocumentView *) _documentView;
314 - (UIScrollView *) _scrollView;
315 - (UIScroller *) _scroller;
316 - (void) _updateViewSettings;
317 - (void) webView:(WebView *)view addMessageToConsole:(NSDictionary *)message;
318 //- (WebView *) webView:(WebView *)view createWebViewWithRequest:(NSURLRequest *)request;
319 - (void) webView:(WebView *)view decidePolicyForNavigationAction:(NSDictionary *)action request:(NSURLRequest *)request frame:(WebFrame *)frame decisionListener:(id<WebPolicyDecisionListener>)listener;
320 - (void) webView:(WebView *)view decidePolicyForNewWindowAction:(NSDictionary *)action request:(NSURLRequest *)request newFrameName:(NSString *)name decisionListener:(id<WebPolicyDecisionListener>)listener;
321 - (void) webView:(WebView *)view didClearWindowObject:(WebScriptObject *)window forFrame:(WebFrame *)frame;
322 - (void) webView:(WebView *)view didCommitLoadForFrame:(WebFrame *)frame;
323 - (void) webView:(WebView *)view didFailLoadWithError:(NSError *)error forFrame:(WebFrame *)frame;
324 - (void) webView:(WebView *)view didFailProvisionalLoadWithError:(NSError *)error forFrame:(WebFrame *)frame;
325 - (void) webView:(WebView *)view didFinishLoadForFrame:(WebFrame *)frame;
326 - (void) webView:(WebView *)view didReceiveTitle:(id)title forFrame:(id)frame;
327 - (void) webView:(WebView *)view didStartProvisionalLoadForFrame:(WebFrame *)frame;
328 - (NSURLRequest *) webView:(WebView *)view resource:(id)identifier willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)response fromDataSource:(WebDataSource *)source;
329 - (void) webView:(WebView *)view runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame;
330 - (BOOL) webView:(WebView *)view runJavaScriptConfirmPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame;
331 - (NSString *) webView:(WebView *)view runJavaScriptTextInputPanelWithPrompt:(NSString *)prompt defaultText:(NSString *)text initiatedByFrame:(WebFrame *)frame;
332 - (void) webViewClose:(WebView *)view;
333 @end
334 // }}}
335 // @interface Web* (*) {{{
336 @interface WebFrame (Apple)
337 - (void) setNeedsLayout;
338 @end
339
340 @interface WebPreferences (Apple)
341 + (void) _setInitialDefaultTextEncodingToSystemEncoding;
342 - (void) _setLayoutInterval:(NSInteger)interval;
343 - (void) setOfflineWebApplicationCacheEnabled:(BOOL)enabled;
344 @end
345 // }}}
346
347 // #ifndef AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER {{{
348 #ifndef AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
349 #define AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
350 // XXX: this is a random jumble of garbage
351
352 typedef enum {
353 UIModalPresentationFullScreen,
354 UIModalPresentationPageSheet,
355 UIModalPresentationFormSheet,
356 UIModalPresentationCurrentContext,
357 } UIModalPresentationStyle;
358
359 #define kSCNetworkReachabilityFlagsConnectionOnTraffic kSCNetworkReachabilityFlagsConnectionAutomatic
360
361 #define UIBarStyleBlack UIBarStyleBlackOpaque
362
363 @class NSUndoManager;
364 @class UIPasteboard;
365
366 @interface UIActionSheet (iPad)
367 - (void) showFromBarButtonItem:(UIBarButtonItem *)item animated:(BOOL)animated;
368 @end
369
370 @interface UIViewController (iPad)
371 - (void) setModalPresentationStyle:(UIModalPresentationStyle)style;
372 @end
373
374 @interface UIApplication (iOS_3_0)
375 @property(nonatomic) BOOL applicationSupportsShakeToEdit;
376 @end
377
378 @interface UIScrollView (iOS_3_0)
379 @property(assign,nonatomic) float decelerationRate;
380 @end
381
382 @interface UIWebView (iOS_3_0)
383 @property(assign,nonatomic) NSUInteger dataDetectorTypes;
384 @end
385
386 extern float const UIScrollViewDecelerationRateNormal;
387
388 #endif//AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
389 // }}}
390 // #if __IPHONE_OS_VERSION_MIN_REQUIRED < 30000 {{{
391 #if __IPHONE_OS_VERSION_MIN_REQUIRED < 30000
392
393 #define kSCNetworkReachabilityFlagsConnectionOnDemand (1 << 5)
394 #define kCFCoreFoundationVersionNumber_iPhoneOS_3_0 478.47
395
396 #endif
397 // }}}
398
399 #ifndef kCFCoreFoundationVersionNumber_iPhoneOS_4_0
400 #define kCFCoreFoundationVersionNumber_iPhoneOS_4_0 550.32
401 #endif
402
403 @interface UITabBarItem (iOS_7_0)
404 - (id) initWithTitle:(NSString *)title image:(UIImage *)image selectedImage:(UIImage *)selectedImage;
405 @end
406
407 @interface UIScreen (iOS_4_0)
408 @property(nonatomic,readonly) CGFloat scale;
409 @end
410
411 @interface DOMHTMLIFrameElement (IDL)
412 - (WebFrame *) contentFrame;
413 @end
414
415 // extern *; {{{
416 extern CFStringRef const kGSDisplayIdentifiersCapability;
417 extern float const UIWebViewGrowsAndShrinksToFitHeight;
418 extern float const UIWebViewScalesToFitScale;
419 // }}}
420 // extern "C" *(); {{{
421 extern "C" void *reboot2(uint64_t flags);
422 extern "C" mach_port_t SBSSpringBoardServerPort();
423 extern "C" int SBBundlePathForDisplayIdentifier(mach_port_t port, const char *identifier, char *path);
424 extern "C" UIImage *_UIImageWithName(NSString *name);
425 extern "C" void UISetColor(CGColorRef color);
426 // }}}
427
428 #endif//CYDIA_UIKITPRIVATE_H