<chapter id="kdevelop-survey"> <chapterinfo> <authorgroup> <author ><firstname >Bernd</firstname ><surname >Pol</surname ></author> <!-- ROLES_OF_TRANSLATORS --> </authorgroup> </chapterinfo> <title >Introdução às Funcionalidades do &kdevelop;</title> <indexterm zone="kdevelop-survey"> <primary >&kdevelop;</primary> <secondary >introdução</secondary ></indexterm> <indexterm zone="kdevelop-survey"> <primary >vista geral</primary ></indexterm> <indexterm zone="kdevelop-survey"> <primary >introdução</primary ></indexterm> <para >O &kdevelop; integra um conjunto de ferramentas, programas e modelos numa interface de utilizador comum. Basicamente, consiste em <itemizedlist> <listitem ><para >vários <link linkend="uimodes-survey" >modos de interface de utilizador</link > com os quais você poderá seleccionar a aparência e comportamento do espaço de trabalho, </para ></listitem> <listitem ><para >um <link linkend="applicationwizard" >&appwizard;</link > que o ajuda a configurar um novo projecto, </para ></listitem> <listitem ><para >vários <link linkend="makesystems" >sistemas de gestão de projectos</link > que o ajudam a compilar e a gerir o seu projecto, </para ></listitem> <listitem ><para >algumas <link linkend="editing" >ferramentas de edição</link > para trabalhar nos textos do seu programa </para ></listitem> <listitem ><para >vários <link linkend="file-browsers" >navegadores de ficheiros</link > que lhe oferecem várias vistas sobre o seu sistema de ficheiros, </para ></listitem> <listitem ><para >vários <link linkend="class-browsers" >navegadores de classes</link > para o ajudarem a gerir as classes e as suas relações entre si no seu projecto de programação orientada por objectos, </para ></listitem> <listitem ><para >uma <link linkend="debugger" >interface para o depurador</link > para procurar e remover os erros do programa dentro do &kdevelop;, e </para ></listitem> <listitem ><para >várias <link linkend="plugin-tools" >ferramentas em 'plugins'</link >, ou seja, módulos extensíveis que podem ser carregados durante a execução e a pedido. Isto permite-lhe activar apenas as funcionalidades que você realmente necessita. </para ></listitem> <listitem ><para >um conjunto de outras ferramentas auxiliares de diagnóstico, documentação e optimização. </para ></listitem> </itemizedlist> </para> <note> <para >De facto existem três aplicações baseadas no &kdevelop;: </para> <itemizedlist> <listitem ><para >O IDE do &kdevelop; — este é o local onde você normalmente irá trabalhar.</para ></listitem> <listitem ><para >O navegador de documentação do Assistente do &kdevelop; autónomo — isola todas as funcionalidades poderosas de documentação do IDE &kdevelop; numa ferramenta separada. Isto pode ser útil quando desejar procurar por alguma documentação de programação mas não queira iniciar o IDE por completo.</para ></listitem> <listitem ><para >O Desenhador do &kdevelop; — aumenta o &Qt; User Interface Designer, adicionando os elementos específicos do &kde; e integra-se bem no IDE &kdevelop;.</para ></listitem> </itemizedlist> </note> <sect1 id="uimodes-survey"> <title >Modos de Interface do Utilizador Disponíveis</title> <indexterm zone="uimodes-survey"> <primary >&kdevelop;</primary> <secondary >modos de interface do utilizador</secondary ></indexterm> <indexterm zone="uimodes-survey"> <primary >interface do utilizador</primary> <secondary >modos do &kdevelop;</secondary ></indexterm> <indexterm zone="uimodes-survey"> <primary >Modos de interface</primary ></indexterm> <indexterm zone="uimodes-survey"> <primary >Janelas-Filhas</primary ></indexterm> <indexterm zone="uimodes-survey"> <primary >Janelas em Páginas</primary ></indexterm> <indexterm zone="uimodes-survey"> <primary >Janelas de Topo</primary ></indexterm> <indexterm zone="uimodes-survey"> <primary >IDEAl</primary ></indexterm> <para >O &kdevelop; oferece aos programadores quatro modos de interface do utilizador (carregue no nome do modo para ver um exemplo): <itemizedlist> <listitem ><para ><link linkend="ideal-desc" >IDEAl</link ></para> <para >Esta é uma nova aproximação de interfaces de utilizador que optimiza tanto o espaço de trabalho como a actuação intuitiva sobre as ferramentas. </para> <itemizedlist> <listitem ><para >Todas as janelas de ferramentas estão acopladas numa disposição em páginas à volta da área da janela principal. Elas agrupam-se à esquerda, em baixo e à direita, de acordo com os serviços fornecidos. </para ></listitem> <listitem ><para >As janelas de edição e de navegação estarão empilhadas numa grande janela de páginas a meio da área da janela principal. </para ></listitem> </itemizedlist> </listitem> <listitem> <para ><link linkend="mdi-desc" >Janelas-Filhas</link ></para> <itemizedlist> <listitem ><para >Todas as janelas de ferramentas estão inicialmente acopladas à janela principal.</para ></listitem> <listitem ><para >As janelas de edição e de navegação irão existir como janelas de topo dentro de uma área de visualização da janela principal.</para ></listitem> </itemizedlist> </listitem> <listitem> <para ><link linkend="tabbed-desc" >Janelas em Páginas</link ></para> <itemizedlist> <listitem ><para >Todas as janelas de ferramentas estão inicialmente acopladas à janela principal. </para ></listitem> <listitem ><para >As janelas de edição e de navegação irão estar empilhadas numa janela com várias páginas separadas. </para ></listitem> </itemizedlist> </listitem> <listitem> <para ><link linkend="toplevel-desc" >Janelas de Topo</link ></para> <itemizedlist> <listitem ><para >Todas as janelas de edição, navegação e de ferramentas serão janelas de topo directamente no ecrã. </para ></listitem> <listitem ><para >A janela principal só irá conter o menu, as barras de ferramentas e a barra de estado. </para ></listitem> </itemizedlist> </listitem> </itemizedlist> </para> <sect2 id="uimodes-switch"> <title >Como Mudar de Modos de Interface do Utilizador:</title> <indexterm zone="uimodes-switch"> <primary >interface do utilizador</primary> <secondary >mudar de modos</secondary ></indexterm> <indexterm zone="uimodes-switch"> <primary >mudar de modo de interface</primary ></indexterm> <para >Para mudar o modo da interface do utilizador, seleccione a <menuchoice > <guimenu >Configuração</guimenu > <guimenuitem >Configurar o KDevelop...</guimenuitem > </menuchoice > no menu. A janela para <guilabel >Configurar o KDevelop</guilabel > irá aparecer, onde então terá de seleccionar <guilabel >Interface do Utilizador</guilabel > no campo do lado esquerdo. Isto levá-lo-á à página de configuração mostrada em baixo. </para> <screenshot> <mediaobject> <imageobject> <imagedata fileref="select-user-interface.png" format="PNG"/> </imageobject> <caption ><para >Seleccione um modo de interface de utilizador </para ></caption> </mediaobject> </screenshot> <para >(As versões mais antigas do &kdevelop; oferecem apenas a secção de selecção do modo de topo). </para> <para >Na secção do <guilabel >Modo Principal de Interface do Utilizador</guilabel >, seleccione a opção exclusiva do modo de interface de utilizador com que deseja trabalhar. </para> <para >Dependendo do modo de interface de utilizador que seleccionou, as outras secções de configuração ficarão disponíveis, nas quais poderá ajustar mais detalhes da aparência e comportamento às suas preferências. Veja o capítulo sobre como <link linkend="setup-ui" >Seleccionar a Interface do Utilizador</link > para mais detalhes. </para> <note ><para >Não se esqueça de reiniciar o &kdevelop; para que as suas selecções façam efeito. </para ></note> </sect2 > <!-- uimodes-switch --> <sect2 id="maximize-workspace"> <title >Como Maximizar a Área do Espaço de Trabalho</title> <indexterm zone="maximize-workspace"> <primary >&kdevelop;</primary> <secondary >espaço de trabalho</secondary ></indexterm> <indexterm zone="maximize-workspace"> <primary >&kdevelop;</primary> <secondary >maximizar o espaço de trabalho</secondary ></indexterm> <indexterm zone="maximize-workspace"> <primary >interface do utilizador</primary> <secondary >espaço de trabalho</secondary ></indexterm> <indexterm zone="maximize-workspace"> <primary >interface do utilizador</primary> <secondary >barra de menu</secondary ></indexterm> <indexterm zone="maximize-workspace"> <primary >interface do utilizador</primary> <secondary >modo de ecrã completo</secondary ></indexterm> <indexterm zone="maximize-workspace"> <primary >modo de ecrã completo</primary ></indexterm> <indexterm zone="maximize-workspace"> <primary >barra de menu</primary> <secondary >esconder/mostrar</secondary ></indexterm> <indexterm zone="maximize-workspace"> <primary >esconder a barra de menu</primary ></indexterm> <indexterm zone="maximize-workspace"> <primary >mostrar a barra de menu</primary ></indexterm> <para >Para maximizar o espaço, existe um modo de janelas de ecrã completo que expande a área da janela principal até aos extremos do ecrã. O espaço adicional poderá ser reclamado de volta se esconder a barra de menu. E, claro, você poderá esconder qualquer barra de ferramentas como é normal nas aplicações do <application >KDE</application >. </para> <variablelist> <varlistentry> <term >Modo de Ecrã Completo</term> <listitem> <para >Para mudar de ou para o modo de ecrã completo seleccione <menuchoice > <guimenu >Ver</guimenu > <guimenuitem >Modo de Ecrã Completo</guimenuitem > </menuchoice > no menu ou carregue em <keycombo >&Ctrl;&Shift;<keycap >F</keycap ></keycombo >. Existe também um ícone <guiicon >Modo de Ecrã Completo</guiicon > na <guilabel >Barra de Navegação</guilabel >.</para> </listitem> </varlistentry> <varlistentry> <term >Esconder/Mostrar o Menu</term> <listitem> <para >Para <emphasis >esconder</emphasis > o menu seleccione <menuchoice > <guimenu >Configuração</guimenu > <guimenuitem >Mostrar o Menu</guimenuitem > </menuchoice > nas opções de menu ou carregue em <keycombo >&Ctrl;<keycap >M</keycap > </keycombo >. Você poderá também incluir um <guiicon >Mostrar o Menu</guiicon > numa barra de ferramentas adequada, p.ex., na <guilabel >Barra de Navegação</guilabel > para esse fim. Para <emphasis >voltar a mostrar</emphasis > o menu você precisa de carregar em <keycombo >&Ctrl;<keycap >M</keycap ></keycombo > ou de usar o ícone <guiicon >Mostrar o Menu</guiicon >, se estiver disponível. </para> </listitem> </varlistentry> </variablelist> </sect2 > <!-- maximize-workspace --> </sect1 > <!-- uimodes-survey --> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <sect1 id="ui-elements"> <title >Elementos da Interface do Utilizador</title> <para >(... ainda não escrito ...) </para> <sect2 id="ui-elements-workarea"> <title >A Área de Trabalho</title> <para >(... ainda não escrito ...) </para> </sect2 > <!-- ui-elements-workarea --> <sect2 id="ui-elements-titlebar"> <title >A Barra de Título do &kdevelop;</title> <para >(... ainda não escrito ...) </para> </sect2 > <!-- ui-elements-titlebar --> <sect2 id="ui-elements-statusbar"> <title >A Barra de Estado do &kdevelop;</title> <para >(... ainda não escrito ...) </para> </sect2 > <!-- ui-elements-statusbar --> <sect2 id="ui-elements-menubar"> <title >A barra de menu</title> <para >(... ainda não escrito ...) </para> </sect2 > <!-- ui-elements-menubar --> <sect2 id="ui-elements-toolbars"> <title >As Barras de Ferramentas</title> <para >(... ainda não escrito ...) </para> </sect2 > <!-- ui-elements-toolbars --> <sect2 id="ui-elements-treetoolviews"> <title >As Janelas em Árvore</title> <para >(... ainda não escrito ...) </para> </sect2 > <!-- ui-elements-treetoolviews --> <sect2 id="ui-elements-outputtoolviews"> <title >As Janelas dos Resultados das Ferramentas</title> <para >(... ainda não escrito ...) </para> </sect2 > <!-- ui-elements-outputtoolviews --> </sect1 > <!-- ui-elements --> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> <sect1 id="makesystems"> <title >Sistemas de Gestão de Projectos</title> <indexterm zone="makesystems"> <primary >gestão de projectos</primary ></indexterm> <para >Globalmente, um projecto basear-se-á num sistema de gestão de projecto qualquer. O &kdevelop; oferece quatro <emphasis >sistemas de gestão de projectos</emphasis > que o programador poderá seleccionar ao criar um novo projecto. <itemizedlist> <listitem ><para >Os <link linkend="automake-project" >projectos do Automake</link > usam as ferramentas de desenvolvimento normais da &GNU;. </para ></listitem> <listitem ><para >Os <link linkend="qmake-project" >projectos do QMake</link > usam o gestor de projectos QMake da Trolltech. </para ></listitem> <listitem ><para >Os <link linkend="ant-project" >projectos de ANT</link > usam o gestor de projectos ANT do Apache para a programação em &Java;. </para ></listitem> <listitem ><para >Os <link linkend="custom-project" >projectos personalizados</link > necessitam que você faça a gestão das suas próprias <filename >Makefiles</filename >. </para ></listitem> </itemizedlist> </para> <sect2 id="automake-project"> <title >Projectos Automake</title> <indexterm zone="automake-project"> <primary >projectos</primary> <secondary >automake</secondary ></indexterm> <indexterm zone="automake-project"> <primary >automake</primary> <secondary >projectos</secondary ></indexterm> <para >Os projectos criados com o &automanag; do &kdevelop; tornam bastante simples a utilização das ferramentas normais da &GNU; para os programadores. Eles possibilitam <itemizedlist> <listitem ><para >uma melhor forma de gerar <filename >Makefile</filename >s e </para ></listitem> <listitem ><para >uma forma segura e boa de se adaptar facilmente entre vários sistemas de comandos <filename >configure</filename > gerados pelo Automake. </para ></listitem> </itemizedlist> </para> </sect2 > <!-- automake-project --> <sect2 id="qmake-project"> <title >Projectos QMake</title> <indexterm zone="qmake-project"> <primary >projectos</primary> <secondary >qmake</secondary ></indexterm> <indexterm zone="qmake-project"> <primary >qmake</primary> <secondary >projectos</secondary ></indexterm> <para >Para os programadores que gostam da flexibilidade e comportamento do sistema QMake do &Qt;, o &kdevelop; oferece a possibilidade de lidar com os projectos baseados em QMake (os ficheiros .pro) na sua interface gráfica. </para> <para >Para mais informações sobre o gestor de projectos QMake veja o <quote >Guia de Utilizador do qmake</quote >, que deverá estar incluído na sua distribuição, ou dê uma vista de olhos na página de <ulink url="http://doc.trolltech.com/" >Documentação da TROLLTECH</ulink > onde você poderá encontrar a documentação do QMake para a sua versão da <quote >Plataforma de Desenvolvimento de Aplicações Gráficas em C++ Qt</quote >. </para> </sect2 > <!-- qmake-project --> <sect2 id="ant-project"> <title >Projectos ANT (Projectos em &Java;)</title> <indexterm zone="ant-project"> <primary >projectos</primary> <secondary >ant</secondary ></indexterm> <indexterm zone="ant-project"> <primary >ant</primary> <secondary >projectos</secondary ></indexterm> <indexterm zone="ant-project"> <primary >projectos</primary> <secondary >Java</secondary ></indexterm> <indexterm zone="ant-project"> <primary >Java</primary> <secondary >projectos</secondary ></indexterm> <indexterm zone="ant-project"> <primary >desenvolvimento</primary> <secondary >Java</secondary ></indexterm> <para >Os programadores em &Java; poderão querer usar o gestor de projectos ANT do projecto Apache para os seus projectos. Para configurar um novo projecto de ANT no &kdevelop; seleccione <menuchoice ><guimenu >Projecto</guimenu > <guimenuitem >Novo Projecto...</guimenuitem > <guimenuitem >Java</guimenuitem > <guimenuitem >Projecto de Ant</guimenuitem > <guimenuitem >Aplicação</guimenuitem ></menuchoice >. </para> <para >Para mais informações veja a página do <ulink url="http://ant.apache.org/" >Projecto Ant do Apache</ulink >. </para> </sect2 > <!-- ant-project --> <sect2 id="custom-project"> <title >Projectos Personalizados</title> <indexterm zone="custom-project"> <primary >projectos</primary> <secondary >personalizado</secondary ></indexterm> <indexterm zone="custom-project"> <primary >projectos personalizados</primary ></indexterm> <indexterm zone="custom-project"> <primary >Makefile</primary> <secondary >projectos personalizados</secondary ></indexterm> <para >Se você preferir manter as suas próprias <filename >Makefiles</filename > para o seu projecto, você poderá usar a opção de projectos personalizados do &kdevelop;. Isto poderá ser adequado para os projectos estruturados de forma anormal ou se deseja ter um controlo absoluto no processo do <command >make</command >. </para> <para >Todavia, se você não <emphasis >precisa de facto</emphasis > da flexibilidade extra e do controlo do gestor de projectos personalizados, você deverá pensar no Autoproject ou num dos outros gestores de projectos, porque facilitam consideravelmente os processos de compilação e distribuição do programa. </para> </sect2 > <!-- custom-project --> <sect2 id="makesystems-distribution"> <title >Como Distribuir a sua Aplicação</title> <indexterm zone="makesystems-distribution"> <primary >distribuição</primary ></indexterm> <indexterm zone="makesystems-distribution"> <primary >aplicação</primary> <secondary >distribuição</secondary ></indexterm> <indexterm zone="makesystems-distribution"> <primary >pacotes binários</primary ></indexterm> <para >A distribuição das suas aplicações não necessita que o utilizador final tenha nada de diferente instalado, a não ser <itemizedlist> <listitem ><para >um compilador apropriado,</para ></listitem> <listitem ><para >um editor de ligações, e</para ></listitem> <listitem ><para >as bibliotecas de desenvolvimento apropriadas,</para ></listitem> </itemizedlist> </para> <para >o que, pelo menos para as aplicações em C++, é normalmente o caso. Mas você pode também distribuir os <emphasis >pacotes binários</emphasis > da sua aplicação. De qualquer forma, o utilizador final do seu produto não precisa do &kdevelop; instalado. </para> <para >Para fornecer o seu código, aconselhamo-o a incluir também o <emphasis >ficheiro do projecto</emphasis > do &kdevelop;. Isto torna muito simples para os outros programadores — se usarem também o &kdevelop; — poder trabalhar com o seu código. </para> <para >Para os projectos onde os <emphasis >vários programadores</emphasis > estão envolvidos, talvez trabalhando em sítios diferentes, poderá ser este o caso de qualquer forma. Por isso, você poderá garantir a consistência das <filename >Makefiles</filename > para não ter problemas. </para> <para >Especialmente nas aplicações multilingues, os <emphasis >tradutores</emphasis > não irão lidar de facto com o código-fonte, excepto nos casos que necessitem de correcções para permitir o suporte de traduções. </para> </sect2 > <!-- makesystems-distribution --> </sect1 > <!-- makesystems --> </chapter > <!-- kdevelop-survey -->