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


<title
>Ventanas, cómo trabajar con ellas</title>

<sect2 id="basic-window-management">
<title
>Administración básica de ventanas</title>
<indexterm
><primary
>Gestión de ventanas</primary
></indexterm>

<para
>Cada aplicación que se ejecuta en &kde; tiene su propia ventana, y algunas aplicaciones pueden utilizar más de una. Puede manipular estas ventanas de forma que su escritorio trabaje para usted. Aquí se muestra una ventana normal: <screenshot
> <mediaobject>
<imageobject>
<imagedata fileref="a-window.png" format="PNG"/>
</imageobject>
<textobject
><phrase
>Una ventana normal</phrase>
</textobject>
</mediaobject>
</screenshot>
</para>

<sect3 id="switching-between-windows">
<title
>Cambiar entre ventanas</title
> 
<indexterm
><primary
>Foco (ventanas)</primary
></indexterm>

<para
>Si desea utilizar una ventana, ésta deberá estar activa. Una ventana se vuelve activa de forma automática cuando la abre, por tanto cuando abre una aplicación ésta está inmediatamente preparada para ser utilizada. Solo puede haber una ventana activa a la vez. La ventana activa es aquella en la que puede teclear, y se distingue del resto puesto que la barra de título tiene diferente color. (Con el tema predeterminado de &kde;, la ventana activa tiene una barra de título <replaceable
>azul claro</replaceable
>, y las ventanas inactivas tienen barras de título <replaceable
>gris</replaceable
>).</para>

<para>
<indexterm
><primary
>Levantar la ventana</primary
></indexterm
> Cuando quiera trabajar en un ventana diferente, necesitará que se vuelva activa. Hay dos formas de conseguirlo: <itemizedlist>

<listitem>
<para
>Pulsar el &LMB; del ratón sobre la ventana que quiere volver activa. La ventana se activará y aparecerá sobre el resto si es que estaba solapada.</para>
</listitem>

<listitem>
<para
><indexterm
><primary
><keycombo
action="simul"
>&Alt;&Tab;</keycombo
></primary
></indexterm
> Mantenga pulsada la tecla &Alt; y pulse &Tab; (no suelte la tecla &Alt;). Aparecerá un diálogo con la lista de las ventanas disponibles, una de las cuales estará resaltada. Puede seleccionar una ventana diferente pulsando nuevamente &Tab; para moverse a través de la lista, manteniendo siempre pulsada la tecla &Alt;. Cuando suelte la tecla &Alt;. La ventana que estaba resaltada se activará.</para>
</listitem>
</itemizedlist>
</para>

</sect3>

<sect3 id="moving-windows">
<title
>Mover ventanas</title>
<indexterm
><primary
>Mover ventanas</primary
></indexterm>

<para
>La primera forma de organizar las ventanas de su escritorio es moverlas por él. Puede mover las ventanas aunque se solapen unas a otras, o puede ver la pantalla completa. Existen tres formas de mover una ventana: <itemizedlist>
<listitem>
<para
>Pulsar sobre el &LMB; del ratón en la barra de título de la ventana y mantenerlo pulsado. Mueva el cursor del ratón y la ventana se moverá con él. Suelte el botón del ratón, y la ventana se quedará en el lugar en que la haya dejado.</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
>Menú de la ventana</primary
></indexterm>
<screenshot>
<screeninfo
>El menú de la ventana</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="titlebar-menu.png" format="PNG"/>
</imageobject>
<textobject>
<phrase
>El menú de la ventana</phrase>
</textobject>
</mediaobject>
</screenshot>

<para
>Abra el menú de la ventana utilizando el botón situado a la izquierda de la barra de título de la ventana, y seleccione <guimenuitem
>Mover</guimenuitem
>. El cursor del ratón se desplazará al centro de la ventana actual de forma que al mover el ratón, moverá la ventana. Una vez que haya terminado de mover la ventana a la posición deseada, pulse sobre el &LMB; del ratón para fijarla.</para>
</listitem>

<listitem>
<para
>Mantenga pulsada &Alt; y el &LMB; del ratón cuando el cursor del ratón esté sobre la ventana que desee mover. El cursor del ratón cambia a una brújula y moviendo el ratón podrá desplazar la ventana. Suelte el botón del ratón para fijar la ventana. Este método es muy práctico si la barra de título de la ventana se ha movido fuera de los límites de la pantalla, de forma que no es posible utilizar los otros métodos.</para>
</listitem>
</itemizedlist>
</para>

