mirror of
https://github.com/darlinghq/darling-cocotron.git
synced 2024-11-23 12:09:51 +00:00
Rough in some spell checker classes and clean up warnings
This commit is contained in:
parent
ca8dc21a19
commit
8d887a24c4
@ -2021,6 +2021,11 @@
|
||||
FE069E2C1245A4B90040F165 /* O2GlyphStencil.m in Sources */ = {isa = PBXBuildFile; fileRef = FE069E221245A4B80040F165 /* O2GlyphStencil.m */; };
|
||||
FE08C3230DDF299800B3169A /* NSColor_CGColor.h in Headers */ = {isa = PBXBuildFile; fileRef = FE08C3210DDF299800B3169A /* NSColor_CGColor.h */; settings = {ATTRIBUTES = (Private, ); }; };
|
||||
FE08C3240DDF299800B3169A /* NSColor_CGColor.m in Sources */ = {isa = PBXBuildFile; fileRef = FE08C3220DDF299800B3169A /* NSColor_CGColor.m */; };
|
||||
FE09AF3513FCC56600B53D10 /* NSSpellProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF3413FCC56600B53D10 /* NSSpellProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF3613FCC56600B53D10 /* NSSpellProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF3413FCC56600B53D10 /* NSSpellProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF3713FCC56600B53D10 /* NSSpellProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF3413FCC56600B53D10 /* NSSpellProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF3813FCC56600B53D10 /* NSSpellProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF3413FCC56600B53D10 /* NSSpellProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF3913FCC56600B53D10 /* NSSpellProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF3413FCC56600B53D10 /* NSSpellProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE14436A1256D43D007FE685 /* _NSControllerArray.h in Headers */ = {isa = PBXBuildFile; fileRef = FE1443681256D43D007FE685 /* _NSControllerArray.h */; };
|
||||
FE14436B1256D43D007FE685 /* _NSControllerArray.m in Sources */ = {isa = PBXBuildFile; fileRef = FE1443691256D43D007FE685 /* _NSControllerArray.m */; };
|
||||
FE14436C1256D43D007FE685 /* _NSControllerArray.h in Headers */ = {isa = PBXBuildFile; fileRef = FE1443681256D43D007FE685 /* _NSControllerArray.h */; };
|
||||
@ -4839,6 +4844,7 @@
|
||||
FE069E221245A4B80040F165 /* O2GlyphStencil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = O2GlyphStencil.m; sourceTree = "<group>"; };
|
||||
FE08C3210DDF299800B3169A /* NSColor_CGColor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSColor_CGColor.h; sourceTree = "<group>"; };
|
||||
FE08C3220DDF299800B3169A /* NSColor_CGColor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSColor_CGColor.m; sourceTree = "<group>"; };
|
||||
FE09AF3413FCC56600B53D10 /* NSSpellProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSSpellProtocol.h; sourceTree = "<group>"; };
|
||||
FE0C4EB81041CF2100D8C100 /* OpenGL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = OpenGL.xcodeproj; path = ../OpenGL/OpenGL.xcodeproj; sourceTree = SOURCE_ROOT; };
|
||||
FE1443681256D43D007FE685 /* _NSControllerArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _NSControllerArray.h; sourceTree = "<group>"; };
|
||||
FE1443691256D43D007FE685 /* _NSControllerArray.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = _NSControllerArray.m; sourceTree = "<group>"; };
|
||||
@ -5358,6 +5364,7 @@
|
||||
6E2B53240976075200DA0954 /* Classes */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
FE09AF3413FCC56600B53D10 /* NSSpellProtocol.h */,
|
||||
FE20C240118924A4006F01BA /* NSAccessibility.h */,
|
||||
FE20C241118924A4006F01BA /* NSAccessibility.m */,
|
||||
FE20C242118924A4006F01BA /* NSCIImageRep.h */,
|
||||
@ -7047,6 +7054,7 @@
|
||||
FE74968A12BB1D4F008DBFCB /* NSViewBackingLayer.h in Headers */,
|
||||
FEDEA8B412C112EE008E5A59 /* CATransactionGroup.h in Headers */,
|
||||
FEE4B2FC133BB8770095E656 /* NSWindowScripting.h in Headers */,
|
||||
FE09AF3613FCC56600B53D10 /* NSSpellProtocol.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -7449,6 +7457,7 @@
|
||||
FE74968C12BB1D4F008DBFCB /* NSViewBackingLayer.h in Headers */,
|
||||
FEDEA8B512C112EE008E5A59 /* CATransactionGroup.h in Headers */,
|
||||
FEE4B2FE133BB8770095E656 /* NSWindowScripting.h in Headers */,
|
||||
FE09AF3713FCC56600B53D10 /* NSSpellProtocol.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -7848,6 +7857,7 @@
|
||||
FE74968812BB1D4F008DBFCB /* NSViewBackingLayer.h in Headers */,
|
||||
FEDEA8B312C112EE008E5A59 /* CATransactionGroup.h in Headers */,
|
||||
FEE4B2FA133BB8770095E656 /* NSWindowScripting.h in Headers */,
|
||||
FE09AF3513FCC56600B53D10 /* NSSpellProtocol.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -8252,6 +8262,7 @@
|
||||
FE74969012BB1D4F008DBFCB /* NSViewBackingLayer.h in Headers */,
|
||||
FEDEA8B712C112EE008E5A59 /* CATransactionGroup.h in Headers */,
|
||||
FEE4B302133BB8770095E656 /* NSWindowScripting.h in Headers */,
|
||||
FE09AF3913FCC56600B53D10 /* NSSpellProtocol.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -8573,6 +8584,7 @@
|
||||
FE74968E12BB1D4F008DBFCB /* NSViewBackingLayer.h in Headers */,
|
||||
FEDEA8B612C112EE008E5A59 /* CATransactionGroup.h in Headers */,
|
||||
FEE4B300133BB8770095E656 /* NSWindowScripting.h in Headers */,
|
||||
FE09AF3813FCC56600B53D10 /* NSSpellProtocol.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -331,6 +331,8 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
|
||||
case kCGImageAlphaNoneSkipLast:
|
||||
case kCGImageAlphaNoneSkipFirst:
|
||||
break;
|
||||
case kCGImageAlphaOnly:
|
||||
break;
|
||||
}
|
||||
|
||||
_bitsPerPixel=CGImageGetBitsPerPixel(_cgImage);
|
||||
|
@ -14,7 +14,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
|
||||
@implementation NSSegmentItem
|
||||
|
||||
- (id)init {
|
||||
if (self = [super init]) {
|
||||
if ((self = [super init])) {
|
||||
_isEnabled = YES;
|
||||
}
|
||||
return self;
|
||||
|
@ -16,7 +16,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
|
||||
|
||||
// For manually created segment cells
|
||||
- (id)init {
|
||||
if (self = [super init]) {
|
||||
if ((self = [super init])) {
|
||||
_segments = [[NSMutableArray arrayWithCapacity: 5] retain];
|
||||
_selectedSegment = NSNotFound; // initially empty
|
||||
_trackingMode = NSSegmentSwitchTrackingSelectOne; // default
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
|
||||
/* Copyright (c) 2011 Christopher J. W. Lloyd
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
@ -7,9 +7,128 @@ The above copyright notice and this permission notice shall be included in all c
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
|
||||
#import <Foundation/NSObject.h>
|
||||
#import <Foundation/NSTextCheckingResult.h>
|
||||
#import <Foundation/NSGeometry.h>
|
||||
#import <AppKit/AppKitExport.h>
|
||||
|
||||
@class NSView, NSMenu,NSViewController,NSPanel;
|
||||
|
||||
APPKIT_EXPORT NSString * const NSSpellCheckerDidChangeAutomaticTextReplacementNotification;
|
||||
APPKIT_EXPORT NSString * const NSSpellCheckerDidChangeAutomaticSpellingCorrectionNotification;
|
||||
|
||||
APPKIT_EXPORT NSString * const NSTextCheckingOrthographyKey;
|
||||
APPKIT_EXPORT NSString * const NSTextCheckingQuotesKey;
|
||||
APPKIT_EXPORT NSString * const NSTextCheckingReplacementsKey;
|
||||
APPKIT_EXPORT NSString * const NSTextCheckingReferenceDateKey;
|
||||
APPKIT_EXPORT NSString * const NSTextCheckingReferenceTimeZoneKey;
|
||||
APPKIT_EXPORT NSString * const NSTextCheckingDocumentURLKey;
|
||||
APPKIT_EXPORT NSString * const NSTextCheckingDocumentTitleKey;
|
||||
APPKIT_EXPORT NSString * const NSTextCheckingDocumentAuthorKey;
|
||||
|
||||
enum {
|
||||
NSCorrectionIndicatorTypeDefault=0,
|
||||
NSCorrectionIndicatorTypeReversion,
|
||||
NSCorrectionIndicatorTypeGuesses,
|
||||
};
|
||||
typedef NSInteger NSCorrectionIndicatorType;
|
||||
|
||||
enum {
|
||||
NSCorrectionResponseNone,
|
||||
NSCorrectionResponseAccepted,
|
||||
NSCorrectionResponseRejected,
|
||||
NSCorrectionResponseIgnored,
|
||||
NSCorrectionResponseEdited,
|
||||
NSCorrectionResponseReverted,
|
||||
};
|
||||
typedef NSInteger NSCorrectionResponse;
|
||||
|
||||
@interface NSSpellChecker : NSObject {
|
||||
|
||||
}
|
||||
|
||||
+(NSSpellChecker *)sharedSpellChecker;
|
||||
+(BOOL)sharedSpellCheckerExists;
|
||||
|
||||
+(BOOL)isAutomaticSpellingCorrectionEnabled;
|
||||
+(BOOL)isAutomaticTextReplacementEnabled;
|
||||
+(NSInteger)uniqueSpellDocumentTag;
|
||||
|
||||
-(NSView *)accessoryView;
|
||||
-(BOOL)automaticallyIdentifiesLanguages;
|
||||
|
||||
-(NSArray *)availableLanguages;
|
||||
|
||||
-(NSRange)checkGrammarOfString:(NSString *)string startingAt:(NSInteger)start language:(NSString *)language wrap:(BOOL)wrap inSpellDocumentWithTag:(NSInteger)documentTag details:(NSArray **)outDetails;
|
||||
-(NSRange)checkSpellingOfString:(NSString *)string startingAt:(NSInteger)offset;
|
||||
|
||||
-(NSRange)checkSpellingOfString:(NSString *)string startingAt:(NSInteger)offset language:(NSString *)language wrap:(BOOL)wrap inSpellDocumentWithTag:(NSInteger)tag wordCount:(NSInteger *)wordCount;
|
||||
|
||||
-(NSArray *)checkString:(NSString *)string range:(NSRange)range types:(NSTextCheckingTypes)types options:(NSDictionary *)options inSpellDocumentWithTag:(NSInteger)tag orthography:(NSOrthography **)orthography wordCount:(NSInteger *)wordCount;
|
||||
|
||||
-(void)closeSpellDocumentWithTag:(NSInteger)tag;
|
||||
|
||||
-(NSArray *)completionsForPartialWordRange:(NSRange)partialWordRange inString:(NSString *)string language:(NSString *)language inSpellDocumentWithTag:(NSInteger)tag;
|
||||
|
||||
-(NSString *)correctionForWordRange:(NSRange)range inString:(NSString *)string language:(NSString *)language inSpellDocumentWithTag:(NSInteger)tag;
|
||||
|
||||
-(NSInteger)countWordsInString:(NSString *)string language:(NSString *)language;
|
||||
|
||||
-(void)dismissCorrectionIndicatorForView:(NSView *)view;
|
||||
|
||||
-(NSArray *)guessesForWordRange:(NSRange)range inString:(NSString *)string language:(NSString *)language inSpellDocumentWithTag:(NSInteger)tag;
|
||||
|
||||
-(BOOL)hasLearnedWord:(NSString *)word;
|
||||
|
||||
-(NSArray *)ignoredWordsInSpellDocumentWithTag:(NSInteger)tag;
|
||||
|
||||
-(void)ignoreWord:(NSString *)word inSpellDocumentWithTag:(NSInteger)tag;
|
||||
|
||||
-(NSString *)language;
|
||||
|
||||
-(void)learnWord:(NSString *)word;
|
||||
|
||||
-(NSMenu *)menuForResult:(NSTextCheckingResult *)result string:(NSString *)checkedString options:(NSDictionary *)options atLocation:(NSPoint)location inView:(NSView *)view;
|
||||
|
||||
-(void)recordResponse:(NSCorrectionResponse)response toCorrection:(NSString *)correction forWord:(NSString *)word language :(NSString *)language inSpellDocumentWithTag :(NSInteger)tag;
|
||||
|
||||
#ifdef NS_BLOCKS
|
||||
-(NSInteger)requestCheckingOfString:(NSString *)stringToCheck range:(NSRange)range types:(NSTextCheckingTypes)checkingTypes options:(NSDictionary *)options inSpellDocumentWithTag:(NSInteger)tag completionHandler:(void (^)(NSInteger sequenceNumber, NSArray *results, NSOrthography *orthography, NSInteger wordCount))completionHandler;
|
||||
#endif
|
||||
|
||||
-(void)setAccessoryView:(NSView *)view;
|
||||
|
||||
-(void)setAutomaticallyIdentifiesLanguages:(BOOL)flag;
|
||||
|
||||
-(void)setIgnoredWords:(NSArray *)ignoredWords inSpellDocumentWithTag:(NSInteger)tag;
|
||||
|
||||
-(BOOL)setLanguage:(NSString *)language;
|
||||
|
||||
-(void)setSubstitutionsPanelAccessoryViewController:(NSViewController *)viewController;
|
||||
|
||||
-(void)setWordFieldStringValue:(NSString *)string;
|
||||
|
||||
#ifdef NS_BLOCKS
|
||||
-(void)showCorrectionIndicatorOfType:(NSCorrectionIndicatorType)type primaryString:(NSString *)primaryString alternativeStrings:(NSArray *)alternativeStrings forStringInRect:(NSRect)rect view:(NSView *)view completionHandler:(void (^)(NSString *acceptedString))completionBlock;
|
||||
#endif
|
||||
|
||||
-(NSPanel *)spellingPanel;
|
||||
|
||||
-(NSPanel *)substitutionsPanel;
|
||||
|
||||
-(NSViewController *)substitutionsPanelAccessoryViewController;
|
||||
|
||||
-(void)unlearnWord:(NSString *)word;
|
||||
|
||||
-(void)updatePanels;
|
||||
|
||||
-(void)updateSpellingPanelWithGrammarString:(NSString *)problemString detail:(NSDictionary *)detail;
|
||||
|
||||
-(void)updateSpellingPanelWithMisspelledWord:(NSString *)word;
|
||||
|
||||
-(NSArray *)userPreferredLanguages;
|
||||
|
||||
-(NSArray *)userQuotesArrayForLanguage:(NSString *)language;
|
||||
|
||||
-(NSDictionary *)userReplacementsDictionary;
|
||||
|
||||
@end
|
||||
|
@ -8,6 +8,3 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
|
||||
|
||||
#import <AppKit/NSSpellChecker.h>
|
||||
|
||||
@implementation NSSpellChecker
|
||||
|
||||
@end
|
||||
|
9
AppKit/NSSpellProtocol.h
Normal file
9
AppKit/NSSpellProtocol.h
Normal file
@ -0,0 +1,9 @@
|
||||
#import <Foundation/NSObject.h>
|
||||
|
||||
@protocol NSChangeSpelling
|
||||
-(void)changeSpelling:sender;
|
||||
@end
|
||||
|
||||
@protocol NSIgnoreMisspelledWords
|
||||
-(void)ignoreSpelling:sender;
|
||||
@end
|
@ -7,6 +7,7 @@ The above copyright notice and this permission notice shall be included in all c
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
|
||||
#import <AppKit/NSView.h>
|
||||
#import <AppKit/NSSpellProtocol.h>
|
||||
|
||||
@class NSColor, NSFont;
|
||||
|
||||
@ -55,7 +56,7 @@ APPKIT_EXPORT NSString * const NSTextDidBeginEditingNotification;
|
||||
APPKIT_EXPORT NSString * const NSTextDidEndEditingNotification;
|
||||
APPKIT_EXPORT NSString * const NSTextDidChangeNotification;
|
||||
|
||||
@interface NSText : NSView
|
||||
@interface NSText : NSView <NSChangeSpelling, NSIgnoreMisspelledWords>
|
||||
|
||||
-delegate;
|
||||
-(NSString *)string;
|
||||
|
@ -264,5 +264,13 @@ NSString * const NSTextDidChangeNotification=@"NSTextDidChangeNotification";
|
||||
NSInvalidAbstractInvocation();
|
||||
}
|
||||
|
||||
-(void)changeSpelling:sender {
|
||||
NSInvalidAbstractInvocation();
|
||||
}
|
||||
|
||||
-(void)ignoreSpelling:sender {
|
||||
NSInvalidAbstractInvocation();
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
|
@ -2152,7 +2152,7 @@ NSString * const NSOldSelectedCharacterRange=@"NSOldSelectedCharacterRange";
|
||||
|
||||
size.height=MAX([self frame].size.height,size.height);
|
||||
|
||||
NSClipView *clipView=[self superview];
|
||||
NSView *clipView=[self superview];
|
||||
|
||||
if([clipView isKindOfClass:[NSClipView class]]){
|
||||
if(size.height<[clipView bounds].size.height)
|
||||
@ -2584,5 +2584,13 @@ NSString * const NSOldSelectedCharacterRange=@"NSOldSelectedCharacterRange";
|
||||
return [[_textStorage copy] autorelease];
|
||||
}
|
||||
|
||||
-(void)changeSpelling:sender {
|
||||
|
||||
}
|
||||
|
||||
-(void)ignoreSpelling:sender {
|
||||
|
||||
}
|
||||
|
||||
|
||||
@end
|
||||
|
@ -4,6 +4,7 @@
|
||||
#import <stdbool.h>
|
||||
#import <CoreGraphics/CoreGraphics.h>
|
||||
#import <CoreGraphics/CGLPixelSurface.h>
|
||||
#import <CoreGraphics/CGWindow.h>
|
||||
#import <pthread.h>
|
||||
|
||||
/* There is essentially only two ways to implement a CGLContext on Windows.
|
||||
|
@ -1,6 +1,7 @@
|
||||
#import "NSGraphicsStyle_uxtheme.h"
|
||||
#import <AppKit/NSGraphicsContext.h>
|
||||
#import <Onyx2D/O2Context.h>
|
||||
#import <Onyx2D/O2Surface.h>
|
||||
#import <AppKit/NSImage.h>
|
||||
#import <AppKit/NSFont.h>
|
||||
#import <AppKit/NSColor.h>
|
||||
|
@ -1,16 +1,15 @@
|
||||
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
|
||||
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd - <cjwl@objc.net>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
|
||||
// Original - Christopher Lloyd <cjwl@objc.net>
|
||||
#import <AppKit/Win32IDataObjectClient.h>
|
||||
#import <AppKit/Win32IStreamClient.h>
|
||||
#import <AppKit/Win32FORMATETC.h>
|
||||
#import <Foundation/NSString_win32.h>
|
||||
#import <Foundation/NSUnicodeCaseMapping.h>
|
||||
|
||||
#import <AppKit/NSPasteboard.h>
|
||||
|
||||
|
@ -530,7 +530,7 @@ static const char *Win32ClassNameForStyleMask(unsigned styleMask,bool hasShadow)
|
||||
#define NO_INCREMENTAL_COMPOSITE 1
|
||||
|
||||
-(O2Surface_DIBSection *)resultSurface:(O2Point *)fromPoint {
|
||||
O2Surface_DIBSection *result=[_backingContext surface];
|
||||
O2Surface_DIBSection *result=(O2Surface_DIBSection *)[_backingContext surface];
|
||||
|
||||
*fromPoint=O2PointMake(0,0);
|
||||
|
||||
@ -578,7 +578,7 @@ i=count;
|
||||
if(i==count){
|
||||
fromPoint->x=-checkFrame.origin.x;
|
||||
fromPoint->y=-checkFrame.origin.y;
|
||||
return [check validSurface];
|
||||
return (O2Surface_DIBSection *)[check validSurface];
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -619,7 +619,7 @@ i=count;
|
||||
#endif
|
||||
|
||||
O2Rect overFrame=[overlay frame];
|
||||
O2Surface_DIBSection *overSurface=[overlay validSurface];
|
||||
O2Surface_DIBSection *overSurface=(O2Surface_DIBSection *)[overlay validSurface];
|
||||
|
||||
if(overSurface!=nil){
|
||||
BLENDFUNCTION blend;
|
||||
|
@ -9,7 +9,7 @@ CGImageSourceRef CGImageSourceCreateWithData(CFDataRef data,CFDictionaryRef opti
|
||||
}
|
||||
|
||||
CGImageSourceRef CGImageSourceCreateWithURL(CFURLRef url,CFDictionaryRef options) {
|
||||
return (CGImageSourceRef)[O2ImageSource newImageSourceWithURL:url options:options];
|
||||
return (CGImageSourceRef)[O2ImageSource newImageSourceWithURL:(NSURL *)url options:options];
|
||||
}
|
||||
|
||||
size_t CGImageSourceGetCount(CGImageSourceRef self) {
|
||||
|
@ -164,6 +164,8 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
|
||||
-(void)removeOverlay:(CGLPixelSurface *)overlay {
|
||||
}
|
||||
|
||||
-(void)flushOverlay:(CGLPixelSurface *)overlay {
|
||||
}
|
||||
|
||||
|
||||
@end
|
||||
|
@ -2811,6 +2811,42 @@
|
||||
FE01A7E50C5D9B6900AEA51A /* NSTimeZoneAbbreviations.plist in Resources */ = {isa = PBXBuildFile; fileRef = 6E2806B209747EA400EC542B /* NSTimeZoneAbbreviations.plist */; };
|
||||
FE01A7E60C5D9B6900AEA51A /* NSTimeZoneRegions.plist in Resources */ = {isa = PBXBuildFile; fileRef = 6E2806B309747EA400EC542B /* NSTimeZoneRegions.plist */; };
|
||||
FE01A7E70C5D9B6900AEA51A /* NSUserDefaults.plist in Resources */ = {isa = PBXBuildFile; fileRef = 6E280B2B09747F4900EC542B /* NSUserDefaults.plist */; };
|
||||
FE09AF7013FCC68100B53D10 /* NSOrthography.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF6E13FCC68100B53D10 /* NSOrthography.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF7113FCC68100B53D10 /* NSOrthography.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF6F13FCC68100B53D10 /* NSOrthography.m */; };
|
||||
FE09AF7213FCC68100B53D10 /* NSOrthography.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF6E13FCC68100B53D10 /* NSOrthography.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF7313FCC68100B53D10 /* NSOrthography.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF6F13FCC68100B53D10 /* NSOrthography.m */; };
|
||||
FE09AF7413FCC68100B53D10 /* NSOrthography.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF6E13FCC68100B53D10 /* NSOrthography.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF7513FCC68100B53D10 /* NSOrthography.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF6F13FCC68100B53D10 /* NSOrthography.m */; };
|
||||
FE09AF7613FCC68100B53D10 /* NSOrthography.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF6E13FCC68100B53D10 /* NSOrthography.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF7713FCC68100B53D10 /* NSOrthography.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF6F13FCC68100B53D10 /* NSOrthography.m */; };
|
||||
FE09AF7813FCC68100B53D10 /* NSOrthography.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF6E13FCC68100B53D10 /* NSOrthography.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF7913FCC68100B53D10 /* NSOrthography.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF6F13FCC68100B53D10 /* NSOrthography.m */; };
|
||||
FE09AF7A13FCC68100B53D10 /* NSOrthography.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF6E13FCC68100B53D10 /* NSOrthography.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF7B13FCC68100B53D10 /* NSOrthography.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF6F13FCC68100B53D10 /* NSOrthography.m */; };
|
||||
FE09AF7C13FCC68100B53D10 /* NSOrthography.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF6E13FCC68100B53D10 /* NSOrthography.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF7D13FCC68100B53D10 /* NSOrthography.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF6F13FCC68100B53D10 /* NSOrthography.m */; };
|
||||
FE09AF7E13FCC68100B53D10 /* NSOrthography.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF6E13FCC68100B53D10 /* NSOrthography.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF7F13FCC68100B53D10 /* NSOrthography.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF6F13FCC68100B53D10 /* NSOrthography.m */; };
|
||||
FE09AF8013FCC68100B53D10 /* NSOrthography.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF6E13FCC68100B53D10 /* NSOrthography.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF8113FCC68100B53D10 /* NSOrthography.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF6F13FCC68100B53D10 /* NSOrthography.m */; };
|
||||
FE09AF8413FCC69200B53D10 /* NSTextCheckingResult.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF8213FCC69200B53D10 /* NSTextCheckingResult.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF8513FCC69200B53D10 /* NSTextCheckingResult.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF8313FCC69200B53D10 /* NSTextCheckingResult.m */; };
|
||||
FE09AF8613FCC69200B53D10 /* NSTextCheckingResult.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF8213FCC69200B53D10 /* NSTextCheckingResult.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF8713FCC69200B53D10 /* NSTextCheckingResult.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF8313FCC69200B53D10 /* NSTextCheckingResult.m */; };
|
||||
FE09AF8813FCC69200B53D10 /* NSTextCheckingResult.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF8213FCC69200B53D10 /* NSTextCheckingResult.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF8913FCC69200B53D10 /* NSTextCheckingResult.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF8313FCC69200B53D10 /* NSTextCheckingResult.m */; };
|
||||
FE09AF8A13FCC69200B53D10 /* NSTextCheckingResult.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF8213FCC69200B53D10 /* NSTextCheckingResult.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF8B13FCC69200B53D10 /* NSTextCheckingResult.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF8313FCC69200B53D10 /* NSTextCheckingResult.m */; };
|
||||
FE09AF8C13FCC69200B53D10 /* NSTextCheckingResult.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF8213FCC69200B53D10 /* NSTextCheckingResult.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF8D13FCC69200B53D10 /* NSTextCheckingResult.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF8313FCC69200B53D10 /* NSTextCheckingResult.m */; };
|
||||
FE09AF8E13FCC69200B53D10 /* NSTextCheckingResult.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF8213FCC69200B53D10 /* NSTextCheckingResult.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF8F13FCC69200B53D10 /* NSTextCheckingResult.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF8313FCC69200B53D10 /* NSTextCheckingResult.m */; };
|
||||
FE09AF9013FCC69200B53D10 /* NSTextCheckingResult.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF8213FCC69200B53D10 /* NSTextCheckingResult.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF9113FCC69200B53D10 /* NSTextCheckingResult.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF8313FCC69200B53D10 /* NSTextCheckingResult.m */; };
|
||||
FE09AF9213FCC69200B53D10 /* NSTextCheckingResult.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF8213FCC69200B53D10 /* NSTextCheckingResult.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF9313FCC69200B53D10 /* NSTextCheckingResult.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF8313FCC69200B53D10 /* NSTextCheckingResult.m */; };
|
||||
FE09AF9413FCC69200B53D10 /* NSTextCheckingResult.h in Headers */ = {isa = PBXBuildFile; fileRef = FE09AF8213FCC69200B53D10 /* NSTextCheckingResult.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FE09AF9513FCC69200B53D10 /* NSTextCheckingResult.m in Sources */ = {isa = PBXBuildFile; fileRef = FE09AF8313FCC69200B53D10 /* NSTextCheckingResult.m */; };
|
||||
FE1365E00F154B3A000F2657 /* NSAtomicList.h in Headers */ = {isa = PBXBuildFile; fileRef = FE1365D80F154B3A000F2657 /* NSAtomicList.h */; };
|
||||
FE1365E10F154B3A000F2657 /* NSAtomicList.m in Sources */ = {isa = PBXBuildFile; fileRef = FE1365D90F154B3A000F2657 /* NSAtomicList.m */; };
|
||||
FE1365E40F154B3A000F2657 /* NSOperation.h in Headers */ = {isa = PBXBuildFile; fileRef = FE1365DC0F154B3A000F2657 /* NSOperation.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
@ -7212,6 +7248,10 @@
|
||||
C8C9700E0EBDBC63009CE9BC /* NSConditionLock_win32.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSConditionLock_win32.h; sourceTree = "<group>"; };
|
||||
C8C9700F0EBDBC63009CE9BC /* NSConditionLock_win32.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSConditionLock_win32.m; sourceTree = "<group>"; };
|
||||
FE01A7EC0C5D9B6900AEA51A /* Foundation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Foundation.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FE09AF6E13FCC68100B53D10 /* NSOrthography.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSOrthography.h; sourceTree = "<group>"; };
|
||||
FE09AF6F13FCC68100B53D10 /* NSOrthography.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSOrthography.m; sourceTree = "<group>"; };
|
||||
FE09AF8213FCC69200B53D10 /* NSTextCheckingResult.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSTextCheckingResult.h; sourceTree = "<group>"; };
|
||||
FE09AF8313FCC69200B53D10 /* NSTextCheckingResult.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSTextCheckingResult.m; sourceTree = "<group>"; };
|
||||
FE1342BD1151842200404745 /* CoreServices.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = CoreServices.xcodeproj; path = ../CoreServices/CoreServices.xcodeproj; sourceTree = SOURCE_ROOT; };
|
||||
FE1365D80F154B3A000F2657 /* NSAtomicList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSAtomicList.h; sourceTree = "<group>"; };
|
||||
FE1365D90F154B3A000F2657 /* NSAtomicList.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSAtomicList.m; sourceTree = "<group>"; };
|
||||
@ -7634,6 +7674,10 @@
|
||||
0867D691FE84028FC02AAC07 /* Foundation */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
FE09AF8213FCC69200B53D10 /* NSTextCheckingResult.h */,
|
||||
FE09AF8313FCC69200B53D10 /* NSTextCheckingResult.m */,
|
||||
FE09AF6E13FCC68100B53D10 /* NSOrthography.h */,
|
||||
FE09AF6F13FCC68100B53D10 /* NSOrthography.m */,
|
||||
FE1342BD1151842200404745 /* CoreServices.xcodeproj */,
|
||||
FE2569E410F2F936005CE23E /* CFNetwork */,
|
||||
FEA828A3109B74B200C7A732 /* CoreFoundation.xcodeproj */,
|
||||
@ -9297,6 +9341,8 @@
|
||||
FE721035124CE420009B690D /* NSKeyObserver.h in Headers */,
|
||||
FEADE5CE12FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.h in Headers */,
|
||||
FE937F4E1358DC8000C93531 /* NSNumber_CF.h in Headers */,
|
||||
FE09AF8013FCC68100B53D10 /* NSOrthography.h in Headers */,
|
||||
FE09AF9413FCC69200B53D10 /* NSTextCheckingResult.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -9626,6 +9672,8 @@
|
||||
FE721033124CE420009B690D /* NSKeyObserver.h in Headers */,
|
||||
FEADE5CC12FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.h in Headers */,
|
||||
FE937F4C1358DC8000C93531 /* NSNumber_CF.h in Headers */,
|
||||
FE09AF7C13FCC68100B53D10 /* NSOrthography.h in Headers */,
|
||||
FE09AF9013FCC69200B53D10 /* NSTextCheckingResult.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -9955,6 +10003,8 @@
|
||||
FE72102B124CE420009B690D /* NSKeyObserver.h in Headers */,
|
||||
FEADE5C412FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.h in Headers */,
|
||||
FE937F441358DC8000C93531 /* NSNumber_CF.h in Headers */,
|
||||
FE09AF7413FCC68100B53D10 /* NSOrthography.h in Headers */,
|
||||
FE09AF8813FCC69200B53D10 /* NSTextCheckingResult.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -10284,6 +10334,8 @@
|
||||
FE721029124CE420009B690D /* NSKeyObserver.h in Headers */,
|
||||
FEADE5C212FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.h in Headers */,
|
||||
FE937F421358DC8000C93531 /* NSNumber_CF.h in Headers */,
|
||||
FE09AF7213FCC68100B53D10 /* NSOrthography.h in Headers */,
|
||||
FE09AF8613FCC69200B53D10 /* NSTextCheckingResult.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -10618,6 +10670,8 @@
|
||||
FEEA64B512B674A200E6E2C8 /* NSRecursiveLock_win32.h in Headers */,
|
||||
FEADE5C012FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.h in Headers */,
|
||||
FE937F401358DC8000C93531 /* NSNumber_CF.h in Headers */,
|
||||
FE09AF7013FCC68100B53D10 /* NSOrthography.h in Headers */,
|
||||
FE09AF8413FCC69200B53D10 /* NSTextCheckingResult.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -10947,6 +11001,8 @@
|
||||
FE721037124CE420009B690D /* NSKeyObserver.h in Headers */,
|
||||
FEADE5D012FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.h in Headers */,
|
||||
FE937F501358DC8000C93531 /* NSNumber_CF.h in Headers */,
|
||||
FE09AF7E13FCC68100B53D10 /* NSOrthography.h in Headers */,
|
||||
FE09AF9213FCC69200B53D10 /* NSTextCheckingResult.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -11277,6 +11333,8 @@
|
||||
FE721031124CE420009B690D /* NSKeyObserver.h in Headers */,
|
||||
FEADE5CA12FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.h in Headers */,
|
||||
FE937F4A1358DC8000C93531 /* NSNumber_CF.h in Headers */,
|
||||
FE09AF7A13FCC68100B53D10 /* NSOrthography.h in Headers */,
|
||||
FE09AF8E13FCC69200B53D10 /* NSTextCheckingResult.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -11607,6 +11665,8 @@
|
||||
FE72102D124CE420009B690D /* NSKeyObserver.h in Headers */,
|
||||
FEADE5C612FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.h in Headers */,
|
||||
FE937F461358DC8000C93531 /* NSNumber_CF.h in Headers */,
|
||||
FE09AF7613FCC68100B53D10 /* NSOrthography.h in Headers */,
|
||||
FE09AF8A13FCC69200B53D10 /* NSTextCheckingResult.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -11937,6 +11997,8 @@
|
||||
FE72102F124CE420009B690D /* NSKeyObserver.h in Headers */,
|
||||
FEADE5C812FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.h in Headers */,
|
||||
FE937F481358DC8000C93531 /* NSNumber_CF.h in Headers */,
|
||||
FE09AF7813FCC68100B53D10 /* NSOrthography.h in Headers */,
|
||||
FE09AF8C13FCC69200B53D10 /* NSTextCheckingResult.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -12866,6 +12928,8 @@
|
||||
FE721036124CE420009B690D /* NSKeyObserver.m in Sources */,
|
||||
FEADE5CF12FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.m in Sources */,
|
||||
FE937F4F1358DC8000C93531 /* NSNumber_CF.m in Sources */,
|
||||
FE09AF8113FCC68100B53D10 /* NSOrthography.m in Sources */,
|
||||
FE09AF9513FCC69200B53D10 /* NSTextCheckingResult.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -13233,6 +13297,8 @@
|
||||
FE721034124CE420009B690D /* NSKeyObserver.m in Sources */,
|
||||
FEADE5CD12FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.m in Sources */,
|
||||
FE937F4D1358DC8000C93531 /* NSNumber_CF.m in Sources */,
|
||||
FE09AF7D13FCC68100B53D10 /* NSOrthography.m in Sources */,
|
||||
FE09AF9113FCC69200B53D10 /* NSTextCheckingResult.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -13601,6 +13667,8 @@
|
||||
FE72102C124CE420009B690D /* NSKeyObserver.m in Sources */,
|
||||
FEADE5C512FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.m in Sources */,
|
||||
FE937F451358DC8000C93531 /* NSNumber_CF.m in Sources */,
|
||||
FE09AF7513FCC68100B53D10 /* NSOrthography.m in Sources */,
|
||||
FE09AF8913FCC69200B53D10 /* NSTextCheckingResult.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -13970,6 +14038,8 @@
|
||||
FE72102A124CE420009B690D /* NSKeyObserver.m in Sources */,
|
||||
FEADE5C312FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.m in Sources */,
|
||||
FE937F431358DC8000C93531 /* NSNumber_CF.m in Sources */,
|
||||
FE09AF7313FCC68100B53D10 /* NSOrthography.m in Sources */,
|
||||
FE09AF8713FCC69200B53D10 /* NSTextCheckingResult.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -14346,6 +14416,8 @@
|
||||
FEEA64B612B674A200E6E2C8 /* NSRecursiveLock_win32.m in Sources */,
|
||||
FEADE5C112FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.m in Sources */,
|
||||
FE937F411358DC8000C93531 /* NSNumber_CF.m in Sources */,
|
||||
FE09AF7113FCC68100B53D10 /* NSOrthography.m in Sources */,
|
||||
FE09AF8513FCC69200B53D10 /* NSTextCheckingResult.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -14715,6 +14787,8 @@
|
||||
FE721038124CE420009B690D /* NSKeyObserver.m in Sources */,
|
||||
FEADE5D112FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.m in Sources */,
|
||||
FE937F511358DC8000C93531 /* NSNumber_CF.m in Sources */,
|
||||
FE09AF7F13FCC68100B53D10 /* NSOrthography.m in Sources */,
|
||||
FE09AF9313FCC69200B53D10 /* NSTextCheckingResult.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -15087,6 +15161,8 @@
|
||||
FE721032124CE420009B690D /* NSKeyObserver.m in Sources */,
|
||||
FEADE5CB12FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.m in Sources */,
|
||||
FE937F4B1358DC8000C93531 /* NSNumber_CF.m in Sources */,
|
||||
FE09AF7B13FCC68100B53D10 /* NSOrthography.m in Sources */,
|
||||
FE09AF8F13FCC69200B53D10 /* NSTextCheckingResult.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -15460,6 +15536,8 @@
|
||||
FE72102E124CE420009B690D /* NSKeyObserver.m in Sources */,
|
||||
FEADE5C712FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.m in Sources */,
|
||||
FE937F471358DC8000C93531 /* NSNumber_CF.m in Sources */,
|
||||
FE09AF7713FCC68100B53D10 /* NSOrthography.m in Sources */,
|
||||
FE09AF8B13FCC69200B53D10 /* NSTextCheckingResult.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -15833,6 +15911,8 @@
|
||||
FE721030124CE420009B690D /* NSKeyObserver.m in Sources */,
|
||||
FEADE5C912FEF1120048F5DE /* NSValueTransformer_KeyedUnarchiveFromData.m in Sources */,
|
||||
FE937F491358DC8000C93531 /* NSNumber_CF.m in Sources */,
|
||||
FE09AF7913FCC68100B53D10 /* NSOrthography.m in Sources */,
|
||||
FE09AF8D13FCC69200B53D10 /* NSTextCheckingResult.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
23
Foundation/NSOrthography.h
Normal file
23
Foundation/NSOrthography.h
Normal file
@ -0,0 +1,23 @@
|
||||
#import <Foundation/NSObject.h>
|
||||
|
||||
@class NSArray, NSDictionary;
|
||||
|
||||
@interface NSOrthography : NSObject {
|
||||
NSString *_dominantScript;
|
||||
NSDictionary *_languageMap;
|
||||
}
|
||||
|
||||
+orthographyWithDominantScript:(NSString *)script languageMap:(NSDictionary *)languageMap;
|
||||
|
||||
-initWithDominantScript:(NSString *)script languageMap:(NSDictionary *)languageMap;
|
||||
|
||||
@property(readonly) NSDictionary *languageMap;
|
||||
@property(readonly) NSArray *allLanguages;
|
||||
@property(readonly) NSArray *allScripts;
|
||||
@property(readonly) NSString *dominantLanguage;
|
||||
@property(readonly) NSString *dominantScript;
|
||||
|
||||
-(NSString *)dominantLanguageForScript:(NSString *)script;
|
||||
-(NSArray *)languagesForScript:(NSString *)script;
|
||||
|
||||
@end
|
55
Foundation/NSOrthography.m
Normal file
55
Foundation/NSOrthography.m
Normal file
@ -0,0 +1,55 @@
|
||||
#import <Foundation/NSOrthography.h>
|
||||
#import <Foundation/NSRaise.h>
|
||||
|
||||
@implementation NSOrthography
|
||||
|
||||
+orthographyWithDominantScript:(NSString *)script languageMap:(NSDictionary *)languageMap {
|
||||
return [[[self alloc] initWithDominantScript:script languageMap:languageMap] autorelease];
|
||||
}
|
||||
|
||||
-initWithDominantScript:(NSString *)script languageMap:(NSDictionary *)languageMap {
|
||||
_dominantScript=[script copy];
|
||||
_languageMap=[languageMap copy];
|
||||
return self;
|
||||
}
|
||||
|
||||
-(void)dealloc {
|
||||
[_dominantScript release];
|
||||
[_languageMap release];
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
-(NSDictionary *)languageMap {
|
||||
return _languageMap;
|
||||
}
|
||||
|
||||
-(NSArray *)allLanguages {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSArray *)allScripts {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSString *)dominantLanguage {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSString *)dominantScript {
|
||||
return _dominantScript;
|
||||
}
|
||||
|
||||
-(NSString *)dominantLanguageForScript:(NSString *)script {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSArray *)languagesForScript:(NSString *)script {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
@end
|
@ -0,0 +1,41 @@
|
||||
#import <Foundation/NSObject.h>
|
||||
|
||||
NSString *const NSGrammarRange;
|
||||
NSString *const NSGrammarUserDescription;
|
||||
NSString *const NSGrammarCorrections;
|
||||
|
||||
@protocol NSSpellServerDelegate
|
||||
//@optional
|
||||
|
||||
-(NSRange)spellServer:(NSSpellServer *)sender checkGrammarInString:(NSString *)string language:(NSString *)language details:(NSArray **)outDetails;
|
||||
|
||||
-(NSArray *)spellServer:(NSSpellServer *)sender checkString:(NSString *)stringToCheck offset:(NSUInteger)offset types:(NSTextCheckingTypes)checkingTypes options:(NSDictionary *)options orthography:(NSOrthography *)orthography wordCount:(NSInteger *)wordCount;
|
||||
|
||||
-(void)spellServer:(NSSpellServer *)sender didForgetWord:(NSString *)word inLanguage:(NSString *)language;
|
||||
|
||||
-(void)spellServer:(NSSpellServer *)sender didLearnWord:(NSString *)word inLanguage:(NSString *)language;
|
||||
|
||||
-(NSRange)spellServer:(NSSpellServer *)sender findMisspelledWordInString:(NSString *)stringToCheck language:(NSString *)language wordCount:(NSInteger *)wordCount countOnly:(BOOL)countOnly;
|
||||
|
||||
-(NSArray *)spellServer:(NSSpellServer *)sender suggestCompletionsForPartialWordRange:(NSRange)range inString:(NSString *)string language:(NSString *)language;
|
||||
|
||||
-(NSArray *)spellServer:(NSSpellServer *)sender suggestGuessesForWord:(NSString *)word inLanguage:(NSString *)language;
|
||||
|
||||
@end
|
||||
|
||||
|
||||
@interface NSSpellServer : NSObject {
|
||||
}
|
||||
|
||||
-(id <NSSpellServerDelegate>)delegate;
|
||||
|
||||
-(BOOL)isWordInUserDictionaries:(NSString *)word caseSensitive:(BOOL)caseSensitive;
|
||||
|
||||
-(BOOL)registerLanguage:(NSString *)language byVendor:(NSString *)vendor;
|
||||
|
||||
-(void)run;
|
||||
|
||||
-(void)setDelegate:(id <NSSpellServerDelegate>)delegate;
|
||||
|
||||
@end
|
||||
|
64
Foundation/NSTextCheckingResult.h
Normal file
64
Foundation/NSTextCheckingResult.h
Normal file
@ -0,0 +1,64 @@
|
||||
#import <Foundation/NSObject.h>
|
||||
#import <Foundation/NSRange.h>
|
||||
#import <Foundation/NSDate.h>
|
||||
|
||||
@class NSDictionary,NSURL,NSOrthography;
|
||||
|
||||
FOUNDATION_EXPORT NSString * const NSTextCheckingNameKey;
|
||||
FOUNDATION_EXPORT NSString * const NSTextCheckingJobTitleKey;
|
||||
FOUNDATION_EXPORT NSString * const NSTextCheckingOrganizationKey;
|
||||
FOUNDATION_EXPORT NSString * const NSTextCheckingStreetKey;
|
||||
FOUNDATION_EXPORT NSString * const NSTextCheckingCityKey;
|
||||
FOUNDATION_EXPORT NSString * const NSTextCheckingStateKey;
|
||||
FOUNDATION_EXPORT NSString * const NSTextCheckingZIPKey;
|
||||
FOUNDATION_EXPORT NSString * const NSTextCheckingCountryKey;
|
||||
FOUNDATION_EXPORT NSString * const NSTextCheckingPhoneKey;
|
||||
|
||||
enum {
|
||||
NSTextCheckingTypeOrthography= 1ULL<<0,
|
||||
NSTextCheckingTypeSpelling = 1ULL<<1,
|
||||
NSTextCheckingTypeGrammar = 1ULL<<2,
|
||||
NSTextCheckingTypeDate = 1ULL<<3,
|
||||
NSTextCheckingTypeAddress = 1ULL<<4,
|
||||
NSTextCheckingTypeLink = 1ULL<<5,
|
||||
NSTextCheckingTypeQuote = 1ULL<<6,
|
||||
NSTextCheckingTypeDash = 1ULL<<7,
|
||||
NSTextCheckingTypeReplacement= 1ULL<<8,
|
||||
NSTextCheckingTypeCorrection = 1ULL<<9,
|
||||
};
|
||||
typedef uint64_t NSTextCheckingType;
|
||||
|
||||
enum {
|
||||
NSTextCheckingAllSystemTypes=0xffffffffULL,
|
||||
NSTextCheckingAllCustomTypes=0xffffffffULL<<32,
|
||||
NSTextCheckingAllTypes =(NSTextCheckingAllSystemTypes|NSTextCheckingAllCustomTypes),
|
||||
};
|
||||
typedef uint64_t NSTextCheckingTypes;
|
||||
|
||||
@interface NSTextCheckingResult : NSObject {
|
||||
}
|
||||
|
||||
+(NSTextCheckingResult *)addressCheckingResultWithRange:(NSRange)range components:(NSDictionary *)components;
|
||||
+(NSTextCheckingResult *)correctionCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacement;
|
||||
+(NSTextCheckingResult *)dashCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacement;
|
||||
+(NSTextCheckingResult *)dateCheckingResultWithRange:(NSRange)range date:(NSDate *)date;
|
||||
+(NSTextCheckingResult *)dateCheckingResultWithRange:(NSRange)range date:(NSDate *)date timeZone:(NSTimeZone *)timeZone duration:(NSTimeInterval)duration;
|
||||
+(NSTextCheckingResult *)grammarCheckingResultWithRange:(NSRange)range details:(NSArray *)details;
|
||||
+(NSTextCheckingResult *)linkCheckingResultWithRange:(NSRange)range URL:(NSURL *)url;
|
||||
+(NSTextCheckingResult *)orthographyCheckingResultWithRange:(NSRange)range orthography:(NSOrthography *)orthography;
|
||||
+(NSTextCheckingResult *)quoteCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacement;
|
||||
+(NSTextCheckingResult *)replacementCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacement;
|
||||
+(NSTextCheckingResult *)spellCheckingResultWithRange:(NSRange)range;
|
||||
|
||||
@property(readonly) NSDictionary *addressComponents;
|
||||
@property(readonly) NSDate *date;
|
||||
@property(readonly) NSTimeInterval duration;
|
||||
@property(readonly) NSArray *grammarDetails;
|
||||
@property(readonly) NSOrthography *orthography;
|
||||
@property(readonly) NSRange range;
|
||||
@property(readonly) NSString *replacementString;
|
||||
@property(readonly) NSTextCheckingType resultType;
|
||||
@property(readonly) NSTimeZone *timeZone;
|
||||
@property(readonly) NSURL *URL;
|
||||
|
||||
@end
|
111
Foundation/NSTextCheckingResult.m
Normal file
111
Foundation/NSTextCheckingResult.m
Normal file
@ -0,0 +1,111 @@
|
||||
#import <Foundation/NSTextCheckingResult.h>
|
||||
#import <Foundation/NSRaise.h>
|
||||
|
||||
@implementation NSTextCheckingResult
|
||||
|
||||
+(NSTextCheckingResult *)addressCheckingResultWithRange:(NSRange)range components:(NSDictionary *)components {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
+(NSTextCheckingResult *)correctionCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacement {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
+(NSTextCheckingResult *)dashCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacement {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
+(NSTextCheckingResult *)dateCheckingResultWithRange:(NSRange)range date:(NSDate *)date {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
+(NSTextCheckingResult *)dateCheckingResultWithRange:(NSRange)range date:(NSDate *)date timeZone:(NSTimeZone *)timeZone duration:(NSTimeInterval)duration {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
+(NSTextCheckingResult *)grammarCheckingResultWithRange:(NSRange)range details:(NSArray *)details {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
+(NSTextCheckingResult *)linkCheckingResultWithRange:(NSRange)range URL:(NSURL *)url {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
+(NSTextCheckingResult *)orthographyCheckingResultWithRange:(NSRange)range orthography:(NSOrthography *)orthography {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
+(NSTextCheckingResult *)quoteCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacement {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
+(NSTextCheckingResult *)replacementCheckingResultWithRange:(NSRange)range replacementString:(NSString *)replacement {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
+(NSTextCheckingResult *)spellCheckingResultWithRange:(NSRange)range {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSDictionary *)addressComponents {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSDate *)date {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSTimeInterval)duration {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSArray *)grammarDetails {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSOrthography *)orthography {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSRange)range {
|
||||
NSUnimplementedMethod();
|
||||
return NSMakeRange(0,0);
|
||||
}
|
||||
|
||||
-(NSString *)replacementString {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSTextCheckingType)resultType {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSTimeZone *)timeZone {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
-(NSURL *)URL {
|
||||
NSUnimplementedMethod();
|
||||
return nil;
|
||||
}
|
||||
|
||||
@end
|
@ -107,6 +107,9 @@ size_t O2BitmapContextGetBitsPerPixel(O2ContextRef self) {
|
||||
|
||||
case kO2ImageAlphaNoneSkipFirst:
|
||||
break;
|
||||
|
||||
case kO2ImageAlphaOnly:
|
||||
break;
|
||||
}
|
||||
|
||||
return result;
|
||||
|
@ -232,6 +232,7 @@ int O2ColorConvertComponentsToDeviceRGB(O2ColorSpaceRef inputSpace,const O2Float
|
||||
return 0;
|
||||
|
||||
case kO2ColorSpaceModelPattern:
|
||||
default:
|
||||
NSLog(@"O2ColorConvertComponentsToDeviceRGB unimplemented conversion %d",model);
|
||||
rgbComponents[0]=0;
|
||||
rgbComponents[1]=0;
|
||||
|
@ -335,7 +335,7 @@ NSString *O2MacRomanGlyphNames[256]={
|
||||
}
|
||||
|
||||
extern O2FontRef O2FontCreateWithFontName_platform(NSString *name);
|
||||
extern O2FontRef O2FontCreateWithDataProvider_platform(NSString *name);
|
||||
extern O2FontRef O2FontCreateWithDataProvider_platform(O2DataProviderRef provider);
|
||||
|
||||
O2FontRef O2FontCreateWithFontName(NSString *name) {
|
||||
return O2FontCreateWithFontName_platform(name);
|
||||
@ -4741,7 +4741,7 @@ uint16_t O2FontUnicodeForGlyphName(NSString *name){
|
||||
{@"zstroke",0x01B6},
|
||||
{@"zuhiragana",0x305A},
|
||||
{@"zukatakana",0x30BA},
|
||||
nil,0
|
||||
{nil,0}
|
||||
};
|
||||
int i;
|
||||
|
||||
|
@ -281,7 +281,7 @@ int DLZWDecompressLine(LZWFileType * LZWFile,O2DataConsumerRef consumer,int Line
|
||||
|
||||
NSData *LZWDecodeWithExpectedResultLength(NSData *data,unsigned stripLength){
|
||||
NSMutableData *outputData=[NSMutableData data];
|
||||
O2DataConsumerRef consumer=O2DataConsumerCreateWithCFData(outputData);
|
||||
O2DataConsumerRef consumer=O2DataConsumerCreateWithCFData((CFDataRef)outputData);
|
||||
LZWFileType lzwStream;
|
||||
|
||||
lzwStream.inputStream=[NSInputStream inputStreamWithData:data];
|
||||
|
@ -670,8 +670,10 @@ void O2PDF_render_ID(O2PDFScanner *scanner,void *info) {
|
||||
if(![dictionary getBooleanForKey:"IM" value:&imageMask])
|
||||
if(![dictionary getBooleanForKey:"ImageMask" value:&imageMask]){
|
||||
}
|
||||
|
||||
if(![dictionary getObjectForKey:"Intent" value:&intent])
|
||||
#if 0
|
||||
if(![dictionary getObjectForKey:"Intent" value:&intent]){
|
||||
}
|
||||
#endif
|
||||
|
||||
if(![dictionary getBooleanForKey:"I" value:&interpolate])
|
||||
if(![dictionary getBooleanForKey:"Interpolate" value:&interpolate]){
|
||||
|
@ -67,6 +67,8 @@ void O2PaintApplyMaskSpan(O2argb8u *span,O2argb8u *maskSpan,int length){
|
||||
}
|
||||
}
|
||||
|
||||
#if 0
|
||||
// disable below too
|
||||
ONYX2D_STATIC int O2PaintReadResampledHighSpan_largb8u_PRE(O2Paint *selfX,int x,int y,O2argb8u *span,int length){
|
||||
O2Paint_image *self=(O2Paint_image *)selfX;
|
||||
|
||||
@ -81,6 +83,7 @@ ONYX2D_STATIC int O2PaintReadResampledHighSpan_largb8u_PRE(O2Paint *selfX,int x,
|
||||
|
||||
return length;
|
||||
}
|
||||
#endif
|
||||
|
||||
ONYX2D_STATIC int O2PaintReadResampledLowSpan_largb8u_PRE(O2Paint *selfX,int x,int y,O2argb8u *span,int length){
|
||||
O2Paint_image *self=(O2Paint_image *)selfX;
|
||||
|
@ -158,6 +158,7 @@ static inline O2argb8u testO2argb8uMultiplyByMask8u(O2argb8u result,uint32_t val
|
||||
return result;
|
||||
}
|
||||
|
||||
#if 0
|
||||
static void applyCoverageToSpan_lRGBA8888_PRE(O2argb8u *dst,uint8_t *coverageSpan,O2argb8u *src,int length){
|
||||
int i;
|
||||
|
||||
@ -171,7 +172,6 @@ static void applyCoverageToSpan_lRGBA8888_PRE(O2argb8u *dst,uint8_t *coverageSpa
|
||||
}
|
||||
}
|
||||
|
||||
#if 0
|
||||
static void drawGray8Stencil(O2Context_builtin_gdi *self,O2Surface *surface,CGFloat fpx,CGFloat fpy,O2Paint *paint,uint8_t *coverage,size_t bytesPerRow,size_t width,size_t height,int left,int top){
|
||||
int x=lroundf(fpx)+left;
|
||||
int y=lroundf(fpy)-top;
|
||||
|
@ -346,6 +346,9 @@ static HFONT Win32FontHandleWithName(NSString *name,int unitsPerEm){
|
||||
_winAnsiEncoding=[[O2Encoding alloc] initWithGlyphs:glyphs unicode:unicode];
|
||||
}
|
||||
return [_winAnsiEncoding retain];
|
||||
|
||||
case kO2EncodingUnicode:
|
||||
break;
|
||||
}
|
||||
|
||||
return nil;
|
||||
|
Loading…
Reference in New Issue
Block a user