<?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>Kromosome Smart Software Solutions &#187; Blog</title>
	<atom:link href="http://www.kromosome.net/category/blog/feed" rel="self" type="application/rss+xml" />
	<link>http://www.kromosome.net</link>
	<description>We enable small business to achieve and maintain a competitive edge through the development and implementation of enterprise, internet and intranet software applications.</description>
	<lastBuildDate>Sun, 05 Feb 2012 05:23:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Android Developer Lab &#8211; Melbourne</title>
		<link>http://www.kromosome.net/melbourne-android-developer-lab</link>
		<comments>http://www.kromosome.net/melbourne-android-developer-lab#comments</comments>
		<pubDate>Tue, 31 Jan 2012 04:56:33 +0000</pubDate>
		<dc:creator>Mat Garland</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.kromosome.net/?p=1359</guid>
		<description><![CDATA[I have just attended the 2012 Melbourne Android Developer Lab hosted at the Telstra Conference Centre at 242 Exhibition Street in Melbourne presented by Anirudh Dewani and Ryosuke Matsuuchi. The lab was very informative and educational. Their talks centered around the Google License Verification Library which enables developers to tamper proof applications in an effort [...]]]></description>
			<content:encoded><![CDATA[<p>I have just attended the 2012 Melbourne Android Developer Lab hosted at the Telstra Conference Centre at 242 Exhibition Street in Melbourne presented by Anirudh Dewani and Ryosuke Matsuuchi.</p>
<p>The lab was very informative and educational. Their talks centered around the Google License Verification Library which enables developers to tamper proof applications in an effort to make reverse engineering of applications much more difficult.</p>
<p>Other information covered was the backward compatibility of features released in Android 4.0, Ice Cream Sandwich, which are able to be back ported using the <a href="http://developer.android.com/sdk/compatibility-library.html">Android Support Package</a> so that developers don&#8217;t have to worry so much about version compatibility.</p>
<p>The new WiFi Direct standard was covered and the appropriate API&#8217;s required to access these communication features. Android Beam was also covered with it&#8217;s associated API&#8217;s. Overall this was an informative presentation from Google and I hope to be included in future labs.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kromosome.net/melbourne-android-developer-lab/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Configuring an Apache Virtual Host on Ubuntu</title>
		<link>http://www.kromosome.net/apache-virtual-host-on-ubuntu</link>
		<comments>http://www.kromosome.net/apache-virtual-host-on-ubuntu#comments</comments>
		<pubDate>Wed, 18 Jan 2012 04:49:45 +0000</pubDate>
		<dc:creator>Mat Garland</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[virtual host]]></category>

		<guid isPermaLink="false">http://www.kromosome.net/?p=1349</guid>
		<description><![CDATA[A virtual host is a software configuration which allows you to host multiple websites on a single computer which is particularly useful for development environments. Setting up a virtual host even allows you to reference your site by name within the browser rather than continuously referring to the http://localhost/ path. On Ubuntu, as opposed to [...]]]></description>
			<content:encoded><![CDATA[<p>A virtual host is a software configuration which allows you to host multiple websites on a single computer which is particularly useful for development environments. Setting up a virtual host even allows you to reference your site by name within the browser rather than continuously referring to the http://localhost/ path.</p>
<p>On Ubuntu, as opposed to Windows, each virtual host is configured in a separate file within the /etc/apache2/sites-available/ directory. Typical virtual host boilerplate would look similar to below (For more detailed specifications please refer to the <a href="http://httpd.apache.org/docs/2.0/vhosts/">Apache Virtual Host Documentation</a>):</p>
<p>&lt;VirtualHost *></p>
<p>    ServerAdmin webmaster@localhost<br />
    ServerName dev.kromosome.net<br />
    ServerAlias www.dev.kromosome.net<br />
    DocumentRoot /var/www/dev.kromosome.net/public</p>
<p>    &lt;Directory /><br />
            Options FollowSymlinks<br />
        AllowOverride All<br />
    &lt;/Directory><br />
    &lt;Directory /var/www/dev.kromosome.net/public/><br />
        Options Indexes FollowSymLinks MultiViews<br />
        AllowOverride All<br />
        Order allow, deny<br />
        allow from all<br />
    &lt;/Directory><br />
    &lt;FilesMatch &#8220;\.(htaccess|htpasswd|ini|phps|fla|psd|log|sh|svn|git)$&#8221;><br />
        Order Allow,Deny<br />
        Deny from all<br />
    &lt;/FilesMatch><br />
    ErrorLog /var/www/dev.kromosome.net/logs/error.log<br />
    LogLevel warn<br />
    CustomLog /var/log/apache2/access.log combined<br />
&lt;/VirtualHost></p>
<p>If I were to save the above boilerplate code into a file called dev.kromosome.net inside the /etc/apache2/sites-available/ directory I have effectively defined a virtual host. To enable access to the site I need to issue the following command:</p>
<p>    %>sudo a2ensite dev.kromosome.net</p>
<p>At this point, any attempt to access dev.kromosome.net will try to resolve the domain so we must now instruct the browser to resolve the domain locally. To do this, open the /etc/hosts file and add the following line to the file and save it:</p>
<p>    127.0.0.1    dev.kromosome.net</p>
<p>If you have previously tried to access your site through the browser you will need to clear your browser cache before the domain name will attempt to resolve the address locally. You have now completed configuring an Apache virtual host.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kromosome.net/apache-virtual-host-on-ubuntu/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android adb pull access: permission denied</title>
		<link>http://www.kromosome.net/android-adb-pull-permisssion-denied</link>
		<comments>http://www.kromosome.net/android-adb-pull-permisssion-denied#comments</comments>
		<pubDate>Thu, 23 Jun 2011 06:25:33 +0000</pubDate>
		<dc:creator>Mat Garland</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.kromosome.net/?p=1305</guid>
		<description><![CDATA[As a work-around for the adb permission denied issue when trying to copy a file from the Android device&#8217;s shell to your local machine, exit from the adb shell and use the following command to perform a file copy: adb pull sdcard/[folder-name]/file.txt C:\Users\your-user-name\Desktop\filename.txt]]></description>
			<content:encoded><![CDATA[<p>As a work-around for the adb permission denied issue when trying to copy a file from the Android device&#8217;s shell to your local machine, exit from the adb shell and use the following command to perform a file copy:</p>
<p>adb pull sdcard/[folder-name]/file.txt  C:\Users\your-user-name\Desktop\filename.txt</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kromosome.net/android-adb-pull-permisssion-denied/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android error, &#8220;must override a superclass method&#8221;</title>
		<link>http://www.kromosome.net/android-error-must-override-a-superclass-method</link>
		<comments>http://www.kromosome.net/android-error-must-override-a-superclass-method#comments</comments>
		<pubDate>Tue, 21 Jun 2011 02:02:04 +0000</pubDate>
		<dc:creator>Mat Garland</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.kromosome.net/?p=1294</guid>
		<description><![CDATA[When importing an Android project into Eclipse, if an error is encountered indicating that you must Override a superclass method, it may be that your codebase is implementing methods or functions that are not present in the target API level. The Eclipse compiler defaults to the platform level 1.5, to modify this, go to your [...]]]></description>
			<content:encoded><![CDATA[<p>When importing an Android project into Eclipse, if an error is encountered indicating that you must Override a superclass method, it may be that your codebase is implementing methods or functions that are not present in the target API level. The Eclipse compiler defaults to the platform level 1.5, to modify this, go to your project / IDE preferences and set the java compiler level to an API level that includes the function calls that you require.</p>
<p>You will be asked to rebuild the project based upon the compiler settings that you specify, after which you should see the error disappear.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kromosome.net/android-error-must-override-a-superclass-method/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MDArrayEngine v2.1 Released</title>
		<link>http://www.kromosome.net/mdarrayengine-v2-1-released</link>
		<comments>http://www.kromosome.net/mdarrayengine-v2-1-released#comments</comments>
		<pubDate>Sun, 24 Apr 2011 10:00:30 +0000</pubDate>
		<dc:creator>Mat Garland</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Java Script]]></category>

		<guid isPermaLink="false">http://www.kromosome.net/?p=1280</guid>
		<description><![CDATA[MDArrayEngine, a free to use Javascript class for multi dimensional array creation and manipulation has been re-written and released as MDArrayEngine version 2.1. The new version corrects a defect in the init() function that created an extra unnecessary array dimension. A new function, getJSON() has also been added, this function converts the array data to [...]]]></description>
			<content:encoded><![CDATA[<p>MDArrayEngine, a free to use Javascript class for multi dimensional array creation and manipulation has been re-written and released as MDArrayEngine version 2.1.</p>
<p>The new version corrects a defect in the init() function that created an extra unnecessary array dimension. A new function, getJSON() has also been added, this function converts the array data to a JSON data type.<br />
<span id="more-1280"></span></p>
<p>You can download KROMOSOME.MDArrayEngine from <a href="http://www.jsclasses.org/package/62-JavaScript-Manipulate-multi-dimensional-arrays.html" target="_blank">jsclasses.org</a> or from <a href="http://www.kromosome.net/javascript-multi-dimensional-array-class">this site</a>.</p>
<p>As MDArrayEngine is a dual MIT &#038; GPL license, please feel free to modify or extend the class. If you feel that others could benefit from your work, please include a message <a href="http://www.kromosome.net/mdarrayengine">here</a> and your additions to the base class will be included as appropriate.</p>
<p>An example of how the script can be used is located <a href="http://www.kromosome.net/md_array_engine/jsTest.html">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kromosome.net/mdarrayengine-v2-1-released/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MDArrayEngine v.2 Released</title>
		<link>http://www.kromosome.net/mdarrayengine-v-2-released</link>
		<comments>http://www.kromosome.net/mdarrayengine-v-2-released#comments</comments>
		<pubDate>Wed, 20 Apr 2011 09:14:19 +0000</pubDate>
		<dc:creator>Mat Garland</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Java Script]]></category>

		<guid isPermaLink="false">http://www.kromosome.net/?p=1265</guid>
		<description><![CDATA[MDArrayEngine, a free to use Javascript class for multi dimensional array creation and manipulation has been re-written and released as MDArrayEngine version 2, the class has been re-written to ensure OO principles apply and to ensure correct name spacing, the class name, as per name spacing guidelines is now KROMOSOME.MDArrayEngine. You can download KROMOSOME.MDArrayEngine from [...]]]></description>
			<content:encoded><![CDATA[<p>MDArrayEngine, a free to use Javascript class for multi dimensional array creation and manipulation has been re-written and released as MDArrayEngine version 2, the class has been re-written to ensure OO principles apply and to ensure correct name spacing, the class name, as per name spacing guidelines is now KROMOSOME.MDArrayEngine.<span id="more-1265"></span></p>
<p>You can download KROMOSOME.MDArrayEngine from <a href="http://www.jsclasses.org/package/62-JavaScript-Manipulate-multi-dimensional-arrays.html" target="_blank">jsclasses.org</a> or from <a href="http://www.kromosome.net/javascript-multi-dimensional-array-class">this site</a>.</p>
<p>As MDArrayEngine is a dual MIT &#038; GPL license, please feel free to modify or extend the class. If you feel that others could benefit from your work, please include a message <a href="http://www.kromosome.net/mdarrayengine">here</a> and your additions to the base class will be included as appropriate.</p>
<p>An example of how the script can be used is located <a href="http://www.kromosome.net/md_array_engine/jsTest.html">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kromosome.net/mdarrayengine-v-2-released/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse / Android Emulator Orientation Change</title>
		<link>http://www.kromosome.net/eclipse-android-emulator-orientation-change</link>
		<comments>http://www.kromosome.net/eclipse-android-emulator-orientation-change#comments</comments>
		<pubDate>Fri, 11 Mar 2011 00:34:05 +0000</pubDate>
		<dc:creator>Mat Garland</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.kromosome.net/?p=1236</guid>
		<description><![CDATA[You can simulate orientation change and test your code and layouts under both portrait and landscape orientations inside the emulator. To simulate orientation change on the Android emulator when debugging your Java code in a Mac environment press, Ctrl + fn + F11. When in a Windows environment press, Ctrl-F11.]]></description>
			<content:encoded><![CDATA[<p>You can simulate orientation change and test your code and layouts under both portrait and landscape orientations inside the emulator.<span id="more-1236"></span></p>
<p>To simulate orientation change on the Android emulator when debugging your Java code in a Mac environment press, Ctrl + fn + F11.</p>
<p>When in a Windows environment press, Ctrl-F11.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kromosome.net/eclipse-android-emulator-orientation-change/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>mdArrayEngine: Javascript Multi Dimension Array Class</title>
		<link>http://www.kromosome.net/mdarrayengine</link>
		<comments>http://www.kromosome.net/mdarrayengine#comments</comments>
		<pubDate>Wed, 28 Jul 2010 10:38:52 +0000</pubDate>
		<dc:creator>Mat Garland</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Java Script]]></category>

		<guid isPermaLink="false">http://www.kromosome.net/?p=1123</guid>
		<description><![CDATA[mdArrayEngine is a free to use javascript class simplifying multi dimension array creation and manipulation. mdArrayEngine v. 1.0 has just been released to include an array arithmetic function, for more details on mdArrayEngine, visit the mdArrayEngine project page.]]></description>
			<content:encoded><![CDATA[<p><strong>mdArrayEngine is a free to use javascript class simplifying multi dimension array creation and manipulation.</strong><span id="more-1123"></span></p>
<p>mdArrayEngine v. 1.0 has just been released to include an array arithmetic function, for more details on mdArrayEngine, visit the <a href="http://www.kromosome.net/javascript-multi-dimensional-array-class">mdArrayEngine project page</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kromosome.net/mdarrayengine/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>jQuery UI radio button array, default value selection</title>
		<link>http://www.kromosome.net/jquery-ui-radio-button-array-default-value-selection</link>
		<comments>http://www.kromosome.net/jquery-ui-radio-button-array-default-value-selection#comments</comments>
		<pubDate>Mon, 12 Jul 2010 13:01:48 +0000</pubDate>
		<dc:creator>Mat Garland</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Java Script]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[button("refresh")]]></category>
		<category><![CDATA[change radio selected value]]></category>
		<category><![CDATA[jQuery radio button]]></category>
		<category><![CDATA[radio button selection]]></category>
		<category><![CDATA[radio default select value]]></category>

		<guid isPermaLink="false">http://www.kromosome.net/?p=1054</guid>
		<description><![CDATA[How to set a default value for a jQuery UI radio button Consider a div with a radio button array created with the following HTML code 1 2 3 4 &#60;div&#62; &#60;input type=&#34;radio&#34; id=&#34;active_true&#34; name=&#34;active[]&#34; value=&#34;active&#34; /&#62;&#60;label for=&#34;active_true&#34;&#62;Active&#60;/label&#62; &#60;input type=&#34;radio&#34; id=&#34;active_false&#34; name=&#34;active[]&#34; value=&#34;inactive&#34; /&#62;&#60;label for=&#34;active_false&#34;&#62;Inactive&#60;/label&#62; &#60;/div&#62; Below you will find example jQuery code to select [...]]]></description>
			<content:encoded><![CDATA[<p><strong>How to set a default value for a jQuery UI radio button</strong><br />
<span id="more-1054"></span><br />
Consider a div with a radio button array created with the following HTML code</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code"><pre class="html" style="font-family:monospace;">&lt;div&gt;
    &lt;input type=&quot;radio&quot; id=&quot;active_true&quot; name=&quot;active[]&quot; value=&quot;active&quot; /&gt;&lt;label for=&quot;active_true&quot;&gt;Active&lt;/label&gt; 
    &lt;input type=&quot;radio&quot; id=&quot;active_false&quot; name=&quot;active[]&quot; value=&quot;inactive&quot; /&gt;&lt;label for=&quot;active_false&quot;&gt;Inactive&lt;/label&gt;
&lt;/div&gt;</pre></td></tr></table></div>

<p>
Below you will find example jQuery code to select a default value for a radio button<br />
</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">$<span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
    <span style="color: #006600; font-style: italic;">//Firstly, upon document ready we call the jQuery .buttonset() function on the containing div</span>
    <span style="color: #006600; font-style: italic;">//to style the jQuery UI element, like so:</span>
    $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#activations'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">buttonset</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #006600; font-style: italic;">//we will set a variable to test against but generally this will be a program input</span>
    <span style="color: #006600; font-style: italic;">//in our case, we must test against the radio button's value being 'active' or 'inactive'</span>
    <span style="color: #003366; font-weight: bold;">var</span> someValue <span style="color: #339933;">=</span> <span style="color: #3366CC;">'active'</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #006600; font-style: italic;">//next, we'll get a reference to the button array</span>
    <span style="color: #003366; font-weight: bold;">var</span> btnActive <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'[name=active[]]'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    $<span style="color: #009900;">&#40;</span>btnActive<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">each</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> 
    <span style="color: #009900;">&#123;</span>
        <span style="color: #006600; font-style: italic;">// test the value of the radio against our variable</span>
        <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span> $<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">val</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> someValue <span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            $<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'checked'</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            $<span style="color: #009900;">&#40;</span>btnActive<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">button</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;refresh&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
    <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>
The most important aspect of this code is the call to the .button(&#8220;refresh&#8221;) method. Without this, you will not see any visible change to the UI radio button&#8217;s selected state.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kromosome.net/jquery-ui-radio-button-array-default-value-selection/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WordPress {css} designerGrid Example</title>
		<link>http://www.kromosome.net/test</link>
		<comments>http://www.kromosome.net/test#comments</comments>
		<pubDate>Fri, 11 Jun 2010 16:36:26 +0000</pubDate>
		<dc:creator>Mat Garland</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[CSS Tips]]></category>
		<category><![CDATA[Java Script]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://www.kromosome.net/?p=1006</guid>
		<description><![CDATA[A {css} designerGrid WordPress implementation example Don&#8217;t worry, there is nothing wrong with this site, what you are looking at is an example page using {css} designerGrid in WordPress created by Kromosome Industries Pty. Ltd. ;(function($){$.fn.designerGrid=function(options){var defaults={docWidth:$(document).width(),docHeight:$(document).height(),opacity:0.75,centred:true,colCount:2,colColor:'#FF3',colWidth:400,col_Z_index:-9999,grid_Z_index:-9999,colHeight:$(document).height(),gutter:20,marginLeft:100,marginTop:20};var opts=$.extend(defaults,options);return this.each(function(){configureLayout(opts);configureEvents(opts);var context=initCanvas('designer_grid');setupGrid(context,opts);setupRulers(context,opts);setStartPos(opts);context=initCanvas('column_layout');drawColumns(context,opts);drawIndicators(context,opts);});function configureLayout(opts) {$('body').append('');$('#designer_grid').css({'left':'0.5px'}).css({'top':'0.5px'}).css({'position':'absolute'}).css({'overflow':'hidden'}).css({'z-index':''+opts.grid_Z_index+''}).css({'filter':'alpha(opacity(='+opts.opacity*100+')'}).css({'-moz-opacity':''+opts.opacity+''}).css({'-khtml-opacity':''+opts.opacity+''}).css({'opacity':''+opts.opacity+''});$('body').append('');$('#column_layout').css({'left':'0.5px'}).css({'top':'0.5px'}).css({'position':'absolute'}).css({'overflow':'hidden'}).css({'z-index':''+opts.col_Z_index+''}).css({'filter':'alpha(opacity(='+opts.opacity*100+')'}).css({'-moz-opacity':''+opts.opacity+''}).css({'-khtml-opacity':''+opts.opacity+''}).css({'opacity':''+opts.opacity+''});$('body').append('');$('#coords').css({'left':'0.5px'}).css({'top':'0.5px'}).css({'position':'absolute'}).css({'overflow':'hidden'}).css({'z-index':'-10000'}).css({'filter':'alpha(opacity(=100)'}).css({'-moz-opacity':'1.0'}).css({'-khtml-opacity':'1.0'}).css({'opacity':'1.0'});$('body').append('{css}designerGrid v: 1.7.5]]></description>
			<content:encoded><![CDATA[<p><strong>A {css} designerGrid WordPress implementation example</strong><span id="more-1006"></span><br />
<br />
Don&#8217;t worry, there is nothing wrong with this site, what you are looking at is an example page using {css} designerGrid in WordPress created by Kromosome Industries Pty. Ltd.</p>
<p><script type="text/javascript"> 

;(function($){$.fn.designerGrid=function(options){var defaults={docWidth:$(document).width(),docHeight:$(document).height(),opacity:0.75,centred:true,colCount:2,colColor:'#FF3',colWidth:400,col_Z_index:-9999,grid_Z_index:-9999,colHeight:$(document).height(),gutter:20,marginLeft:100,marginTop:20};var opts=$.extend(defaults,options);return this.each(function(){configureLayout(opts);configureEvents(opts);var context=initCanvas('designer_grid');setupGrid(context,opts);setupRulers(context,opts);setStartPos(opts);context=initCanvas('column_layout');drawColumns(context,opts);drawIndicators(context,opts);});function configureLayout(opts)
{$('body').append('<canvas id="designer_grid" width= '+opts.docWidth+' height= '+opts.docHeight+'></canvas>');$('#designer_grid').css({'left':'0.5px'}).css({'top':'0.5px'}).css({'position':'absolute'}).css({'overflow':'hidden'}).css({'z-index':''+opts.grid_Z_index+''}).css({'filter':'alpha(opacity(='+opts.opacity*100+')'}).css({'-moz-opacity':''+opts.opacity+''}).css({'-khtml-opacity':''+opts.opacity+''}).css({'opacity':''+opts.opacity+''});$('body').append('<canvas id="column_layout" width= '+opts.docWidth+' height= '+opts.docHeight+'></canvas>');$('#column_layout').css({'left':'0.5px'}).css({'top':'0.5px'}).css({'position':'absolute'}).css({'overflow':'hidden'}).css({'z-index':''+opts.col_Z_index+''}).css({'filter':'alpha(opacity(='+opts.opacity*100+')'}).css({'-moz-opacity':''+opts.opacity+''}).css({'-khtml-opacity':''+opts.opacity+''}).css({'opacity':''+opts.opacity+''});$('body').append('<canvas id="coords" width= '+opts.docWidth+' height= '+opts.docHeight+'></canvas>');$('#coords').css({'left':'0.5px'}).css({'top':'0.5px'}).css({'position':'absolute'}).css({'overflow':'hidden'}).css({'z-index':'-10000'}).css({'filter':'alpha(opacity(=100)'}).css({'-moz-opacity':'1.0'}).css({'-khtml-opacity':'1.0'}).css({'opacity':'1.0'});$('body').append('<div id="designer_grid_status" align="center" width="400px" height="80px"><div id="designer_title" width="25px" height="40px">{css}designerGrid v: 1.7.5</div<br />W: '+opts.docWidth+'px | H: '+opts.docHeight+'px<div id="designer_grid_control" width="25px" height="40px">TOGGLE GRID [ON]/[OFF]</div><div id="designer_col_control" width="25px" height="40px">TOGGLE COLUMNS [ON]/[OFF]</div><div id="designer_index_control" width="25px" height="40px">TOGGLE GRID-Z-INDEX [+]/[-]</div></div>');$('#designer_grid_status').css({'position':'absolute'}).css({'background-color':'#A0CFEC'}).css({'padding':'5px'}).css({'font':'bold 10px sans-serif'}).css({'display':'block'}).css({'left':opts.docWidth-190}).css({'top':opts.docHeight-120}).css({'z-index':'99999'}).css({'border':'outset'}).css({'border-color':'#717D7D'});$('#designer_title').css({'background-color':'#717D7D'}).css({'margin-top':'5px'}).css({'padding-left':'5px'}).css({'padding-right':'5px'}).css({'font-size':'1.15em'}).css({'font-weight':'bold'});$('#designer_grid_control').css({'cursor':'pointer'}).css({'background-color':'#717D7D'}).css({'margin-top':'5px'}).css({'padding-left':'5px'}).css({'padding-right':'5px'});$('#designer_col_control').css({'cursor':'pointer'}).css({'background-color':'#717D7D'}).css({'margin-top':'5px'}).css({'padding-left':'5px'}).css({'padding-right':'5px'});$('#designer_index_control').css({'cursor':'pointer'}).css({'background-color':'#717D7D'}).css({'margin-top':'5px'}).css({'padding-left':'5px'}).css({'padding-right':'5px'});}function configureEvents(opts){$('#designer_grid_control').bind('click',function($e){$('#designer_grid').is(':visible')?$('#designer_grid').fadeOut():$('#designer_grid').fadeIn();});$('#designer_col_control').bind('click',function($e)
{$('#column_layout').is(':visible')?$('#column_layout').fadeOut():$('#column_layout').fadeIn();});$('#designer_index_control').bind('click',function($e)
{$('#designer_grid').css('z-index')>=1?$('#designer_grid').css({'z-index':'-9999'}):$('#designer_grid').css({'z-index':'9999'});});$('#designer_grid').bind('mousedown',function(e){var ctx=initCanvas('coords');ctx.strokeStyle="#FF0000";ctx.fillStyle="#FF0000";ctx.beginPath();ctx.moveTo(e.pageX,0);ctx.lineTo(e.pageX,e.pageY);ctx.moveTo(0,e.pageY);ctx.lineTo(e.pageX,e.pageY);ctx.stroke();ctx.font="10px arial";e.pageX<=100?ctx.fillText('('+e.pageX+','+e.pageY+')',e.pageX+10,e.pageY-5):ctx.fillText('('+e.pageX+','+e.pageY+')',e.pageX-70,e.pageY-5);});$('#designer_grid').bind('click',function(e){var ctx=initCanvas('coords');ctx.clearRect(0,0,opts.docWidth,opts.docHeight);});}function initCanvas($obj){var canvas=document.getElementById($obj);var context=canvas.getContext('2d');return context;}
function setupGrid(context,opts){context.beginPath();context.strokeStyle="#eee";for(var x=0.5;x<opts.docWidth;x+=20){context.moveTo(x-0.5,0);context.lineTo(x-0.5,opts.docWidth);}for(var y=0.5;y<opts.docHeight;y+=20){context.moveTo(0,y-0.5);context.lineTo(opts.docWidth,y-0.5);}context.stroke();}function setupRulers(context,opts){var output;context.strokeStyle="#000";context.fillStyle="#000";context.font="10px arial";for(var x=0.5;x<opts.docWidth;x+=10){context.beginPath();context.moveTo(x-0.5,0);if((x-0.5)%100==0){context.lineTo(x-0.5,10);context.stroke();output=''+Math.floor(x)+'';context.fillText(output,x-10,17.5);}else{context.lineTo(x-0.5,5);context.stroke();}}context.strokeStyle="#000";context.fillStyle="#000";context.font="10px arial";for(var y=0.5;y<opts.docHeight;y+=10){context.beginPath();context.moveTo(0,y-0.5);if((y-0.5)%100==0){context.lineTo(10,y-0.5);context.stroke();if(y>100){output=''+Math.floor(y)+'';context.fillText(output,12,y+3.5);}}
else{context.lineTo(5,y-0.5);context.stroke();}}}function setStartPos(opts){var gutterTotal=0;if(opts.centred==true){opts.colCount>=2?gutterTotal=((opts.gutter*(opts.colCount-1))):gutterTotal=opts.gutter;startPos=(((opts.docWidth-((opts.colWidth*opts.colCount)+gutterTotal))/2));}else{startPos=opts.marginLeft;}}function drawColumns(context,opts){context.fillStyle=opts.colColor;for(var i=1;i<opts.colCount+1;i++){switch(i){case 1:{context.fillRect(startPos,opts.marginTop,opts.colWidth,opts.colHeight);break;}case 2:{context.fillRect((startPos+opts.colWidth+opts.gutter),opts.marginTop,opts.colWidth,opts.colHeight);break;}default:{context.fillRect((startPos+(opts.colWidth*(i-1))+(opts.gutter*(i-1))),opts.marginTop,opts.colWidth,opts.colHeight);break;}}}}function drawIndicators(context,opts)
{context.beginPath();context.strokeStyle="#000";context.moveTo(0,opts.marginTop);context.lineTo(opts.docWidth,opts.marginTop);context.moveTo(opts.docWidth-5,opts.marginTop-5);context.lineTo(opts.docWidth,opts.marginTop);context.lineTo(opts.docWidth-5,opts.marginTop+5);context.moveTo(startPos,0);context.lineTo(startPos,opts.docHeight);context.moveTo(startPos+5,opts.docHeight-5);context.lineTo(startPos,opts.docHeight);context.lineTo(startPos-5,opts.docHeight-5);context.stroke();}};})(jQuery);
$(function()
{ 
    $(document).designerGrid({marginTop: 82,
        opacity : 0.6,
        colCount : 3,
        colWidth : 315,
        centred  : true,
        gutter    : 20});
});
</script>
<br />
{css} designerGrid is a css prototyping tool for web developers.</p>
<p>If you scroll to the bottom right of the window you will see the {css} designerGrid control where you can toggle the grid and columns on &amp; off. You can also set the grid index. When the grid is on top of the site content, you can click anywhere to get the mouse coordinates.</p>
<p>To see a more eye pleasing implementation, you can see one <a href="http://www.kromosome.net/cssdesignergrid/">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kromosome.net/test/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

