<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>

<channel>
	<title>eval(art);</title>
	<atom:link href="http://www.eval-art.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.eval-art.com</link>
	<description>Art emulates life, code emulates art.</description>
	<pubDate>Sun, 09 Aug 2009 03:21:27 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Logitech LCD Framework for G Series Keyboards</title>
		<link>http://www.eval-art.com/2009/07/14/logitech-lcd-framework-for-g-series-keyboards/</link>
		<comments>http://www.eval-art.com/2009/07/14/logitech-lcd-framework-for-g-series-keyboards/#comments</comments>
		<pubDate>Tue, 14 Jul 2009 17:07:31 +0000</pubDate>
		<dc:creator>Philippe Hausler</dc:creator>
		
		<category><![CDATA[MacOS X]]></category>

		<category><![CDATA[Objective-C]]></category>

		<guid isPermaLink="false">http://www.eval-art.com/?p=134</guid>
		<description><![CDATA[Here is the latest rendition of the LogitechLCD.framework now with Interface Builder support and automatically updating views for devices. Additionally there is a screencast to give a brief tutorial on how to use the framework and the Interface Builder support.


Download the Logitech LCD Framework
]]></description>
			<content:encoded><![CDATA[<p>Here is the latest rendition of the LogitechLCD.framework now with Interface Builder support and automatically updating views for devices. Additionally there is a screencast to give a brief tutorial on how to use the framework and the Interface Builder support.</p>
<p><object CLASSID="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" width="560" height="436" CODEBASE="http://www.apple.com/qtactivex/qtplugin.cab"><param name="src" value="/wp-content/uploads/2009/07/LogitechLCDFramework.m4v"><param name="autoplay" value="false"><param name="loop" value="false"><param name="controller" value="true"><param name="scale" value="Aspect"><embed src="/wp-content/uploads/2009/07/LogitechLCDFramework.m4v"  width="560" height="436" autoplay="false" loop="false" controller="true" pluginspage="http://www.apple.com/quicktime/" scale="Aspect"></embed></object><br />
<br/><br />
Download the <a href='http://www.eval-art.com/wp-content/uploads/2009/07/logitechlcd.zip'>Logitech LCD Framework</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.eval-art.com/2009/07/14/logitech-lcd-framework-for-g-series-keyboards/feed/</wfw:commentRss>
		</item>
		<item>
		<title>G Series Keyboard LCD Framework</title>
		<link>http://www.eval-art.com/2009/07/12/g-series-keyboard-lcd-framework/</link>
		<comments>http://www.eval-art.com/2009/07/12/g-series-keyboard-lcd-framework/#comments</comments>
		<pubDate>Sun, 12 Jul 2009 08:42:23 +0000</pubDate>
		<dc:creator>Philippe Hausler</dc:creator>
		
		<category><![CDATA[MacOS X]]></category>

		<category><![CDATA[Objective-C]]></category>

		<guid isPermaLink="false">http://www.eval-art.com/?p=129</guid>
		<description><![CDATA[I just recently purchased a G13 keypad. I fell in love with the scriptability of it, but longed to be able to add application support to it. Sadly the Logitech SDK that is shipped is a bit on the mangled side and does not play well with threaded applications. So I ventured to write my [...]]]></description>
			<content:encoded><![CDATA[<p>I just recently purchased a G13 keypad. I fell in love with the scriptability of it, but longed to be able to add application support to it. Sadly the Logitech SDK that is shipped is a bit on the mangled side and does not play well with threaded applications. So I ventured to write my own version.</p>
<p>The framework binds the c library for the device but skips out on the &#8220;EZ-LCD&#8221; c++ stuff&#8230; the framework does not pose any obj-c++ requirements on any handlers. Additionally the display architecture implements notifications of key events, and is built to be very similar to AppKit (methinks maybe Interface Builder extension in the works?)</p>
<p>I will post a tutorial once I finish testing for bugs.</p>
<p>But if you like, here is a beta version that works for text, images, and progress bars plus events for the soft keys, applet, and device.<br />
<a href='http://www.eval-art.com/wp-content/uploads/2009/07/logitechlcdframework.zip'>LogitechLCD.framework</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.eval-art.com/2009/07/12/g-series-keyboard-lcd-framework/feed/</wfw:commentRss>
		</item>
		<item>
		<title>MySQL.framework for iPhone</title>
		<link>http://www.eval-art.com/2009/06/22/mysqlframework-for-iphone/</link>
		<comments>http://www.eval-art.com/2009/06/22/mysqlframework-for-iphone/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 06:57:42 +0000</pubDate>
		<dc:creator>Philippe Hausler</dc:creator>
		
		<category><![CDATA[Database]]></category>

		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[Objective-C]]></category>

		<category><![CDATA[iPhone/iPod Touch]]></category>

		<guid isPermaLink="false">http://www.eval-art.com/?p=112</guid>
		<description><![CDATA[As shipped XCode does not have any native method to compile Framework targets for iPhone, however for a project I have been working on there has been a very strong need to create an embedded framework suitable for iPhone/iPod Touch targets. So after a few days of tinkering with some internals of XCode I have [...]]]></description>
			<content:encoded><![CDATA[<p>As shipped XCode does not have any native method to compile Framework targets for iPhone, however for a project I have been working on there has been a very strong need to create an embedded framework suitable for iPhone/iPod Touch targets. So after a few days of tinkering with some internals of XCode I have created a method that will do just that!</p>
<p>Sincere I have gotten a decent amount of &#8220;buzz&#8221; for porting libmysqlclient to the iPhone OS; That is my first target to try out.</p>
<p>So with out further ado  I present<br />
<a href="http://www.eval-art.com/wp-content/uploads/2009/06/mysqlforiphone.zip">MySQL Framework for iPhone</a></p>
<p>This is currently an alpha version of a full fleged framework for iPhone/iPod Touch 3.0. More documentation will be coming shortly. Do note this is not yet intended to be used for production software and is merely a proof of concept for embedded frameworks. Many features are missing from the obj-c abstraction for MySQL and the client is based on libmysqlclient 5.0.67 which is NOT up to date. However tests have shown capabilities of basic connectivity, authentication and queries to 4.1.22, 5.0.45 and 5.1.30 community editions (note no enterprise connections have been tested as of yet).</p>
<p>USAGE</p>
<p>In order to properly compile apps using the MySQL.framework a few preperation tasks need to be done.</p>
<p>Setup two targets, one specified for iPhone Device 3.0 and one specified for iPhone Simulator 3.0</p>
<p>Add the MySQL.framework from the Device folder as a framework to the Device target.</p>
<p>Likewise add the MySQL.framework from the Simulator folder as a framework to the  Simulator target.</p>
<p>Add a Copy Files Build Phase to both targets specified to the type Framework.</p>
<p>Add the respective frameworks to those Copy Files Phases.</p>
<p>Make sure that both targets are using Base SDK in order to allow the compile target to specify the SDK (and frameworks used).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.eval-art.com/2009/06/22/mysqlframework-for-iphone/feed/</wfw:commentRss>
		</item>
		<item>
		<title>LuaKit</title>
		<link>http://www.eval-art.com/2009/04/09/luakit/</link>
		<comments>http://www.eval-art.com/2009/04/09/luakit/#comments</comments>
		<pubDate>Thu, 09 Apr 2009 13:19:05 +0000</pubDate>
		<dc:creator>Philippe Hausler</dc:creator>
		
		<category><![CDATA[Lua]]></category>

		<category><![CDATA[MacOS X]]></category>

		<category><![CDATA[Objective-C]]></category>

		<guid isPermaLink="false">http://www.eval-art.com/?p=107</guid>
		<description><![CDATA[Lua is definitely one of the most powerful and easy to use scripting languages out there. Unfortunately the api caters to c, there are a few libraries out there that implement c++ bindings for Lua, but none that implement the state handlers in obj-c. Until now.
LuaKit.framework is a fully contained lua api for obj-c, it [...]]]></description>
			<content:encoded><![CDATA[<p>Lua is definitely one of the most powerful and easy to use scripting languages out there. Unfortunately the api caters to c, there are a few libraries out there that implement c++ bindings for Lua, but none that implement the state handlers in obj-c. Until now.</p>
<p>LuaKit.framework is a fully contained lua api for obj-c, it allows base accessors to the stack via NSString, NSNumber(NSUInteger/NSInteger as well), and also allows pushing obj-c &#8220;closures&#8221; (aka selectors to an object, NSInvocations) to give the developer a seamless transition from obj-c interfaces to the Lua stack.</p>
<p>This project is licensed as GNU LGPL so feel free to integrate it in your app. Please make sure to give me credit, but hopefully it will aide in producing some killer scriptable apps.</p>
<p>Examples coming soon.<br />
<a href="http://luakit.googlecode.com">Google Code Project Page</a></p>
<p><a href="http://www.eval-art.com/wp-content/uploads/2009/04/luakitframework.zip">Download LuaKit.framework</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.eval-art.com/2009/04/09/luakit/feed/</wfw:commentRss>
		</item>
		<item>
		<title>FoundationAdditions.framework</title>
		<link>http://www.eval-art.com/2009/04/03/foundationadditionsframework/</link>
		<comments>http://www.eval-art.com/2009/04/03/foundationadditionsframework/#comments</comments>
		<pubDate>Fri, 03 Apr 2009 17:36:57 +0000</pubDate>
		<dc:creator>Philippe Hausler</dc:creator>
		
		<category><![CDATA[MacOS X]]></category>

		<category><![CDATA[Objective-C]]></category>

		<guid isPermaLink="false">http://www.keelscreek.com/~phausler/?p=92</guid>
		<description><![CDATA[Why doesn&#8217;t Foundation allow for runtime abstraction into Objective-C classes?
Why doesn&#8217;t Foundation have STL like classes for lists, deques and queues (more than NSSet, NSArray, and NSMapTable)?
Why doesn&#8217;t Foundation have regular expressions for strings?
Why doesn&#8217;t Foundation have tcp sockets as a more compatible version than NSSocket?
Aren&#8217;t base Foundation classes like, NSArray, NSString, NSData etc missing [...]]]></description>
			<content:encoded><![CDATA[<p>Why doesn&#8217;t Foundation allow for runtime abstraction into Objective-C classes?<br />
Why doesn&#8217;t Foundation have STL like classes for lists, deques and queues (more than NSSet, NSArray, and NSMapTable)?<br />
Why doesn&#8217;t Foundation have regular expressions for strings?<br />
Why doesn&#8217;t Foundation have tcp sockets as a more compatible version than NSSocket?<br />
Aren&#8217;t base Foundation classes like, NSArray, NSString, NSData etc missing a ton of handy/commonly re-used functions?</p>
<p>Well now it can! Introducing FoundationAdditions.framework: a collection of classes and extensions to the base Foundation framework allowing all the way from adding unique objects to a NSMutableArray to the objective-c runtime as an abstraction to objective-c objects to STL classes implemented in objective-c (not objective-c++ btw) classes.</p>
<p>This is however not a complete framework yet, its missing a fair amount of commentary and usage examples. So please consider this as a work-in-progress. Most of the classes have been tested, that being said there may be some memory leaks/bugs etc.</p>
<p>Download <a href='http://www.eval-art.com/wp-content/uploads/2009/04/foundationadditionsframework.zip'>FoundationAdditions.framework</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.eval-art.com/2009/04/03/foundationadditionsframework/feed/</wfw:commentRss>
		</item>
		<item>
		<title>SQLite.framework</title>
		<link>http://www.eval-art.com/2009/03/31/sqliteframework/</link>
		<comments>http://www.eval-art.com/2009/03/31/sqliteframework/#comments</comments>
		<pubDate>Wed, 01 Apr 2009 00:14:14 +0000</pubDate>
		<dc:creator>Philippe Hausler</dc:creator>
		
		<category><![CDATA[Database]]></category>

		<category><![CDATA[MacOS X]]></category>

		<category><![CDATA[Objective-C]]></category>

		<category><![CDATA[SQLite]]></category>

		<guid isPermaLink="false">http://www.keelscreek.com/~phausler/?p=79</guid>
		<description><![CDATA[Wouldn&#8217;t it be great to be able to access SQLite databases with just Objective-C calls?
Now you can with SQLite.framework. This framework supports NSFastEnumeration on SQLiteResults as well as per result enumeration. Additionally the database connections provide update callbacks into the database delegate object.
Here is some example usage.

SQLiteDatabase *db = &#91;SQLiteDatabase databaseNamed:@&#34;mydatabase.db&#34;&#93;;
if&#40;&#91;db executeQuery:@&#34;CREATE TABLE foo (bar [...]]]></description>
			<content:encoded><![CDATA[<p>Wouldn&#8217;t it be great to be able to access SQLite databases with just Objective-C calls?<br />
Now you can with SQLite.framework. This framework supports NSFastEnumeration on SQLiteResults as well as per result enumeration. Additionally the database connections provide update callbacks into the database delegate object.</p>
<p>Here is some example usage.</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;">SQLiteDatabase <span style="color: #002200;">*</span>db <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>SQLiteDatabase databaseNamed<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;mydatabase.db&quot;</span><span style="color: #002200;">&#93;</span>;
<span style="color: #a61390;">if</span><span style="color: #002200;">&#40;</span><span style="color: #002200;">&#91;</span>db executeQuery<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;CREATE TABLE foo (bar TEXT, baz NUMERIC, car INTEGER, caz BLOB);&quot;</span><span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>
<span style="color: #002200;">&#123;</span>
    <span style="color: #002200;">&#91;</span>db executeQuery<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;INSERT INTO foo VALUES('500.0', '500.0', '500.0', '500.0');&quot;</span><span style="color: #002200;">&#93;</span>;
<span style="color: #002200;">&#125;</span>
<span style="color: #a61390;">for</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSDictionary</span> <span style="color: #002200;">*</span>row <span style="color: #a61390;">in</span> <span style="color: #002200;">&#91;</span>db executeQuery<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;SELECT * FROM foo&quot;</span><span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>
<span style="color: #002200;">&#123;</span>
    <span style="color: #400080;">NSString</span> <span style="color: #002200;">*</span>bar <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>row objectForKey<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;bar&quot;</span><span style="color: #002200;">&#93;</span>;
    <span style="color: #400080;">NSNumber</span> <span style="color: #002200;">*</span>baz <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>row objectForKey<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;baz&quot;</span><span style="color: #002200;">&#93;</span>;
    <span style="color: #400080;">NSNumber</span> <span style="color: #002200;">*</span>car <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>row objectForKey<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;car&quot;</span><span style="color: #002200;">&#93;</span>;
    <span style="color: #400080;">NSData</span> <span style="color: #002200;">*</span>caz <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>row objectForKey<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;caz&quot;</span><span style="color: #002200;">&#93;</span>;
<span style="color: #002200;">&#125;</span></pre></div></div>

<p>Download <a href='http://www.eval-art.com/wp-content/uploads/2009/04/sqliteframework.zip'>SQLite.framework</a></p>
<p>Note: This framework is still fairly un-tested and a bit on the alpha side, however future releases may add features like query building and detailed table/row/record information. Additionally I am creating a SequelPro-like client app to demonstrate the framework and provide an easy tool to manipulate SQLite databases.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.eval-art.com/2009/03/31/sqliteframework/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Cocotron; Spreading the joy of Cocoa to Windows</title>
		<link>http://www.eval-art.com/2008/12/07/cocotron-spreading-the-joy-of-cocoa-to-windows/</link>
		<comments>http://www.eval-art.com/2008/12/07/cocotron-spreading-the-joy-of-cocoa-to-windows/#comments</comments>
		<pubDate>Sun, 07 Dec 2008 18:02:40 +0000</pubDate>
		<dc:creator>Philippe Hausler</dc:creator>
		
		<category><![CDATA[Objective-C]]></category>

		<guid isPermaLink="false">http://www.keelscreek.com/~phausler/?p=70</guid>
		<description><![CDATA[Many developers like myself are writing software in totally independent IDEs and usually with totally independent languages to release software for Windows and Mac OS X. There have been many attempts at making methods to accomplish one unified IDE and language to release multi-platform software. However to take advantage of many of the more modern [...]]]></description>
			<content:encoded><![CDATA[<p>Many developers like myself are writing software in totally independent IDEs and usually with totally independent languages to release software for Windows and Mac OS X. There have been many attempts at making methods to accomplish one unified IDE and language to release multi-platform software. However to take advantage of many of the more modern features of operating systems, developers are locked into a proprietary language. <a href="http://www.cocotron.org/">Cocotron</a> offers a potential at a fully universal development platform. Unlike the other &#8220;solutions&#8221;, Cocotron offers a fully binary and C level compiler to target cross platform build results. Hopefully this project will attract enough attention to create a buzz for Apple to snatch this up. One API, one set of application code, one language to rule them all.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.eval-art.com/2008/12/07/cocotron-spreading-the-joy-of-cocoa-to-windows/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Cocoa TCPSockets</title>
		<link>http://www.eval-art.com/2008/12/05/cocoa-tcpsockets/</link>
		<comments>http://www.eval-art.com/2008/12/05/cocoa-tcpsockets/#comments</comments>
		<pubDate>Fri, 05 Dec 2008 16:10:25 +0000</pubDate>
		<dc:creator>Philippe Hausler</dc:creator>
		
		<category><![CDATA[MacOS X]]></category>

		<category><![CDATA[Objective-C]]></category>

		<category><![CDATA[iPhone/iPod Touch]]></category>

		<guid isPermaLink="false">http://www.keelscreek.com/~phausler/?p=66</guid>
		<description><![CDATA[Unfortunately Cocoa does not have native sockets that are universal enough to connect to other language built applications as a pre-built class. The server is intended to be a more thematic method for creating a server in Cocoa than the alternatives. The primary mechanic for connections being established, data incoming and connections closed are all [...]]]></description>
			<content:encoded><![CDATA[<p>Unfortunately Cocoa does not have native sockets that are universal enough to connect to other language built applications as a pre-built class. The server is intended to be a more thematic method for creating a server in Cocoa than the alternatives. The primary mechanic for connections being established, data incoming and connections closed are all based on delegate notifications by the TCPServerDelegate and TCPServerConnectionDelegate protocols. Data buffering, packet encapsulation and reachability are all upon the host application&#8217;s responsability to deal with. The server class set is intended to handle opening a TCP port for hosting, creating new connections to that TCP port, sending/receiving raw data, and Bonjour broadcasting. The TCPClient class also bends BSD sockets to preform similarly. The end result is a simple, easy to use socket server and client class which is portable from Mac OS X desktop to iPhone/iPod which can connect and transact with other applications such as software written for Windows. </p>
<p>Here is an example of a simple chat server.</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #a61390;">@implementation</span> TCPChatServer
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">id</span><span style="color: #002200;">&#41;</span>init
<span style="color: #002200;">&#123;</span>
	self <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>super init<span style="color: #002200;">&#93;</span>;
	server <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span>TCPServer alloc<span style="color: #002200;">&#93;</span> init<span style="color: #002200;">&#93;</span>;
	server.delegate <span style="color: #002200;">=</span> self;
	<span style="color: #002200;">&#91;</span>server listenOnPort<span style="color: #002200;">:</span><span style="color: #2400d9;">5543</span><span style="color: #002200;">&#93;</span>;
	<span style="color: #002200;">&#91;</span>server broadcastOnDomain<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;&quot;</span> type<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;_tcpchat._tcp&quot;</span> name<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;My Chat Server&quot;</span><span style="color: #002200;">&#93;</span>;
	<span style="color: #002200;">&#91;</span>server publish<span style="color: #002200;">&#93;</span>;
	<span style="color: #a61390;">return</span> self;
<span style="color: #002200;">&#125;</span>
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>server<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>TCPServer <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>aServer didAcceptConnection<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>TCPServerConnection <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>aConnection
<span style="color: #002200;">&#123;</span>
	aConnection.delegate <span style="color: #002200;">=</span> self;
<span style="color: #002200;">&#125;</span>
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>connection<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>TCPServerConnection <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>aConnection didReceiveData<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSData</span> <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>data
<span style="color: #002200;">&#123;</span>
	<span style="color: #002200;">&#91;</span>server write<span style="color: #002200;">:</span>data excluding<span style="color: #002200;">:</span>aConnection<span style="color: #002200;">&#93;</span>;
<span style="color: #002200;">&#125;</span>
<span style="color: #a61390;">@end</span>
&nbsp;
<span style="color: #a61390;">@implementation</span> TCPChatClient
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">id</span><span style="color: #002200;">&#41;</span>init
<span style="color: #002200;">&#123;</span>
	self <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>super init<span style="color: #002200;">&#93;</span>;
	client <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span>TCPClient alloc<span style="color: #002200;">&#93;</span> init<span style="color: #002200;">&#93;</span>;
	client.delegate <span style="color: #002200;">=</span> self;
	<span style="color: #a61390;">return</span> self;
<span style="color: #002200;">&#125;</span>
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>connectToServer<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>TCPHost <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>host
<span style="color: #002200;">&#123;</span>
	<span style="color: #002200;">&#91;</span>client connectTo<span style="color: #002200;">:</span>host<span style="color: #002200;">&#93;</span>;
<span style="color: #002200;">&#125;</span>
&nbsp;
_ <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>send<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSString</span> <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>msg
<span style="color: #002200;">&#123;</span>
	<span style="color: #002200;">&#91;</span>client write<span style="color: #002200;">:</span><span style="color: #002200;">&#91;</span>msg dataUsingEncoding<span style="color: #002200;">:</span>NSUTF8StringEncoding<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#93;</span>;
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>client<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>TCPClient <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>aClient didReceiveData<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSData</span> <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>data
<span style="color: #002200;">&#123;</span>
	<span style="color: #400080;">NSString</span> <span style="color: #002200;">*</span>msg <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span><span style="color: #400080;">NSString</span> alloc<span style="color: #002200;">&#93;</span> initWithData<span style="color: #002200;">:</span>data encoding<span style="color: #002200;">:</span>NSUTF8StringEncoding<span style="color: #002200;">&#93;</span>;
	NSLog<span style="color: #002200;">&#40;</span>msg<span style="color: #002200;">&#41;</span>;
<span style="color: #002200;">&#125;</span>
<span style="color: #a61390;">@end</span></pre></div></div>

<p><a href='http://www.eval-art.com/wp-content/uploads/2008/12/tcpsockets.zip'>TCPSockets.zip</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.eval-art.com/2008/12/05/cocoa-tcpsockets/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Lua XHttpRequests v0.1b</title>
		<link>http://www.eval-art.com/2008/10/11/lua-xhttprequests-v01b/</link>
		<comments>http://www.eval-art.com/2008/10/11/lua-xhttprequests-v01b/#comments</comments>
		<pubDate>Sat, 11 Oct 2008 22:01:37 +0000</pubDate>
		<dc:creator>Philippe Hausler</dc:creator>
		
		<category><![CDATA[C]]></category>

		<category><![CDATA[Lua]]></category>

		<guid isPermaLink="false">http://www.keelscreek.com/~phausler/?p=59</guid>
		<description><![CDATA[LuaXHttpRequest

local req = XHttpRequest.new&#40;&#41;;
XHttpRequest.open&#40;req, &#34;GET&#34;, &#34;http://www.anothertest.com/search.xml?searchQuery=Mytest&#38;searchType=all&#34;&#41;;
local result = XHttpRequest.send&#40;req, null&#41;;
print&#40;result&#41;;

]]></description>
			<content:encoded><![CDATA[<p><a href='http://www.eval-art.com/wp-content/uploads/2008/10/luaxhttprequest.c'>LuaXHttpRequest</a></p>

<div class="wp_syntax"><div class="code"><pre class="lua" style="font-family:monospace;"><span style="color: #b1b100;">local</span> req <span style="color: #66cc66;">=</span> XHttpRequest.new<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
XHttpRequest.open<span style="color: #66cc66;">&#40;</span>req, <span style="color: #ff0000;">&quot;GET&quot;</span>, <span style="color: #ff0000;">&quot;http://www.anothertest.com/search.xml?searchQuery=Mytest&amp;searchType=all&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #b1b100;">local</span> result <span style="color: #66cc66;">=</span> XHttpRequest.send<span style="color: #66cc66;">&#40;</span>req, null<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #b1b100;">print</span><span style="color: #66cc66;">&#40;</span>result<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://www.eval-art.com/2008/10/11/lua-xhttprequests-v01b/feed/</wfw:commentRss>
		</item>
		<item>
		<title>libmysqlclient for iPhone</title>
		<link>http://www.eval-art.com/2008/09/05/libmysqlclient-for-iphone-2/</link>
		<comments>http://www.eval-art.com/2008/09/05/libmysqlclient-for-iphone-2/#comments</comments>
		<pubDate>Fri, 05 Sep 2008 16:23:13 +0000</pubDate>
		<dc:creator>Philippe Hausler</dc:creator>
		
		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[iPhone/iPod Touch]]></category>

		<guid isPermaLink="false">http://www.keelscreek.com/~phausler/?p=43</guid>
		<description><![CDATA[Since I have yet to receive any official response from Sun about the source distribution conflicts between the GNU license and Apple&#8217;s distribution licenses, here is a binary release of the static library. This will only allow compilation of device targets to utilize calls from libmysqlclient.
Download libmysqlclient.a
To use this library: make sure to include and copy the appropriate header files into [...]]]></description>
			<content:encoded><![CDATA[<p>Since I have yet to receive any official response from Sun about the source distribution conflicts between the GNU license and Apple&#8217;s distribution licenses, here is a binary release of the static library. This will only allow compilation of device targets to utilize calls from libmysqlclient.</p>
<p>Download <a href="http://www.eval-art.com/wp-content/uploads/2008/09/libmysqlclienta.zip">libmysqlclient.a</a></p>
<p>To use this library: make sure to include and copy the appropriate header files into your project ala #include &#8220;mysql.h&#8221;, add libmysqlclient.a as a existing framework. Completing these two operations will allow applications to be compiled for iPhone/iPod Touch using the libmysqlclient library. All functions will work just as they would in a desktop application compiled against the desktop version of this library.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.eval-art.com/2008/09/05/libmysqlclient-for-iphone-2/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
