<sect1 id="windows-how-to-work">
<sect1info>
<authorgroup>
<author
>&Philip.Rodrigues; </author>
</authorgroup>
</sect1info>


<title
>Janelas, Como Lidar com Elas</title>

<sect2 id="basic-window-management">
<title
>Gerenciamento de Janelas Básico</title>
<indexterm
><primary
>Gerenciamento de Janelas</primary
></indexterm>

<para
>Cado aplicativo que roda no &kde; possui a sua própria janela e alguns aplicativos poderão usar mais de uma janela. Você poderá manipular estas janelas de várias formas para fazer com que a sua área de trabalho lhe auxilie. Aqui está uma janela normal: <screenshot
> <mediaobject>
<imageobject>
<imagedata fileref="a-window.png" format="PNG"/>
</imageobject>
<textobject
><phrase
>Uma janela normal</phrase>
</textobject>
</mediaobject>
</screenshot>
</para>

<sect3 id="switching-between-windows">
<title
>Alternando Entre Janelas</title
> 
<indexterm
><primary
>Foco (janelas)</primary
></indexterm>

<para
>Se você quiser usar uma janela, ela precisa de estar ativa. Uma janela fica automaticamente ativa quando ela é aberta, de modo que o aplicativo que abriu fica logo pronto para uso. Só poderá existir uma janela ativa de cada vez. A janela ativa é aquela em que você poderá digitar em determinado momento e poderá ser distinguida das outras pela cor diferente na barra de tarefas. (Com o tema padrão do &kde;, a janela ativa tem uma cor <replaceable
>azul clara</replaceable
> na barra de tarefas, enquanto as janelas inativas possuem uma cor <replaceable
>cinza</replaceable
>.)</para>

<para>
<indexterm
><primary
>Elevando Janelas</primary
></indexterm
> Quando você quiser trabalhar numa janela diferente, terá que tornar a outra janela ativa. Existem duas formas de fazer isto: <itemizedlist>

<listitem>
<para
>Clique com o &LMB; na janela que deseja tornar ativa. A janela ficará ativa e passará para a frente das outras janelas se elas estiverem sobrepostas.</para>
</listitem>

<listitem>
<para
><indexterm
><primary
><keycombo
action="simul"
>&Alt;&Tab;</keycombo
></primary
></indexterm
> Mantenha pressionada a tecla &Alt; e pressione &Tab; (não solte a tecla &Alt;). Aparecerá um diálogo com uma lista das janelas disponíveis, onde uma delas fica realçada. Você poderá selecionar uma janela diferente pressionando &Tab; novamente para percorrer a lista, mantendo ainda a tecla &Alt; pressionada. Quando soltar essa tecla, a janela que estava realçada se torna ativa.</para>
</listitem>
</itemizedlist>
</para>

</sect3>

<sect3 id="moving-windows">
<title
>Movendo Janelas</title>
<indexterm
><primary
>Movendo Janelas</primary
></indexterm>

<para
>A primeira forma de organizar as janelas na sua área de trabalho é mudar a sua posição. Você poderá mover as janelas para que elas sobreponham outras ou para que possa ver uma determinada janela por inteiro. Existem três formas de mover uma janela: <itemizedlist>
<listitem>
<para
>Clique com o &LMB; na barra do título da janela e mantenha-o pressionado. Mova o cursor do mouse para que então a janela se mova com ele. Solte o botão do mouse para a janela ficar onde você a deixou.</para>
</listitem>

<!-- FIXME:  OK, so the screenie sucks, but it shows the idea --> 
<!-- In fact, maybe it's not even necessary: just mention the previous -->
<!-- screenshot (having callouts on it would be nice) -->
<listitem>
<indexterm
><primary
>Menu da Janela</primary
></indexterm>
<screenshot>
<screeninfo
>O Menu da Janela</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="titlebar-menu.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>O Menu da Janela</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Abra o menu da janela com o botão mais à esquerda na barra de título da janela e selecione a opção <guimenuitem
>Mover</guimenuitem
>. O cursor do mouse passa para o centro da janela atual e, se mover o mouse, você poderá mudar a janela de posição. Logo que tenha movido a janela para a posição que deseja, clique no &LMB; para soltá-la.</para>
</listitem>