</sect3>

<sect3 id="resizing-windows">
<title
>Redimensionar las ventanas</title>

<indexterm
><primary
>Redimensionar las ventanas</primary
></indexterm>

<para
>Puede agrandar o reducir las ventanas de dos formas. Utilice la que más cómoda le resulte: <itemizedlist>
<listitem>
<para
>Mueva el cursor del ratón sobre el borde de la ventana (la de color azul claro en la captura de pantalla anterior). El puntero se convertirá en una flecha con dos cabezas. Pulse y arrastre, y el borde de la ventana seguirá al cursor del ratón, haciendo que la ventana sea más grande o más pequeña. Si pulsa sobre los bordes de la parte superior o inferior de la ventana podrá ajustar la altura. Si pulsa sobre los bordes izquierdo o derecho de la ventana, podrá ajustar la anchura. Para cambiar ambos a la vez, desplace el cursor hasta la esquina de la ventana. Cuando el cursor se convierta en una cruz de flechas diagonal con doble cabeza, pulse y arrastre.</para>
</listitem>
<listitem>
<para
>Utilice el botón que se encuentra en la parte izquierda de la barra de título para mostrar el menú. Seleccione la entrada <guimenuitem
>Redimensionar</guimenuitem
>, y el puntero del ratón se convertirá en una flecha con doble cabeza. Mueva el cursor para redimensionarla, y pulse el &LMB; del ratón cuando haya finalizado para fijar la ventana.</para>
</listitem>
<listitem>
<para
>Si no puede ver el borde de la ventana o el botón del menú de la ventana, puede utilizar &Alt; y el &RMB; del ratón: Mantenga pulsada &Alt; y arrastre con el &RMB; del ratón. La ventana se redimensionará. Suelte el &RMB; del ratón cuando haya finalizado. </para>
</listitem>
</itemizedlist>
</para>

<para
>Si lo que quiere es hacer la ventana lo más grande posible, es decir que ocupe la pantalla completa, utilice el botón <guibutton
>Maximizar<indexterm
><primary
>Maximizar ventanas</primary
></indexterm
></guibutton
>, que es el segundo botón de la derecha de la barra de título de la ventana. Pulsar con el &LMB; del ratón sobre este botón hará que le ventana se haga lo más grande posible en ambas direcciones, mientras que pulsando sobre el &MMB;<indexterm
><primary
>Maximizar ventanas</primary
><secondary
>Vertical</secondary
></indexterm
> o el &RMB;<indexterm
><primary
>Maximizar Ventanas</primary
><secondary
>Horizontal</secondary
></indexterm
> del ratón incrementará el tamaño de forma vertical u horizontal, respectivamente.</para>


</sect3>

<sect3 id="hiding-windows">
<title
>Ocultar ventanas</title>
<indexterm
><primary
>Ocultar ventanas</primary
></indexterm>

<!-- TODO: Screenshot of the minimize button -->
<para>
<indexterm
><primary
>Minimizar</primary
></indexterm
> Cuando necesite dejar un programa abierto, pero no desea que ocupe espacio en su escritorio, puede minimizarlo u ocultarlo. Para minimizar una ventana, pulse sobre el botón <guibutton
>Minimizar</guibutton
>, que es el tercero de la barra de título de la ventana. La ventana no aparecerá, pero el programa se seguirá ejecutando, apareciendo una entrada en la barra de tareas del panel. Para mostrar de nuevo la ventana, pulse en esta entrada de la barra de tareas. También puede utilizar <keycombo action="simul"
>&Alt;&Tab;</keycombo
><indexterm
><primary
><keycombo action="simul"
>&Alt;&Tab;</keycombo
></primary
></indexterm
>: Véa <xref linkend="switching-between-windows"/>.</para>

<para>
<indexterm
><primary
>Ocultar</primary
></indexterm
> Ocultar las ventanas es muy similar a minimizarlas, pero esta vez, únicamente se mostrará la barra de título de la ventana. Para ocultar una ventana, haga doble-click en la barra de título. Para restaurar la ventana, vuelva a hacer doble-click nuevamente.</para>
</sect3>


