<?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>gljakal.com - blog</title>
	<atom:link href="http://www.gljakal.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.gljakal.com/blog</link>
	<description></description>
	<lastBuildDate>Sat, 14 Nov 2009 17:27:55 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Tales of a level editor</title>
		<link>http://www.gljakal.com/blog/2009/11/14/tales-of-a-level-editor/</link>
		<comments>http://www.gljakal.com/blog/2009/11/14/tales-of-a-level-editor/#comments</comments>
		<pubDate>Sat, 14 Nov 2009 17:27:55 +0000</pubDate>
		<dc:creator>glJakaL</dc:creator>
				<category><![CDATA[game]]></category>

		<guid isPermaLink="false">http://www.gljakal.com/blog/2009/11/14/tales-of-a-level-editor/</guid>
		<description><![CDATA[While having lua scripts as level files is very flexible and “hackable”, it’s really difficult to “see” the level just by looking at a series of instructions. 
At first, I used Inkscape, the open source vector drawing program, to create my levels.     It seemed like a perfectly good idea: Just like [...]]]></description>
			<content:encoded><![CDATA[<p>While having lua scripts as level files is very flexible and “hackable”, it’s really difficult to “see” the level just by looking at a series of instructions. </p>
<p>At first, I used <a href="http://www.inkscape.org/">Inkscape</a>, the open source vector drawing program, to create my levels.     <br />It seemed like a perfectly good idea: Just like my game engine, Inkscape uses shapes to define the drawing. Also, since SVG files are basically XML files, any XML loader can be used to read the content of the drawing and extrapolate a game level script. </p>
<p>The real benefit was, however, that I didn’t need to write a level editor, but just a simple program that converts .svg files in lua scripts. I estimated that writing a converter instead of a level editor would save me a lot of time.</p>
<p>I estimated wrong <img src='http://www.gljakal.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>The problems I had with this approach were many, but here are the best ones:</p>
<ol>
<li>I found it really difficult to come up with a series of consistent rules for setting shape properties. I started putting different object types in different layers, so the unmovable shapes would be in a layer named “unmovable”, the movable ones would be in the “movable” layer, the powerups in another one, the traps in yet another layer. </li>
<li>It’s almost impossible to align everything correctly in Inkscape </li>
<li>Inkscape doesn’t save the shape rotation in the SVG file, but only the transformation matrix. </li>
</ol>
<p>In the end, frustrated by my poor choice, I decided to finally <strong>write a level editor</strong>.     <br />It took me just a couple of evenings to create a decent c# application that does exactly what I want:</p>
<p><a href="http://www.gljakal.com/blog/wp-content/uploads/2009/11/editor_20090703.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Level editor screenshot" border="0" alt="Level editor screenshot" src="http://www.gljakal.com/blog/wp-content/uploads/2009/11/editor_20090703_thumb.png" width="386" height="288" /></a> </p>
<p>One of the best features is the ability to import the bitmap files I create as mockups and transform them in levels:</p>
<p><a href="http://www.gljakal.com/blog/wp-content/uploads/2009/11/lv_data1_5x.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="level data mockup" border="0" alt="level data mockup" src="http://www.gljakal.com/blog/wp-content/uploads/2009/11/lv_data1_5x_thumb.png" width="113" height="45" /></a></p>
</p>
<p>(click the picture for a 5x enlarged version) </p>
<p>I have to say that c#/.net 3.5 is a wonderful combination for creating applications quickly!</p>
<p><strong>Lesson learned:</strong> Sometimes it is better to create (and eat) <a href="http://en.wikipedia.org/wiki/Eating_one's_own_dog_food">your own dogfood</a> <img src='http://www.gljakal.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2009%2F11%2F14%2Ftales-of-a-level-editor%2F';
  addthis_title  = 'Tales+of+a+level+editor';
  addthis_pub    = 'gljakal';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>
]]></content:encoded>
			<wfw:commentRss>http://www.gljakal.com/blog/2009/11/14/tales-of-a-level-editor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Font rendering and the joys of C++</title>
		<link>http://www.gljakal.com/blog/2009/10/21/font-rendering-and-the-joys-of-c/</link>
		<comments>http://www.gljakal.com/blog/2009/10/21/font-rendering-and-the-joys-of-c/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 17:30:01 +0000</pubDate>
		<dc:creator>glJakaL</dc:creator>
				<category><![CDATA[game]]></category>

		<guid isPermaLink="false">http://www.gljakal.com/blog/2009/10/21/font-rendering-and-the-joys-of-c/</guid>
		<description><![CDATA[At the moment, all the menu text in the game is stored in separated images – one for every menu item. For example, this is the “New Game” button:

Of course, storing each menu item as a separate picture is not very efficient, so I decided to add text rendering capability to the game.
My first choice [...]]]></description>
			<content:encoded><![CDATA[<p>At the moment, all the menu text in the game is stored in separated images – one for every menu item. For example, this is the “New Game” button:</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="menu-newgame" border="0" alt="menu-newgame" src="http://www.gljakal.com/blog/wp-content/uploads/2009/10/menunewgame.png" width="256" height="64" /></p>
<p>Of course, storing each menu item as a separate picture is not very efficient, so I decided to add text rendering capability to the game.</p>
<p>My first choice was the <a href="http://oglft.sourceforge.net/">OGLFT</a> library. It’s a really easy to use and complete OpenGL text rendering library based on <a href="http://www.freetype.org/">FreeType</a>. I quickly added it to the project, and it worked perfectly, until I closed the application and got a nice “Access violation” exception <img src='http://www.gljakal.com/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  </p>
<p>After hours of tinkering, I finally found out that the error was related to the FreeType library. For some mysterious reason, just trying to open a font file with FreeType caused the erroneous behavior.</p>
<p>So, since I couldn’t use FreeType, I decided to create a text rendering class myself, based on the font texture approach.</p>
<p>In order to create suitable font maps, I modified <a href="http://www.gljakal.com/irrfontmaker/index.php">Irrlicht Font Maker</a> to create non-irrlicht-specific font maps. I also added a couple of options and the ability to export the control points as custom text&#160; or in a handy binary format:</p>
<p><a href="http://www.gljakal.com/blog/wp-content/uploads/2009/10/ifm_sshot_0.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="New Options in Irrlicht Font Maker" border="0" alt="New Options in Irrlicht Font Maker" src="http://www.gljakal.com/blog/wp-content/uploads/2009/10/ifm_sshot_0_thumb.png" width="226" height="159" /></a> <a href="http://www.gljakal.com/blog/wp-content/uploads/2009/10/ifm_sshot_1.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Text export" border="0" alt="Text export" src="http://www.gljakal.com/blog/wp-content/uploads/2009/10/ifm_sshot_1_thumb.png" width="200" height="159" /></a></p>
<p>But that’s only the first part of the story: once ready, I took my new text rendering class for a test drive and, with much surprise, I discovered that the program triggered the same exception it did before! <strong>OH MY!</strong></p>
<p>After an hour or so of debugging, I finally found out the root cause of the problem: a single call to <code>fopen</code> to read the font control points was enough to send the program to C++ hell.</p>
<p>I have since replaced all the standard C file IO functions (<code>fopen</code>, <code>fread</code>, …) with the modern C++ equivalent (<code>fstream</code>) and now the program ends with no errors.</p>
<p>In the end, I’m happy with the new font rendering method, as it gave me a chance to clean up and improve Irrlicht Font Maker, however once again I feel like I misplaced my foot in the minefield that is programming in C++ <img src='http://www.gljakal.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2009%2F10%2F21%2Ffont-rendering-and-the-joys-of-c%2F';
  addthis_title  = 'Font+rendering+and+the+joys+of+C%2B%2B';
  addthis_pub    = 'gljakal';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>
]]></content:encoded>
			<wfw:commentRss>http://www.gljakal.com/blog/2009/10/21/font-rendering-and-the-joys-of-c/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Getting rid of the Naming container in ASP.Net 2.0 &#8211; update</title>
		<link>http://www.gljakal.com/blog/2009/10/06/getting-rid-of-the-naming-container-in-asp-net-2-0-update/</link>
		<comments>http://www.gljakal.com/blog/2009/10/06/getting-rid-of-the-naming-container-in-asp-net-2-0-update/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 17:33:44 +0000</pubDate>
		<dc:creator>glJakaL</dc:creator>
				<category><![CDATA[Tips and tricks]]></category>
		<category><![CDATA[asp.net]]></category>
		<category><![CDATA[web design]]></category>

		<guid isPermaLink="false">http://www.gljakal.com/blog/?p=59</guid>
		<description><![CDATA[In my previous article, Getting rid of the Naming Container in asp.net 2.0, I explained a method to override the extended naming functionality provided by ASP.net in order to create client-side controls with better IDs.
I was however informed in the comments that by overriding the NamingContainer property the control loses the ability to read its [...]]]></description>
			<content:encoded><![CDATA[<p>In my previous article, <a href="http://www.gljakal.com/blog/2007/09/12/getting-rid-of-the-naming-container-in-aspnet-20/">Getting rid of the Naming Container in asp.net 2.0</a>, I explained a method to override the extended naming functionality provided by ASP.net in order to create client-side controls with better IDs.</p>
<p>I was however informed in the comments that by overriding the NamingContainer property the control loses the ability to read its value from the PostBack data.</p>
<p>Since the controls I developed were not meant to to be used in a postback scenario, this wasn’t a big problem for me.</p>
<p>Fast-forward a couple of years and here I am, wondering why post back does not work in one of my projects <img src='http://www.gljakal.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Anyway, I looked at the link provided by Alex, where <a href="http://www.west-wind.com/WebLog/ShowPost.aspx?id=4605">Rick Strahl talks about overriding the <code>ClientId</code> and the <code>UniqueId</code> properties</a> instead of <code>NamingContainer</code>.</p>
<p>In a standard web control, the two properties <code>ClientID</code> and <code>UniqueID</code> are mapped, respectively, to the <code>id</code> and <code>name</code> properties of the HTML control generated. </p>
<p>Since most (all? ) JS frameworks use the <code>id</code> property to access the varius HTML elements and the PostBack mechanism uses the <code>name</code> property, I think the “best of both worlds” solution is to only override the ClientId:</p>
</p>
<p>  <pre><pre class="csharpcode">&lt;p&gt;&lt;span class=&quot;kwrd&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;class&lt;/span&gt; NiceTextBox : System.Web.UI.WebControls.TextBox
{
&nbsp;&nbsp;&nbsp;&nbsp;&lt;span class=&quot;kwrd&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;bool&lt;/span&gt; UseNamingContainer { get; set; }
&lt;/p&gt;&lt;p&gt;&nbsp;&nbsp;&nbsp;&nbsp;&lt;br /&gt;&nbsp;&nbsp;&nbsp;&nbsp;&lt;span class=&quot;kwrd&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;override&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;string&lt;/span&gt; ClientID
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;get
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;span class=&quot;kwrd&quot;&gt;if&lt;/span&gt; (&lt;span class=&quot;kwrd&quot;&gt;this&lt;/span&gt;.UseNamingContainer)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;span class=&quot;kwrd&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;base&lt;/span&gt;.ClientID;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;span class=&quot;kwrd&quot;&gt;else&lt;/span&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;span class=&quot;kwrd&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;this&lt;/span&gt;.ID;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;}
}
&lt;/p&gt;</pre></pre></p>
<style type="text/css">
<p>.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }</style>
<p>Now our NiceTextBox works even during post-back scenarios <img src='http://www.gljakal.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  </p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2009%2F10%2F06%2Fgetting-rid-of-the-naming-container-in-asp-net-2-0-update%2F';
  addthis_title  = 'Getting+rid+of+the+Naming+container+in+ASP.Net+2.0+%26%238211%3B+update';
  addthis_pub    = 'gljakal';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>
]]></content:encoded>
			<wfw:commentRss>http://www.gljakal.com/blog/2009/10/06/getting-rid-of-the-naming-container-in-asp-net-2-0-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The game: baby steps</title>
		<link>http://www.gljakal.com/blog/2009/08/27/the-game-baby-steps/</link>
		<comments>http://www.gljakal.com/blog/2009/08/27/the-game-baby-steps/#comments</comments>
		<pubDate>Thu, 27 Aug 2009 11:16:41 +0000</pubDate>
		<dc:creator>glJakaL</dc:creator>
				<category><![CDATA[game]]></category>

		<guid isPermaLink="false">http://www.gljakal.com/blog/2009/08/27/the-game-baby-steps/</guid>
		<description><![CDATA[
Here is an early screenshot from the game I’m working on. Obviously all the programmer art you see is temporary and will be replaced by something better  

  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2009%2F08%2F27%2Fthe-game-baby-steps%2F';
  addthis_title  = 'The+game%3A+baby+steps';
  addthis_pub    = 'gljakal';

]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.gljakal.com/blog/wp-content/uploads/2009/08/pastedpic-01212009-132627.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="pastedpic_01212009_132627" border="0" alt="pastedpic_01212009_132627" src="http://www.gljakal.com/blog/wp-content/uploads/2009/08/pastedpic-01212009-132627-thumb.png" width="370" height="288" /></a></p>
<p>Here is an early screenshot from the game I’m working on. Obviously all the <em>programmer art</em> you see is temporary and will be replaced by something better <img src='http://www.gljakal.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2009%2F08%2F27%2Fthe-game-baby-steps%2F';
  addthis_title  = 'The+game%3A+baby+steps';
  addthis_pub    = 'gljakal';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>
]]></content:encoded>
			<wfw:commentRss>http://www.gljakal.com/blog/2009/08/27/the-game-baby-steps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Still alive + Working on a game&#8230;</title>
		<link>http://www.gljakal.com/blog/2009/07/28/still-alive-working-on-a-game/</link>
		<comments>http://www.gljakal.com/blog/2009/07/28/still-alive-working-on-a-game/#comments</comments>
		<pubDate>Tue, 28 Jul 2009 15:58:52 +0000</pubDate>
		<dc:creator>glJakaL</dc:creator>
				<category><![CDATA[game]]></category>
		<category><![CDATA[gljakal software]]></category>

		<guid isPermaLink="false">http://www.gljakal.com/blog/2009/07/28/still-alive-working-on-a-game/</guid>
		<description><![CDATA[…and I’m going to document the whole process on this blog  
It will be a 2D mario-style platformer, whith a twist: the game is set on a physically realistic world. More details to come soon!
I also have a very cool productivity (“serious”) application to release. Testing is complete, I just need to get the [...]]]></description>
			<content:encoded><![CDATA[<p>…and I’m going to document the whole process on this blog <img src='http://www.gljakal.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>It will be a 2D mario-style platformer, whith a twist: the game is set on a physically realistic world. More details to come soon!</p>
<p>I also have a very cool productivity (“serious”) application to release. Testing is complete, I just need to get the boring part done (creating setups, writing web pages…).</p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2009%2F07%2F28%2Fstill-alive-working-on-a-game%2F';
  addthis_title  = 'Still+alive+%2B+Working+on+a+game%26hellip%3B';
  addthis_pub    = 'gljakal';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>
]]></content:encoded>
			<wfw:commentRss>http://www.gljakal.com/blog/2009/07/28/still-alive-working-on-a-game/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Clock 3D Screensaver released</title>
		<link>http://www.gljakal.com/blog/2009/02/07/clock-3d-screensaver-released/</link>
		<comments>http://www.gljakal.com/blog/2009/02/07/clock-3d-screensaver-released/#comments</comments>
		<pubDate>Sat, 07 Feb 2009 18:48:17 +0000</pubDate>
		<dc:creator>glJakaL</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[gljakal software]]></category>

		<guid isPermaLink="false">http://www.gljakal.com/blog/2009/02/07/clock-3d-screensaver-released/</guid>
		<description><![CDATA[It&#8217;s finally out! Go get it!


  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2009%2F02%2F07%2Fclock-3d-screensaver-released%2F';
  addthis_title  = 'Clock+3D+Screensaver+released';
  addthis_pub    = 'gljakal';

]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s finally out! <a href="http://www.gljakal.com/clocksaver/index.php">Go get it!</a></p>
<p><a href="http://www.gljakal.com/clocksaver/index.php"><img src="http://www.gljakal.com/clocksaver/screen1_sm.jpg"></a></p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2009%2F02%2F07%2Fclock-3d-screensaver-released%2F';
  addthis_title  = 'Clock+3D+Screensaver+released';
  addthis_pub    = 'gljakal';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>
]]></content:encoded>
			<wfw:commentRss>http://www.gljakal.com/blog/2009/02/07/clock-3d-screensaver-released/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>gljakal&#8217;s ToDo 0.9.3 fix</title>
		<link>http://www.gljakal.com/blog/2008/01/22/gljakals-todo-093-fix/</link>
		<comments>http://www.gljakal.com/blog/2008/01/22/gljakals-todo-093-fix/#comments</comments>
		<pubDate>Tue, 22 Jan 2008 10:49:03 +0000</pubDate>
		<dc:creator>glJakaL</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[gljakal software]]></category>

		<guid isPermaLink="false">http://www.gljakal.com/blog/2008/01/22/gljakals-todo-093-fix/</guid>
		<description><![CDATA[I have updated gljakal's ToDo to fix a nasty bug that occurred when you tried to create a new todo list with the AdvancedStatus plugin disabled and the AutoBackup plugin enabled.]]></description>
			<content:encoded><![CDATA[<p>I have updated gljakal&#8217;s ToDo to fix a nasty bug that occurred when you tried to create a new to-do list with the AdvancedStatus plugin disabled and the AutoBackup plugin enabled.<br />
This was actually a kind of weird situation, since I always have both the plugins enabled all the time&#8230; Turns out that many ToDo users prefer to disable AdvancedStatus while leaving the backup feature enabled&#8230;.<br />
Anyway, thanks to the kind people who sent the error report! (yes, I <b>do</b> actually read them!)<br />
Also, if any of you happen to send an error report, please do include your email address. This way I can contact you once the problem is resolved. (And you won&#8217;t say &#8220;this program sucks!&#8221; <img src='http://www.gljakal.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  )</p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2008%2F01%2F22%2Fgljakals-todo-093-fix%2F';
  addthis_title  = 'gljakal%26%238217%3Bs+ToDo+0.9.3+fix';
  addthis_pub    = 'gljakal';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>
]]></content:encoded>
			<wfw:commentRss>http://www.gljakal.com/blog/2008/01/22/gljakals-todo-093-fix/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>New software &#8211; gljakal&#8217;s Sql Exporter</title>
		<link>http://www.gljakal.com/blog/2007/12/19/new-software-gljakals-sql-exporter/</link>
		<comments>http://www.gljakal.com/blog/2007/12/19/new-software-gljakals-sql-exporter/#comments</comments>
		<pubDate>Wed, 19 Dec 2007 08:54:28 +0000</pubDate>
		<dc:creator>glJakaL</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[asp.net]]></category>
		<category><![CDATA[gljakal software]]></category>

		<guid isPermaLink="false">http://www.gljakal.com/blog/2007/12/19/new-software-gljakals-sql-exporter/</guid>
		<description><![CDATA[Gljakal's Sql Exporter extracts tables, views, stored procedures and triggers from your database and saves them as individual text files.]]></description>
			<content:encoded><![CDATA[<p>You created a database for your application. You designed the perfect table structure, added some smart views and created the coolest stored procedures that make your application work like magic. </p>
<p>But now, you want to back them up together with the code of your program, using <a href="http://subversion.tigris.org/">subversion</a> or <acronym title="Concurrent Versions System">CVS</acronym>. Afterall, they are part of the application logic. </p>
<p>Better yet, you would like to automate the extraction procedure so that you only need to launch a batch file and your backup is done.</p>
<p>Gljakal&#8217;s Sql Exporter does just that: it extracts tables, views, stored procedures and triggers from your database and saves them as individual text files. </p>
<p>Used together with a source control software, you can have a precise idea of what changed between the various releases, just like you do with your applications&#8217; source code. </p>
<p><a href="http://www.gljakal.com/sqlexporter/index.php"><img src="http://www.gljakal.com/sqlexporter/conn.png" alt="gljakal's Sql Exporter" /></a></p>
<p>You can do that with the interface version (shown in the picture) as well as with the command line version, that you can automate to run whenever you want.</p>
<p>Plus, it&#8217;s a free download!</p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2007%2F12%2F19%2Fnew-software-gljakals-sql-exporter%2F';
  addthis_title  = 'New+software+%26%238211%3B+gljakal%26%238217%3Bs+Sql+Exporter';
  addthis_pub    = 'gljakal';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>
]]></content:encoded>
			<wfw:commentRss>http://www.gljakal.com/blog/2007/12/19/new-software-gljakals-sql-exporter/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>gljakal&#8217;s ToDo version 0.9.3</title>
		<link>http://www.gljakal.com/blog/2007/10/26/gljakals-todo-version-093/</link>
		<comments>http://www.gljakal.com/blog/2007/10/26/gljakals-todo-version-093/#comments</comments>
		<pubDate>Fri, 26 Oct 2007 16:36:22 +0000</pubDate>
		<dc:creator>glJakaL</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[gljakal software]]></category>

		<guid isPermaLink="false">http://www.gljakal.com/blog/2007/10/26/gljakals-todo-version-093/</guid>
		<description><![CDATA[Finally!
Today I am releasing the new, improved version of gljakal's ToDo:<br/>
New version highlights: ...]]></description>
			<content:encoded><![CDATA[<p>Finally!<br />
Today I am releasing the new, improved version of gljakal&#8217;s ToDo:<br/><br />
<a href="http://www.gljakal.com/todo"><br />
<img src='http://www.gljakal.com/blog/wp-content/uploads/2007/10/todo_093.png' alt='ToDo version 0.9.3' /><br />
</a><br />
New version highlights:</p>
<ul>
<li>
		<b>Stable, documented plugin support:</b><br />
		Now adapting ToDo to your needs is easier than ever. Plugin support is great for custom exports and imports, intranet integration, even synchronization with online services!
	</li>
<li>
		<b>New, nicer user interface,</b> with <a href="http://www.famfamfam.com">famfamfam</a>&#8217;s famous icons.
	</li>
<li>
		<b>AdvancedStatus plugin</b><br />
		Now you can set a task as 50% (or any %) complete!
	</li>
<li>
		<b>Copy &amp; paste inside the details window</b><br />
		You could already do this with CTRL-C and CTRL-V, but now there are also cut-copy-paste buttons inside the details window
	</li>
<li>
		<b>Help file</b><br />
		Now you can press F1 inside todo and actually see something <img src='http://www.gljakal.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
	</li>
<li>
		All the new features in the <a title="gljakal's todo 0.9.2" href="http://www.gljakal.com/blog/2006/10/09/gljakals-to-do-092-preview-release/">preview release</a>
	</li>
</ul>
<p>Comments &amp; critics are welcome!</p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2007%2F10%2F26%2Fgljakals-todo-version-093%2F';
  addthis_title  = 'gljakal%26%238217%3Bs+ToDo+version+0.9.3';
  addthis_pub    = 'gljakal';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>
]]></content:encoded>
			<wfw:commentRss>http://www.gljakal.com/blog/2007/10/26/gljakals-todo-version-093/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Free Burma Day</title>
		<link>http://www.gljakal.com/blog/2007/10/04/free-burma-day/</link>
		<comments>http://www.gljakal.com/blog/2007/10/04/free-burma-day/#comments</comments>
		<pubDate>Thu, 04 Oct 2007 07:34:08 +0000</pubDate>
		<dc:creator>glJakaL</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.gljakal.com/blog/2007/10/04/free-burma-day/</guid>
		<description><![CDATA[
More information at http://www.free-burma.org.

  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2007%2F10%2F04%2Ffree-burma-day%2F';
  addthis_title  = 'Free+Burma+Day';
  addthis_pub    = 'gljakal';

]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.free-burma.org" target="_blank"><img src="http://freeburma.s3.amazonaws.com/free_burma_05.gif" alt="Free Burma!" width="434" height="165" border="0" /></a><br />
More information at <a href="http://www.free-burma.org">http://www.free-burma.org</a>.</p>
<script type="text/javascript">
  addthis_url    = 'http%3A%2F%2Fwww.gljakal.com%2Fblog%2F2007%2F10%2F04%2Ffree-burma-day%2F';
  addthis_title  = 'Free+Burma+Day';
  addthis_pub    = 'gljakal';
</script><script type="text/javascript" src="http://s7.addthis.com/js/addthis_widget.php?v=12" ></script>
]]></content:encoded>
			<wfw:commentRss>http://www.gljakal.com/blog/2007/10/04/free-burma-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