<listitem>
<para
>Mantenha pressionado o &Alt; e o &LMB; quando o cursor do mouse estiver por cima da janela que deseja mover. O cursor do mouse muda para uma bússola e, movendo o mouse, você também mudará a janela de posição. Basta soltar o botão do mouse para soltar a janela. Este método é particularmente útil se a barra do título da janela estiver fora da tela, de modo que não consiga usar os outros métodos.</para>
</listitem>
</itemizedlist>
</para>

</sect3>

<sect3 id="resizing-windows">
<title
>Redimensionando Janelas</title>

<indexterm
><primary
>Redimensionando Janelas</primary
></indexterm>

<para
>Você poderá tornar as janelas maiores ou menores, mais largas ou mais estreitas, de uma de duas formas. Vocêpode usar a que lhe for mais confortável: <itemizedlist>
<listitem>
<para
>Mova o cursor do mouse para cima do contorno da janela (é a azul claro na captura de tela acima). O cursor irá mudar para uma seta dupla. Clique e arraste o cursor, para que o contorno da janela siga o cursor do mouse, tornando a janela maior ou menor. Se você clicar nos contornos em cima ou em baixo na janela, poderá ajustar a própria altura da janela. Clicando nos contornos à esquerda ou à direita da janela, você poderá ajustar a largura. Para mudar ambas as dimensões ao mesmo tempo, mude o cursor para cima de um canto da janela. Quando o cursor ficar uma seta dupla na diagonal, clique e arraste.</para>
</listitem>
<listitem>
<para
>Use o botão mais à esquerda da barra de título para mostrar o menu da janela. Escolha o item <guimenuitem
>Redimensionar</guimenuitem
> para que o cursor do mouse passe para uma seta dupla. Mova o cursor para redimensionar a janela e clique com o &LMB;, quando tiver terminado, para soltar a janela.</para>
</listitem>
<listitem>
<para
>Se não conseguir ver o contorno da janela ou o botão do menu da janela, poderá usar o &Alt; e o &RMB;: Mantenha pressionada tecla &Alt; e arraste a janela com o &RMB;. A janela irá deste modo mudar de tamanho. Você poderá soltar depois o &RMB; quando tiver terminado. </para>
</listitem>
</itemizedlist>
</para>

<para
>Se quiser tornar uma janela a maior possível, de modo a ocupar toda a tela, use o botão para <guibutton
>Maximizar<indexterm
><primary
>Maximizar Janela</primary
></indexterm
></guibutton
>, que é o segundo botão a partir da direita da barra de título da janela. Clicando com o &LMB; neste botão você irá tornar a janela a maior possível em ambas as direções enquanto que, clicando com o &MMB;<indexterm
><primary
>Maximizar Janela</primary
><secondary
>Verticalmente</secondary
></indexterm
> ou com o &RMB;<indexterm
><primary
>Maximizar Janela</primary
><secondary
>Horizontalmente</secondary
></indexterm
> aumentará o tamanho da janela apenas nas direções horizontal e vertical, respectivamente.</para>


</sect3>

<sect3 id="hiding-windows">
<title
>Ocultando Janelas</title>
<indexterm
><primary
>Ocultando Janelas</primary
></indexterm>

<!-- TODO: Screenshot of the minimize button -->
<para>
<indexterm
><primary
>Minimizar</primary
></indexterm
> Quando precisar manter um programa aberto, mas não quiser que ele ocupe espaço na sua área de trabalho, você poderá minimizá-lo ou enrolá-lo. Para minimizar uma janela, clique no botão <guibutton
>Minimizar</guibutton
> que é o terceiro a partir da direita na barra de título da janela. A janela não ficará visível, mas o programa irá continuar rodando, aparecendo um item para ele na barra de tarefas do painel. Para mostrar a janela novamente, clique no item respectivo na barra de tarefas. Você poderá usar também o <keycombo action="simul"
>&Alt;&Tab;</keycombo
><indexterm
><primary
><keycombo action="simul"
>&Alt;&Tab;</keycombo
></primary
></indexterm
>: veja a seção <xref linkend="switching-between-windows"/>.</para>