<sect3 id="closing-windows">
<title
>Cerrar ventanas</title>

<indexterm
><primary
>Cerrar ventanas</primary
></indexterm>

<para
>Cuando termine de usar una aplicación, querrá pararla y cerrar su ventana. Nuevamente existen varias opciones: <itemizedlist>
<listitem>
<para
>Pulsar sobre el botón que está más a la derecha en la barra de título. Si está editando un documento con esta aplicación, se le preguntara si desea <guibutton
>guardar</guibutton
> sus cambios, <guibutton
>descartarlos</guibutton
>, o <guibutton
>cancelar</guibutton
> su orden de cerrar la aplicación.</para>
</listitem>
<listitem>
<para
>Utilizar la opción <menuchoice
><guimenu
>Archivo</guimenu
><guimenuitem
>Salir</guimenuitem
> </menuchoice
> de la barra de menú. También se le presentará la posibilidad de <guibutton
>guardar</guibutton
>, <guibutton
>descartar</guibutton
>, o <guibutton
>cancelar</guibutton
>.</para>
</listitem>
<listitem>
<para
>Pulsar <keycombo action="simul"
>&Alt;<keycap
>F4</keycap
></keycombo
><indexterm
><primary
><keycombo action="simul"
>&Alt;<keycap
>F4</keycap
> </keycombo
></primary
></indexterm
>. Aparecerá de nuevo el diálogo de confirmación si es que estaba editando documentos.</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
>Administración avanzada de ventanas</title>

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

<para
>La forma más sencilla de acceder a las posibilidades de la gestión avanzada de ventanas en &kde; es utilizar un pequeña utilidad llamada <application
>kstart</application
>, que se incluye en &kde; 2.1. <application
>kstart</application
> le dará control sobre la forma en que una aplicación interactúa con el administrador de ventanas. La orden se suele utilizar para definir comportamientos especiales para aquellas aplicaciones de uso habitual, y también es práctica para integrar aplicaciones no-&kde; en su escritorio.</para>

<para
>Utilizar <application
>kstart</application
> es sencillo: simplemente introduzca <userinput
><command
>kstart</command
></userinput
> y algunas opciones antes de una orden. Para comenzar, mostraremos cómo se puede utilizar <application
>kstart</application
> para personalizar el comportamiento de una ventana de &kcalc;. La orden que utilizaremos es la siguiente: <screen
><prompt
>%</prompt
> <userinput
><command
>kstart</command
> <option
>--ontop</option
> <option
>--alldesktops</option
> <option
>kcalc</option
></userinput
></screen>
</para>

<para
>Con suerte, el efecto de esta orden debería ser obvio - la ventana de kcalc permanecerá sobre el resto y será visible desde cualquier escritorio virtual. Una característica que es menos obvia es que esta orden funcionará con cualquier entorno de red, no solo en &kde;.</para>

<para
>Podemos pasar argumentos a los programas llamados con <application
>kstart</application
> de forma normal, por ejemplo: <screen
><prompt
>%</prompt
> <userinput
><command
>kstart</command
> \
<option
>--skiptaskbar</option
> <option
>--desktop</option
> \
1 xmessage 'Hola mundo'</userinput
></screen>

</para>

<para
>Esta orden muestra <computeroutput
>Hola mundo</computeroutput
> con <application
>xmessage</application
>, se asegura de que la ventana se muestre en el primer escritorio virtual y no aparecerá en la barra de tareas. El hecho de que este programa esté escrito utilizando el grupo de herramientas Xt en lugar de ser una aplicación nativa de &kde; no es ningún problema para <application
>kstart</application
>. Esperamos que esto ilustre cómo se puede utilizar <application
>kstart</application
> para integrar aplicaciones externas en su escritorio &kde;.</para>
</sect3>

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

<title
>La bandeja del sistema</title>

<para
>Ahora que sabemos cómo personalizar la decoración de una ventana echaremos un vistazo a otro aspecto del escritorio: la bandeja del sistema. La bandeja del sistema es un área en la que una aplicación mostrará una ventanita. Se utiliza para proporcionar información del estado o un acceso rápido a las órdenes. Una ventana que tenga un elemento en la bandeja del sistema por norma general desaparecerá de la barra de tareas cuando se minimice utilizando el icono de la bandeja del sistema. Normalmente los iconos de la bandeja se diseñan especialmente como parte de una aplicación, pero junto con la decoración de las ventanas, &kde; proporciona una herramienta para cambiar esto: <application
>ksystraycmd</application
>.</para>

