<?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>Ivan Čukić &#187; Layout</title>
	<atom:link href="http://ivan.fomentgroup.org/blog/tag/layout/feed/" rel="self" type="application/rss+xml" />
	<link>http://ivan.fomentgroup.org/blog</link>
	<description>Free Software Developer and Enthusiast</description>
	<lastBuildDate>Sun, 08 Jan 2012 22:36:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>NodeLayout : Example sheet</title>
		<link>http://ivan.fomentgroup.org/blog/2007/10/16/nodelayout-example-sheet/</link>
		<comments>http://ivan.fomentgroup.org/blog/2007/10/16/nodelayout-example-sheet/#comments</comments>
		<pubDate>Tue, 16 Oct 2007 12:17:57 +0000</pubDate>
		<dc:creator><span property="dc:creator" resource="http://ivan.fomentgroup.org/blog/2007/10/16/nodelayout-example-sheet/">Ivan Čukić</span></dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[Layout]]></category>
		<category><![CDATA[planetKDE]]></category>
		<category><![CDATA[Plasma]]></category>

		<guid isPermaLink="false">http://ivan.fomentgroup.org/blog/2007/10/16/nodelayout-example-sheet/</guid>
		<description><![CDATA[Since it appears that the last explanation (which I recommend you to read before opening the example sheet) of NodeLayout was not as good as it should be, here you are &#8211; drawn explanation with a few examples in .png format (33K). Unfortunately WordPress doesn&#8217;t allow me to upload the svgz file&#8230; hope you&#8217;ll be [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://ivan.fomentgroup.org/blog/wp-content/uploads/2007/10/nodelayout.png' title='NodeLayout : Example sheet'><img src='http://ivan.fomentgroup.org/blog/wp-content/uploads/2007/10/nodelayout.thumbnail.png' alt='NodeLayout : Example sheet' /></a></p>
<p>Since it appears that the <a href="http://ivan.fomentgroup.org/blog/2007/10/13/nodelayout-for-plasma/">last explanation (which I recommend you to read before opening the example sheet)</a> of NodeLayout was not as good as it should be, here you are &#8211; drawn explanation with a few examples in .png format (33K).</p>
<p>Unfortunately WordPress doesn&#8217;t allow me to upload the svgz file&#8230; hope you&#8217;ll be able to read the small text in the picture.</p>
]]></content:encoded>
			<wfw:commentRss>http://ivan.fomentgroup.org/blog/2007/10/16/nodelayout-example-sheet/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>NodeLayout for Plasma</title>
		<link>http://ivan.fomentgroup.org/blog/2007/10/13/nodelayout-for-plasma/</link>
		<comments>http://ivan.fomentgroup.org/blog/2007/10/13/nodelayout-for-plasma/#comments</comments>
		<pubDate>Sat, 13 Oct 2007 15:33:22 +0000</pubDate>
		<dc:creator><span property="dc:creator" resource="http://ivan.fomentgroup.org/blog/2007/10/13/nodelayout-for-plasma/">Ivan Čukić</span></dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[Layout]]></category>
		<category><![CDATA[planetKDE]]></category>
		<category><![CDATA[Plasma]]></category>

		<guid isPermaLink="false">http://ivan.fomentgroup.org/blog/2007/10/13/nodelayout-for-plasma/</guid>
		<description><![CDATA[Yes, it&#8217;s that time of year again &#8211; the time for backporting layouts from Lancelot to Plasma. NodeLayout is one of the most powerful layouts in general, in a sense of that it&#8217;s expressiveness for positioning static content is greater than any current layout in Plasma. The idea behind it is to help developers avoid [...]]]></description>
			<content:encoded><![CDATA[<p>Yes, it&#8217;s that time of year again &#8211; the time for backporting layouts from <a href="http://lancelot.fomentgroup.org/" class="kblinker" target="_blank">Lancelot</a> to <a href="http://plasma.kde.org/" class="kblinker" target="_blank">Plasma</a>.</p>
<p>NodeLayout is one of the most powerful layouts in general, in a sense of that it&#8217;s expressiveness for positioning static content is greater than any current layout in Plasma.</p>
<p>The idea behind it is to help developers avoid creating multiple different layout objects mixed and nested in each other when creating complex UIs. It&#8217;s a bit trickier to get the hang of it &#8211; the nodes definition, but once you get to know it, it will become your natural way of thinking. <img src='http://ivan.fomentgroup.org/blog/wp-content/plugins/smilies-themer/kopete/smile.png' alt=':)' class='wp-smiley' /> (yes, I know I&#8217;m sounding like a shampoo commercial)
<p>Every item&#8217;s geometry is defined by two nodes &#8211; one for the top-left corner, and the other one for the bottom-right corner.</p>
<p>Each node is defined by a pair of relative (xr, yr) and a pair of absolute (xa, ya) coordinates. The calculated node coordinates depend<br />
on the size and position of the NodeLayout object in the following manner (layout is the geometry of the NodeLayout):</p>
<ul>
<li>x = layout.left() + (xr * layout.width())  + xa</li>
<li>y = layout.top()  + (yr * layout.height()) + ya</li>
</ul>
<p>Alternatively, the item&#8217;s position can be defined by using one node and one pair of relative coordinates (xr, yr). In that case, the item is sized following the sizeHint(). The relative coordinates (this time they are relative to the item&#8217;s geometry, not the layout&#8217;s) specify what point of the item will be bound to the defined node.</p>
<p><b>Note:</b> The horizontal and vertical values are completely independent so you can, for example, have automatic (sizeHint defined) sizing for width, and fixed sizing for height.</p>
]]></content:encoded>
			<wfw:commentRss>http://ivan.fomentgroup.org/blog/2007/10/13/nodelayout-for-plasma/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>New Plasma stuff</title>
		<link>http://ivan.fomentgroup.org/blog/2007/09/19/new-plasma-stuff/</link>
		<comments>http://ivan.fomentgroup.org/blog/2007/09/19/new-plasma-stuff/#comments</comments>
		<pubDate>Wed, 19 Sep 2007 07:31:15 +0000</pubDate>
		<dc:creator><span property="dc:creator" resource="http://ivan.fomentgroup.org/blog/2007/09/19/new-plasma-stuff/">Ivan Čukić</span></dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[Layout]]></category>
		<category><![CDATA[planetKDE]]></category>
		<category><![CDATA[Plasma]]></category>

		<guid isPermaLink="false">http://ivan.fomentgroup.org/blog/2007/09/19/new-plasma-stuff/</guid>
		<description><![CDATA[While waiting for Aaron (it&#8217;s hard to write his name properly instead of AAron, isn&#8217;t it?) to give me the instructions for merging the Applet Browser into the libplasma, I had to do something interesting to keep me warm. The first thing is that the FileBrowser engine is moved from playground to the plasma&#8216;s trunk. [...]]]></description>
			<content:encoded><![CDATA[<p>While waiting for Aaron (it&#8217;s hard to write his name properly instead of AAron, isn&#8217;t it?) to give me the instructions for merging the Applet Browser into the libplasma, I had to do something interesting to keep me warm.</p>
<p>The first thing is that the <strong>FileBrowser</strong> engine is moved from playground to the <a href="http://plasma.kde.org/" class="kblinker" target="_blank">plasma</a>&#8216;s trunk. If you don&#8217;t remember, the engine gives you the ability to monitor files and directories for changes, to retrieve file meta data etc. and all of that from inside the Plasma applets.</p>
<p>The second thing is a new Plasma layout named <strong>BorderLayout</strong>. It is inspired by the Java&#8217;s java.awt.BorderLayout. I needed something like this for my not-yet-to-be-revealed-launcher <a href="http://lancelot.fomentgroup.org/" class="kblinker" target="_blank">Lancelot</a>. It can contain up to 5 items &#8211; one for each border (left, top, right, bottom) and one for the center. Since it is easier to show it, than to describe the actual layout, here it is:</p>
<table border="1">
<tr>
<td colspan="3" align="center">Top</td>
</tr>
<tr>
<td width="10%">Left</td>
<td align="center">Center</td>
<td width="10%">Right</td>
</tr>
<tr>
<td colspan="3" align="center">Bottom</td>
</tr>
</table>
<p>The sizes of the borders (width for left and right, and height for top and bottom) can be calculated using the sizeHint of the items (default), or can be user-specified (developer-specified).</p>
<p>And, finally, the last thing that is not in the SVN yet is the <strong>KioBrowser</strong> engine, which retreives list of &#8216;files&#8217; at a specific KIO location (for example applications:/, system:/)</p>
<p>p.s. The OpenID+ plug-in has some fatal error while activating, and I don&#8217;t have the time to fix that &#8211; so no openID identification on this blog yet&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://ivan.fomentgroup.org/blog/2007/09/19/new-plasma-stuff/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