<para>
<indexterm
><primary
>Enrolar</primary
></indexterm
> As janelas enroladas são muito semelhantes às minimizadas mas, neste caso, só fica visível a barra de título da janela. Para enrolar uma janela, faça duplo-clique na barra de título. Para restaurar (torná-la visível) a janela, basta fazer duplo-clique na barra de título novamente.</para>
</sect3>


<sect3 id="closing-windows">
<title
>Fechando Janelas</title>

<indexterm
><primary
>Fechando Janelas</primary
></indexterm>

<para
>Quando acabar de usar um aplicativo, você desejará parar o aplicativo e fechar a sua janela. Mais uma vez, você tem a chance de usar algumas opções: <itemizedlist>
<listitem>
<para
>Clique no botão mais à direita da barra de título da janela. Se você estiver editando um documento com esse aplicativo, será pedido para <guibutton
>Salvar</guibutton
> as suas alterações, <guibutton
>Descartar</guibutton
> as alterações ou <guibutton
>Cancelar</guibutton
> a sua ordem para fechar o aplicativo.</para>
</listitem>
<listitem>
<para
>Use a opção <menuchoice
><guimenu
>Arquivo</guimenu
><guimenuitem
>Sair</guimenuitem
> </menuchoice
> do menu. Serão mostradas as mesmas opções para <guibutton
>Salvar</guibutton
>, <guibutton
>Descartar</guibutton
> ou <guibutton
>Cancelar</guibutton
>.</para>
</listitem>
<listitem>
<para
>Clique em <keycombo action="simul"
>&Alt;<keycap
>F4</keycap
></keycombo
><indexterm
><primary
><keycombo action="simul"
>&Alt;<keycap
>F4</keycap
> </keycombo
></primary
></indexterm
> . Mais uma vez, irá aparecer o diálogo de confirmação se estiver editando algum documento.</para>
</listitem>
</itemizedlist>
</para>

</sect3>

<!-- Let's try organising this a different way
<para
>The bar along the top is called the titlebar, and contains most
of the things you'll need to manipulate the window. Let's take a
closer look:
<screenshot>
<mediaobject>
<imageobject>
<imagedata fileref="titlebar.png" format="png"/>
</imageobject>
<textobject
><phrase
>A window titlebar</phrase>
</textobject>
</mediaobject>
</screenshot>
<note
><para
>This screenshot shows the titlebar which appears in the
default &kde; configuration. The exact appearance on your system may
be slightly different, but the functions are similar.</para>
</note>
-->

<!-- TODO:Note &MMB; mouse button/&RMB mouse button on maximize for
vertical/horizontal maximization. Or is this advanced? -->

</sect2>

<sect2 id="advanced-window-management">
<title
>Gerenciamento Avançado de Janelas</title>

<para
>kstart</para>
<sect3 id="kstart">
<sect3info>
<author
>&Richard.J.Moore; &Richard.J.Moore.mail; </author>
</sect3info>
<title
><application
>kstart</application
></title
> 

<para
>A forma mais simples de acessar aos recurso de gerenciamento avançado de janelas no &kde; é usando um pequeno utilitário chamado <application
>kstart</application
>, que vem incluído no &kde; 2.1 e posteriores. O <application
>kstart</application
> permite-lhe controlar a forma como um aplicativo interage com o gerenciador de janelas. O comando é normalmente usado para definir comportamentos especiais para os aplicativos mais usados, mas também pode ser útil para integrar aplicativos que não sejam do &kde; no seu ambiente de trabalho.</para>

<para
>A utilização do <application
>kstart</application
> é simples: basta você colocar o <userinput
><command
>kstart</command
></userinput
> e algumas opções antes de um comando. Para começar, vejamos como você pode usar o <application
>kstart</application
> para personalizar o comportamento de uma janela do &kcalc;. O comando que será usado é o seguinte: <screen
><prompt
>%</prompt
> <userinput
><command
>kstart</command
> <option
>--ontop</option
> <option
>--alldesktops</option
> <option
>kcalc</option
></userinput
></screen>
</para>