<para
>Para empezar tomaremos la aplicación estándar &kcalc; y la convertiremos en una aplicación de bandeja del sistema. Esto se conseguirá con una simple orden: <screen
><prompt
>%</prompt
> <userinput
><command
>ksystraycmd</command
> <option
>--title</option
> 'kcalc' kcalc</userinput
></screen>

</para>

<para
>El icono que se muestra en la bandeja es el mismo que el que muestra la ventana y se actualizará si este icono cambia. El título de la ventana se muestra como una etiqueta si coloca el ratón sobre el icono. <application
>ksystraycmd</application
> sigue el comportamiento estándar de &kde; por tanto la ventana se podrá mostrar u ocultar pulsando sobre el icono de la bandeja, apareciendo un menú contextual si es que está disponible. </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 más complejos de <application
>ksystraycmd</application
></title>

<para
>Para ilustrar las otras características de <application
>ksystraycmd</application
>, utilizaremos un ejemplo más complicado: un ventana de &konsole; que contenga lo que se registra en el archivo <filename
>.xsession-errors</filename
> (este es el archivo de registro que guarda todo lo que pasa en su escritorio). Para empezar véa como vamos a hacer esto: <screen
><prompt
>%</prompt
> <userinput
><command
>konsole</command
> <option
>--icon \</option>
log <option
>--caption</option
> 'Registro de las X' \ 
<option
>--nomenubar</option
> <option
>--notabbar \</option>
<option
>--noframe</option
> \ 
<option
>-e</option
> tail -f ~/.xsession-errors</userinput
></screen>
</para>

 <para
>Los argumentos <option
>--caption</option
> y <option
>--icon</option
> se proporcionan de forma estándar por las aplicaciones &kde;. Puede obtener una lista completa de estas opciones globales ejecutando una aplicación con los parámetros <option
>--help-kde</option
> y <option
>--help-qt</option
>. Aquí damos a nuestra ventana de &konsole; el título 'Registro de las X' y el icono <quote
>log</quote
>. Puede utilizar estas opciones con cualquier aplicación &kde; y como se menciona más arriba, <application
>ksystraycmd</application
> las tiene en cuenta al crear el icono de la bandeja. El argumento <option
>-e</option
> es específico de &konsole; y le dice que ejecute la orden <command
>less</command
>. A pesar de su complejidad, podemos mover esta ventana a la bandeja de forma sencilla con <application
>ksystraycmd</application
>: <screen
><prompt
>%</prompt
> <userinput
><command
>ksystraycmd</command
> \
<option
>--hidden</option
> <option
>--title</option
> 'Registro de las X' \
konsole --icon log --caption 'XLog' \ 
--nomenubar --notabbar --noframe \ 
-e tail -f .xsession-errors</userinput
></screen>
</para>

 <para
>Adicionalmente para que la orden sea más completa hemos utilizado este ejemplo para mostrar la opción <option
>--hidden</option
> que inicia la orden de forma que únicamente sea visible el icono de la bandeja del sistema. Este ejemplo pretende proporcionar un acceso rápido al archivo de registro, pero podemos hacer esto de una forma un poco más eficiente si hacemos que solo se ejecute el proceso cuando la konsola esté visible. La orden para hacerlo es: <screen
><prompt
>%</prompt
> <userinput
><command
>ksystraycmd</command
> <option
>--startonshow</option
> \
 --<option
>icon</option
> log <option
>--tooltip</option
> 'X Log' \ 
konsole --icon log --caption 'Registro de las X' \
--nomenubar --notabbar --noframe \
-e tail -f ~/.xsession-errors</userinput
></screen>
</para>

<para
>La adicción del parámetro <option
>-startonshow</option
> permite a <application
>ksystraycmd</application
> iniciar la aplicación de forma que solo el icono de la bandeja esté visible (similar al parámetro <option
>--hidden</option
>), y esperar hasta que el usuario active el icono de la bandeja antes de comenzar la actividad de la orden. También se ha utilizado el parámetro <option
>--quitonhide</option
> le indicamos a <application
>ksystraycmd</application
> que finalice la aplicación de destino cuando la ventana se oculte. Utilizando estos dos parámetros se asegura de que nuestro icono de la bandeja de &konsole; no consuma recursos cuando no lo estemos utilizando. Creando y destruyendo la ventana de destino tal y como hacemos aquí evita el manejo del icono y del título por parte de <application
>ksystraycmd</application
>, por tanto, necesitaremos especificar explícitamente el icono inicial y la etiqueta de la herramienta.</para>
</sect3>

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

