<?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>eduardofleury.com &#187; Media</title>
	<atom:link href="http://blog.eduardofleury.com/archives/category/media/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.eduardofleury.com</link>
	<description>Thoughts, shuffled...</description>
	<lastBuildDate>Sat, 01 May 2010 00:22:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>O QGraphicsAnchorLayout</title>
		<link>http://blog.eduardofleury.com/archives/2009/09/91/</link>
		<comments>http://blog.eduardofleury.com/archives/2009/09/91/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 15:42:00 +0000</pubDate>
		<dc:creator>fleury</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Português]]></category>
		<category><![CDATA[Qt]]></category>
		<category><![CDATA[Qt Labs Americas (pt)]]></category>
		<category><![CDATA[anchor layout]]></category>
		<category><![CDATA[brasil]]></category>
		<category><![CDATA[brazil]]></category>
		<category><![CDATA[fleury]]></category>
		<category><![CDATA[indt]]></category>
		<category><![CDATA[openbossa]]></category>
		<category><![CDATA[qgal]]></category>
		<category><![CDATA[recife]]></category>

		<guid isPermaLink="false">http://blog.eduardofleury.com/?p=91</guid>
		<description><![CDATA[No último artigo mencionei que o QGraphicsLayout, a ser lançado no Qt 4.6, já está disponível no repositório público do Qt. Hoje gostaria de dar uma visão geral sobre como este novo layout funciona e sobre o porquê de estarmos tão animados com isso. Para tal, vou falar um pouco sobre: os layouts que já [...]]]></description>
			<content:encoded><![CDATA[<p>No último artigo mencionei que o QGraphicsLayout, a ser lançado no Qt 4.6, já está disponível no repositório público do Qt.</p>
<p>Hoje gostaria de dar uma visão geral sobre como este novo layout funciona e sobre o porquê de estarmos tão animados com isso.</p>
<p>Para tal, vou falar um pouco sobre: os layouts que já existiam no Qt, o uso do Anchor Layout e finalmente, os problemas que são melhores resolvidos por ele. De agora em diante assuma que estou escrevendo sobre o universo QGraphicsView e assim, onde ler &#8220;widget&#8221; ou &#8220;layout&#8221;, entenda que me refiro a QGraphicsWidgets ou QGraphicsLayouts.</p>
<p><strong>QGraphicsLayouts existentes<br />
</strong></p>
<p>Até o Qt 4.5, estavam disponíveis os layouts Linear e de Grid. Com eles, como seus nomes indicam, usuários poderiam ter seus widgets alinhados lado a lado ou em formato de tabela, com widgets ocupando uma ou mais células.</p>
<p>No entanto, não era possível organizar os itens para que ficassem fora da tela ou que se sobrepusessem, total ou parcialmente. Além disto, para obter o resultado desejado em alguns casos, era necessário utilizar diversos layouts encadeados.</p>
<p><strong>O conceito do Anchor Layout<br />
</strong></p>
<p>Layouts anteriores funcionavam assim: o layout Linear pedia que você adicionasse items ao layout em uma determinada seqüência e assim os itens seriam arranjados lado a lado (ou um sobre o outro); no caso do layout de Grid o conceito era similar, mas com itens associados a índices X,Y para representar a linha e coluna onde eles deveriam ser inseridos.</p>
<p>O Anchor Layout quebra com este paradigma no sentido de que não existe um conceito pré-definido de como os itens devem ser dispostos. A posição final de cada item é totalmente dependente de como você cria as âncoras. Em outras palavras, o Anchor Layout é um layout muito, muito <em>flexível</em>.</p>
<p>Apesar da maioria dos layouts serem flexíveis até certo ponto, e permitirem que se configure parâmetros como o espaçamento entre itens ou as margens, o Anchor Layout eleva a flexibilidade a um novo patamar. Foi também um dos nossos objetivos, fazer com que o processo de criação do layout fosse algo simples. Não queríamos expor centenas de parâmetros abstratos ao usuário, ao invés disto, nós  queríamos disponibilizar uma conceito e uma API de alto-nível. Além de fazer com que seu uso seja mais gratificante, isto facilita a tarefa de transformar em código C++, as idéias e a maneira de pensar dos designers de interfaces. E é assim que surgiram <em>as âncoras</em>.</p>
<p>Neste layout, cada item possui seis pontos de ancoragem, que são esquerda, direita, topo, base e os centros horizontal e vertical. O usuário por sua vez, é responsável por conectar os pontos de ancoragem de diferentes itens entre eles, e com os pontos de ancoragem do próprio layout. Essas conexões são feitas através das tais âncoras, que têm tamanhos bem definidos.</p>
<p>Depois, com base em:</p>
<p>- as âncoras criadas,<br />
- os tamanhos mínimo, recomendado e máximo de cada item, e<br />
- o tamanho do layout propriamente dito.</p>
<p>o layout calcula as geometrias apropriadas para cada um dos widgets.</p>
<p><strong>Casos de uso do Anchor Layout no mundo real</strong></p>
<p>Aqui no openBossa nós temos trabalhado no desenvolvimento de interfaces ricas há um bom tempo, e foi com essa experiência como bagagem que começamos a contribuir com o pessoal do Qt no desenvolvimento do QGraphicsAnchorLayout.</p>
<p>A seguir você irá encontrar alguns dos nossos casos de uso que não eram bem tratados pelos layouts existentes e que são bem mapeados para âncoras.</p>
<p><em>Transição entre telas</em></p>
<p>Nós freqüentemente precisamos fazer uma transição entre duas telas de uma mesma aplicação. Imagine que o usuário executa alguma ação que causar o sumiço da tela atual para que uma nova apareça.</p>
<p>Em uma aplicação de interface rica nós provavelmente gostaríamos de animar tal transição. Duas das alternativas seriam tornar transparente ou embaçar a tela corrente até que a que está por vir se faça visível. Para alcançar tal efeito, nós precisamos que as duas telas ocupem a mesma posição na tela, sendo que a mais velha deverá estar na frente (índice Z maior). Em seguida, basta aplicar o efeito à tela que está na frente, por exemplo mudar sua opacidade, e pronto, temos o efeito!</p>
<p>Então, como poderíamos usar um layout comum para fazer um widget (a tela nova) ocupar o mesmo espaço que outro (a tela velha)? Não dava. Agora com âncoras, basta ancorar os lados de uma tela aos lados da outra (direita com direita, topo com topo, etc) e pronto!</p>
<div id="attachment_87" class="wp-caption aligncenter" style="width: 330px"><img class="size-full wp-image-87" title="AnchorLayout_Swallow" src="http://blog.eduardofleury.com/wp-content/uploads/2009/09/swallow.png" alt="Usage of AnchorLayout to set two swallows on the same place" width="320" height="348" /><p class="wp-caption-text">Uso do AnchorLayout para colocar duas telas no mesmo lugar.</p></div>
<p><em>Items fora da tela</em></p>
<p>Outro &#8220;truque&#8221; que usamos na animação de interfaces é fazer um item &#8220;entrar&#8221; ou &#8220;sair&#8221; da tela. Por exemplo, imagine uma barra de ferramentas no topo da tela que desliza pra dentro da tela e depois pra fora. A idéia aqui é criar dois estados (usando QStates talvez) onde a barra está dentro da tela em um deles,. e fora no outro.</p>
<p>Mais uma vez, com os layouts comuns não poderíamos criar o estado &#8220;fora-da-tela&#8221;. Com âncoras, basta ancorar a base da barra ao topo do layout, por conseqüência a barra será colocada logo acima do layout, pronta para entrar na tela quando necessário.</p>
<div id="attachment_88" class="wp-caption aligncenter" style="width: 333px"><img class="size-full wp-image-88" title="AnchorLayout_Toolbar" src="http://blog.eduardofleury.com/wp-content/uploads/2009/09/toolbar.png" alt="Usage of AnchorLayout to set a toolbar on or off-screen." width="323" height="404" /><p class="wp-caption-text">Uso do AnchorLayout para colocar um widget fora da tela.</p></div>
<p><em>Disposição orgânica</em></p>
<p>Existem também aqueles casos onde os designers criam um protótipo de tela com diversos itens arranjados de maneira disforme ou &#8220;orgânica&#8221;. Na maioria destes casos não é prático (ou possível) ter de usar diversos layouts encadeados para definir tal arranjo. No entanto, com um único Anchor Layout, todos os itens podem ser organizados de maneira precisa.</p>
<p><strong>Experimente!<br />
</strong></p>
<p>Existem outras situações não mencionadas onde um layout tão flexível também é útil. Eu acredito no entanto que os exemplos que coloquei aqui são suficientes para mostrar o tipo de problema que estamos tentando resolver. Por favor, experimente e nos diga o que achou. Todo o tipo de opinião é realmente bem vindo,  quanto à forma de uso, performance, API, recursos e assim por diante. Tudo será levado em conta para que vocês tenham uma boa ferramenta nova para usar no Qt 4.6.</p>
<p>Aproveitem <img src='http://blog.eduardofleury.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.eduardofleury.com/archives/2009/09/91/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Azul inicia venda de passagens para trecho Recife &#8211; Campinas</title>
		<link>http://blog.eduardofleury.com/archives/2009/02/47/</link>
		<comments>http://blog.eduardofleury.com/archives/2009/02/47/#comments</comments>
		<pubDate>Tue, 03 Feb 2009 21:00:45 +0000</pubDate>
		<dc:creator>fleury</dc:creator>
				<category><![CDATA[Media]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Português]]></category>

		<guid isPermaLink="false">http://blog.eduardofleury.com/?p=47</guid>
		<description><![CDATA[Azul iniciou nesta tarde a venda de passagens para o trecho VCP-REC-VCP para vôos a partir do dia 18 de fevereiro. O vôo inicial já antecipado no Contato Radar é o seguinte: AZU 4151 (diário) OPR E195 2200 VCP 0115 REC AZU 4152 (diário) OPR E195 0245 REC 0600 VCP Espera-se que em breve inicie-se [...]]]></description>
			<content:encoded><![CDATA[<p>Azul iniciou nesta tarde a venda de passagens para o trecho <strong>VCP-REC-VCP</strong> para vôos a partir do dia 18 de fevereiro.</p>
<p>O vôo inicial já antecipado no Contato Radar é o seguinte:</p>
<p>AZU 4151 (diário) OPR E195<br />
<strong>2200</strong> VCP <strong>0115</strong> REC</p>
<p>AZU 4152 (diário) OPR E195<br />
<strong>0245</strong> REC <strong>0600</strong> VCP</p>
<p>Espera-se que em breve inicie-se o segundo diário nos seguintes horários:</p>
<p>AZU 4150 (diário) OPR E190<br />
0955 VCP 1310 REC</p>
<p>AZU 4149 (diário) OPR E190<br />
1340 REC 1655 VCP</p>
<p>Valor do trecho por enquanto, na Azul, incluindo datas do Carnaval é de <strong>R$ 239,00</strong> .</p>
<p>Para comparação, na TAM, simulação para o início de Marco:<br />
- Voando para GRU, R$ 389,50.<br />
- Voando para VCP (com conexão), R$ 549,50.</p>
<p>Expectativa para diminuição dos preços por parte das congêneres.  <img src='http://blog.eduardofleury.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.voeazul.com.br" target="_blank">www.voeazul.com.br</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.eduardofleury.com/archives/2009/02/47/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>emerge world reinstalling everything&#8230; not anymore :-)</title>
		<link>http://blog.eduardofleury.com/archives/2008/08/32/</link>
		<comments>http://blog.eduardofleury.com/archives/2008/08/32/#comments</comments>
		<pubDate>Wed, 20 Aug 2008 23:08:08 +0000</pubDate>
		<dc:creator>fleury</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[emerge]]></category>
		<category><![CDATA[portage]]></category>

		<guid isPermaLink="false">http://blog.eduardofleury.com/?p=32</guid>
		<description><![CDATA[I&#8217;m running ~x86 Gentoo here, eix-sync &#38;&#38; emerge -Dav world every few days till something strange started happening. Portage wanted to reinstall everything, I mean, hundreds of packages to the same version as before, no new use, no new anything, just reinstall all packages for the pleasure of compiling and heating up my Macbook pro [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m running ~x86 Gentoo here, eix-sync &amp;&amp; emerge -Dav world every few days till something strange started happening. Portage wanted to reinstall everything, I mean, hundreds of packages to the same version as before, no new use, no new anything, just reinstall all packages for the pleasure of compiling and heating up my Macbook pro <img src='http://blog.eduardofleury.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Well, now I figured out that <strong>adding the &#8220;-u&#8221; flag to emerge restored the expected behaviour</strong>.</p>
<p>Maybe I was supposed to use &#8220;-u&#8221; since day one but the fact is I didn&#8217;t, and emerge worked fine until now. Anyway, if any of you face the same issue, try &#8220;-u&#8221;.</p>
<p>Cheers,</p>
<p>Fleury</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.eduardofleury.com/archives/2008/08/32/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Time for change&#8230;</title>
		<link>http://blog.eduardofleury.com/archives/2008/03/22/</link>
		<comments>http://blog.eduardofleury.com/archives/2008/03/22/#comments</comments>
		<pubDate>Tue, 18 Mar 2008 20:51:25 +0000</pubDate>
		<dc:creator>fleury</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://blog.eduardofleury.com/archives/2008/03/22/</guid>
		<description><![CDATA[After two years working for LTC at IBM Brasil I decided it was time for new challenges and accepted an offer from INdT &#8211; Instituto Nokia de Tecnologia (Nokia&#8217;s Institute of Technology) for a Researcher position. Since March 3rd, 2008 I live and work in Recife, PE, northeast of Brazil and work in the Canola [...]]]></description>
			<content:encoded><![CDATA[<p>After two years working for LTC at IBM Brasil I decided it was time for new challenges and accepted an offer from INdT &#8211; Instituto Nokia de Tecnologia (Nokia&#8217;s Institute of Technology) for a Researcher position.</p>
<p>Since March 3rd, 2008 I live and work in Recife, PE, northeast of Brazil and work in the Canola project. You can now reach me at #canola @ freenode, look for &#8220;efleury&#8221;.</p>
<p>Right now I&#8217;m attending to the Bossa Conference on Open Source Software for Mobile Embedded Platforms &#8217;08 in Porto de Galinhas, PE. Watch for some photos soon.</p>
<p>More info at: http://www.bossaconference.indt.org/</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.eduardofleury.com/archives/2008/03/22/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>New blog on air ;-)</title>
		<link>http://blog.eduardofleury.com/archives/2007/10/15/</link>
		<comments>http://blog.eduardofleury.com/archives/2007/10/15/#comments</comments>
		<pubDate>Tue, 09 Oct 2007 14:42:02 +0000</pubDate>
		<dc:creator>fleury</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[Misc Links]]></category>

		<guid isPermaLink="false">http://blog.eduardofleury.com/archives/2007/10/15/</guid>
		<description><![CDATA[Hi all, today this space is dedicated to promote a blog just created by someone I love My girlfriend Fabi. Fabi, bienvenue a le monde du blogs!!! http://fabithome.blogspot.com]]></description>
			<content:encoded><![CDATA[<p>Hi all, today this space is dedicated to promote a blog just created by someone I love <img src='http://blog.eduardofleury.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  My girlfriend <a href="http://fabithome.blogspot.com" target="_blank">Fabi</a>.</p>
<p>Fabi, bienvenue a le monde du blogs!!! <img src='http://blog.eduardofleury.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>http://fabithome.blogspot.com</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.eduardofleury.com/archives/2007/10/15/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Now on air&#8230;</title>
		<link>http://blog.eduardofleury.com/archives/2007/08/10/</link>
		<comments>http://blog.eduardofleury.com/archives/2007/08/10/#comments</comments>
		<pubDate>Tue, 21 Aug 2007 19:19:12 +0000</pubDate>
		<dc:creator>fleury</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Media]]></category>

		<guid isPermaLink="false">http://blog.eduardofleury.com/archives/2007/08/10/</guid>
		<description><![CDATA[A few nice songs I heard today 2.10pm David Bowie &#8211; Ashes to Ashes. 2.21pm Manic Street Preachers &#8211; Autumnsong 2.40pm Alanis Morissette &#8211; Ironic 3.48pm The Clash &#8211; Should I Stay or Should I Go 3:59pm Snow Patrol &#8211; Chasing Cars 4:07pm Stereophonics &#8211; It means nothing 5:25pm Amy MacDonald &#8211; Mr rock Cheers!]]></description>
			<content:encoded><![CDATA[<p>A few nice songs I heard today <img src='http://blog.eduardofleury.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>2.10pm    <strong>David Bowie</strong> &#8211; Ashes to Ashes.</p>
<p>2.21pm    <strong>Manic Street Preachers</strong> &#8211; Autumnsong</p>
<p>2.40pm    <strong>Alanis Morissette</strong> &#8211; Ironic</p>
<p>3.48pm    <strong>The Clash</strong> &#8211; Should I Stay or Should I Go</p>
<p>3:59pm    <strong>Snow Patrol</strong> &#8211; Chasing Cars</p>
<p>4:07pm    <strong>Stereophonics</strong> &#8211; It means nothing</p>
<p>5:25pm <strong>Amy MacDonald</strong> &#8211; Mr rock</p>
<p>Cheers!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.eduardofleury.com/archives/2007/08/10/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Media Corner &#8211; What I&#8217;m listening to&#8230;</title>
		<link>http://blog.eduardofleury.com/archives/2007/08/5/</link>
		<comments>http://blog.eduardofleury.com/archives/2007/08/5/#comments</comments>
		<pubDate>Wed, 15 Aug 2007 20:39:27 +0000</pubDate>
		<dc:creator>fleury</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[Misc Links]]></category>

		<guid isPermaLink="false">http://blog.eduardofleury.com/?p=5</guid>
		<description><![CDATA[So, listening to music is something I do all day long&#8230; And what can be nicer than listening to a nice piece of music for the very first time? With this in mind I&#8217;m starting this section to share some of my music tastes, grab your headphones and enjoy! Feel free to comment, suggest, whatever [...]]]></description>
			<content:encoded><![CDATA[<p>So, listening to music is something I do all day long&#8230; And what can be nicer than listening to a nice piece of music for the very first time?</p>
<p>With this in mind I&#8217;m starting this section to share some of my music tastes, grab your headphones and enjoy! Feel free to comment, suggest, whatever u want <img src='http://blog.eduardofleury.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>And now&#8230; I&#8217;m listening to London&#8217;s Virgin radio, check it out @ <a href="http://www.virginradio.co.uk/listen/" title="Listen to Virgin Radio" target="_blank">http://www.virginradio.co.uk/listen/</a></p>
<p>A first time suggestion by <a href="http://labs.morpheuz.eng.br/blog" title="Morpheuz's Blog" target="_blank">Morpheuz</a>!</p>
<p>Cheers!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.eduardofleury.com/archives/2007/08/5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