<para
>Com alguma sorte, o efeito que este comando fará deverá ser bastante óbvio - a janela do 'kcalc' ficará por cima de todas as outras e ficará visível em todas as áreas de trabalhos virtuais. Um recurso que será menos óbvio é que este comando irá funcionar com qualquer ambiente compatível com a norma NET, não apenas com o &kde;.</para>

<para
>Nós podemos passar argumentos aos programas que invocamos com o <application
>kstart</application
>, como de costume, como é demonstrado no seguinte exemplo: <screen
><prompt
>%</prompt
> <userinput
><command
>kstart</command>
<option
>--skiptaskbar</option
> <option
>--desktop</option>
1 xmessage'Olá Mundo'</userinput
></screen>

</para>

<para
>Este comando mostra a mensagem <computeroutput
>Olá Mundo</computeroutput
> com o <application
>xmessage</application
> e garante que a imagem será mostrada na primeira área de trabalho virtual e será omitida da barra de tarefas. O fato de que este programa é feito com a arquitetura do Xt em vez de ser um aplicativo nativo do &kde; não irá causar qualquer problema para o <application
>kstart</application
>, esperando mostrar desta forma como o <application
>kstart</application
> poderá ser usado para integrar aplicativos legados no seu ambiente de trabalho do &kde;.</para>
</sect3>

<sect3 id="system-tray">
<sect3info>
<author
>&Richard.J.Moore; &Richard.J.Moore.mail; </author>
</sect3info>

<title
>A Bandeja do Sistema</title>

<para
>Agora que sabemos como personalizar a decoração de uma janela, vejamos outro aspecto da área de trabalho: a bandeja do sistema. Esta é uma área onde uma determinado aplicativo poderá mostrar uma pequena janela. É usada para mostrar a informação de estado ou para oferecer um acesso rápido aos comandos. Uma janela que tenha um item na bandeja do sistema normalmente desaparece do gerenciador de tarefas quando é minimizada, sendo o ícone da bandeja um substituto. Normalmente, os ícones de bandeja são desenvolvidos especificamente como parte de um aplicativo porém, como acontece com as decorações das janelas, o &kde; oferece uma ferramenta para alterar isto: o <application
>ksystraycmd</application
>.</para>

<para
>Para começar, vamos pegar o aplicativo &kcalc; e transformá-lo num aplicativo de bandeja do sistema. Isto é conseguido com um comando simples: <screen
><prompt
>%</prompt
> <userinput
><command
>ksystraycmd</command
> <option
>--title</option
> 'kcalc' kcalc</userinput
></screen>

</para>

<para
>O ícone mostrado na bandeja é o que está indicado nas dicas da janela e será atualizado se o ícone mudar. O título da janela é mostrado como uma dica, se mantiver o mouse sobre o ícone. O <application
>ksystraycmd</application
> segue o comportamento padrão do &kde; de modo que a janela-alvo poderá ser mostrada ou oculta clicando o ícone da bandeja, estando um menu de contexto padrão disponível. </para>

<screenshot
> <mediaobject
> <imageobject
><imagedata
fileref="kcalc-systray.png"
></imagedata
></imageobject>
</mediaobject
></screenshot>
</sect3>

<sect3 id="more-complex-uses-of-ksystraycmd">
<sect3info>
<author
>&Richard.J.Moore; &Richard.J.Moore.mail; </author>
</sect3info>

<title
>Usos Mais Complexos do <application
>ksystraycmd</application
></title>

<para
>Para ilustrar os outros recursos do <application
>ksystraycmd</application
>, será usado um exemplo mais complicado: uma janela do &konsole; que vai rastreando o arquivo <filename
>.xsession-errors</filename
> (ele é o registro que guarda o que acontece no seu ambiente de trabalho). Para começar, vamos ver como isto poderá ser conseguido: <screen
><prompt
>%</prompt
> <userinput
><command
>konsole</command
> <option
>--icon</option>
log <option
>--caption</option
> 'Registro do X' \ 
<option
>--nomenubar</option
> <option
>--notabbar</option>
<option
>--noframe</option
> \ 
<option
>-e</option
> tail -f ~/.xsession-errors</userinput
></screen>
</para>

 <para
