<?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>www.GuidoDiepen.nl</title>
	<atom:link href="http://www.guidodiepen.nl/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.guidodiepen.nl</link>
	<description>Personal Blog of Guido Diepen</description>
	<lastBuildDate>Sun, 06 Jun 2010 20:54:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Risks of living close to Schiphol: Burning airplane flying over Haarlem&#8230;</title>
		<link>http://www.guidodiepen.nl/2010/06/risks-of-living-close-to-schiphol-burning-airplane-flying-over-haarlem/</link>
		<comments>http://www.guidodiepen.nl/2010/06/risks-of-living-close-to-schiphol-burning-airplane-flying-over-haarlem/#comments</comments>
		<pubDate>Sun, 06 Jun 2010 20:54:39 +0000</pubDate>
		<dc:creator>guido</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[birdstrike]]></category>
		<category><![CDATA[Schiphol]]></category>

		<guid isPermaLink="false">http://www.guidodiepen.nl/?p=157</guid>
		<description><![CDATA[<p>Earlier this evening, while watching some TV I heard an airplane fly over. Because Haarlem relatively close to Amsterdam Airport Schiphol, this happens more often. However, this time from the sound I knew that it was flying extremely low.</p>
<p>Turns out that it was an aircraft from Royal Air Maroc that encountered a birdstrike after taking [...]]]></description>
			<content:encoded><![CDATA[<p>Earlier this evening, while watching some TV I heard an airplane fly over. Because Haarlem relatively close to Amsterdam Airport Schiphol, this happens more often. However, this time from the sound I knew that it was flying extremely low.</p>
<p>Turns out that it was an aircraft from Royal Air Maroc that encountered a birdstrike after taking off from Schiphol. After that, it was flying burning over Haarlem (eyewitnesses state as low as 100 meters), after which it made a safe emergency landing at Schiphol again.</p>
<p>Happy everything turned out ok.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.guidodiepen.nl/2010/06/risks-of-living-close-to-schiphol-burning-airplane-flying-over-haarlem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New feature in SynCE-KPM: Registry Viewer</title>
		<link>http://www.guidodiepen.nl/2010/04/new-feature-in-synce-kpm-registry-viewer/</link>
		<comments>http://www.guidodiepen.nl/2010/04/new-feature-in-synce-kpm-registry-viewer/#comments</comments>
		<pubDate>Mon, 05 Apr 2010 12:59:52 +0000</pubDate>
		<dc:creator>guido</dc:creator>
				<category><![CDATA[PyQT4]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[SynCE]]></category>
		<category><![CDATA[ActiveSync]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[registry]]></category>
		<category><![CDATA[SynCE-KPM]]></category>

		<guid isPermaLink="false">http://www.guidodiepen.nl/?p=150</guid>
		<description><![CDATA[<p>After some final coding last night, I finally finished the new feature for SynCE-KPM: viewing the registry of your device via SynCE-KPM.</p>
<p>Currently, the feature is only available in the SVN version of SynCE-KPM (which depends on the SVN version of librapi2). However, we are currently thinking about releasing the 0.15 version of SynCE, which would [...]]]></description>
			<content:encoded><![CDATA[<p>After some final coding last night, I finally finished the new feature for SynCE-KPM: viewing the registry of your device via SynCE-KPM.</p>
<p>Currently, the feature is only available in the SVN version of SynCE-KPM (which depends on the SVN version of librapi2). However, we are currently thinking about releasing the 0.15 version of SynCE, which would contain this new feature. As soon as more information about the new release is available, you will also see that on my website.</p>
<p>To show the new feature in this version, I decided to create another screencast. While the previous screencast did show a lot, it was relatively boring due to the fact that there was no sound at all. Therefore, I decided to add a voice over to this new screencast, explaining everything in a bit more detail. In the screencast I do not show all features related to the syncing part (via sync-engine) again, because this takes quite some time and this has already been shown in my previous screencast. In the current screencast, sync-engine is not running and only the device management capabilities of SynCE-KPM are shown.</p>
<p>The screencast:</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/lmY-qNXnavk&amp;hl=en_US&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="640" height="385" src="http://www.youtube.com/v/lmY-qNXnavk&amp;hl=en_US&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>Of course, you can still view the old screencast if you would like to see the display the status of an ongoing sync-process, or installing a CAB file onto your device. This old screencast is in the <a title="Lost screencast of SynCE-KPM in action" href="http://www.guidodiepen.nl/2008/11/the-lost-screencast-of-synce-kpm-in-action/" target="_self">Lost screencast</a> post on my website. Please note, that this old screencast is without any sound.</p>
<p>When you have the feature of viewing the contents of the registry, of course the next question is to be able to edit the contents of the registry. This is what I see as the next feature to implement in SynCE-KPM, though at the moment I don&#8217;t know when I will have time for this. As with this currently implemented new feature, whenever I have time, I will start working on it <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>If you have any questions, suggestions, etc, please leave a post or send me an email.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.guidodiepen.nl/2010/04/new-feature-in-synce-kpm-registry-viewer/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Finally, a car</title>
		<link>http://www.guidodiepen.nl/2010/04/finally-a-car/</link>
		<comments>http://www.guidodiepen.nl/2010/04/finally-a-car/#comments</comments>
		<pubDate>Thu, 01 Apr 2010 11:54:24 +0000</pubDate>
		<dc:creator>guido</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[car]]></category>

		<guid isPermaLink="false">http://www.guidodiepen.nl/?p=144</guid>
		<description><![CDATA[<p>Although I have my drivers license for some time already again, we never got around to purchasing a car. Especially when we were still living in Utrecht, this was not a viable option anyway, because parking the car in the same street was not possible due to lack of parking permit, and very long waiting [...]]]></description>
			<content:encoded><![CDATA[<p>Although I have my drivers license for some time already again, we never got around to purchasing a car. Especially when we were still living in Utrecht, this was not a viable option anyway, because parking the car in the same street was not possible due to lack of parking permit, and very long waiting lists for this&#8230;</p>
<p>After we moved to Haarlem, it still was possible to do the majority of our trips via the public transportation, but often this ended in frustration of delayed trains/buses or having to leave at specific times to ensure all connections were still possible to get back home.</p>
<p>For certain cases, the best solution was to rent a car for a day or the weekend. Every time that we rented a car, it became clear that it would be very useful to have one ourselves <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>About two weeks ago we finally found a car that we liked, the new model Fiat Bravo. Finally, yesterday I got the message that it would be ready and this morning I went to pick it up.</p>
<p>The mandatory pictures:</p>
<div id="attachment_146" class="wp-caption alignnone" style="width: 478px"><a href="http://www.guidodiepen.nl/wp-content/uploads/2010/04/fiat-bravo-02.jpg"><img class="size-full wp-image-146" title="Our Fiat Bravo" src="http://www.guidodiepen.nl/wp-content/uploads/2010/04/fiat-bravo-02.jpg" alt="Our Fiat Bravo" width="468" height="351" /></a><p class="wp-caption-text">Our Fiat Bravo</p></div>
<div id="attachment_145" class="wp-caption alignnone" style="width: 478px"><a href="http://www.guidodiepen.nl/wp-content/uploads/2010/04/fiat-bravo-01.jpg"><img class="size-full wp-image-145" title="Our Fiat Bravo" src="http://www.guidodiepen.nl/wp-content/uploads/2010/04/fiat-bravo-01.jpg" alt="Our Fiat Bravo" width="468" height="351" /></a><p class="wp-caption-text">Our Fiat Bravo</p></div>
<p>So from now on, we will not have to rely on the public transportation anymore <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.guidodiepen.nl/2010/04/finally-a-car/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Small update in SynCE-KPM</title>
		<link>http://www.guidodiepen.nl/2010/02/small-update-in-synce-kpm/</link>
		<comments>http://www.guidodiepen.nl/2010/02/small-update-in-synce-kpm/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 17:52:21 +0000</pubDate>
		<dc:creator>guido</dc:creator>
				<category><![CDATA[SynCE]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[SynCE-KPM]]></category>

		<guid isPermaLink="false">http://www.guidodiepen.nl/?p=139</guid>
		<description><![CDATA[<p>Even though I was not feeling well today (spent day sick at home, having cold shivers all the time&#8230;), I did look into one small new feature for SynCE-KPM.</p>
<p>I noticed that on my windows computer, Windows Mobile Device Center was able to show a picture of my device. I was always wondering where this information [...]]]></description>
			<content:encoded><![CDATA[<p>Even though I was not feeling well today (spent day sick at home, having cold shivers all the time&#8230;), I did look into one small new feature for SynCE-KPM.</p>
<p>I noticed that on my windows computer, Windows Mobile Device Center was able to show a picture of my device. I was always wondering where this information was taken from. Turns out that this picture is actually taken from the device itself. I guess it must be something prescribed by ActiveSync or Windows Mobile Device Center to have the image /windows/sync.ico present.</p>
<p>After the device is connected, SynCE-KPM will now look if that file exists, and if it does, obtain it and show it to the user in the main window.</p>
<p>Example screen with two different phones I have:</p>
<div id="attachment_140" class="wp-caption alignnone" style="width: 761px"><a href="http://www.guidodiepen.nl/wp-content/uploads/2010/02/synce-kpm-screenshot-20100212-01.png"><img class="size-full wp-image-140" title="SynCE-KPM now shows device (example 1)" src="http://www.guidodiepen.nl/wp-content/uploads/2010/02/synce-kpm-screenshot-20100212-01.png" alt="SynCE-KPM now shows device (example 1)" width="751" height="601" /></a><p class="wp-caption-text">SynCE-KPM now shows device (example 1)</p></div>
<div id="attachment_141" class="wp-caption alignnone" style="width: 761px"><a href="http://www.guidodiepen.nl/wp-content/uploads/2010/02/synce-kpm-screenshot-20100212-02.png"><img class="size-full wp-image-141" title="SynCE-KPM now shows device (example 2, my HTC HD2)" src="http://www.guidodiepen.nl/wp-content/uploads/2010/02/synce-kpm-screenshot-20100212-02.png" alt="SynCE-KPM now shows device (example 2, my HTC HD2)" width="751" height="601" /></a><p class="wp-caption-text">SynCE-KPM now shows device (example 2, my HTC HD2)</p></div>
<p>I still have the major new feature left: implementing the remote registry editor. This is still on my TODO list, but unfortunately I don&#8217;t have as much spare time as I would like to have to work on this.</p>
<p>Another thing that I need to work on with SynCE-KPM is the usage of layout managers instead of not being able to resize as with the current implementation. Will take me some time also. Will get there though, slowly <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.guidodiepen.nl/2010/02/small-update-in-synce-kpm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Link to my dissertation</title>
		<link>http://www.guidodiepen.nl/2010/02/link-to-my-dissertation/</link>
		<comments>http://www.guidodiepen.nl/2010/02/link-to-my-dissertation/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 14:05:41 +0000</pubDate>
		<dc:creator>guido</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[PhD]]></category>

		<guid isPermaLink="false">http://www.guidodiepen.nl/?p=129</guid>
		<description><![CDATA[<p>I found that sometimes it is difficult to find my thesis, though it is published online at the library of Utrecht University.</p>
<p>For anybody interested in reading it, it can be found at the  library website of Utrecht University.</p>
<p>Of course, the contents of this thesis are nice, but a lot of people also like the [...]]]></description>
			<content:encoded><![CDATA[<p>I found that sometimes it is difficult to find my thesis, though it is published online at the library of Utrecht University.</p>
<p>For anybody interested in reading it, it can be found at the <a href="http://igitur-archive.library.uu.nl/dissertations/2008-0827-200530/UUindex.html"> library website of Utrecht University</a>.</p>
<p>Of course, the contents of this thesis are nice, but a lot of people also like the cover:</p>
<div id="attachment_130" class="wp-caption alignnone" style="width: 614px"><a href="http://www.guidodiepen.nl/wp-content/uploads/2010/02/diepen_cover.jpg"><img class="size-full wp-image-130 " title="Cover of my Ph.D. Thesis" src="http://www.guidodiepen.nl/wp-content/uploads/2010/02/diepen_cover.jpg" alt="Cover of my Ph.D. Thesis" width="604" height="418" /></a><p class="wp-caption-text">Cover of my Ph.D. Thesis</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.guidodiepen.nl/2010/02/link-to-my-dissertation/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Vacation in Florida</title>
		<link>http://www.guidodiepen.nl/2009/10/vacation-in-florida/</link>
		<comments>http://www.guidodiepen.nl/2009/10/vacation-in-florida/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 08:29:24 +0000</pubDate>
		<dc:creator>guido</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[florida]]></category>
		<category><![CDATA[vacation]]></category>

		<guid isPermaLink="false">http://www.guidodiepen.nl/?p=111</guid>
		<description><![CDATA[<p>Has not been very busy on my weblog lately. Reason for this was that we went on a vacation to the US, and to be more precise to Florida.</p>
<p>We decided to rent a car and just drive around to different places of interest, not really knowing beforehand what our exact route was going to be. [...]]]></description>
			<content:encoded><![CDATA[<p>Has not been very busy on my weblog lately. Reason for this was that we went on a vacation to the US, and to be more precise to Florida.</p>
<p>We decided to rent a car and just drive around to different places of interest, not really knowing beforehand what our exact route was going to be. We knew that there were some places we definitively wanted to view (i.e. Kennedy Space Center, Miami, Key West, etc) but besides that, nothing was planned. After the vacation was finished we basically  made the following tour through Florida:</p>
<p><iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps?f=d&amp;source=s_d&amp;saddr=Orlando,+Florida&amp;daddr=West+Palm+Beach,+Florida+to:Fort+Lauderdale,+florida+to:Miami,+Fl+to:key+west,+fl+to:Key+largo,+florida+to:Sanibel,+Florida+to:Sarasota,+Florida+to:Tampa,+florida+to:Orlando,+florida&amp;hl=en&amp;geocode=&amp;mra=ls&amp;sll=26.547055,-80.9191&amp;sspn=6.935266,10.535889&amp;ie=UTF8&amp;ll=27.586198,-82.023926&amp;spn=6.813222,9.338379&amp;z=6&amp;output=embed"></iframe><br /><small><a href="http://maps.google.com/maps?f=d&amp;source=embed&amp;saddr=Orlando,+Florida&amp;daddr=West+Palm+Beach,+Florida+to:Fort+Lauderdale,+florida+to:Miami,+Fl+to:key+west,+fl+to:Key+largo,+florida+to:Sanibel,+Florida+to:Sarasota,+Florida+to:Tampa,+florida+to:Orlando,+florida&amp;hl=en&amp;geocode=&amp;mra=ls&amp;sll=26.547055,-80.9191&amp;sspn=6.935266,10.535889&amp;ie=UTF8&amp;ll=27.586198,-82.023926&amp;spn=6.813222,9.338379&amp;z=6" style="color:#0000FF;text-align:left">View Larger Map</a></small></p>
<p>Besides the above basic tour we made a lot of visits to the different places. The second day we arrived we went to visit the Kennedy Space Center. I only have one word for this place: awesome! Walking there and seeing the sheer size of the rockets required to get humans to the moon is unbelievable. Also, if you look at the room the astronauts had, it is not that much.</p>
<p>After this we drove down to West Palm Beach and from there we started driving US Highway 1 all the way down through Fort Lauderdale, to Miami, and finally all the way to mile marker 0 in Key West. While in Fort Lauderdale, while sipping on a huge Margaritha, we met Mike, who turned out to be a pianist in the Crazy Pianos in Miami. The next day we were in Miami and in the evening we decided to pay a visit to the Crazy Pianos in Miami. Even though it was completely not busy on the Monday evening, it was a really nice evening and even got to speak Dutch to some people again in the US <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Definitively have to pay a visit to the Crazy Pianos in Scheveningen soon <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>After Miami there was the really nice drive to Key West. Somehow in my mind I had the idea that the overseas highway would be bridges all the time, but it turned out to be one long bridge (the 7 mile bridge) and the rest of the bridges between all the other keys were really short. In Key West we just had a really relaxing time <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>After Key West, our trip started going up north again. After finding a hotel in key Largo, we decided to go the everglades and visit one of the alligator farms. The airboat ride we did there was a blast!! These boats are so extremely loud, but sooooooo much fun <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  At the alligator farm we also visited a snake show and an alligator show. During the snake show my wife was chosen as &#8216;volunteer&#8217; to grab a snake out of a bag and hold it for some time. Luckily, she surived <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>The next part of our trip took us to Sanibel Island, where we visited the Ding &#8216;Darling&#8217; National refuge. In this refuge we ran into an alligator (or crocodile, don&#8217;t know for sure) in the water next to the road. Really amazing to be able to stop the car, get out and take a picture of the animal laying in the water about 6 meters away from where you are standing (without a fence&#8230;.. ).</p>
<p>After Sanibel we still visited Sarasota and Tampa. In Tampa we decided to go and visit something classical American: a drive-in theater. We watched the movie zombieland from within our car <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  This really was a very nice experience. Unfortunately, this was already the last evening again and we had to drive back to Orlando, return the car and wait for our flight back home again&#8230;.</p>
<p>All in all, it was an awesome vacation!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.guidodiepen.nl/2009/10/vacation-in-florida/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Viewing registry (keys only&#8230;) from within SynCE-KPM</title>
		<link>http://www.guidodiepen.nl/2009/09/viewing-registry-keys-only-from-within-synce-kpm/</link>
		<comments>http://www.guidodiepen.nl/2009/09/viewing-registry-keys-only-from-within-synce-kpm/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 06:09:14 +0000</pubDate>
		<dc:creator>guido</dc:creator>
				<category><![CDATA[PyQT4]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[SynCE]]></category>
		<category><![CDATA[editor]]></category>
		<category><![CDATA[QAbstractItemModel]]></category>
		<category><![CDATA[remote registry]]></category>
		<category><![CDATA[SynCE-KPM]]></category>

		<guid isPermaLink="false">http://www.guidodiepen.nl/?p=108</guid>
		<description><![CDATA[<p>After the previous post I started working on integrating the stand-alone prototype within SynCE-KPM. As mentioned, at the moment I only have a view on the keys, not yet the values. Furthermore, at the moment there is no error checking, switching a device will not work, and some other minor things  </p>
<p>However, as you [...]]]></description>
			<content:encoded><![CDATA[<p>After the previous post I started working on integrating the stand-alone prototype within SynCE-KPM. As mentioned, at the moment I only have a view on the keys, not yet the values. Furthermore, at the moment there is no error checking, switching a device will not work, and some other minor things <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>However, as you can see from the screencast</p>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/xrRAiM-3IEE&#038;hl=nl&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/xrRAiM-3IEE&#038;hl=nl&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
<p>it is already possible to view all the registry keys that are present in the registry. Also, from the screencast you can see the Fetching&#8230; node that is shown to the user whenever the actual data is being queried for the first time. It can also be clearly seen that the fetching is done in a separate thread, not related to the GUI thread, because even while fetching, the GUI still is responsive. Any further requests for fetching the user does, are just queued to the dataserver, which will retrieve them in the order they were requested.</p>
<p>I have already thought about how to incorporate the values and I have come up with a solution that uses the current registry and registry key objects, but with a different model. This means I will have to custom models, both subclasses of QAbstractItemModel, using the same underlying data, but only the parts they need.</p>
<p>One thhings I still need to do is determining what to do with updates (i.e. when to refetch keys, when being clicked on, or have the user explicitly request refetch). Also some GUI things need to be changed. At the moment it appears that the current window width of synce-kpm is not enough for a registry editor, might have to make the application a little bit wider. All in all, plenty of things to be done (and sooooo little time&#8230; <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  )</p>
]]></content:encoded>
			<wfw:commentRss>http://www.guidodiepen.nl/2009/09/viewing-registry-keys-only-from-within-synce-kpm/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Towards remote registry editor within SynCE-KPM</title>
		<link>http://www.guidodiepen.nl/2009/09/towards-remote-registry-editor-within-synce-kpm/</link>
		<comments>http://www.guidodiepen.nl/2009/09/towards-remote-registry-editor-within-synce-kpm/#comments</comments>
		<pubDate>Tue, 01 Sep 2009 18:08:28 +0000</pubDate>
		<dc:creator>guido</dc:creator>
				<category><![CDATA[PyQT4]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[SynCE]]></category>
		<category><![CDATA[QAbstractItemModel]]></category>
		<category><![CDATA[qmodelindex]]></category>
		<category><![CDATA[QTreeView]]></category>
		<category><![CDATA[registry]]></category>
		<category><![CDATA[SynCE-KPM]]></category>

		<guid isPermaLink="false">http://www.guidodiepen.nl/?p=102</guid>
		<description><![CDATA[<p>The last couple of weeks I have been working on the basics for a remote registry under linux for windows mobile devices.</p>
<p>I would like to include this as a new feature within SynCE-KPM, and because this is written in PyQt4, the addition needed to be in PyQt4 also. This meant investigating the MVC concept within [...]]]></description>
			<content:encoded><![CDATA[<p>The last couple of weeks I have been working on the basics for a remote registry under linux for windows mobile devices.</p>
<p>I would like to include this as a new feature within SynCE-KPM, and because this is written in PyQt4, the addition needed to be in PyQt4 also. This meant investigating the MVC concept within Qt4, with the QAbstractItemModel, QModelIndex, and QTreeView (at least for the hierarchical folder structure on the left part of the remote registry editor).</p>
<p>After lots and lots of fighting with the QAbstractItemModel and QModelIndex, I think I have finally understood howto succesfully use them together in order to show a nice treeview structure in the QTreeView widget.</p>
<p>One part that caused me a lot of headaches is what the exact role of the QModelIndex is and how exactly to use these. The problem is that you are not allowed to save them in some dictionary, because they are considered to be volatile. Eventually, with some reading of the Qt website I found out how, given a particular registry key within my own backend registry storage classes (that gets its data eventually from the device), I can create the correct QModelIndex that can be used by the model.</p>
<p>In the end the QModelIndex turned out to be not that difficult, because it basically is only a small holding object, that contains a reference to the actual underlying data that I can access via the internalPointer() method. Another way is to use the internalId() method, but that would require me to keep my own dictionary from internalId to the actual data objects. My first thought, that this QModelIndex needs to contain all information about parents etc, turned out to be false: the QModelIndex just queries the model again for parent information.</p>
<p>Most of the times, when looking back after lots and lots of investigating and frustration, the concept and howto actually use it turn out to be relatively simple <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>The prototype I have at the moment is not yet integrated within SynCE-KPM, it is just a separate program at the moment. Furthermore, it does not show any of the values within the registry just yet, only the structure of the keys are shown via a tree within the QTreeView. I have made a small screencast which you can see below:<br />
<object width="425" height="344" data="http://www.youtube.com/v/a4w1BKmC63w&amp;hl=nl&amp;fs=1" type="application/x-shockwave-flash"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/a4w1BKmC63w&amp;hl=nl&amp;fs=1" /><param name="allowfullscreen" value="true" /></object></p>
<p>For the moment you have to take my word that the data shown is actually taken realtime from the device and is not hardcoded in my program <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  One thing that I still like to solve is the issue that can be seen towards the end of the video: clicking on HKEY_CLASSES_ROOT takes a really long time before anything is actually shown. My current idea to &#8217;solve&#8217; this is to give all nodes by default one virtual child key with the name &#8220;Fetching&#8230;&#8221;</p>
<p>When the user expands a node, he will first see the &#8220;Fetching&#8230;&#8221; childkey being displayed. At the same time Synce-KPM will be retrieving the data from the device. After all sub-keys have been retrieved, they will be shown and the &#8220;Fetching&#8230;&#8221; childkey will then be removed.</p>
<p>I have tried implementing the above approach within the current prototype program, but this resulted in a lot of segmentation faults that I could not place. I am not sure what is causing this issue, but it appears that the segfaults are caused when I both delete the &#8220;Fetching&#8230;&#8221; childkey and add the actual childkeys all within the code that handles the the node-expand signal. My guess (well, hope <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ) is that in the final SynCE-KPM version this should not be a problem: because of the two separated processes (GUI and dataserver) I can ensure that I am only doing either deletion, or adding, but not both.</p>
<p>Still todo are:</p>
<ul>
<li>Include within SynCE-KPM (instead of separate program)</li>
<li>Create a listview for the values that are stored the selected key</li>
<li>Add possibility of not only viewing the registry, but also modifying <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.guidodiepen.nl/2009/09/towards-remote-registry-editor-within-synce-kpm/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Treeviews in PyQt with QAbstractItemModel</title>
		<link>http://www.guidodiepen.nl/2009/08/treeviews-in-pyqt-with-qabstractitemmodel/</link>
		<comments>http://www.guidodiepen.nl/2009/08/treeviews-in-pyqt-with-qabstractitemmodel/#comments</comments>
		<pubDate>Wed, 12 Aug 2009 20:26:30 +0000</pubDate>
		<dc:creator>guido</dc:creator>
				<category><![CDATA[PyQT4]]></category>
		<category><![CDATA[SynCE]]></category>
		<category><![CDATA[MVC]]></category>
		<category><![CDATA[QAbstractItemModel]]></category>
		<category><![CDATA[QTreeView]]></category>

		<guid isPermaLink="false">http://www.guidodiepen.nl/?p=98</guid>
		<description><![CDATA[<p>For the new feature of SynCE-KPM I am working on at the moment, I want to emulate the look and feel of the windows standard program regedit.exe. This means showing the user a QTreeView showing the hierarchy of the keys and a QListView on the right showing all values within the selected key.</p>
<p>While the other [...]]]></description>
			<content:encoded><![CDATA[<p>For the new feature of SynCE-KPM I am working on at the moment, I want to emulate the look and feel of the windows standard program regedit.exe. This means showing the user a QTreeView showing the hierarchy of the keys and a QListView on the right showing all values within the selected key.</p>
<p>While the other day I have been working (and finished) on the librapi2 stuff, in particular the python bindings, to facilitate a registry editor, for some days I have been looking at this whole QTreeView stuff. I have to say that I really do appreciate the idea behind MVC, but I have to say that to use this in a nice way in PyQt is really difficult. After some days I am now at least able to create a nice QTreeView based on a model that represents the registry. Currently, everything is still hardcoded, but at least I can see a structure now (the QListView with values will come much later <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ).</p>
<p>Next step is to see if I can connect the model to the actual contents of the registry on the device in a dynamic way. The problem is that I need to fetch new data from the registry only when it is needed. One simple approach is to first read the complete registry into the model and then show this to the user. However, I don&#8217;t think users will like it if there is a 5 minute delay showing &#8220;Fetching data&#8221; when going to the registry editor before they can actually use the registry editor. This means I will have to fetch data in some asynchronous way. Fortunately, I already have some ideas about this. For some reason I think this fetching part is again the easy component&#8230;.. Don&#8217;t want to think about all the mess that is involved to show this in a nice way to the end-user.</p>
<p>For the moment just happy that at least the very basics of the left-hand side of the future screen (i.e. the hierarchy of the keys) needed to display actual data are there. Onwards to new challenges with PyQt and its MVC <img src='http://www.guidodiepen.nl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.guidodiepen.nl/2009/08/treeviews-in-pyqt-with-qabstractitemmodel/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
		<item>
		<title>Possible new feature for SynCE-KPM: Remote Registry editor</title>
		<link>http://www.guidodiepen.nl/2009/08/possible-new-feature-for-synce-kpm-remote-registry-editor/</link>
		<comments>http://www.guidodiepen.nl/2009/08/possible-new-feature-for-synce-kpm-remote-registry-editor/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 18:32:26 +0000</pubDate>
		<dc:creator>guido</dc:creator>
				<category><![CDATA[PyQT4]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[SynCE]]></category>
		<category><![CDATA[editor]]></category>
		<category><![CDATA[feature]]></category>
		<category><![CDATA[registry]]></category>
		<category><![CDATA[remote]]></category>
		<category><![CDATA[SynCE-KPM]]></category>

		<guid isPermaLink="false">http://www.guidodiepen.nl/?p=94</guid>
		<description><![CDATA[<p>Now that the moving is almost finished and I have a bit of spare time again, I would like to work a bit more on implementing new things for SynCE-KPM. A lot of people have asked me in the beginning to create a file-browser within SynCE-KPM, though I think that programs like Nautilus are far [...]]]></description>
			<content:encoded><![CDATA[<p>Now that the moving is almost finished and I have a bit of spare time again, I would like to work a bit more on implementing new things for SynCE-KPM. A lot of people have asked me in the beginning to create a file-browser within SynCE-KPM, though I think that programs like Nautilus are far more suited for this purpose. I have had some ideas about this, and although I am not very much in favor of this, there might still be possibilities to implement this.</p>
<p>One thing I am looking at right now is a remote registry editor within SynCE-KPM that allows you to edit the registry of your device. For this to work I first have to add some additional functionality to the python bindings of the RAPI2 library, which I am working on right now. One of the things I would like to implement is a registry key rename function: Unfortunately, by design you cannot just change a key name; to rename a registry key you must first copy the whole key recursively to the new name and then delete the old key. If somebody does know a better way for doing this for Windows Mobile devices via RAPI, please let me know, really interested in this.</p>
<p>When all the work on the python bindings of librapi2 is finished, I can start working on the QTreeView/QListView stuff that must be added to SynCE-KPM. At the moment really reading into everything that is needed to be able to show the end-user a nice view of the registry on the device.</p>
<p>If you have any other ideas that could be nice additions for SynCE-KPM, please let me know via a comment.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.guidodiepen.nl/2009/08/possible-new-feature-for-synce-kpm-remote-registry-editor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
