<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6706792260056841897</id><updated>2011-10-18T14:06:51.123-07:00</updated><category term='Ogre3d'/><category term='outlook'/><category term='Trampoline'/><category term='networkspaces'/><category term='MacOSX'/><category term='python'/><category term='StuntPlayground'/><category term='mac'/><title type='text'>SeventhKevin</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>14</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-3716881493427839806</id><published>2008-07-04T11:57:00.000-07:00</published><updated>2008-12-09T08:42:00.173-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacOSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Trampoline'/><category scheme='http://www.blogger.com/atom/ns#' term='Ogre3d'/><title type='text'>Started "Trampoline" port</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_v2B9WJt_zss/SG5zx6loJrI/AAAAAAAAAOo/Kn56kSGbDDE/s1600-h/ss2.jpg" style="text-decoration: none;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;Got the first screens working with the port of &lt;/span&gt;&lt;/a&gt;&lt;a href="http://www.walaber.com/index.php?action=showitem&amp;amp;id=12"&gt;Trampoline&lt;/a&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_v2B9WJt_zss/SG5zx6loJrI/AAAAAAAAAOo/Kn56kSGbDDE/s1600-h/ss2.jpg" style="text-decoration: none;"&gt;&lt;img style="text-align: left; display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; cursor: pointer; " src="http://4.bp.blogspot.com/_v2B9WJt_zss/SG5zx6loJrI/AAAAAAAAAOo/Kn56kSGbDDE/s400/ss2.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5219236319546844850" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-3716881493427839806?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/3716881493427839806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=3716881493427839806' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/3716881493427839806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/3716881493427839806'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2008/07/started-trampoline-port.html' title='Started &quot;Trampoline&quot; port'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_v2B9WJt_zss/SG5zx6loJrI/AAAAAAAAAOo/Kn56kSGbDDE/s72-c/ss2.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-1446608367324308532</id><published>2008-06-27T11:13:00.000-07:00</published><updated>2008-06-27T11:20:37.334-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacOSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Ogre3d'/><category scheme='http://www.blogger.com/atom/ns#' term='StuntPlayground'/><title type='text'>StuntPlayground 2.0.1</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: arial;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;A new StuntPlayground has been released, with the Ogre 1.4.8 which has the following Mac specific fixes:&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:13px;"&gt;&lt;span class="Apple-style-span" style="font-family: arial;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;Mac OS X:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; font-family:Verdana;font-size:13px;"&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: arial; font-size: 16px; "&gt;Workaround for a few GL driver bugs on older machines, in particular first-gen iMacs and old PPC machines&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: arial; font-size: 16px; "&gt;Workaround for GLSL vertex attribute aliasing problems&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;A few download links:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.walaber.com/index.php?action=showitem&amp;amp;id=7"&gt;&lt;span class="Apple-style-span" style="font-family: arial;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;Walaber's StuntPlayground site&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.esnips.com/web/Stuntplayground"&gt;&lt;span class="Apple-style-span" style="font-family: arial;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;http://www.esnips.com/web/Stuntplayground&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="font-family: arial;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-1446608367324308532?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/1446608367324308532/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=1446608367324308532' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/1446608367324308532'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/1446608367324308532'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2008/06/stuntplayground-201.html' title='StuntPlayground 2.0.1'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-4017407335752837553</id><published>2008-02-08T09:24:00.001-08:00</published><updated>2008-02-25T22:17:09.459-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacOSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Ogre3d'/><category scheme='http://www.blogger.com/atom/ns#' term='StuntPlayground'/><title type='text'>StuntPlayground Released</title><content type='html'>Walaber is kindly hosting the released Mac port of StuntPlayground, found here:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://walaber.com/index.php?action=showitem&amp;amp;id=7"&gt;StuntPlayground link&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Have fun!&lt;/div&gt;&lt;div&gt;(10.4+ and universal)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-4017407335752837553?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/4017407335752837553/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=4017407335752837553' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/4017407335752837553'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/4017407335752837553'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2008/02/stuntplayground-released.html' title='StuntPlayground Released'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-7798888318046086932</id><published>2008-01-20T23:12:00.000-08:00</published><updated>2008-01-25T21:09:10.703-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacOSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Ogre3d'/><category scheme='http://www.blogger.com/atom/ns#' term='StuntPlayground'/><title type='text'>Stuntplayground, RC 1</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Got the OgreConfigDialog working, specifically for this game, as a beginning dialog, to offer options available in the Ogre.cfg file.  Also, using the latest OIS from cvs, because it gets around a problem with 2-finger trackpad use causing the game to freeze until ESC was pressed.&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;a href="http://www.esnips.com/nsdoc/842e8913-4064-46b8-91ef-62beaa6e8380"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.esnips.com/doc/842e8913-4064-46b8-91ef-62beaa6e8380/StuntPlayground"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Download           StuntPlayground.dmg&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Here's another link to a page with the .dmg, just in case:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="  white-space: pre; font-family:'Lucida Grande';"&gt;&lt;a href="http://www.esnips.com/web/Stuntplayground"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;http://www.esnips.com/web/Stuntplayground&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre;font-family:'Lucida Grande';font-size:11px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-7798888318046086932?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/7798888318046086932/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=7798888318046086932' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/7798888318046086932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/7798888318046086932'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2008/01/stuntplayground-rc-1.html' title='Stuntplayground, RC 1'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-3882601568326044167</id><published>2007-10-01T22:55:00.001-07:00</published><updated>2007-10-01T23:10:01.160-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacOSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Ogre3d'/><category scheme='http://www.blogger.com/atom/ns#' term='StuntPlayground'/><title type='text'>Beta 4 of StuntPlayground</title><content type='html'>Beta 4 fixes the CEGUI trying to write a log file back into the Application bundle - redirecting to /Library/Application Support/StuntPlayground.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.esnips.com/r/hmfl/doc/bf316c47-131f-4e18-8d1d-01b1038979dc/StuntPlayground"&gt;Download Link to StuntPlayground Beta 4&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-3882601568326044167?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/3882601568326044167/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=3882601568326044167' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/3882601568326044167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/3882601568326044167'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2007/10/beta-4-of-stuntplayground.html' title='Beta 4 of StuntPlayground'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-2574386723398914089</id><published>2007-09-26T21:06:00.000-07:00</published><updated>2007-09-26T21:33:04.818-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacOSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Ogre3d'/><category scheme='http://www.blogger.com/atom/ns#' term='StuntPlayground'/><title type='text'>Beta 3 of StuntPlayground</title><content type='html'>Beta 3 adds saving of arenas and replays to the ~/Library/Application Support/StuntPlayground folder.  Also, updated the readme.html.  Still don't have the mousewheel working...&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.esnips.com/r/hmfl/doc/f0d5bf2d-65cd-4c9e-940a-fb4304b93441/StuntPlayground"&gt;http://www.esnips.com/r/hmfl/doc/f0d5bf2d-65cd-4c9e-940a-fb4304b93441/StuntPlayground&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-2574386723398914089?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/2574386723398914089/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=2574386723398914089' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/2574386723398914089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/2574386723398914089'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2007/09/beta-3-of-stuntplayground.html' title='Beta 3 of StuntPlayground'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-4496894921072189159</id><published>2007-09-13T17:32:00.000-07:00</published><updated>2007-09-14T11:46:35.163-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacOSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Ogre3d'/><category scheme='http://www.blogger.com/atom/ns#' term='StuntPlayground'/><title type='text'>Beta 2 of StuntPlayground</title><content type='html'>&lt;span class="Apple-style-span"   style="  line-height: 18px; font-family:Verdana;font-size:12px;"&gt;Beta 2 of the Mac version of StuntPlayground. The Ogre frameworks are now inside the application. I've included the original docs from the PC version, for those who haven't actually played the game before. I'll have to update those docs, but to sum up, instead of the 'control' key its the 'option' key, and the mousewheel doesn't work yet. For zooming, use 'shift'+'option' while moving the mouse. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.esnips.com/r/hmfl/doc/0eb47332-70cd-4629-8827-7b35b17cddd3/StuntPlayground" target="_blank" class="postlink" style="text-decoration: underline; color: rgb(0, 85, 0); ; font-weight: bold; color: rgb(51, 102, 204); "&gt;http://www.esnips.com/r/hmfl/doc/0eb47332-70cd-4629-8827-7b35b17cddd3/StuntPlayground&lt;/a&gt; &lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  line-height: 18px;font-family:Verdana;font-size:12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-4496894921072189159?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/4496894921072189159/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=4496894921072189159' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/4496894921072189159'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/4496894921072189159'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2007/09/beta-2-of-stuntplayground.html' title='Beta 2 of StuntPlayground'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-9112851583975958404</id><published>2007-08-31T23:51:00.000-07:00</published><updated>2007-09-14T11:47:13.954-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacOSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Ogre3d'/><category scheme='http://www.blogger.com/atom/ns#' term='StuntPlayground'/><title type='text'>Beta1</title><content type='html'>Beta1 is out for feedback.  Here's a link for some instructions:&lt;br /&gt;&lt;a href="http://www.ogre3d.org/phpBB2/viewtopic.php?t=35477"&gt;http://www.ogre3d.org/phpBB2/viewtopic.php?t=35477&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-9112851583975958404?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/9112851583975958404/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=9112851583975958404' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/9112851583975958404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/9112851583975958404'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2007/08/beta1.html' title='Beta1'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-857090072106924509</id><published>2007-08-30T23:00:00.000-07:00</published><updated>2008-12-09T08:42:00.557-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacOSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Ogre3d'/><category scheme='http://www.blogger.com/atom/ns#' term='StuntPlayground'/><title type='text'>Material problems</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_v2B9WJt_zss/RtevJfOYPkI/AAAAAAAAAM4/Kkyggn7-C6Q/s1600-h/sp_after.jpg"&gt;&lt;/a&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  ;font-family:Helvetica;font-size:12px;"&gt;Previous screenshots shows 'stats' overlay graphics a bit garbled, and I couldn't figure out why.  The graphics were present, and loading according to the log.  They sometimes were showing up looking like other material.  Then I noticed that the size of the loaded graphics were different from the actual pixel size of the .png file.  For example:&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style=" ;font-family:Helvetica;font-size:12px;"&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;22:51:43: Texture: GUI_JP_DIST.png: Loading 1 faces(PF_R8G8B8A8,128x32x1) with 5 hardware generated mipmaps from Image. Internal format is PF_A8R8G8B8,128x32x1.&lt;/p&gt; &lt;p style="text-align: center;margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; min-height: 14px; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;But, the .png file is actually 96x24 pixels.  By resizing the .png to 128x32, it works fine now.&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;Before:&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_v2B9WJt_zss/Rteu7POYPjI/AAAAAAAAAMw/lbAnRQuJJ4s/s400/sp_before.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5104741035370102322" /&gt;&lt;/p&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt; &lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;After:&lt;/p&gt;&lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_v2B9WJt_zss/RtevJfOYPkI/AAAAAAAAAM4/Kkyggn7-C6Q/s400/sp_after.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5104741280183238210" /&gt;&lt;/p&gt;&lt;p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"&gt; &lt;/p&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-857090072106924509?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/857090072106924509/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=857090072106924509' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/857090072106924509'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/857090072106924509'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2007/08/material-problems.html' title='Material problems'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_v2B9WJt_zss/Rteu7POYPjI/AAAAAAAAAMw/lbAnRQuJJ4s/s72-c/sp_before.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-145481570113672565</id><published>2007-08-23T17:44:00.000-07:00</published><updated>2008-12-09T08:42:00.784-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacOSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Ogre3d'/><category scheme='http://www.blogger.com/atom/ns#' term='StuntPlayground'/><title type='text'>Playback</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_v2B9WJt_zss/Rs4qO_OYPiI/AAAAAAAAAMo/h6rt7M9r_1E/s1600-h/SP.jpg"&gt;&lt;/a&gt;&lt;div&gt;Playback is working nicely.  The text color for buttons are now more clear.&lt;/div&gt;&lt;div&gt;I was using:&lt;/div&gt;&lt;div&gt;mButton-&gt;setProperty("NormalTextColour", PropertyHelper::colourRectToString( ColourRect( colour(0.8,0.8,0.8) ) ) );&lt;/div&gt;&lt;div&gt;And what works is:&lt;/div&gt;&lt;div&gt;mButton-&gt;setProperty("NormalTextColour", PropertyHelper::colourToString( CEGUI::colour(1,1,1) ) );&lt;/div&gt;&lt;div&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_v2B9WJt_zss/Rs4qO_OYPiI/AAAAAAAAAMo/h6rt7M9r_1E/s400/SP.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5102061864835628578" /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-145481570113672565?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/145481570113672565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=145481570113672565' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/145481570113672565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/145481570113672565'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2007/08/playback.html' title='Playback'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_v2B9WJt_zss/Rs4qO_OYPiI/AAAAAAAAAMo/h6rt7M9r_1E/s72-c/SP.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-7578474121829236246</id><published>2007-08-20T15:18:00.000-07:00</published><updated>2008-12-09T08:42:01.043-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacOSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Ogre3d'/><category scheme='http://www.blogger.com/atom/ns#' term='StuntPlayground'/><title type='text'>Jump!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_v2B9WJt_zss/RsoTwfOYPhI/AAAAAAAAAMg/RA-d1R_84kA/s1600-h/SP.jpg"&gt;&lt;/a&gt;An update with StuntPlayground - most of the game play is now working.  Got a bit of a crash on closing, but that should be easy to figure out.  New screenshot of after a jump:&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_v2B9WJt_zss/RsoTwfOYPhI/AAAAAAAAAMg/RA-d1R_84kA/s400/SP.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5100911251686964754" /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-7578474121829236246?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/7578474121829236246/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=7578474121829236246' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/7578474121829236246'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/7578474121829236246'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2007/08/jump.html' title='Jump!'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_v2B9WJt_zss/RsoTwfOYPhI/AAAAAAAAAMg/RA-d1R_84kA/s72-c/SP.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-300509742375195799</id><published>2007-08-17T19:35:00.000-07:00</published><updated>2008-12-09T08:42:01.210-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MacOSX'/><category scheme='http://www.blogger.com/atom/ns#' term='Ogre3d'/><category scheme='http://www.blogger.com/atom/ns#' term='StuntPlayground'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>StuntPlayground</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_v2B9WJt_zss/RsZd3vOYPgI/AAAAAAAAAMY/1cmHdNflkFM/s1600-h/SP.jpg"&gt;&lt;/a&gt;I've been porting &lt;a href="http://walaber.com/index.php?action=showitem&amp;id=7"&gt;StuntPlaygound&lt;/a&gt; to MacOSX.  It uses the &lt;a href="http://www.ogre3d.org/"&gt;Ogre3D&lt;/a&gt; engine.  The source was kindly provided at &lt;a href="http://walaber.com/"&gt;http://walaber.com/&lt;/a&gt;.  The main challenges have been getting to run on the latest version of Ogre ("Eihort", 1.4.x), which uses &lt;a href="http://www.cegui.org.uk/wiki/index.php/Main_Page"&gt;CEGUI v0.5&lt;/a&gt; for UI elements and OIS for keyboard and mouse input.&lt;div&gt;So far, I have the arena spinning around and the logo comes up:&lt;/div&gt;&lt;div&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_v2B9WJt_zss/RsZd3vOYPgI/AAAAAAAAAMY/1cmHdNflkFM/s400/SP.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5099866840194629122" /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;More updates as I progress.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-300509742375195799?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/300509742375195799/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=300509742375195799' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/300509742375195799'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/300509742375195799'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2007/08/stuntplayground.html' title='StuntPlayground'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_v2B9WJt_zss/RsZd3vOYPgI/AAAAAAAAAMY/1cmHdNflkFM/s72-c/SP.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-1228951388122485923</id><published>2007-08-15T21:22:00.000-07:00</published><updated>2007-08-15T21:45:35.150-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='outlook'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='networkspaces'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>Using NetWorkSpaces with Python</title><content type='html'>&lt;div&gt;In order to try out &lt;a href="http://nws-py.sourceforge.net/"&gt;NetWorkSpaces&lt;/a&gt; for &lt;a href="http://python.org/"&gt;Python&lt;/a&gt;, I tackled a problem I've had for some time.  Due to IT reasons, its easier to have my Outlook client run on a PC nearby, and view that PC through VNC.  But, sometimes I miss meeting notices if I'm not around to hear the reminder sound through the PC's speakers.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;First I needed create Macros for Outlook to run each time I received an email or a reminder.  There are subroutines called 'Application_NewMail' and 'Application_Reminder' that are called, so I grabbed some information from the subject in each of those routines, entitled each with either 'Email' or 'Reminder', and sent the info to a Python script:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Public Function SendText1(title, txt)&lt;br /&gt;Dim prog As String&lt;br /&gt;Dim t As String&lt;br /&gt;Dim WSHShell&lt;br /&gt;&lt;br /&gt;Set WSHShell = CreateObject("wscript.Shell")&lt;br /&gt;t = " " &amp; Trim(txt)&lt;br /&gt;prog = "c:\Python25\Python.exe c:\Python25\doNotify.py " &amp; title &amp; " """ &amp; t &amp; """"&lt;br /&gt;WSHShell.Run prog, 1, 1&lt;br /&gt;Set WSHShell = Nothing&lt;br /&gt;End Function&lt;br /&gt;            &lt;br /&gt;&lt;br /&gt;Private Sub Application_NewMail()&lt;br /&gt;Dim oFolder&lt;br /&gt;Dim oNewItem&lt;br /&gt;Dim s&lt;br /&gt;Dim n&lt;br /&gt;&lt;br /&gt;Set oFolder = GetNamespace("MAPI").GetDefaultFolder(olFolderInbox)&lt;br /&gt;Set oNewItem = oFolder.Items.GetLast&lt;br /&gt;Rem For Each oNewItem In oFolder.Items.Restrict("[Unread] = 0")&lt;br /&gt;    s = oNewItem.SenderName &amp; ":  "&lt;br /&gt;    s = s &amp; Trim(oNewItem.Subject)&lt;br /&gt;    n = "Email"&lt;br /&gt;    Call SendText1(n, s)&lt;br /&gt;Rem Next&lt;br /&gt;End Sub&lt;br /&gt;            &lt;br /&gt;Private Sub Application_Reminder(ByVal Item As Object)&lt;br /&gt;Dim s As String&lt;br /&gt;Dim sBody As String&lt;br /&gt;Dim n&lt;br /&gt;&lt;br /&gt;s = Item.Subject &amp; "(" &amp; Item.Location &amp; ") " &amp; FormatDateTime(Item.Start, vbShortTime)&lt;br /&gt;n = "Reminder"&lt;br /&gt;Call SendText1(n, s)&lt;br /&gt;End Sub&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Notice in 'SendText1' I run a Python script called 'doNotify.py' with two parameters, coming in as args[1] and args[2]:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;# doNotify.py&lt;br /&gt;from nws.client import NetWorkSpace&lt;br /&gt;import sys&lt;br /&gt;&lt;br /&gt;def main(args):&lt;br /&gt;    ws = NetWorkSpace('kh_outlook', serverHost='bvt-dc00133', useUse=True)&lt;br /&gt;    ws.store('notify', (args[1],args[2]))&lt;br /&gt;&lt;br /&gt;if __name__=="__main__":&lt;br /&gt;    main(sys.argv)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The script grabs the NetWorkSpace 'kh_outlook', stores to the name 'notify' a tuple for the two arguments, and then exits.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;On my Mac, I run a 'server' that hangs around, watching the NetWorkSpace of 'kh_outlook', fetching 'notify', and passing the two strings from the tuple to &lt;a href="http://growl.info/"&gt;Growl&lt;/a&gt;, using growlnotify:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;# outlook_server.py&lt;br /&gt;import os&lt;br /&gt;from nws.client import NetWorkSpace&lt;br /&gt;&lt;br /&gt;print "Starting server..."&lt;br /&gt;ws = NetWorkSpace('kh_outlook', serverHost='bvt-dc00133', persistent=True)&lt;br /&gt;try:&lt;br /&gt;    while 1:&lt;br /&gt;        message = ws.fetch('notify')&lt;br /&gt;        cl = "growlnotify -s -a mail.app -m \"" + message[1] + "\" -t " + message[0]&lt;br /&gt;        os.system(cl)&lt;br /&gt;except KeyboardInterrupt:&lt;br /&gt;    print 'shutting down gracefully.'&lt;br /&gt;&lt;br /&gt;print 'Exiting.'&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I get &lt;a href="http://growl.info/"&gt;Growl&lt;/a&gt; messages for each email or reminder, titled ('-t' option) with either 'Email' or 'Reminder' respectively, and I set those messages sticky with the '-s' option so I won't miss them if I'm away from my Mac.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-1228951388122485923?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/1228951388122485923/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=1228951388122485923' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/1228951388122485923'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/1228951388122485923'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2007/08/using-networkspaces-with-python.html' title='Using NetWorkSpaces with Python'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6706792260056841897.post-8245518881658759680</id><published>2007-08-13T11:39:00.000-07:00</published><updated>2007-08-15T22:27:32.964-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>Python Intro</title><content type='html'>Gave a short talk at the Portland &lt;a href="http://www.cocoaheads.org/us/BeavertonOregon/index.html"&gt;Cocoaheads&lt;/a&gt; meeting last Wednesday, Aug. 8th.  I basically wanted to highlight the bits of Python that I wish I had known before I dove in.  Here's the code I used to copy and paste into an interactive Python session:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;#!/usr/local/bin/python&lt;br /&gt;&lt;br /&gt;# indentation&lt;br /&gt;a = 1&lt;br /&gt;if (a == 1):&lt;br /&gt;    print a&lt;br /&gt;else:&lt;br /&gt;    print "a != 1"&lt;br /&gt;&lt;br /&gt;# if statement&lt;br /&gt;a = 3&lt;br /&gt;if a &gt; 0:&lt;br /&gt;    print 'greater'&lt;br /&gt;elif a == 0:&lt;br /&gt;    print 'equal'&lt;br /&gt;else:&lt;br /&gt;    print 'less'&lt;br /&gt;&lt;br /&gt;# while loops&lt;br /&gt;a = 3&lt;br /&gt;while a &gt; 0:&lt;br /&gt;    print "a = %d"%a&lt;br /&gt;    a -= 1&lt;br /&gt;&lt;br /&gt;#functions&lt;br /&gt;def hello(who):&lt;br /&gt;    print "Hello, " + who&lt;br /&gt;&lt;br /&gt;hello("world")&lt;br /&gt;&lt;br /&gt;# strings&lt;br /&gt;def hello(who):&lt;br /&gt;    return "Hello, " + who&lt;br /&gt;s = hello("world")&lt;br /&gt;print "s = %s"%s&lt;br /&gt;print s[0:5]&lt;br /&gt;print len(s[0:5])&lt;br /&gt;print s.upper()&lt;br /&gt;&lt;br /&gt;# lists&lt;br /&gt;l = [ 'a', 'b', 'c', 1, 2, 3 ]&lt;br /&gt;print l&lt;br /&gt;# third element&lt;br /&gt;print l[2]&lt;br /&gt;# third, fourth, and fifth elements&lt;br /&gt;print l[2:4]&lt;br /&gt;# last element&lt;br /&gt;print l[-1]&lt;br /&gt;# append&lt;br /&gt;l.append('snake')&lt;br /&gt;print l&lt;br /&gt;&lt;br /&gt;# for loops&lt;br /&gt;for i in l:&lt;br /&gt;    print i&lt;br /&gt;&lt;br /&gt;# dictionary&lt;br /&gt;d = {'alpha': 1, 'beta':2, 'gamma':3}&lt;br /&gt;d['delta'] = 4&lt;br /&gt;print d&lt;br /&gt;print d['gamma']&lt;br /&gt;del d['gamma']&lt;br /&gt;d.keys()&lt;br /&gt;if d.has_key('gamma'):&lt;br /&gt;    print 'has gamma'&lt;br /&gt;else:&lt;br /&gt;    print 'does not have gamma'&lt;br /&gt;for k,v in d.iteritems():&lt;br /&gt;    print "k = ",k&lt;br /&gt;    print "v = ",v&lt;br /&gt;&lt;br /&gt;# sets&lt;br /&gt;s1 = set()&lt;br /&gt;for x in 'aabbbccccdddddefffffff':&lt;br /&gt;    s1.add(x)&lt;br /&gt;print 'set s1 = ',s1&lt;br /&gt;&lt;br /&gt;# dir() function&lt;br /&gt;# dir(s)&lt;br /&gt;&lt;br /&gt;# help function&lt;br /&gt;import platform&lt;br /&gt;#help(platform)&lt;br /&gt;platform.processor()&lt;br /&gt;&lt;br /&gt;# using pyobjc&lt;br /&gt;#&lt;br /&gt;from Foundation import *&lt;br /&gt;d1 = NSMutableDictionary.dictionary()&lt;br /&gt;print isinstance(d, dict)&lt;br /&gt;print type(d)&lt;br /&gt;print isinstance(d1, dict)&lt;br /&gt;print type(d1)&lt;br /&gt;print isinstance(d1, NSMutableDictionary)&lt;br /&gt;d1.setObject_forKey_(42, 'key2')&lt;br /&gt;d1['key1'] = 'hello'&lt;br /&gt;print d&lt;br /&gt;print d1&lt;br /&gt;&lt;br /&gt;# addressbook example&lt;br /&gt;import AddressBook&lt;br /&gt;book = AddressBook.ABAddressBook.sharedAddressBook()&lt;br /&gt;b = book.people()&lt;br /&gt;print "Number of people in addressboo is ",len(b)&lt;br /&gt;print b[1].valueForProperty_(AddressBook.kABLastNameProperty)&lt;br /&gt;print type(b)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Editors:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.barebones.com/products/textwrangler/"&gt;TextWrangler&lt;/a&gt; (simple, easy and free, similar editing keys to xcode)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.activestate.com/Products/komodo_edit/"&gt;Komodo Edit&lt;/a&gt; (code checking, code folding)&lt;/li&gt;&lt;li&gt;&lt;a href="http://wingware.com/"&gt;WingIDE&lt;/a&gt; (debugging, x11)&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6706792260056841897-8245518881658759680?l=seventhkevinonearth.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://seventhkevinonearth.blogspot.com/feeds/8245518881658759680/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6706792260056841897&amp;postID=8245518881658759680' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/8245518881658759680'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6706792260056841897/posts/default/8245518881658759680'/><link rel='alternate' type='text/html' href='http://seventhkevinonearth.blogspot.com/2007/08/python-intro.html' title='Python Intro'/><author><name>seventhkevin</name><uri>http://www.blogger.com/profile/15091223225585729549</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry></feed>