>Os argumentos <option
>--caption</option
> e <option
>--icon</option
> são oferecidos como padrão nos aplicativos do &kde;. Você poderá obter uma lista destas opções globais, executando o aplicativo com os parâmetros <option
>--help-kde</option
> e <option
>--help-qt</option
>. Aqui, você poderá atribuir à nossa janela do &konsole; o título 'Registro do X' e o ícone <quote
>log</quote
>. Você poderá usar estas opções com qualquer aplicativo do &kde; e, tal como mencionado acima, o <application
>ksystraycmd</application
> leva isso em conta ao criar o ícone na bandeja. O argumento <option
>-e</option
> é específico do &konsole; e diz para executar o comando <command
>less</command
>. Apesar da sua complexidade, esta janela poderá ser movida para a bandeja facilmente com o <application
>ksystraycmd</application
>: <screen
><prompt
>%</prompt
> <userinput
><command
>ksystraycmd</command>
<option
>--hidden</option
> <option
>--title</option
> 'Registro do X' \
konsole --icon log --caption 'XLog' \ 
--nomenubar --notabbar --noframe \ 
-e tail -f .xsession-errors</userinput
></screen>
</para>

 <para
>Além de ser o comando mais complexo usado até agora, este exemplo demonstra a opção <option
>--hidden</option
> que inicia o comando apenas com o ícone da bandeja de sistema visível. Este exemplo atinge o nosso objetivo de oferecer um acesso rápido ao registro, mas poderemos fazer as coisas um pouco mais eficientes se só executarmos o processo do &konsole; quando estiver visível. O comando a usar é <screen
><prompt
>%</prompt
> <userinput
><command
>ksystraycmd</command
> <option
>--startonshow</option
> \
 --<option
>icon</option
> log <option
>--tooltip</option
> 'Registro do X' \ 
konsole --icon log --caption 'Registro do X' \
--nomenubar --notabbar --noframe \
-e tail -f ~/.xsession-errors</userinput
></screen>
</para>

<para
>A adição do parâmetro <option
>--startonshow</option
> diz ao <application
>ksystraycmd</application
> para iniciar apenas com o ícone da bandeja visível (como no parâmetro <option
>--hidden</option
>) e para esperar até que o usuário ative o ícone da bandeja antes de executar o comando-alvo. Foi também usado o parâmetro <option
>--quitonhide</option
>, que indica ao <application
>ksystraycmd</application
> para terminar o aplicativo-alvo, sempre que a sua janela estiver oculta. Usando ambos os parâmetros, você garante que o ícone da bandeja do &konsole; não desperdiça recursos se não estiver usando-o. A criação e destruição da janela-alvo, tal como feita aqui, evita que o funcionamento padrão do ícone e do título para o <application
>ksystraycmd</application
> funcione, por isso é necessário indicar também o ícone inicial e a dica explicitamente.</para>
</sect3>

<sect3 id="improving-reliability">
<sect3info>
<author
>&Richard.J.Moore; &Richard.J.Moore.mail; </author>
</sect3info>

<title
>Melhorando a Confiabilidade</title>

<para
>Em todos os exemplos anteriores, nos baseamos no <application
>kstart</application
> e no <application
>ksystraycmd</application
> para descobrir a janela que desejamos afetar e, a menos que seja indicado algo em contrário, eles assumem que a primeira janela que aparece é a desejada. Esta política está correta normalmente, uma vez que o aplicativo está sendo iniciada ao mesmo tempo, mas poderá ocorrer problemas se estiverem aparecendo várias janelas (como na inicialização do sistema). Para tornar os comandos mais robustos, poderá ser usado o parâmetro <option
>--window</option
>. Ele indica o título da janela-alvo. Segue-se um exemplo do parâmetro <option
>--window</option
> para garantir que é afetada uma determinada janela do Konsole: <screen
><prompt
>%</prompt
> <userinput
><command
>kstart</command
> <option
>--iconify</option
> <option
>--window</option
> 'kstart_me' konsole
--caption 'kstart_me' -e tail -f
~/.xsession-errors</userinput
></screen>