<title
>Mejorando la fiabilidad</title>

<para
>En todos nuestros ejemplos anteriores dependíamos de <application
>kstart</application
> y <application
>ksystraycmd</application
> para explicar que ventana estaba afectada, y a menos que se indique otra cosa, se asumía que la primera ventana que aparezca es la que deseamos. Esta política normalmente es correcta puesto que estamos iniciando la aplicación al mismo tiempo, pero puede fallar cuando aparecen muchas ventanas (como cuando inicia la sesión). Para hacer nuestra orden más robusta podemos utilizar el parámetro <option
>--window</option
>. Éste especifica el título de la ventana de destino. El siguiente ejemplo utiliza el parámetro <option
>--window</option
> para asegurarse que se verá afectada una ventana de konsola concreta: <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
>Aquí hemos utilizado la técnica de ensayo y error para especificar el título tanto para <application
>kstart</application
> como para la aplicación de destino. Esta es la mejor forma de utilizar <application
>kstart</application
> y <application
>ksystraycmd</application
>. El argumento <option
>--window</option
> está soportado tanto por <application
>kstart</application
> como por <option
>ksystraycmd</option
> y puede ser una expresión regular (&eg; <quote
>window[0-9]</quote
>) como parte de un título en particular. (Las expresiones regulares son herramientas para crear patrones de búsquedaadecuados que se utilizan en &kde;). </para
></sect3>

</sect2>

<sect2 id="using-multiple-desktops">
<title
>Utilizar múltiples escritorios</title>

<indexterm
><primary
>Escritorios virtuales</primary
></indexterm>
<indexterm
><primary
>Escritorios múltiples</primary
></indexterm>

<para
>Algunas veces, una pantalla no tiene espacio suficiente para poder trabajar. Si usa muchas aplicaciones a la vez, y se siente ahogado con tanta ventana, los escritorios virtuales son la solución. De forma predeterminada, &kde; tiene cuatro escritorios virtuales, cada uno de los cuales es como una pantalla separada: Puede abrir y mover ventanas y seleccionar los fondos e iconos de cada uno de los escritorios. Si está familiarizado con el concepto de terminales virtuales, no tendrá problemas con los escritorios virtuales de &kde;.</para>

<sect3 id="switching-virtual-desktops">
<title
>Conmutar entre escritorios virtuales</title>
<para
>Para moverse a un escritorio virtual diferente, puede utilizar <keycombo action="simul"
>&Ctrl;&Tab;</keycombo
> de la misma forma que usaba <keycombo action="simul"
>&Alt;&Tab;</keycombo
> para cambiar entre dos ventanas (véa <xref linkend="switching-between-windows"/>): Mantenga pulsada &Ctrl; y a continuación pulse &Tab;. Aparecerá una ventana emergente mostrando los escritorios virtuales, uno de los cuales estará resaltado. Si suelta &Ctrl;, &kde; cambiará al escritorio virtual resaltado. Para seleccionar un escritorio diferente, pulse &Tab; de forma repetida, mientras mantiene pulsada &Ctrl;. La selección se moverá a través de los escritorios disponibles. Cuando se resalte el escritorio deseado, suelte &Ctrl;.</para>

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

</sect3>

<sect3 id="windows-and-virtual-desktops">
<title
>Ventanas y escritorios virtuales</title>
<para
>Puede mover ventanas a través de los escritorios virtuales con el elemento <guisubmenu
>Al escritorio</guisubmenu
> en el menú ventana: Sólo tiene que seleccionar el escritorio al que desee mover la ventana. Puede hacer que la ventana aparezca en todos los escritorios con el elemento <guimenuitem
>Todos los escritorios</guimenuitem
><indexterm
><primary
>Pegar ventanas</primary
></indexterm
>.</para>

<!-- Add links to "further reading" here -->
<itemizedlist>
<title
>Información relacionada</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:
-->
