<?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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>imSimReal</title>
	<atom:link href="http://imsimreal.com/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://imsimreal.com/blog</link>
	<description>The imSimReal framework and projects built from it</description>
	<lastBuildDate>Wed, 12 May 2010 16:13:36 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>imGravityGame for Mac progress</title>
		<link>http://imsimreal.com/blog/?p=47</link>
		<comments>http://imsimreal.com/blog/?p=47#comments</comments>
		<pubDate>Tue, 16 Jun 2009 18:54:26 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[imGravityGame]]></category>

		<guid isPermaLink="false">http://imsimreal.com/blog/?p=47</guid>
		<description><![CDATA[I&#8217;m needing to build a test example for the Mac using imSimReal 0.1 capabilities. To do that, I created an imSimReal framework project and pulled the source code into that project as a subdirectory of imSimReal. Then I created the imGravityGame as another subdirectory to create the game. At this point, I&#8217;ve gotten the initialization [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m needing to build a test example for the Mac using imSimReal 0.1 capabilities. To do that, I created an imSimReal framework project and pulled the source code into that project as a subdirectory of imSimReal. Then I created the imGravityGame as another subdirectory to create the game. At this point, I&#8217;ve gotten the initialization code working with a screen as follows:</p>
<p><img src="http://imsimreal.com/blog/wp-content/uploads/2009/06/imgravitygamemac.jpg" alt="imGravityGame window in startup condition." border="0" width="682" height="302" /></p>
<p>Obvoiusly, there&#8217;s still stuff to do to make it look good, like label the window, but it has the stuff to start.</p>
<p>I am now back to working on the project that&#8217;s paying some bills, so I&#8217;ll be laying this aside for a bit again. As usual, it&#8217;s all available on <a href="http://github.com/john146/imsimreal/tree/0.1" target="_blank">Github</a>.</p>
<p><!-- Technorati Tags Start --></p>
<p>Technorati Tags:<br />
<a href="http://technorati.com/tag/Development" rel="tag">Development</a>, <a href="http://technorati.com/tag/imGravityGame" rel="tag">imGravityGame</a>, <a href="http://technorati.com/tag/imSimReal" rel="tag">imSimReal</a>, <a href="http://technorati.com/tag/Mac%20OS%20X" rel="tag">Mac OS X</a>
</p>
<p><!-- Technorati Tags End --></p>
]]></content:encoded>
			<wfw:commentRss>http://imsimreal.com/blog/?feed=rss2&amp;p=47</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>imSimReal Working as 0.1RC4</title>
		<link>http://imsimreal.com/blog/?p=44</link>
		<comments>http://imsimreal.com/blog/?p=44#comments</comments>
		<pubDate>Thu, 11 Jun 2009 02:43:47 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[imSimReal]]></category>

		<guid isPermaLink="false">http://imsimreal.com/blog/?p=44</guid>
		<description><![CDATA[I tagged the latest release 0.1RC4, as the latest release candidate, although I don&#8217;t believe it&#8217;s really ready to release yet.
I need to create a sample application that puts it to use as is to show how to use it.
I have the Acceptance Test framework working for all tests, and they all pass. First image [...]]]></description>
			<content:encoded><![CDATA[<p>I tagged the latest release 0.1RC4, as the latest release candidate, although I don&#8217;t believe it&#8217;s really ready to release yet.</p>
<p>I need to create a sample application that puts it to use as is to show how to use it.</p>
<p>I have the Acceptance Test framework working for all tests, and they all pass. First image is the top level menu:</p>
<p><img src="http://imsimreal.com/blog/wp-content/uploads/2009/06/imsimrealtop.jpg" alt="Top level view of the Acceptance Test application for imSimReal with Gravity and PointObject test suites" border="0" width="386" height="742" /></p>
<p>This image displays the success of the PointObject tests:</p>
<p><img src="http://imsimreal.com/blog/wp-content/uploads/2009/06/imsimrealpointobject.jpg" alt="The successful PointObject tests" border="0" width="386" height="742" /></p>
<p>Much of the activity involved refactoring to simplify the code yet still work correctly. </p>
<p>Two remaining activities:</p>
<ul>
<li>Create a Framework to work with MacOS X projects</li>
<li>Create a test application, either iPhone or Mac, to demonstrate use of the framework</li>
</ul>
<p><!-- Technorati Tags Start --></p>
<p>Technorati Tags:<br />
<a href="http://technorati.com/tag/Development" rel="tag">Development</a>, <a href="http://technorati.com/tag/imSimReal" rel="tag">imSimReal</a>, <a href="http://technorati.com/tag/iPhone" rel="tag">iPhone</a>, <a href="http://technorati.com/tag/Mac%20OS%20X" rel="tag">Mac OS X</a>
</p>
<p><!-- Technorati Tags End --></p>
]]></content:encoded>
			<wfw:commentRss>http://imsimreal.com/blog/?feed=rss2&amp;p=44</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Updates to imSimReal</title>
		<link>http://imsimreal.com/blog/?p=40</link>
		<comments>http://imsimreal.com/blog/?p=40#comments</comments>
		<pubDate>Sun, 07 Jun 2009 23:58:47 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[imSimReal]]></category>

		<guid isPermaLink="false">http://imsimreal.com/blog/?p=40</guid>
		<description><![CDATA[After spending the past several months working on other things, I&#8217;ve been doing some stuff with imSimReal again. I revised the unit tests to test in the iPhone environment. And I&#8217;ve added an Acceptance Test layer. At this point it works pretty well, but I do have another level of display to add to the [...]]]></description>
			<content:encoded><![CDATA[<p>After spending the past several months working on other things, I&#8217;ve been doing some stuff with imSimReal again. I revised the unit tests to test in the iPhone environment. And I&#8217;ve added an Acceptance Test layer. At this point it works pretty well, but I do have another level of display to add to the tests.</p>
<p>The test framework is built on a UITableView in a NavigationView. The top table contains a list of the sets of tests available, like so:</p>
<p><img src="http://imsimreal.com/blog/wp-content/uploads/2009/06/imsimrealtop.tiff" alt="The top level of the test framework in the iPhone simulator" border="0" width="386" height="742" /></p>
<p>Each cell is a test suite. Touching the cell causes the suite to run. If it passes, it turns green. If it fails, it turns red. And if it is mixed results, it turns yellow. A gray cell is one that has not been run.</p>
<p>If you select the detail view button on the right side of the cell, the detailed table view opens:</p>
<p><img src="http://imsimreal.com/blog/wp-content/uploads/2009/06/imsimrealgravity.tiff" alt="UITableView showing the Gravity test suite" border="0" width="386" height="742" /></p>
<p>This display shows the Gravity test suite, with all the tests having passed. I need another layer, to provide details of the test when you touch the detailed button on the cells at this level, but I haven&#8217;t added that part yet. The code for all this is available in the imSimReal package in <a href="http://github.com/john146/imsimreal/tree/0.1" target="_blank">gitHub</a>.</p>
<p>I am reworking the IMSRPointObject class, removing the NSDictionary that contained all the data, and instead putting the data at the top level. So far it hasn&#8217;t been completed, but should be soon. I also plan to add a new Xcode project that builds a Framework for OS X. This framework will support garbage collection.</p>
<p>After that, I&#8217;m thinking I need to make an example application using the IMSRGravity and IMSRPointObject classes before moving on to the next piece of functionality.</p>
<p><!-- Technorati Tags Start --></p>
<p>Technorati Tags:<br />
<a href="http://technorati.com/tag/Development" rel="tag">Development</a>, <a href="http://technorati.com/tag/imSimReal" rel="tag">imSimReal</a>, <a href="http://technorati.com/tag/iPhone" rel="tag">iPhone</a>, <a href="http://technorati.com/tag/Mac%20OS%20X" rel="tag">Mac OS X</a>
</p>
<p><!-- Technorati Tags End --></p>
]]></content:encoded>
			<wfw:commentRss>http://imsimreal.com/blog/?feed=rss2&amp;p=40</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>imGravityGame Flipside mostly Done</title>
		<link>http://imsimreal.com/blog/?p=36</link>
		<comments>http://imsimreal.com/blog/?p=36#comments</comments>
		<pubDate>Sun, 08 Feb 2009 02:00:09 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[imGravityGame]]></category>

		<guid isPermaLink="false">http://imsimreal.com/blog/?p=36</guid>
		<description><![CDATA[At least for now. I need some more text for the instructions, and I am having trouble when switching from the landscape orientation in the main window and the portrait orientation in the flipside view, but that will be fixed soon. Here are some images of the flipside:

As you can see, the instructions are not [...]]]></description>
			<content:encoded><![CDATA[<p>At least for now. I need some more text for the instructions, and I am having trouble when switching from the landscape orientation in the main window and the portrait orientation in the flipside view, but that will be fixed soon. Here are some images of the flipside:</p>
<p><img src="http://imsimreal.com/blog/wp-content/uploads/2009/02/imgravitygameflipside4.png" alt="Flipside view with Instructions alert box open" border="0" width="386" height="742" /></p>
<p>As you can see, the instructions are not helpful. Here is the About box:</p>
<p><img src="http://imsimreal.com/blog/wp-content/uploads/2009/02/imgravitygameflipside5.png" alt="Flipside view with the about alert box open." border="0" width="386" height="742" /></p>
<p>This box contains enough text to require a scrolling box.</p>
<p><code>//<br />
//  FlipsideViewController.h<br />
//  imGravityGame<br />
//<br />
//  Created by John Ahrens on 1/9/09.<br />
//  Copyright John Ahrens, LLC 2009. All rights reserved.<br />
//</p>
<p>#import <UIKit/UIKit.h></p>
<p>@class AppController;</p>
<p>@interface FlipsideViewController : UIViewController<br />
	<UIPickerViewDelegate, UIPickerViewDataSource><br />
{<br />
	IBOutlet UIPickerView	*planetView;<br />
	IBOutlet UISlider		*slider;<br />
	IBOutlet UILabel		*sliderLabel;<br />
	IBOutlet UIButton		*instructionsButton;<br />
	IBOutlet UIButton		*aboutButton;</p>
<p>	AppController			*controller;<br />
	NSArray					*planets;<br />
}</p>
<p>@property (nonatomic, retain)UIPickerView			*planetView;<br />
@property (nonatomic, retain)UISlider				*slider;<br />
@property (nonatomic, retain)UILabel				*sliderLabel;<br />
@property (nonatomic, retain)UIButton				*instructionsButton;<br />
@property (nonatomic, retain)UIButton				*aboutButton;</p>
<p>@property (nonatomic, retain)AppController			*controller;<br />
@property (nonatomic, retain)NSArray				*planets;</p>
<p>- (IBAction)sliderChanged: (id)sender;<br />
- (IBAction)buttonPressed: (id)sender;</p>
<p>@end<br />
</code></p>
<p>Also of interest at this time is the <code>-(IBAction)buttonPressed: (id)sender</code> method:</p>
<p><code>- (IBAction)buttonPressed: (id)sender<br />
{<br />
	NSString *title		= [sender currentTitle];<br />
	NSBundle *bundle	= [NSBundle mainBundle];<br />
	NSString *file;</p>
<p>	if ([title hasPrefix: @"About"])<br />
	{<br />
		// This is the About button<br />
		file = [bundle pathForResource: @"about" ofType: @"txt"];<br />
	}<br />
	else<br />
	{<br />
		// This is the Instructions button<br />
		file = [bundle pathForResource: @"instructions" ofType: @"txt"];<br />
	}</p>
<p>	NSString *text = [NSString stringWithContentsOfFile: file<br />
											   encoding: NSUTF8StringEncoding<br />
												  error:nil];<br />
	UIAlertView *alert = [[UIAlertView alloc] initWithTitle: title<br />
													message: text<br />
												   delegate: nil<br />
										  cancelButtonTitle: @"Close"<br />
										  otherButtonTitles: nil];<br />
	[alert show];</p>
<p>	[alert release];<br />
}<br />
</code></p>
<p>Note that it determines which button was pressed, then gets the appropriate file and opens the alert box. The message in the alert box is the contents of the file.</p>
<p><!-- Technorati Tags Start --></p>
<p>Technorati Tags:<br />
<a href="http://technorati.com/tag/Development" rel="tag">Development</a>, <a href="http://technorati.com/tag/imGravityGame" rel="tag">imGravityGame</a>, <a href="http://technorati.com/tag/iPhone" rel="tag">iPhone</a>
</p>
<p><!-- Technorati Tags End --></p>
]]></content:encoded>
			<wfw:commentRss>http://imsimreal.com/blog/?feed=rss2&amp;p=36</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FlipSide of imGravityGame complete</title>
		<link>http://imsimreal.com/blog/?p=32</link>
		<comments>http://imsimreal.com/blog/?p=32#comments</comments>
		<pubDate>Sun, 01 Feb 2009 19:16:32 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[imGravityGame]]></category>

		<guid isPermaLink="false">http://imsimreal.com/blog/?p=32</guid>
		<description><![CDATA[I&#8217;ve completed the layout of the flipside of imGravityGame. Here&#8217;s an image:

The two buttons turn blue when touched, but they don&#8217;t actually do anything yet. That&#8217;s the part I have to figure out next. How to best bring up a window that shows the instructions for how to play, and an About box with the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve completed the layout of the flipside of imGravityGame. Here&#8217;s an image:</p>
<p><img src="http://imsimreal.com/blog/wp-content/uploads/2009/02/imgravitygameflipside3.png" alt="Flipside of imGravityGame with planet picker, velocity sliding box, instructions and about buttons." border="0" width="386" height="742" /></p>
<p>The two buttons turn blue when touched, but they don&#8217;t actually do anything yet. That&#8217;s the part I have to figure out next. How to best bring up a window that shows the instructions for how to play, and an About box with the credits.</p>
<p><!-- Technorati Tags Start --></p>
<p>Technorati Tags:<br />
<a href="http://technorati.com/tag/Development" rel="tag">Development</a>, <a href="http://technorati.com/tag/imGravityGame" rel="tag">imGravityGame</a>, <a href="http://technorati.com/tag/iPhone" rel="tag">iPhone</a>
</p>
<p><!-- Technorati Tags End --></p>
]]></content:encoded>
			<wfw:commentRss>http://imsimreal.com/blog/?feed=rss2&amp;p=32</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Planet Picker now works</title>
		<link>http://imsimreal.com/blog/?p=21</link>
		<comments>http://imsimreal.com/blog/?p=21#comments</comments>
		<pubDate>Sat, 31 Jan 2009 19:19:39 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[imGravityGame]]></category>

		<guid isPermaLink="false">http://imsimreal.com/blog/?p=21</guid>
		<description><![CDATA[I got the planet picker to populate with an array that&#8217;s in alphanumeric order. Now I need to move the Gravity code from the FlipSideViewController, to a controller class. an AppController, rather than a view controller to maintain the MVC pattern.
Update 3:49 MST: Here&#8217;s an image of the working picker:

Update 5:00 MST: Added the slider [...]]]></description>
			<content:encoded><![CDATA[<p>I got the planet picker to populate with an array that&#8217;s in alphanumeric order. Now I need to move the Gravity code from the FlipSideViewController, to a controller class. an AppController, rather than a view controller to maintain the MVC pattern.</p>
<p><strong>Update 3:49 MST:</strong> Here&#8217;s an image of the working picker:</p>
<p><img src="http://imsimreal.com/blog/wp-content/uploads/2009/01/imgravitygameflipside1.png" alt="Flipside of imGravityGame in simulator with picker and Earth selected." border="0" width="386" height="742" /></p>
<p><strong>Update 5:00 MST:</strong> Added the slider to set the velocity of the sliding box moving across the base to catch the falling ball. Here&#8217;s an image:</p>
<p><img src="http://imsimreal.com/blog/wp-content/uploads/2009/02/imgravitygameflipside2.png" alt="Flipside of imGravityGame in simulator with picker showing Earth selected and slider showing 25 m/sec velocity" border="0" width="386" height="742" /></p>
<p><!-- Technorati Tags Start --></p>
<p>Technorati Tags:<br />
<a href="http://technorati.com/tag/Development" rel="tag">Development</a>, <a href="http://technorati.com/tag/imGravityGame" rel="tag">imGravityGame</a>, <a href="http://technorati.com/tag/iPhone" rel="tag">iPhone</a>
</p>
<p><!-- Technorati Tags End --></p>
]]></content:encoded>
			<wfw:commentRss>http://imsimreal.com/blog/?feed=rss2&amp;p=21</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Another update</title>
		<link>http://imsimreal.com/blog/?p=15</link>
		<comments>http://imsimreal.com/blog/?p=15#comments</comments>
		<pubDate>Sun, 25 Jan 2009 19:37:10 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[imSimReal]]></category>

		<guid isPermaLink="false">http://imsimreal.com/blog/?p=15</guid>
		<description><![CDATA[I updated imSimReal again. This time I only added a new test case, so I didn&#8217;t roll to a new Release Candidate. If you&#8217;re interested, you&#8217;ll have to get the latest from github.
In short, I added the test case - (void)testGetGravityForSelectedBodyWithBadBodyName:. The primary plan here was to make sure that we can deal with the [...]]]></description>
			<content:encoded><![CDATA[<p>I updated imSimReal again. This time I only added a new test case, so I didn&#8217;t roll to a new Release Candidate. If you&#8217;re interested, you&#8217;ll have to get the latest from <a href="https://github.com/" target="_blank">github</a>.</p>
<p>In short, I added the test case <code>- (void)testGetGravityForSelectedBodyWithBadBodyName:</code>. The primary plan here was to make sure that we can deal with the case where the selectedBody in IMSRGravity is not a member of the bodyGravity NSDictionary.</p>
<p>A look at the test:</p>
<p><code>- (void)testGetGravityForSelectedBodyWithBadBodyName<br />
{<br />
	NSString	*body			= @"test";<br />
	IMSRGravity	*gravity		= [[IMSRGravity alloc] init];<br />
	STAssertNotNil(gravity, @"IMSRGravity not created with default initializer");</p>
<p>	[gravity setSelectedBody: body];<br />
	double		expectedResult	= 0.0; // value if selectedBody is not valid (i.e., null, etc.)<br />
	double		result			= [gravity gravityForSelectedBody];<br />
	STAssertEquals(result, expectedResult, @"Expected %f, got %f", expectedResult, result);</p>
<p>	[body release];<br />
	[gravity release];<br />
}</code></p>
<p><!-- Technorati Tags Start --></p>
<p>Technorati Tags:<br />
<a href="http://technorati.com/tag/Development" rel="tag">Development</a>, <a href="http://technorati.com/tag/imSimReal" rel="tag">imSimReal</a>
</p>
<p><!-- Technorati Tags End --></p>
]]></content:encoded>
			<wfw:commentRss>http://imsimreal.com/blog/?feed=rss2&amp;p=15</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>imSimReal 0.1 RC3 available</title>
		<link>http://imsimreal.com/blog/?p=11</link>
		<comments>http://imsimreal.com/blog/?p=11#comments</comments>
		<pubDate>Sat, 24 Jan 2009 19:08:17 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[imSimReal]]></category>

		<guid isPermaLink="false">http://imsimreal.com/blog/?p=11</guid>
		<description><![CDATA[IMSRGravity now has a new data member and a new method. It stores the selected body. The new method provides the means of getting the gravity value of the selectedBody.
There is also a new initializer -initWithBody:
- (id)initWithBody: (NSString *)body
{
	if (![super init])
	{
		return nil;
	}
	bodyGravity		= [[NSDictionary alloc] initWithContentsOfFile: @"Gravity.plist"];
	selectedBody	= body;
	return self;
}
Note that the initializer takes an NSString object [...]]]></description>
			<content:encoded><![CDATA[<p>IMSRGravity now has a new data member and a new method. It stores the selected body. The new method provides the means of getting the gravity value of the selectedBody.</p>
<p>There is also a new initializer <code>-initWithBody:</code></p>
<p><code>- (id)initWithBody: (NSString *)body<br />
{<br />
	if (![super init])<br />
	{<br />
		return nil;<br />
	}</p>
<p>	bodyGravity		= [[NSDictionary alloc] initWithContentsOfFile: @"Gravity.plist"];<br />
	selectedBody	= body;</p>
<p>	return self;<br />
}</code></p>
<p>Note that the initializer takes an NSString object that provides the key into the bodyGravity NSDictionary. With this change, the default <code>-init:</code> method changes to call <code>-initWithBody:</code> with Earth as the default selectedBody:</p>
<p><code>- (id)init<br />
{<br />
	return [self initWithBody: @"Earth"]; // Use Earth in the absence of other values<br />
}</code></p>
<p>The new <code>-gravityForSelectedBody:</code> method returns 0.0 if the selectedBody is nil, otherwise it gets accesses the bodyGravity NSDictionary to get the gravity value for the selectedBody key.</p>
<p>At this point there is some error handling missing for the case where the selectedBody does not match any element in the NSDictionary.</p>
<p><code>- (double)gravityForSelectedBody<br />
{<br />
	if (selectedBody == nil)<br />
	{<br />
		return 0.0;<br />
	}</p>
<p>	NSNumber *gravity = [bodyGravity valueForKey: selectedBody];<br />
	return [gravity doubleValue];<br />
}</code></p>
<p>The current class declaration looks like:</p>
<p><code>@interface IMSRGravity : NSObject<br />
{<br />
	NSDictionary	*bodyGravity;<br />
	NSString		*selectedBody;<br />
}</p>
<p>@property (nonatomic, retain)NSDictionary	*bodyGravity;<br />
@property (nonatomic, retain)NSString		*selectedBody;</p>
<p>/**<br />
 * An initializer for selecting the body to use when initializing. If no body is<br />
 * selected, the default init: method sets body to Earth<br />
 *<br />
 * @param body	The body to set selectedBody to<br />
 *<br />
 * @return a newly initialized IMSRGravity object<br />
 */<br />
- (id)initWithBody: (NSString *)body;</p>
<p>/**<br />
 * Get the gravity value for the selectedBody.<br />
 *<br />
 * @return gravity for the selectedBody variable, in meters/second.<br />
 */<br />
- (double)gravityForSelectedBody;</p>
<p>@end</code></p>
<p>This is available from <a href="http://github.com/john146/imsimreal/tree/0.1RC3" target="_blank">GitHub as tag 0.1RC3</a>, and as a disk image at the <a href="http://imsimreal.com/page1/downloads.html" target="_blank">downloads page</a>.</p>
<p><!-- Technorati Tags Start --></p>
<p>Technorati Tags:<br />
<a href="http://technorati.com/tag/Development" rel="tag">Development</a>, <a href="http://technorati.com/tag/imSimReal" rel="tag">imSimReal</a>
</p>
<p><!-- Technorati Tags End --></p>
]]></content:encoded>
			<wfw:commentRss>http://imsimreal.com/blog/?feed=rss2&amp;p=11</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>imGravityGame and more updates to imSimReal</title>
		<link>http://imsimreal.com/blog/?p=9</link>
		<comments>http://imsimreal.com/blog/?p=9#comments</comments>
		<pubDate>Sun, 18 Jan 2009 04:05:24 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[imSimReal]]></category>

		<guid isPermaLink="false">http://imsimreal.com/blog/?p=9</guid>
		<description><![CDATA[Started working on imGravityGame, a demonstration of the use of IMSRGravity in the imSimReal framework. I&#8217;m working on the flipSide where I start with a Picker to pick the body providing the gravitational attraction, such as a planet. In -initWithNibName:Bundle:, I load the IMSRGravity object.
gravity = [IMSRGravity alloc] init];
In -viewDidLoad:, I construct an NSArray using [...]]]></description>
			<content:encoded><![CDATA[<p>Started working on imGravityGame, a demonstration of the use of IMSRGravity in the imSimReal framework. I&#8217;m working on the flipSide where I start with a Picker to pick the body providing the gravitational attraction, such as a planet. In <code>-initWithNibName:Bundle:</code>, I load the IMSRGravity object.</p>
<p><code>gravity = [IMSRGravity alloc] init];</code></p>
<p>In <code>-viewDidLoad:</code>, I construct an NSArray using the keys from gravity:</p>
<p><code>planets = [gravity allKeys];</code></p>
<p>The FlipSide implements two data source methods:</p>
<p><code>-numberOfComponentsInPickerView:</code></p>
<p>which returns 1, and</p>
<p><code>-pickerView:numberOfRowsInComponent:</code></p>
<p>which returns the number of planets in the gravity:</p>
<p><code>return [planets count];</code></p>
<p>It also implements one UIPickerViewDelegateMethod</p>
<p>:</p>
<p><code>-pickerView:titleForRow:forComponent:</code></p>
<p>which returns the name of the planet indicated by the NSInteger row</p>
<p><code>return [planets objectAtIndex: row];</code></p>
<p>At this point I realized that IMSRGravity needs a place to store the currently selected planet, so I will be going back to imSimReal and preparing 0.1RC3 soon (like tomorrow, hopefully).</p>
<p>Here is the current status of FlipSideViewController class:</p>
<p><code>@interface FlipsideViewController : UIViewController</p>
<p>{<br />
IBOutlet UIPickerView	*planetView;<br />
IMSRGravity				*gravity;<br />
NSArray					*planets;<br />
}</code></p>
<p><code>@property (nonatomic, retain) UIPickerView	*planetView;<br />
@property (nonatomic, retain) IMSRGravity	*gravity;<br />
@property (nonatomic, retain) NSArray		*planets;</p>
<p></code></p>
<p><code>@end</code></p>
<p><!-- Technorati Tags Start --></p>
<p>Technorati Tags:<br />
<a rel="tag" href="http://technorati.com/tag/imSimReal">imSimReal</a>, <a rel="tag" href="http://technorati.com/tag/iPhone">iPhone</a>, <a rel="tag" href="http://technorati.com/tag/imGravityGame">imGravityGame</a></p>
<p><!-- Technorati Tags End --></p>
]]></content:encoded>
			<wfw:commentRss>http://imsimreal.com/blog/?feed=rss2&amp;p=9</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>imSimReal update</title>
		<link>http://imsimreal.com/blog/?p=5</link>
		<comments>http://imsimreal.com/blog/?p=5#comments</comments>
		<pubDate>Sun, 11 Jan 2009 03:26:56 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[imSimReal]]></category>

		<guid isPermaLink="false">http://imsimreal.com/blog/?p=5</guid>
		<description><![CDATA[Besides getting the latest from GitHub, you can also get the latest disk image. Unfotrunately, for some reason, the disk image is 100 MB. Not sure why, but I think I need to figure out how to shrink it down some.
This code is currently only being used in an iPhone application, so the fact that [...]]]></description>
			<content:encoded><![CDATA[<p>Besides getting the latest from <a href="http://github.com/john146/imsimreal/tree/0.1RC2" target="_blank">GitHub</a>, you can also get the latest <a href="http://www.imsimreal.com/downloads/imSimReal_0.1RC2.dmg" target="_blank">disk image</a>. Unfotrunately, for some reason, the disk image is 100 MB. Not sure why, but I think I need to figure out how to shrink it down some.</p>
<p>This code is currently only being used in an iPhone application, so the fact that the project file is an application file is irrelevant. That was the easiest way to get the tests built into the project quickly, so I went with it. I should point out that the project file, if you build the Unit Test target, builds the imSimReal code and the OCUnit test code, then executes the tests, and only reports success if all the tests pass.</p>
<p><!-- Technorati Tags Start --></p>
<p>Technorati Tags:<br />
<a href="http://technorati.com/tag/imSimReal" rel="tag">imSimReal</a>, <a href="http://technorati.com/tag/iPhone" rel="tag">iPhone</a>
</p>
<p><!-- Technorati Tags End --></p>
]]></content:encoded>
			<wfw:commentRss>http://imsimreal.com/blog/?feed=rss2&amp;p=5</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