</para>

<para
>Aqui foi usada a técnica testada de indicar um título tanto para o <application
>kstart</application
> como para o aplicativo-alvo. Esta é, normalmente, a melhor maneira de usar o <application
>kstart</application
> e o <application
>ksystraycmd</application
>. O argumento <option
>--window</option
> é suportado tanto pelo <application
>kstart</application
> como pelo <option
>ksystraycmd</option
> e poderá ser uma expressão regular (&eg; <quote
>janela[0-9]</quote
>), assim como um determinado título em particular. (As expressões regulares são uma ferramenta de correspondência de padrões que você poderá constatar que é usada em todo o &kde;.) </para
></sect3>

</sect2>

<sect2 id="using-multiple-desktops">
<title
>Usando Múltiplas Áreas de Trabalho</title>

<indexterm
><primary
>Áreas de Trabalho Virtuais</primary
></indexterm>
<indexterm
><primary
>Múltiplas Áreas de Trabalhos</primary
></indexterm>

<para
>Em alguns casos, o espaço de um tela não é suficiente. Se você usar muitos aplicativos ao mesmo tempo e se sentir afundado em várias janelas, as áreas de trabalhos virtuais oferecem a solução para isso. Por padrão, o &kde; possui quatro áreas de trabalho virtuais, sendo cada uma delas como se fosse um área de trabalho separada: você poderá abrir e mover as janelas nelas, definir os ícones e o fundo para cada uma dessas áreas de trabalho. Se sentir-se familiarizado com o conceito de terminais virtuais, não terá problemas com as áreas de trabalho virtuais do &kde;.</para>

<sect3 id="switching-virtual-desktops">
<title
>Alternando Entre Áreas de Trabalho Virtuais</title>
<para
>Para mudar para um área de trabalho virtual diferente, você poderá usar o <keycombo action="simul"
>&Ctrl;&Tab; </keycombo
> da mesma forma que usa o <keycombo action="simul"
>&Alt;&Tab; </keycombo
> para alternar entre janelas (veja em <xref linkend="switching-between-windows"/>): Mantenha pressionado o &Ctrl; e depois vá pressionando &Tab;. Aparecerá uma pequena janela que mostra as áreas de trabalho virtuais, estando uma delas selecionada. Se você soltar o &Ctrl;, o &kde; irá mudar para a área de trabalho virtual selecionada. Para selecionar uma área de trabalho diferente, clique repetidamente em &Tab;, enquanto mantém o &Ctrl; pressionado. A seleção vai percorrendo as várias áreas de trabalho disponíveis. Quando a área de trabalho para a qual deseja mudar estiver selecionada, solte a tecla &Ctrl;.</para>

<!-- TODO: Write about the desktop pager thing -->

</sect3>

<sect3 id="windows-and-virtual-desktops">
<title
>Janelas e Áreas de Trabalho Virtuais</title>
<para
>Você poderá mudar as janelas de área de trabalho virtual com a opção <guisubmenu
>Para a Área de Trabalho</guisubmenu
> do menu da janela. Basta selecionar a área de trabalho para a qual deseja mover a janela. Você poderá fazer a janela aparecer em todas as áreas de trabalho com o item <guimenuitem
>Todas as Áreas de Trabalho</guimenuitem
><indexterm
><primary
>Pregar Janela</primary
></indexterm
>.</para>

<!-- Add links to "further reading" here -->
<itemizedlist>
<title
>Informações Relacionadas</title>
<listitem
><para
></para>
</listitem>
</itemizedlist>


</sect3>


</sect2>

</sect1>
<!-- Keep this comment at the end of the file
Local variables:
mode: xml
sgml-omittag:nil
sgml-shorttag:nil
sgml-namecase-general:nil
sgml-general-insert-case:lower
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:0
sgml-indent-data:true
sgml-parent-document:("index.docbook" "book" "sect1")
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->
