<?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>Cyrille Berger &#187; Qt</title>
	<atom:link href="http://blog.cberger.net/tags/qt/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.cberger.net</link>
	<description>What I do, where I live, what I think.</description>
	<lastBuildDate>Sat, 02 Apr 2011 16:20:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Calligra, past, present, future, a few answers</title>
		<link>http://blog.cberger.net/2010/12/07/calligra-past-present-future-a-few-answers/</link>
		<comments>http://blog.cberger.net/2010/12/07/calligra-past-present-future-a-few-answers/#comments</comments>
		<pubDate>Tue, 07 Dec 2010 19:05:16 +0000</pubDate>
		<dc:creator>Cyrille Berger</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[KOffice]]></category>
		<category><![CDATA[Krita]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Calligra]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[Desktop]]></category>
		<category><![CDATA[Meego]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Office Suite]]></category>
		<category><![CDATA[Qt]]></category>

		<guid isPermaLink="false">http://blog.cberger.net/?p=1654</guid>
		<description><![CDATA[This represent my view of the events, and of what I expect will happen. And not in any case, the KDE community or Calligra project views. I also hope it gives some answers to a few questions and comments. A &#8230; <a href="http://blog.cberger.net/2010/12/07/calligra-past-present-future-a-few-answers/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This represent my view of the events, and of what I expect will happen. And not in any case, the <a href="http://www.kde.org">KDE community</a> or <a href="http://www.calligra-suite.org">Calligra project</a> views. I also hope it gives some answers to a few questions and comments.</p>
<h2>A reset</h2>
<p>The triggering reason of the new name is indeed the consequence long time disputes in the community. We tried hard to solve them. But it was two visions of how the project should be conducted, and of its aims, that could not be conciliated, so at the end we concluded that it would be best to <a href="http://lists.kde.org/?l=koffice-devel&#038;m=128782551919625&#038;w=2">part and follow different paths</a>. Unlike what I have seen on <a href="http://identi.ca/notice/59929766">identi.ca</a>, it is not exactly true that we hide that in last night <a href="http://www.calligra-suite.org/news/announcements/stable/calligra-suite-goes-active/">announcement</a>. It might have been the trigger but it is not the driving reason. I think that when the discussions around the split started, the majority was in favor of keeping the KOffice name, but slowly, the idea of changing took over in our mind.</p>
<p>First of all, the KOffice name itself has a lower value that it might seems, it is often associated to the office suite that has potential but does not deliver, it is hardly known outside the <a href="http://www.kde.org">KDE</a> world, it is not such a good name, and above all, KOffice includes applications that are not traditionally associated with office applications. Also a new name is a good opportunity to get a new start, and from what I have seen, it has boost energy inside the project, and it is fueling the enthusiasm of many people, and I am confident that it has helped us to leave the past behind, and focusing on making the future of Calligra. And I am thankful to Jos Poortvliet for advising us for a new name.</p>
<p>After long discussions, we have settled for a new name, Calligra, based on the word Calligraphy. It might not be my favorite of our choices, but I think it is a good name, it refers to &#8220;Writing&#8221; and &#8220;Beauty&#8221;, which are two main aspects of our suite of applications, meaning that it makes all our applications feel at home.</p>
<h2>Present</h2>
<p>Actually our present is to work on the release of the version 2.3 of KOffice. In my view, the renaming was poorly timed, since it happens slightly before a new release, and quiet far away from our first release. But we did not have full control of the agenda either, especially since last week-end the project moved to git, and it is simply more convenient to point people to a repository that will stay for a long time than to ask everybody to switch in six months. And also the split precipitated the events.</p>
<h2>The future</h2>
<p>There is a lot of speculation about the future, between Mobile and Desktop. Several person have presented Calligra <a href="http://lists.kde.org/?l=koffice-devel&#038;m=128812911619277&#038;w=2">as being</a> <a href="http://identi.ca/notice/59934598">mobile oriented</a>. Lets be clear, it is not true. Calligra is focused on developing technologies related to office and creativity applications, on top of those technologies, the Calligra project is delivering a set of desktop applications and mobile applications (and maybe tablet, in the future). All of it is build over the <a href="http://www.kde.org">KDE</a> technologies, using the <a href="http://qt.nokia.com">Qt</a> toolkit, which makes it potentially available to an incredible range of devices and operating system: Linux, Windows (desktop and mobile), Mac OSX, Symbian, Meego, Haiku (and maybe <a href="http://code.google.com/p/android-lighthouse/">Android</a>, <a href="http://gitorious.org/+qt-iphone">iPhone</a>, <a href="http://www.precentral.net/qt-app-platform-and-running-palm-pre">WebOS</a>&#8230;), using a desktop computer, a laptop, a mobile phone, a tablet, your TV&#8230; And all with an user interface that is most suitable for your form factor.</p>
<p>Well of course, Qt and KDE being available on a platform is not sufficient to make Calligra available, it needs more work. The majority of the volunteers are working on linux and targeting the desktop, Nokia is supporting the mobile phone and Meego efforts. And anyone is welcome to come and give us a hand with their favorite platform and form factor.</p>
<p>Personally, I find those goals very exciting. Since it pretty much in line with my vision of where computing should be in 10 years, I do not believe in web applications, or thin clients, I believe in web servers as a storage space, while the intelligence remains on the actual device, and collaborations goes through peer-to-peer solutions, using open standards such as <a href="http://en.wikipedia.org/wiki/OpenDocument">ODF</a>.</p>
<p>On the organization level, we want to build a community where every contribution is regarded equally, where people&#8217;s work is properly acknowledge, where discussions remains friendly. Where maintainers are facilitators. </p>
<p>I hope this answer a few question, we are also preparing a FAQ, so if you have more questions, you can ask them on this blog, on our irc channel (#calligra on freenode), on the <a href="https://mail.kde.org/mailman/listinfo/calligra-devel">calligra-devel mailing list</a> or in the <a href="http://forum.kde.org/viewforum.php?f=203">calligra forum</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.cberger.net/2010/12/07/calligra-past-present-future-a-few-answers/feed/</wfw:commentRss>
		<slash:comments>26</slash:comments>
		</item>
		<item>
		<title>Braindump 0.8.0</title>
		<link>http://blog.cberger.net/2010/03/18/braindump-0-8-0-2/</link>
		<comments>http://blog.cberger.net/2010/03/18/braindump-0-8-0-2/#comments</comments>
		<pubDate>Thu, 18 Mar 2010 18:31:02 +0000</pubDate>
		<dc:creator>Cyrille Berger</dc:creator>
				<category><![CDATA[Braindump]]></category>
		<category><![CDATA[KDE]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[KOffice]]></category>
		<category><![CDATA[Qt]]></category>
		<category><![CDATA[Releases]]></category>

		<guid isPermaLink="false">http://blog.cberger.net/?p=1027</guid>
		<description><![CDATA[A bit overdue, the first release of Braindump is available. It has been a while since I announced the project of making a tool that gather allow to dump your thoughts into an electronic form. For those who have forget &#8230; <a href="http://blog.cberger.net/2010/03/18/braindump-0-8-0-2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>A bit overdue, the first release of Braindump is available. It has been a while since I <a href="http://blog.cberger.net/?p=137">announced the project</a> of making a tool that gather allow to dump your thoughts into an electronic form. For those who have forget (which is probably most of you), Braindump is a collection of whiteboards on which you can put your notes, whether text notes, or drawing. It is entirely based on <a href="http://www.koffice.org">KOffice</a> technologies. Which made Braindump quick and easy to develop, and it makes it very small, around <a href="http://www.ohloh.net/p/braindump_kde/analyses/latest">8000</a> lines of code.</p>
<p>I have been delaying that release because I wanted to make a video of Braindump in action, and have been too lazy to make one until now. On that video I first create new whiteboards, then I demonstrate how to add shapes, manipulate them, and finally the different layout:</p>
<p><center><br />
<a href="http://cyrille.diwi.org/images/braindump/braindumpinaction.ogv"><img src="http://blog.cberger.net/wp-content/uploads/2010/11/braindumpinaction.png" /></a><br />
</center></p>
<p>I you look at <a href="http://bitbucket.org/cyrille/braindump/overview/">Braindump development history</a>, you will notice that over the past six months the development has been really slow, there are a few reasons to that, the first one is that most of the development is done by other people than me in the KOffice repository, the second one is that I feel that Braindump is already doing exactly what I want, with a few glitches, but as a geek I tend to live happily with those&#8230;</p>
<p>That said there is a couple of features I want:</p>
<ul>
<li>Search (and replace)</li>
<li>Tagging, but then <a href="http://monkeyiq.blogspot.com/2010/01/koffice-rdf-who-what-when-where.html">someone else</a> (yeah again) is doing the work for me in KOffice</li>
<li>Auto-growing text shape</li>
<li>A solution to this problem: (almost) each time I create a new whiteboard, the first thing I do is to add a text shape. So I wonder about either having always a permanent text shape in the background, or always add a text shape when creating a white board.</li>
</ul>
<p>I am also starting to be curious about <a href="http://blog.karlitschek.de/2010/03/owncloud-development-started.html">ownCloud</a>, since personally I find it to be the right direction of cloud computing, so I would probably be interested in the possibility of storing whiteboards on an ownCloud server. Lets see how it evolves.</p>
<p>If you have other ideas, do not hesitate to mention them, who knows, if I find them interesting, I might go on and implement them !</p>
<p><a href="http://cberger.net/download/braindump-0.8.0.tar.bz2">Download Braindump 0.8.0</a>, this release will work <b>only</b> with KOffice 2.1.x, from now on I will work on porting Braindump to the upcoming KOffice 2.2.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.cberger.net/2010/03/18/braindump-0-8-0-2/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
<enclosure url="http://cyrille.diwi.org/images/braindump/braindumpinaction.ogv" length="8078772" type="video/ogg" />
		</item>
		<item>
		<title>How to find where an exception is emited with Qt ?</title>
		<link>http://blog.cberger.net/2010/02/24/how-to-find-where-an-exception-is-emited-with-qt/</link>
		<comments>http://blog.cberger.net/2010/02/24/how-to-find-where-an-exception-is-emited-with-qt/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 09:51:02 +0000</pubDate>
		<dc:creator>Cyrille Berger</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Qt]]></category>

		<guid isPermaLink="false">http://cyrilleberger.wordpress.com/?p=918</guid>
		<description><![CDATA[When an exception is thrown and not catched in a Qt application, it get catched by Qt&#8217;s event loop, and the following message is displayed in the console: Qt has caught an exception thrown from an event handler. Throwing exceptions &#8230; <a href="http://blog.cberger.net/2010/02/24/how-to-find-where-an-exception-is-emited-with-qt/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>When an exception is thrown and not catched in a Qt application, it get catched by Qt&#8217;s event loop, and the following message is displayed in the console:</p>
<p><code> Qt has caught an exception thrown from an event handler. Throwing exceptions from an event handler is not supported in Qt. You must reimplement QApplication::notify() and catch all exceptions there. terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc </code> </p>
<p>In other situations, <em>std::bad_alloc</em> is replaced by the name of the exception. The problem is that if you now want to know where it happens in your program, the backtrace points to where the exception is rethrown by Qt&#8217;s event loop, which is not where the error happens.</p>
<p>I first had this problem a few days ago when implementing multi-layers support in EXR, since the exception name was specific to OpenEXR, I just grepped the code and deduce where the error occurred. But this is not very convenient when the error is generic, like <em>std::bad_alloc</em> which can be thrown just anywhere. And as it turned out by Qt itself in &#8216;qBadAlloc()&#8217;. The solution suggested by Maelcum on IRC is simply to set a breakpoint in the function <em>__cxa_throw</em>, which is a function of the C++ standard library that is actually doing the job when the keyword <em>throw</em> is used (at least with the GNU stdlib++, no idea if it is valid with other standard library implementation). And then you get a backtrace that point to the problem.</p>
<p>I thought I would share this tip in case, in some day, you find yourself with an uncaught exception in a Qt application.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.cberger.net/2010/02/24/how-to-find-where-an-exception-is-emited-with-qt/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

