Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Moved DTZipArchive, DTHTMLParser and DTDownloadCache into their own l…

…ibraries.

This move was prompted by it being annoying to having to add their dependent libraries always when including DTFoundation even though you might not be using them. Now DTFoundation itself only includes stuff that has no dependencies and if you want these 3 classes you can just add their static libs too
  • Loading branch information...
commit d140d94224e314c4c2dbc21357c74fef7cf76722 1 parent 7769e4e
@Cocoanetics authored
View
3  .gitmodules
@@ -0,0 +1,3 @@
+[submodule "Core/Externals/DTFoundation"]
+ path = Core/Externals/DTFoundation
+ url = git://github.com/Cocoanetics/DTFoundation.git
1  Core/Externals/DTFoundation
@@ -0,0 +1 @@
+Subproject commit 8fbca4dea6b8ade76d2fafc59c6b0b605e68d235
View
2  Core/Source/DTCoreText.h
@@ -46,8 +46,6 @@
#import "DTWebVideoView.h"
#import "NSAttributedStringRunDelegates.h"
-#import "UIDevice+DTSimpleVersion.h"
-
#import "DTAttributedTextCell.h"
#import "DTAttributedTextContentView.h"
#import "DTAttributedTextView.h"
View
11 Core/Source/DTCoreTextFontDescriptor.m
@@ -7,10 +7,7 @@
//
#import "DTCoreTextFontDescriptor.h"
-
-#if TARGET_OS_IPHONE
-#import "UIDevice+DTSimpleVersion.h"
-#endif
+#import "DTVersion.h"
static NSCache *_fontCache = nil;
static NSMutableDictionary *_fontOverrides = nil;
@@ -68,10 +65,12 @@ + (void)initialize
#if TARGET_OS_IPHONE
// workaround for iOS 5.x bug: global font cascade table has incorrect bold font for Chinese characters in Chinese locale
- DTSimpleVersion version = [[UIDevice currentDevice] osVersion];
+
+
+ DTVersion *version = [DTVersion osVersion];
// seems to be fixed in iOS 6
- if (version.major<6)
+ if (version.majorVersion<6)
{
_needsChineseFontCascadeFix = YES;
}
View
5 Core/Source/DTCoreTextLayoutFrame.m
@@ -8,6 +8,7 @@
#import "DTCoreText.h"
#import "DTCoreTextLayoutFrame.h"
+#import "DTVersion.h"
// global flag that shows debug frames
static BOOL _DTCoreTextLayoutFramesShouldDrawDebugFrames = NO;
@@ -506,9 +507,9 @@ - (void)_buildLinesWithStandardFramesetter
//[self _correctLineOrigins];
// --- begin workaround for image squishing bug in iOS < 4.2
- DTSimpleVersion version = [[UIDevice currentDevice] osVersion];
+ DTVersion *version = [DTVersion osVersion];
- if (version.major<4 || (version.major==4 && version.minor < 2))
+ if (version.majorVersion<4 || (version.majorVersion==4 && version.minorVersion < 2))
{
[self _correctAttachmentHeights];
}
View
190 Core/Source/DTHTMLParser.h
@@ -1,190 +0,0 @@
-//
-// DTHTMLParser.h
-// DTCoreText
-//
-// Created by Oliver Drobnik on 1/18/12.
-// Copyright (c) 2012 Drobnik.com. All rights reserved.
-//
-
-
-@class DTHTMLParser;
-/** The DTHTMLParserDelegate protocol defines the optional methods implemented by delegates of DTHTMLParser objects.
-
- Dependencies: libxml2.dylib
- */
-@protocol DTHTMLParserDelegate <NSObject>
-
-@optional
-
-/**
- Sent by the parser object to the delegate when it begins parsing a document.
-
- @param parser A parser object.
- */
-- (void)parserDidStartDocument:(DTHTMLParser *)parser;
-
-/**
- Sent by the parser object to the delegate when it has successfully completed parsing
-
- @param parser A parser object.
- */
-- (void)parserDidEndDocument:(DTHTMLParser *)parser;
-
-/**
- Sent by a parser object to its delegate when it encounters a start tag for a given element.
-
- @param parser A parser object.
- @param elementName A string that is the name of an element (in its start tag).
- @param attributeDict A dictionary that contains any attributes associated with the element. Keys are the names of attributes, and values are attribute values.
- */
-- (void)parser:(DTHTMLParser *)parser didStartElement:(NSString *)elementName attributes:(NSDictionary *)attributeDict;
-
-/**
- Sent by a parser object to its delegate when it encounters an end tag for a specific element.
-
- @param parser A parser object.
- @param elementName A string that is the name of an element (in its end tag).
- */
-- (void)parser:(DTHTMLParser *)parser didEndElement:(NSString *)elementName;
-
-/**
- Sent by a parser object to provide its delegate with a string representing all or part of the characters of the current element.
-
- The parser object may send the delegate several parser:foundCharacters: messages to report the characters of an element. Because string may be only part of the total character content for the current element, you should append it to the current accumulation of characters until the element changes.
-
- @param parser A parser object.
- @param string A string representing the complete or partial textual content of the current element.
- */
-- (void)parser:(DTHTMLParser *)parser foundCharacters:(NSString *)string;
-
-/**
- Sent by a parser object to its delegate when it encounters a comment in the HTML.
-
- @param parser A DTHTMLParser object parsing HTML.
- @param comment A string that is a the content of a comment in the XML.
- */
-- (void)parser:(DTHTMLParser *)parser foundComment:(NSString *)comment;
-
-/**
- Sent by a parser object to its delegate when it encounters a CDATA block.
-
- Through this method the parser object passes the contents of the block to its delegate in an NSData object. The CDATA block is character data that is ignored by the parser. The encoding of the character data is UTF-8. To convert the data object to a string object, use the NSString method initWithData:encoding:. Note: CSS style blocks are returned as CDATA.
-
- @param parser A DTHTMLParser object parsing HTML.
- @param CDATABlock A data object containing a block of CDATA.
- */
-- (void)parser:(DTHTMLParser *)parser foundCDATA:(NSData *)CDATABlock;
-
-/**
- Sent by a parser object to its delegate when it encounters a processing instruction.
-
- @param parser A DTHTMLParser object parsing HTML.
- @param target A string representing the target of a processing instruction.
- @param data A string representing the data for a processing instruction.
- */
-- (void)parser:(DTHTMLParser *)parser foundProcessingInstructionWithTarget:(NSString *)target data:(NSString *)data;
-
-/**
- Sent by a parser object to its delegate when it encounters a fatal error.
-
- When this method is invoked, parsing is stopped. For further information about the error, you can query parseError or you can send the parser a parserError message. You can also send the parser lineNumber and columnNumber messages to further isolate where the error occurred. Typically you implement this method to display information about the error to the user.
-
- @param parser A parser object.
- @param parseError An `NSError` object describing the parsing error that occurred.
- */
-- (void)parser:(DTHTMLParser *)parser parseErrorOccurred:(NSError *)parseError;
-
-@end
-
-/** Instances of this class parse HTML documents (including DTD declarations) in an event-driven manner. A DTHTMLParser notifies its delegate about the items (elements, attributes, CDATA blocks, comments, and so on) that it encounters as it processes an HTML document. It does not itself do anything with those parsed items except report them. It also reports parsing errors. For convenience, an DTHTMLParser object in the following descriptions is sometimes referred to as a parser object.
- */
-@interface DTHTMLParser : NSObject
-
-/**-------------------------------------------------------------------------------------
- @name Initializing a Parser Object
- ---------------------------------------------------------------------------------------
- */
-
-/**
- Initializes the receiver with the HTML contents encapsulated in a given data object.
-
- @param data An `NSData` object containing XML markup.
- @param encoding The encoding used for encoding the HTML data
- @returns An initialized `DTHTMLParser` object or nil if an error occurs.
- */
-- (id)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding;
-
-/**-------------------------------------------------------------------------------------
- @name Parsing
- ---------------------------------------------------------------------------------------
- */
-
-/**
- Starts the event-driven parsing operation.
-
- If you invoke this method, the delegate, if it implements parser:parseErrorOccurred:, is informed of the cancelled parsing operation.
-
- @returns `YES` if parsing is successful and `NO` in there is an error or if the parsing operation is aborted.
- */
-- (BOOL)parse;
-
-/**
- Stops the parser object.
-
- @see parse
- @see parserError
- */
-- (void)abortParsing;
-
-/**
- Sets the receiver’s delegate.
-
- @param delegate An object that is the new delegate. It is not retained. The delegate must conform to the DTHTMLParserDelegate Protocol protocol.
-
- @see delegate
- */
-- (void)setDelegate:(id <DTHTMLParserDelegate>)delegate;
-
-/**
- Returns the receiver’s delegate.
-
- @see delegate
- */
-- (id <DTHTMLParserDelegate>)delegate;
-
-/**
- Returns the column number of the XML document being processed by the receiver.
-
- The column refers to the nesting level of the HTML elements in the document. You may invoke this method once a parsing operation has begun or after an error occurs.
- */
-@property (nonatomic, readonly) NSInteger columnNumber;
-
-/**
- Returns the line number of the HTML document being processed by the receiver.
-
- You may invoke this method once a parsing operation has begun or after an error occurs.
- */
-@property (nonatomic, readonly) NSInteger lineNumber;
-
-/**
- Returns an `NSError` object from which you can obtain information about a parsing error.
-
- You may invoke this method after a parsing operation abnormally terminates to determine the cause of error.
- */
-@property (nonatomic, readonly, strong) NSError *parserError;
-
-/**
- Returns the public identifier of the external entity referenced in the HTML document.
-
- You may invoke this method once a parsing operation has begun or after an error occurs.
- */
-@property (nonatomic, readonly) NSString *publicID;
-
-/**
- Returns the system identifier of the external entity referenced in the HTML document.
-
- You may invoke this method once a parsing operation has begun or after an error occurs.
- */
-@property (nonatomic, readonly) NSString *systemID;
-
-@end
View
410 Core/Source/DTHTMLParser.m
@@ -1,410 +0,0 @@
-//
-// DTHTMLParser.m
-// DTFoundation
-//
-// Created by Oliver Drobnik on 1/18/12.
-// Copyright (c) 2012 Cocoanetics. All rights reserved.
-//
-
-#import "DTHTMLParser.h"
-#import <libxml/HTMLparser.h>
-
-
-@interface DTHTMLParser()
-
-@property (nonatomic, strong) NSError *parserError;
-@property (nonatomic, assign) NSStringEncoding encoding;
-
-@end
-
-
-#pragma mark Event function prototypes
-
-void _startDocument(void *context);
-void _endDocument(void *context);
-void _startElement(void *context, const xmlChar *name,const xmlChar **atts);
-void _endElement(void *context, const xmlChar *name);
-void _characters(void *context, const xmlChar *ch, int len);
-void _comment(void *context, const xmlChar *value);
-void _dterror(void *context, const char *msg, ...);
-void _cdataBlock(void *context, const xmlChar *value, int len);
-void _processingInstruction (void *context, const xmlChar *target, const xmlChar *data);
-
-#pragma mark Event functions
-void _startDocument(void *context)
-{
- DTHTMLParser *myself = (__bridge DTHTMLParser *)context;
-
- [myself.delegate parserDidStartDocument:myself];
-}
-
-void _endDocument(void *context)
-{
- DTHTMLParser *myself = (__bridge DTHTMLParser *)context;
-
- [myself.delegate parserDidEndDocument:myself];
-}
-
-void _startElement(void *context, const xmlChar *name,const xmlChar **atts)
-{
- DTHTMLParser *myself = (__bridge DTHTMLParser *)context;
-
- NSString *nameStr = [NSString stringWithUTF8String:(char *)name];
-
- NSMutableDictionary *attributes = nil;
-
- if (atts)
- {
- NSString *key = nil;
- NSString *value = nil;
-
- attributes = [[NSMutableDictionary alloc] init];
-
- int i=0;
- while (1)
- {
- char *att = (char *)atts[i++];
-
- if (!key)
- {
- if (!att)
- {
- // we're done
- break;
- }
-
- key = [NSString stringWithUTF8String:att];
- }
- else
- {
- if (att)
- {
- value = [NSString stringWithUTF8String:att];
- }
- else
- {
- // solo attribute
- value = key;
- }
-
- [attributes setObject:value forKey:key];
-
- value = nil;
- key = nil;
- }
- }
- }
-
- [myself.delegate parser:myself didStartElement:nameStr attributes:attributes];
-}
-
-void _endElement(void *context, const xmlChar *chars)
-{
- DTHTMLParser *myself = (__bridge DTHTMLParser *)context;
-
- NSString *nameStr = [NSString stringWithUTF8String:(char *)chars];
-
- [myself.delegate parser:myself didEndElement:nameStr];
-}
-
-// libxml reports characters with max 1000 at a time
-// also entities are reported separately
-void _characters(void *context, const xmlChar *chars, int len)
-{
- DTHTMLParser *myself = (__bridge DTHTMLParser *)context;
-
- NSString *string = [[NSString alloc] initWithBytes:chars length:len encoding:myself.encoding];
-
- [myself.delegate parser:myself foundCharacters:string];
-}
-
-void _comment(void *context, const xmlChar *chars)
-{
- DTHTMLParser *myself = (__bridge DTHTMLParser *)context;
-
- NSString *string = [NSString stringWithCString:(const char *)chars encoding:myself.encoding];
-
- [myself.delegate parser:myself foundComment:string];
-}
-
-void _dterror(void *context, const char *msg, ...)
-{
- DTHTMLParser *myself = (__bridge DTHTMLParser *)context;
-
- char string[256];
- va_list arg_ptr;
-
- va_start(arg_ptr, msg);
- vsnprintf(string, 256, msg, arg_ptr);
- va_end(arg_ptr);
-
- NSString *errorMsg = [NSString stringWithUTF8String:string];
-
- NSDictionary *userInfo = [NSDictionary dictionaryWithObject:errorMsg forKey:NSLocalizedDescriptionKey];
- myself.parserError = [NSError errorWithDomain:@"DTHTMLParser" code:1 userInfo:userInfo];
-
- [myself.delegate parser:myself parseErrorOccurred:myself.parserError];
-}
-
-void _cdataBlock(void *context, const xmlChar *value, int len)
-{
- DTHTMLParser *myself = (__bridge DTHTMLParser *)context;
-
- NSData *data = [NSData dataWithBytes:(const void *)value length:len];
-
- [myself.delegate parser:myself foundCDATA:data];
-}
-
-void _processingInstruction (void *context, const xmlChar *target, const xmlChar *data)
-{
- DTHTMLParser *myself = (__bridge DTHTMLParser *)context;
-
- NSStringEncoding encoding = myself.encoding;
-
- NSString *targetStr = [NSString stringWithCString:(const char *)target encoding:encoding];
- NSString *dataStr = [NSString stringWithCString:(const char *)data encoding:encoding];
-
- [myself.delegate parser:myself foundProcessingInstructionWithTarget:targetStr data:dataStr];
-}
-
-@implementation DTHTMLParser
-{
- htmlSAXHandler _handler;
-
- NSData *_data;
- NSStringEncoding _encoding;
-
- __unsafe_unretained id <DTHTMLParserDelegate> _delegate;
- htmlParserCtxtPtr _parserContext;
-
- BOOL _isAborting;
-}
-
-
-- (id)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding
-{
- if (!data)
- {
- return nil;
- }
-
- self = [super init];
- if (self)
- {
- _data = data;
- _encoding = encoding;
-
- xmlSAX2InitHtmlDefaultSAXHandler(&_handler);
-
- // set default handlers, otherwise crash if no delegate set
- self.delegate = nil;
- }
-
- return self;
-}
-
-- (void)dealloc
-{
- if (_parserContext)
- {
- htmlFreeParserCtxt(_parserContext);
- }
-}
-
-
-- (BOOL)parse
-{
- void *dataBytes = (char *)[_data bytes];
- unsigned long dataSize = [_data length];
-
- // detect encoding if necessary
- xmlCharEncoding charEnc = 0;
-
- if (!_encoding)
- {
- charEnc = xmlDetectCharEncoding(dataBytes, (int)dataSize);
- }
- else
- {
- // convert the encoding
- // TODO: proper mapping from _encoding to xmlCharEncoding
- CFStringEncoding cfenc = CFStringConvertNSStringEncodingToEncoding(_encoding);
- CFStringRef cfencstr = CFStringConvertEncodingToIANACharSetName(cfenc);
- const char *enc = CFStringGetCStringPtr(cfencstr, 0);
-
- charEnc = xmlParseCharEncoding(enc);
- }
-
- // create a parse context
- _parserContext = htmlCreatePushParserCtxt(&_handler, (__bridge void *)self, dataBytes, (int)dataSize, NULL, charEnc);
-
- // set some options
- htmlCtxtUseOptions(_parserContext, HTML_PARSE_RECOVER | HTML_PARSE_NONET | HTML_PARSE_COMPACT | HTML_PARSE_NOBLANKS);
-
- // parse!
- int result = htmlParseDocument(_parserContext);
-
- return (result==0 && !_isAborting);
-}
-
-- (void)abortParsing
-{
- if (_parserContext)
- {
- // apparently this frees it too
- xmlStopParser(_parserContext);
- _parserContext = NULL;
- }
-
- _isAborting = YES;
-
- // prevent future callbacks
- _handler.startDocument = NULL;
- _handler.endDocument = NULL;
- _handler.startElement = NULL;
- _handler.endElement = NULL;
- _handler.characters = NULL;
- _handler.comment = NULL;
- _handler.error = NULL;
- _handler.processingInstruction = NULL;
-
- // inform delegate
- if ([_delegate respondsToSelector:@selector(parser:parseErrorOccurred:)])
- {
- [_delegate parser:self parseErrorOccurred:self.parserError];
- }
-}
-
-#pragma mark Properties
-
-- (__unsafe_unretained id<DTHTMLParserDelegate>)delegate
-{
- return _delegate;
-}
-
-- (void)setDelegate:(__unsafe_unretained id<DTHTMLParserDelegate>)delegate;
-{
- _delegate = delegate;
-
- if ([_delegate respondsToSelector:@selector(parserDidStartDocument:)])
- {
- _handler.startDocument = _startDocument;
- }
- else
- {
- _handler.startDocument = NULL;
- }
-
- if ([_delegate respondsToSelector:@selector(parserDidEndDocument:)])
- {
- _handler.endDocument = _endDocument;
- }
- else
- {
- _handler.endDocument = NULL;
- }
-
- if ([delegate respondsToSelector:@selector(parser:didStartElement:attributes:)])
- {
- _handler.startElement = _startElement;
- }
- else
- {
- _handler.startElement = NULL;
- }
-
- if ([delegate respondsToSelector:@selector(parser:didEndElement:)])
- {
- _handler.endElement = _endElement;
- }
- else
- {
- _handler.endElement = NULL;
- }
-
- if ([delegate respondsToSelector:@selector(parser:foundCharacters:)])
- {
- _handler.characters = _characters;
- }
- else
- {
- _handler.characters = NULL;
- }
-
- if ([delegate respondsToSelector:@selector(parser:foundComment:)])
- {
- _handler.comment = _comment;
- }
- else
- {
- _handler.comment = NULL;
- }
-
- if ([delegate respondsToSelector:@selector(parser:parseErrorOccurred:)])
- {
- _handler.error = _dterror;
- }
- else
- {
- _handler.error = NULL;
- }
-
- if ([delegate respondsToSelector:@selector(parser:foundCDATA:)])
- {
- _handler.cdataBlock = _cdataBlock;
- }
- else
- {
- _handler.cdataBlock = NULL;
- }
-
- if ([delegate respondsToSelector:@selector(parser:foundProcessingInstructionWithTarget:data:)])
- {
- _handler.processingInstruction = _processingInstruction;
- }
- else
- {
- _handler.processingInstruction = NULL;
- }
-}
-
-- (NSInteger)lineNumber
-{
- return xmlSAX2GetLineNumber(_parserContext);
-}
-
-- (NSInteger)columnNumber
-{
- return xmlSAX2GetColumnNumber(_parserContext);
-}
-
-- (NSString *)systemID
-{
- char *systemID = (char *)xmlSAX2GetSystemId(_parserContext);
-
- if (!systemID)
- {
- return nil;
- }
-
- return [NSString stringWithUTF8String:systemID];
-}
-
-- (NSString *)publicID
-{
- char *publicID = (char *)xmlSAX2GetPublicId(_parserContext);
-
- if (!publicID)
- {
- return nil;
- }
-
- return [NSString stringWithUTF8String:publicID];
-}
-
-
-@synthesize parserError = _parserError;
-@synthesize encoding = _encoding;
-
-
-@end
View
28 Core/Source/UIDevice+DTSimpleVersion.h
@@ -1,28 +0,0 @@
-//
-// UIDevice+DTSimpleVersion.h
-// CoreTextExtensions
-//
-// Created by Oliver Drobnik on 5/30/11.
-// Copyright 2011 Drobnik.com. All rights reserved.
-//
-
-#import <UIKit/UIKit.h>
-
-
-typedef struct
-{
- NSInteger major;
- NSInteger minor;
- NSInteger point;
-} DTSimpleVersion;
-
-/** Convenience method to return the current OS version as a struct of three NSIntegers. Using UIDevice's `currentDevice` method and the current device's `systemVersion` returns a string delimited by a period which can then be split into an array. This method returns a struct storing each value instead of a string or array. Used in DTCoreTextLayoutFrame to workaround the way iOS 4.2 handles images.
- */
-@interface UIDevice (DTSimpleVersion)
-
-/**
- Returns the current OS version of the device.
- @returns A DTSimpleVersion struct with three fields each of type NSInteger storing the major, minor, and point numbers identifying this OS version. */
-- (DTSimpleVersion) osVersion;
-
-@end
View
32 Core/Source/UIDevice+DTSimpleVersion.m
@@ -1,32 +0,0 @@
-//
-// UIDevice+DTVersion.m
-// CoreTextExtensions
-//
-// Created by Oliver Drobnik on 5/30/11.
-// Copyright 2011 Drobnik.com. All rights reserved.
-//
-
-#import "UIDevice+DTSimpleVersion.h"
-
-@implementation UIDevice (DTSimpleVersion)
-
-- (DTSimpleVersion) osVersion
-{
- static DTSimpleVersion retVersion;
-
- static dispatch_once_t onceToken;
- dispatch_once(&onceToken, ^{
- NSString* versionString = [self systemVersion];
- NSArray *parts = [versionString componentsSeparatedByString:@"."];
-
- NSUInteger partCount = [parts count];
-
- retVersion.major = (partCount>0)?[[parts objectAtIndex:0] intValue]:0;
- retVersion.minor = (partCount>1)?[[parts objectAtIndex:1] intValue]:0;
- retVersion.point = (partCount>2)?[[parts objectAtIndex:2] intValue]:0;
- });
-
- return retVersion;
-}
-
-@end
View
208 DTCoreText.xcodeproj/project.pbxproj
@@ -29,9 +29,6 @@
36F8CECC1593AA3C00E9599C /* DTHTMLAttributedStringBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = A7949A4514CAF58C00A8CCDE /* DTHTMLAttributedStringBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; };
36F8CECE1593AA3D00E9599C /* DTHTMLAttributedStringBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = A7949A4514CAF58C00A8CCDE /* DTHTMLAttributedStringBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; };
36F8CECF1593AA4200E9599C /* DTHTMLAttributedStringBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = A7949A4514CAF58C00A8CCDE /* DTHTMLAttributedStringBuilder.h */; };
- 36F8CED01593AA5900E9599C /* DTHTMLParser.h in Headers */ = {isa = PBXBuildFile; fileRef = A7949A4814CAF5A300A8CCDE /* DTHTMLParser.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 36F8CED11593AA5A00E9599C /* DTHTMLParser.h in Headers */ = {isa = PBXBuildFile; fileRef = A7949A4814CAF5A300A8CCDE /* DTHTMLParser.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 36F8CED21593AA5B00E9599C /* DTHTMLParser.h in Headers */ = {isa = PBXBuildFile; fileRef = A7949A4814CAF5A300A8CCDE /* DTHTMLParser.h */; };
A704C93A13901FDB0045CFC6 /* ImageIO.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A704C93913901FDB0045CFC6 /* ImageIO.framework */; };
A7081EA415036460002987F1 /* DTTextBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = A7081EA11503645F002987F1 /* DTTextBlock.h */; settings = {ATTRIBUTES = (Public, ); }; };
A7081EA515036460002987F1 /* DTTextBlock.m in Sources */ = {isa = PBXBuildFile; fileRef = A7081EA215036460002987F1 /* DTTextBlock.m */; };
@@ -170,10 +167,6 @@
A788CA0314863E8700E1AFD9 /* DTColor+HTML.h in Headers */ = {isa = PBXBuildFile; fileRef = A788C95214863E8700E1AFD9 /* DTColor+HTML.h */; settings = {ATTRIBUTES = (Public, ); }; };
A788CA0514863E8700E1AFD9 /* DTColor+HTML.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C95314863E8700E1AFD9 /* DTColor+HTML.m */; };
A788CA0614863E8700E1AFD9 /* DTColor+HTML.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C95314863E8700E1AFD9 /* DTColor+HTML.m */; };
- A788CA0C14863E8700E1AFD9 /* UIDevice+DTSimpleVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = A788C95614863E8700E1AFD9 /* UIDevice+DTSimpleVersion.h */; settings = {ATTRIBUTES = (Public, ); }; };
- A788CA0D14863E8700E1AFD9 /* UIDevice+DTSimpleVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = A788C95614863E8700E1AFD9 /* UIDevice+DTSimpleVersion.h */; settings = {ATTRIBUTES = (Public, ); }; };
- A788CA0F14863E8700E1AFD9 /* UIDevice+DTSimpleVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C95714863E8700E1AFD9 /* UIDevice+DTSimpleVersion.m */; };
- A788CA1014863E8700E1AFD9 /* UIDevice+DTSimpleVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C95714863E8700E1AFD9 /* UIDevice+DTSimpleVersion.m */; };
A788CA1814863EC600E1AFD9 /* DTCoreText-Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = A788CA1514863EC600E1AFD9 /* DTCoreText-Prefix.pch */; settings = {ATTRIBUTES = (Public, ); }; };
A788CA3A14863EF100E1AFD9 /* Alignment.html in Resources */ = {isa = PBXBuildFile; fileRef = A788CA1B14863EF100E1AFD9 /* Alignment.html */; };
A788CA3B14863EF100E1AFD9 /* APOD.html in Resources */ = {isa = PBXBuildFile; fileRef = A788CA1C14863EF100E1AFD9 /* APOD.html */; };
@@ -234,7 +227,6 @@
A788CAA0148648C700E1AFD9 /* NSScanner+HTML.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C94714863E8700E1AFD9 /* NSScanner+HTML.m */; };
A788CAA1148648C700E1AFD9 /* NSString+HTML.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C94914863E8700E1AFD9 /* NSString+HTML.m */; };
A788CAA2148648C700E1AFD9 /* NSString+Paragraphs.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C94B14863E8700E1AFD9 /* NSString+Paragraphs.m */; };
- A788CAA4148648C700E1AFD9 /* UIDevice+DTSimpleVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C95714863E8700E1AFD9 /* UIDevice+DTSimpleVersion.m */; };
A788CAA5148648D700E1AFD9 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A76E5B4812DD9AF500711782 /* QuartzCore.framework */; };
A78C241115073BC50045651E /* TextBoxes.html in Resources */ = {isa = PBXBuildFile; fileRef = A78C241015073BC50045651E /* TextBoxes.html */; };
A7949A0014C6256B00A8CCDE /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = A79499FF14C6256B00A8CCDE /* libxml2.dylib */; };
@@ -271,12 +263,10 @@
A7B0B56D14D9921F0091C2C9 /* NSAttributedString+DTCoreText.m in Sources */ = {isa = PBXBuildFile; fileRef = A7B0B56714D9921F0091C2C9 /* NSAttributedString+DTCoreText.m */; };
A7C1CC0914D6C4C3008D6468 /* NSAttributedString+HTML.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C93B14863E8700E1AFD9 /* NSAttributedString+HTML.m */; };
A7C1CC0A14D6C4D8008D6468 /* DTHTMLAttributedStringBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = A7949A4614CAF58C00A8CCDE /* DTHTMLAttributedStringBuilder.m */; };
- A7C1CC0B14D6C4DC008D6468 /* DTHTMLParser.m in Sources */ = {isa = PBXBuildFile; fileRef = A7949A4914CAF5A300A8CCDE /* DTHTMLParser.m */; };
A7C1CC0C14D6C4F0008D6468 /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = A79499FF14C6256B00A8CCDE /* libxml2.dylib */; };
A7C1CC0D14D6C4F2008D6468 /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = A79499FF14C6256B00A8CCDE /* libxml2.dylib */; };
A7C1CC0F14D6CFD5008D6468 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A7C1CC0E14D6CFD5008D6468 /* AppKit.framework */; };
A7C5D00114D7D95200AF1D75 /* DTCoreTextConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = A7949A4F14CC44D200A8CCDE /* DTCoreTextConstants.m */; };
- A7C5D00214D7D95200AF1D75 /* DTHTMLParser.m in Sources */ = {isa = PBXBuildFile; fileRef = A7949A4914CAF5A300A8CCDE /* DTHTMLParser.m */; };
A7C5D00314D7D95200AF1D75 /* DTHTMLAttributedStringBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = A7949A4614CAF58C00A8CCDE /* DTHTMLAttributedStringBuilder.m */; };
A7C5D00414D7D95200AF1D75 /* DTHTMLElement.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C92B14863E8700E1AFD9 /* DTHTMLElement.m */; };
A7C5D00A14D7DFBF00AF1D75 /* DTCSSListStyle.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C92714863E8700E1AFD9 /* DTCSSListStyle.m */; };
@@ -307,6 +297,8 @@
A7D54EA514E003190063E78B /* Objects.html in Resources */ = {isa = PBXBuildFile; fileRef = A7D54EA414E003190063E78B /* Objects.html */; };
A7DBE49B12E6E53C00F25897 /* MediaPlayer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A7DBE49A12E6E53C00F25897 /* MediaPlayer.framework */; };
A7DBE4F812E6E5B000F25897 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A7DBE4F712E6E5B000F25897 /* AVFoundation.framework */; };
+ A7E383D5160DFF2E00CF72D6 /* libDTHTMLParser.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A7E383D4160DFF2600CF72D6 /* libDTHTMLParser.a */; };
+ A7E383EC160DFFEC00CF72D6 /* libDTFoundation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A7E383B9160DFEA800CF72D6 /* libDTFoundation.a */; };
A7F5671414D841EA00D1F167 /* NSString+CSS.h in Headers */ = {isa = PBXBuildFile; fileRef = A7F5671214D841E900D1F167 /* NSString+CSS.h */; settings = {ATTRIBUTES = (Public, ); }; };
A7F5671514D841EA00D1F167 /* NSString+CSS.h in Headers */ = {isa = PBXBuildFile; fileRef = A7F5671214D841E900D1F167 /* NSString+CSS.h */; settings = {ATTRIBUTES = (Public, ); }; };
A7F5671614D841EA00D1F167 /* NSString+CSS.m in Sources */ = {isa = PBXBuildFile; fileRef = A7F5671314D841E900D1F167 /* NSString+CSS.m */; };
@@ -328,8 +320,6 @@
A7F5673E14D8744600D1F167 /* DTColor+HTML.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C95314863E8700E1AFD9 /* DTColor+HTML.m */; };
A7F5673F14D8744600D1F167 /* DTImage+HTML.m in Sources */ = {isa = PBXBuildFile; fileRef = A7C5D01414D7E3BB00AF1D75 /* DTImage+HTML.m */; };
A7F5674014D8755300D1F167 /* NSData+DTBase64.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C94314863E8700E1AFD9 /* NSData+DTBase64.m */; };
- A7F7EF731573601700F5A4D0 /* DTHTMLParser.m in Sources */ = {isa = PBXBuildFile; fileRef = A7949A4914CAF5A300A8CCDE /* DTHTMLParser.m */; };
- A7F7EF751573601800F5A4D0 /* DTHTMLParser.m in Sources */ = {isa = PBXBuildFile; fileRef = A7949A4914CAF5A300A8CCDE /* DTHTMLParser.m */; };
A7F7EF781573603100F5A4D0 /* default.css in Sources */ = {isa = PBXBuildFile; fileRef = A76994F914DBB5F70047CC8D /* default.css */; };
A7F7EF791573603100F5A4D0 /* CGUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C90F14863E8700E1AFD9 /* CGUtils.m */; };
A7F7EF7A1573603100F5A4D0 /* DTAttributedTextCell.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C91114863E8700E1AFD9 /* DTAttributedTextCell.m */; };
@@ -359,7 +349,6 @@
A7F7EF921573603100F5A4D0 /* NSString+Paragraphs.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C94B14863E8700E1AFD9 /* NSString+Paragraphs.m */; };
A7F7EF931573603100F5A4D0 /* NSString+UTF8Cleaner.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C94D14863E8700E1AFD9 /* NSString+UTF8Cleaner.m */; };
A7F7EF941573603100F5A4D0 /* DTColor+HTML.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C95314863E8700E1AFD9 /* DTColor+HTML.m */; };
- A7F7EF951573603100F5A4D0 /* UIDevice+DTSimpleVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = A788C95714863E8700E1AFD9 /* UIDevice+DTSimpleVersion.m */; };
A7F7EF961573603100F5A4D0 /* DTCoreTextConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = A7949A4F14CC44D200A8CCDE /* DTCoreTextConstants.m */; };
A7F7EF971573603100F5A4D0 /* DTHTMLAttributedStringBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = A7949A4614CAF58C00A8CCDE /* DTHTMLAttributedStringBuilder.m */; };
A7F7EF981573603100F5A4D0 /* DTImage+HTML.m in Sources */ = {isa = PBXBuildFile; fileRef = A7C5D01414D7E3BB00AF1D75 /* DTImage+HTML.m */; };
@@ -392,7 +381,6 @@
A7F7EFB61573603100F5A4D0 /* NSData+DTBase64.h in Headers */ = {isa = PBXBuildFile; fileRef = A788C94214863E8700E1AFD9 /* NSData+DTBase64.h */; settings = {ATTRIBUTES = (Public, ); }; };
A7F7EFB71573603100F5A4D0 /* NSString+Paragraphs.h in Headers */ = {isa = PBXBuildFile; fileRef = A788C94A14863E8700E1AFD9 /* NSString+Paragraphs.h */; settings = {ATTRIBUTES = (Public, ); }; };
A7F7EFB81573603100F5A4D0 /* NSString+UTF8Cleaner.h in Headers */ = {isa = PBXBuildFile; fileRef = A788C94C14863E8700E1AFD9 /* NSString+UTF8Cleaner.h */; settings = {ATTRIBUTES = (Public, ); }; };
- A7F7EFB91573603100F5A4D0 /* UIDevice+DTSimpleVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = A788C95614863E8700E1AFD9 /* UIDevice+DTSimpleVersion.h */; settings = {ATTRIBUTES = (Public, ); }; };
A7F7EFBA1573603100F5A4D0 /* DTCoreText-Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = A788CA1514863EC600E1AFD9 /* DTCoreText-Prefix.pch */; settings = {ATTRIBUTES = (Public, ); }; };
A7F7EFBB1573603100F5A4D0 /* DTCoreTextConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = A7949A9C14CC565F00A8CCDE /* DTCoreTextConstants.h */; settings = {ATTRIBUTES = (Public, ); }; };
A7F7EFBC1573603100F5A4D0 /* NSString+CSS.h in Headers */ = {isa = PBXBuildFile; fileRef = A7F5671214D841E900D1F167 /* NSString+CSS.h */; settings = {ATTRIBUTES = (Public, ); }; };
@@ -476,6 +464,69 @@
remoteGlobalIDString = A70F11DD148632CD009202BF;
remoteInfo = "Static Library";
};
+ A7E383B6160DFEA800CF72D6 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = A7E383AB160DFEA700CF72D6 /* DTFoundation.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = A7BAD10E1483F934000E2B6A;
+ remoteInfo = "Static Framework";
+ };
+ A7E383B8160DFEA800CF72D6 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = A7E383AB160DFEA700CF72D6 /* DTFoundation.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = A70B4CE71486637E00873A4A;
+ remoteInfo = "Static Library";
+ };
+ A7E383BA160DFEA800CF72D6 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = A7E383AB160DFEA700CF72D6 /* DTFoundation.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = A7D60FCF15D3B0BC00AEDD1B;
+ remoteInfo = "Unit Tests";
+ };
+ A7E383BC160DFEA800CF72D6 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = A7E383AB160DFEA700CF72D6 /* DTFoundation.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = A710A5001607556000437D36;
+ remoteInfo = "Static Library (Mac)";
+ };
+ A7E383D0160DFF2500CF72D6 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = A7E383AB160DFEA700CF72D6 /* DTFoundation.xcodeproj */;
+ proxyType = 1;
+ remoteGlobalIDString = A7E383C1160DFEDB00CF72D6;
+ remoteInfo = DTHTMLParser;
+ };
+ A7E383D3160DFF2600CF72D6 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = A7E383AB160DFEA700CF72D6 /* DTFoundation.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = A7E383C2160DFEDB00CF72D6;
+ remoteInfo = DTHTMLParser;
+ };
+ A7E383E7160DFFDE00CF72D6 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = A7E383AB160DFEA700CF72D6 /* DTFoundation.xcodeproj */;
+ proxyType = 1;
+ remoteGlobalIDString = A70B4CE61486637E00873A4A;
+ remoteInfo = "Static Library";
+ };
+ A7E383EA160DFFDE00CF72D6 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = A7E383AB160DFEA700CF72D6 /* DTFoundation.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = A7E383DA160DFF8600CF72D6;
+ remoteInfo = DTZipArchive;
+ };
+ A7E38401160E007A00CF72D6 /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = A7E383AB160DFEA700CF72D6 /* DTFoundation.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = A7E383F1160E002200CF72D6;
+ remoteInfo = DTDownloadCache;
+ };
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
@@ -558,8 +609,6 @@
A788C94D14863E8700E1AFD9 /* NSString+UTF8Cleaner.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+UTF8Cleaner.m"; sourceTree = "<group>"; };
A788C95214863E8700E1AFD9 /* DTColor+HTML.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = "DTColor+HTML.h"; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
A788C95314863E8700E1AFD9 /* DTColor+HTML.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; lineEnding = 0; path = "DTColor+HTML.m"; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objc; };
- A788C95614863E8700E1AFD9 /* UIDevice+DTSimpleVersion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIDevice+DTSimpleVersion.h"; sourceTree = "<group>"; };
- A788C95714863E8700E1AFD9 /* UIDevice+DTSimpleVersion.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIDevice+DTSimpleVersion.m"; sourceTree = "<group>"; };
A788CA1214863E9D00E1AFD9 /* UnitTest-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "UnitTest-Info.plist"; sourceTree = "<group>"; };
A788CA1314863E9D00E1AFD9 /* UnitTest-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UnitTest-Prefix.pch"; sourceTree = "<group>"; };
A788CA1514863EC600E1AFD9 /* DTCoreText-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "DTCoreText-Prefix.pch"; path = "Core/DTCoreText-Prefix.pch"; sourceTree = "<group>"; };
@@ -600,8 +649,6 @@
A79499FF14C6256B00A8CCDE /* libxml2.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libxml2.dylib; path = usr/lib/libxml2.dylib; sourceTree = SDKROOT; };
A7949A4514CAF58C00A8CCDE /* DTHTMLAttributedStringBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTHTMLAttributedStringBuilder.h; sourceTree = "<group>"; };
A7949A4614CAF58C00A8CCDE /* DTHTMLAttributedStringBuilder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; lineEnding = 0; path = DTHTMLAttributedStringBuilder.m; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objc; };
- A7949A4814CAF5A300A8CCDE /* DTHTMLParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTHTMLParser.h; sourceTree = "<group>"; };
- A7949A4914CAF5A300A8CCDE /* DTHTMLParser.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTHTMLParser.m; sourceTree = "<group>"; };
A7949A4F14CC44D200A8CCDE /* DTCoreTextConstants.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; lineEnding = 0; path = DTCoreTextConstants.m; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objc; };
A7949A5814CC456000A8CCDE /* MacUnitTest.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MacUnitTest.octest; sourceTree = BUILT_PRODUCTS_DIR; };
A7949A5D14CC456000A8CCDE /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };
@@ -637,6 +684,7 @@
A7D54EA414E003190063E78B /* Objects.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = Objects.html; sourceTree = "<group>"; };
A7DBE49A12E6E53C00F25897 /* MediaPlayer.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MediaPlayer.framework; path = System/Library/Frameworks/MediaPlayer.framework; sourceTree = SDKROOT; };
A7DBE4F712E6E5B000F25897 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; };
+ A7E383AB160DFEA700CF72D6 /* DTFoundation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = DTFoundation.xcodeproj; path = DTFoundation/DTFoundation.xcodeproj; sourceTree = "<group>"; };
A7F5671214D841E900D1F167 /* NSString+CSS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = "NSString+CSS.h"; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
A7F5671314D841E900D1F167 /* NSString+CSS.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; lineEnding = 0; path = "NSString+CSS.m"; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objc; };
A7F5671C14D8469000D1F167 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = SDKs/MacOSX10.7.sdk/System/Library/Frameworks/Cocoa.framework; sourceTree = DEVELOPER_DIR; };
@@ -675,6 +723,8 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
+ A7E383EC160DFFEC00CF72D6 /* libDTFoundation.a in Frameworks */,
+ A7E383D5160DFF2E00CF72D6 /* libDTHTMLParser.a in Frameworks */,
A70F11DF148632CD009202BF /* Foundation.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -826,6 +876,7 @@
A788C90C14863E5000E1AFD9 /* Core */ = {
isa = PBXGroup;
children = (
+ A7E4F9AD160DF92400F2A9EB /* Externals */,
A70B4C9E1486558200873A4A /* DTCoreText.h */,
A7A672B91532F2D100920A18 /* DTCompatibility.h */,
A788CA1514863EC600E1AFD9 /* DTCoreText-Prefix.pch */,
@@ -934,8 +985,6 @@
A788C94314863E8700E1AFD9 /* NSData+DTBase64.m */,
A788C94A14863E8700E1AFD9 /* NSString+Paragraphs.h */,
A788C94B14863E8700E1AFD9 /* NSString+Paragraphs.m */,
- A788C95614863E8700E1AFD9 /* UIDevice+DTSimpleVersion.h */,
- A788C95714863E8700E1AFD9 /* UIDevice+DTSimpleVersion.m */,
);
name = Utils;
sourceTree = "<group>";
@@ -949,8 +998,6 @@
A7949A4F14CC44D200A8CCDE /* DTCoreTextConstants.m */,
A788C94C14863E8700E1AFD9 /* NSString+UTF8Cleaner.h */,
A788C94D14863E8700E1AFD9 /* NSString+UTF8Cleaner.m */,
- A7949A4814CAF5A300A8CCDE /* DTHTMLParser.h */,
- A7949A4914CAF5A300A8CCDE /* DTHTMLParser.m */,
A7949A4514CAF58C00A8CCDE /* DTHTMLAttributedStringBuilder.h */,
A7949A4614CAF58C00A8CCDE /* DTHTMLAttributedStringBuilder.m */,
A788C92A14863E8700E1AFD9 /* DTHTMLElement.h */,
@@ -1036,6 +1083,29 @@
path = Source;
sourceTree = "<group>";
};
+ A7E383AC160DFEA700CF72D6 /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ A7E383B7160DFEA800CF72D6 /* DTFoundation.framework */,
+ A7E383B9160DFEA800CF72D6 /* libDTFoundation.a */,
+ A7E383BB160DFEA800CF72D6 /* UnitTests.octest */,
+ A7E383BD160DFEA800CF72D6 /* libDTFoundation_Mac.a */,
+ A7E383D4160DFF2600CF72D6 /* libDTHTMLParser.a */,
+ A7E383EB160DFFDE00CF72D6 /* libDTZipArchive.a */,
+ A7E38402160E007A00CF72D6 /* libDTDownloadCache.a */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ A7E4F9AD160DF92400F2A9EB /* Externals */ = {
+ isa = PBXGroup;
+ children = (
+ A7E383AB160DFEA700CF72D6 /* DTFoundation.xcodeproj */,
+ );
+ name = Externals;
+ path = Core/Externals;
+ sourceTree = "<group>";
+ };
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
@@ -1071,7 +1141,6 @@
A788C9EE14863E8700E1AFD9 /* NSString+Paragraphs.h in Headers */,
A788C9F314863E8700E1AFD9 /* NSString+UTF8Cleaner.h in Headers */,
A788CA0214863E8700E1AFD9 /* DTColor+HTML.h in Headers */,
- A788CA0C14863E8700E1AFD9 /* UIDevice+DTSimpleVersion.h in Headers */,
A70B4C9F1486558200873A4A /* DTCoreText.h in Headers */,
A7949A9D14CC566100A8CCDE /* DTCoreTextConstants.h in Headers */,
A7F5671414D841EA00D1F167 /* NSString+CSS.h in Headers */,
@@ -1082,7 +1151,6 @@
A7B0B56814D9921F0091C2C9 /* NSAttributedString+DTCoreText.h in Headers */,
A760F54114F56E9000AD1B0E /* DTImage+HTML.h in Headers */,
36F8CECC1593AA3C00E9599C /* DTHTMLAttributedStringBuilder.h in Headers */,
- 36F8CED01593AA5900E9599C /* DTHTMLParser.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1113,7 +1181,6 @@
A788C9DB14863E8700E1AFD9 /* NSData+DTBase64.h in Headers */,
A788C9EF14863E8700E1AFD9 /* NSString+Paragraphs.h in Headers */,
A788C9F414863E8700E1AFD9 /* NSString+UTF8Cleaner.h in Headers */,
- A788CA0D14863E8700E1AFD9 /* UIDevice+DTSimpleVersion.h in Headers */,
A788CA1814863EC600E1AFD9 /* DTCoreText-Prefix.pch in Headers */,
A7949A9E14CC566100A8CCDE /* DTCoreTextConstants.h in Headers */,
A7F5671514D841EA00D1F167 /* NSString+CSS.h in Headers */,
@@ -1130,7 +1197,6 @@
A7081EA415036460002987F1 /* DTTextBlock.h in Headers */,
A7A672BB1532F2D100920A18 /* DTCompatibility.h in Headers */,
36F8CECE1593AA3D00E9599C /* DTHTMLAttributedStringBuilder.h in Headers */,
- 36F8CED11593AA5A00E9599C /* DTHTMLParser.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1161,7 +1227,6 @@
A7F7EFB61573603100F5A4D0 /* NSData+DTBase64.h in Headers */,
A7F7EFB71573603100F5A4D0 /* NSString+Paragraphs.h in Headers */,
A7F7EFB81573603100F5A4D0 /* NSString+UTF8Cleaner.h in Headers */,
- A7F7EFB91573603100F5A4D0 /* UIDevice+DTSimpleVersion.h in Headers */,
A7F7EFBA1573603100F5A4D0 /* DTCoreText-Prefix.pch in Headers */,
A7F7EFBB1573603100F5A4D0 /* DTCoreTextConstants.h in Headers */,
A7F7EFBC1573603100F5A4D0 /* NSString+CSS.h in Headers */,
@@ -1178,7 +1243,6 @@
A7F7EFC81573603100F5A4D0 /* DTCompatibility.h in Headers */,
36F8CE961593590500E9599C /* DTTextBlock.h in Headers */,
36F8CECF1593AA4200E9599C /* DTHTMLAttributedStringBuilder.h in Headers */,
- 36F8CED21593AA5B00E9599C /* DTHTMLParser.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1236,6 +1300,8 @@
A758FC9714DBCEFD007DF8B2 /* PBXBuildRule */,
);
dependencies = (
+ A7E383E8160DFFDE00CF72D6 /* PBXTargetDependency */,
+ A7E383D1160DFF2500CF72D6 /* PBXTargetDependency */,
);
name = "Static Library";
productName = DTCoreText;
@@ -1320,6 +1386,12 @@
);
mainGroup = 29B97314FDCFA39411CA2CEA /* CustomTemplate */;
projectDirPath = "";
+ projectReferences = (
+ {
+ ProductGroup = A7E383AC160DFEA700CF72D6 /* Products */;
+ ProjectRef = A7E383AB160DFEA700CF72D6 /* DTFoundation.xcodeproj */;
+ },
+ );
projectRoot = "";
targets = (
1D6058900D05DD3D006BFB54 /* DemoApp */,
@@ -1333,6 +1405,58 @@
};
/* End PBXProject section */
+/* Begin PBXReferenceProxy section */
+ A7E383B7160DFEA800CF72D6 /* DTFoundation.framework */ = {
+ isa = PBXReferenceProxy;
+ fileType = wrapper.cfbundle;
+ path = DTFoundation.framework;
+ remoteRef = A7E383B6160DFEA800CF72D6 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ A7E383B9160DFEA800CF72D6 /* libDTFoundation.a */ = {
+ isa = PBXReferenceProxy;
+ fileType = archive.ar;
+ path = libDTFoundation.a;
+ remoteRef = A7E383B8160DFEA800CF72D6 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ A7E383BB160DFEA800CF72D6 /* UnitTests.octest */ = {
+ isa = PBXReferenceProxy;
+ fileType = wrapper.cfbundle;
+ path = UnitTests.octest;
+ remoteRef = A7E383BA160DFEA800CF72D6 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ A7E383BD160DFEA800CF72D6 /* libDTFoundation_Mac.a */ = {
+ isa = PBXReferenceProxy;
+ fileType = archive.ar;
+ path = libDTFoundation_Mac.a;
+ remoteRef = A7E383BC160DFEA800CF72D6 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ A7E383D4160DFF2600CF72D6 /* libDTHTMLParser.a */ = {
+ isa = PBXReferenceProxy;
+ fileType = archive.ar;
+ path = libDTHTMLParser.a;
+ remoteRef = A7E383D3160DFF2600CF72D6 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ A7E383EB160DFFDE00CF72D6 /* libDTZipArchive.a */ = {
+ isa = PBXReferenceProxy;
+ fileType = archive.ar;
+ path = libDTZipArchive.a;
+ remoteRef = A7E383EA160DFFDE00CF72D6 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ A7E38402160E007A00CF72D6 /* libDTDownloadCache.a */ = {
+ isa = PBXReferenceProxy;
+ fileType = archive.ar;
+ path = libDTDownloadCache.a;
+ remoteRef = A7E38401160E007A00CF72D6 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+/* End PBXReferenceProxy section */
+
/* Begin PBXResourcesBuildPhase section */
1D60588D0D05DD3D006BFB54 /* Resources */ = {
isa = PBXResourcesBuildPhase;
@@ -1527,7 +1651,6 @@
A788C9F114863E8700E1AFD9 /* NSString+Paragraphs.m in Sources */,
A788C9F614863E8700E1AFD9 /* NSString+UTF8Cleaner.m in Sources */,
A788CA0514863E8700E1AFD9 /* DTColor+HTML.m in Sources */,
- A788CA0F14863E8700E1AFD9 /* UIDevice+DTSimpleVersion.m in Sources */,
A7949A5014CC44D300A8CCDE /* DTCoreTextConstants.m in Sources */,
A7949AA314CC5BDF00A8CCDE /* DTHTMLAttributedStringBuilder.m in Sources */,
A7C5D01714D7E3DC00AF1D75 /* DTImage+HTML.m in Sources */,
@@ -1536,7 +1659,6 @@
A7C7ACD714D924B1005A9C69 /* NSMutableString+HTML.m in Sources */,
A7B0B56A14D9921F0091C2C9 /* NSAttributedString+DTCoreText.m in Sources */,
A7081EA515036460002987F1 /* DTTextBlock.m in Sources */,
- A7F7EF751573601800F5A4D0 /* DTHTMLParser.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1573,7 +1695,6 @@
A788C9F214863E8700E1AFD9 /* NSString+Paragraphs.m in Sources */,
A788C9F714863E8700E1AFD9 /* NSString+UTF8Cleaner.m in Sources */,
A788CA0614863E8700E1AFD9 /* DTColor+HTML.m in Sources */,
- A788CA1014863E8700E1AFD9 /* UIDevice+DTSimpleVersion.m in Sources */,
A7949A5114CC44D300A8CCDE /* DTCoreTextConstants.m in Sources */,
A7949AA214CC5BDC00A8CCDE /* DTHTMLAttributedStringBuilder.m in Sources */,
A7C5D01614D7E3DC00AF1D75 /* DTImage+HTML.m in Sources */,
@@ -1582,7 +1703,6 @@
A7C7ACD814D924B1005A9C69 /* NSMutableString+HTML.m in Sources */,
A7B0B56B14D9921F0091C2C9 /* NSAttributedString+DTCoreText.m in Sources */,
A7081EA615036460002987F1 /* DTTextBlock.m in Sources */,
- A7F7EF731573601700F5A4D0 /* DTHTMLParser.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1618,11 +1738,9 @@
A788CAA0148648C700E1AFD9 /* NSScanner+HTML.m in Sources */,
A788CAA1148648C700E1AFD9 /* NSString+HTML.m in Sources */,
A788CAA2148648C700E1AFD9 /* NSString+Paragraphs.m in Sources */,
- A788CAA4148648C700E1AFD9 /* UIDevice+DTSimpleVersion.m in Sources */,
A7949A5214CC44D300A8CCDE /* DTCoreTextConstants.m in Sources */,
A7C1CC0914D6C4C3008D6468 /* NSAttributedString+HTML.m in Sources */,
A7C1CC0A14D6C4D8008D6468 /* DTHTMLAttributedStringBuilder.m in Sources */,
- A7C1CC0B14D6C4DC008D6468 /* DTHTMLParser.m in Sources */,
A7C5D01814D7E3DD00AF1D75 /* DTImage+HTML.m in Sources */,
A7F5671814D841EA00D1F167 /* NSString+CSS.m in Sources */,
A7F5672B14D8506C00D1F167 /* NSAttributedString+SmallCaps.m in Sources */,
@@ -1641,7 +1759,6 @@
files = (
A758FCA114DBD7AF007DF8B2 /* default.css in Sources */,
A7C5D00114D7D95200AF1D75 /* DTCoreTextConstants.m in Sources */,
- A7C5D00214D7D95200AF1D75 /* DTHTMLParser.m in Sources */,
A7C5D00314D7D95200AF1D75 /* DTHTMLAttributedStringBuilder.m in Sources */,
A7C5D00414D7D95200AF1D75 /* DTHTMLElement.m in Sources */,
A7C5D00A14D7DFBF00AF1D75 /* DTCSSListStyle.m in Sources */,
@@ -1702,7 +1819,6 @@
A7F7EF921573603100F5A4D0 /* NSString+Paragraphs.m in Sources */,
A7F7EF931573603100F5A4D0 /* NSString+UTF8Cleaner.m in Sources */,
A7F7EF941573603100F5A4D0 /* DTColor+HTML.m in Sources */,
- A7F7EF951573603100F5A4D0 /* UIDevice+DTSimpleVersion.m in Sources */,
A7F7EF961573603100F5A4D0 /* DTCoreTextConstants.m in Sources */,
A7F7EF971573603100F5A4D0 /* DTHTMLAttributedStringBuilder.m in Sources */,
A7F7EF981573603100F5A4D0 /* DTImage+HTML.m in Sources */,
@@ -1722,6 +1838,16 @@
target = A70F11DD148632CD009202BF /* Static Library */;
targetProxy = A788CA611486428F00E1AFD9 /* PBXContainerItemProxy */;
};
+ A7E383D1160DFF2500CF72D6 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ name = DTHTMLParser;
+ targetProxy = A7E383D0160DFF2500CF72D6 /* PBXContainerItemProxy */;
+ };
+ A7E383E8160DFFDE00CF72D6 /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ name = "Static Library";
+ targetProxy = A7E383E7160DFFDE00CF72D6 /* PBXContainerItemProxy */;
+ };
/* End PBXTargetDependency section */
/* Begin XCBuildConfiguration section */
@@ -1742,6 +1868,7 @@
);
PRODUCT_NAME = DemoApp;
TARGETED_DEVICE_FAMILY = "1,2";
+ USER_HEADER_SEARCH_PATHS = "\"$(SRCROOT)/Core/Source\" Core/Externals/**";
};
name = Debug;
};
@@ -1760,6 +1887,7 @@
);
PRODUCT_NAME = DemoApp;
TARGETED_DEVICE_FAMILY = "1,2";
+ USER_HEADER_SEARCH_PATHS = "\"$(SRCROOT)/Core/Source\" Core/Externals/**";
VALIDATE_PRODUCT = YES;
};
name = Release;
@@ -1831,7 +1959,7 @@
A70F11E7148632CD009202BF /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ALWAYS_SEARCH_USER_PATHS = NO;
+ ALWAYS_SEARCH_USER_PATHS = YES;
ARCHS = (
"$(ARCHS_STANDARD_32_BIT)",
armv6,
@@ -1849,17 +1977,19 @@
);
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_THUMB_SUPPORT = NO;
+ HEADER_SEARCH_PATHS = /usr/include/libxml2;
OTHER_LDFLAGS = "-ObjC";
PRODUCT_NAME = DTCoreText;
PUBLIC_HEADERS_FOLDER_PATH = ../../DTCoreText;
SKIP_INSTALL = YES;
+ USER_HEADER_SEARCH_PATHS = "\"$(SRCROOT)/Core/Source\" Core/Externals/**";
};
name = Debug;
};
A70F11E8148632CD009202BF /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
- ALWAYS_SEARCH_USER_PATHS = NO;
+ ALWAYS_SEARCH_USER_PATHS = YES;
ARCHS = (
"$(ARCHS_STANDARD_32_BIT)",
armv6,
@@ -1870,10 +2000,12 @@
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "Core/DTCoreText-Prefix.pch";
GCC_THUMB_SUPPORT = NO;
+ HEADER_SEARCH_PATHS = /usr/include/libxml2;
OTHER_LDFLAGS = "-ObjC";
PRODUCT_NAME = DTCoreText;
PUBLIC_HEADERS_FOLDER_PATH = ../../DTCoreText;
SKIP_INSTALL = YES;
+ USER_HEADER_SEARCH_PATHS = "\"$(SRCROOT)/Core/Source\" Core/Externals/**";
VALIDATE_PRODUCT = YES;
};
name = Release;
Please sign in to comment.
Something went wrong with that request. Please try again.