<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:uix="http://projectmallard.org/experimental/ui/" type="topic" id="buttons" xml:lang="pt-BR">

  <info>
    <credit type="author">
      <name>Allan Day</name>
      <email>aday@gnome.org</email>
    </credit>
    <credit>
      <name>Calum Benson</name>
    </credit>
    <credit>
      <name>Adam Elman</name>
    </credit>
    <credit>
      <name>Seth Nickell</name>
    </credit>
    <credit>
      <name>Colin Robertson</name>
    </credit>

    <link type="guide" xref="ui-elements"/>
    <uix:thumb mime="image/svg" src="figures/ui-elements/buttons.svg"/>

    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Georges Neto</mal:name>
      <mal:email>georges.stavracas@gmail.com</mal:email>
      <mal:years>2014,</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Rafael Fontenelle</mal:name>
      <mal:email>rafaelff@gnome.org</mal:email>
      <mal:years>2017-2021</mal:years>
    </mal:credit>
  </info>

<title>Botões</title>

<p>Os botões são um dos elementos de interface de usuário mais comuns e básicos. Os botões podem ser usados para executar ações, alternar configurações ou visualizações, ativar ferramentas ou exibir caixas de diálogo, janelas sobrepostas ou outros elementos da interface do usuário.</p>

<media type="image" mime="image/svg" src="figures/ui-elements/buttons.svg"/>

<section id="general-guidelines">
<title>Diretrizes gerais</title>

<list>
<item><p>Um botão pode conter um ícone, botão ou – mais incomumente – uma imagem. Siga os diretrizes de ícones e obras de arte ao decidir qual o uso.</p></item>
<item><p>Depois de pressionar um botão, o usuário deve esperar para ver o resultado de sua ação dentro de 1 segundo.</p></item>
<item><p>Não use mais de uma ou duas larguras diferentes de botão na mesma janela e faça com que todos eles tenham a mesma altura. Isso ajudará a proporcionar uma aparência visual uniforme e agradável à sua janela que facilita a sua utilização.</p></item>
<item><p>Não atribua ações para fazer clique duplo ou clicar com o botão direito do mouse em um botão. É improvável que os usuários descubram essas ações e, se o descobrirem, distorcerão suas expectativas de outros botões no ambiente.</p></item>
<item><p>Torne os botões inválidos insensíveis, em vez de surgir uma mensagem de erro quando o usuário clicar neles.</p></item>
<item><p>Quando vários botões são colocados um ao lado do outro, assegure-se de que eles tenham a mesma largura. Isso é particularmente importante para pares de botões Cancel e OK.</p></item>
<item><p>Em um diálogo, um botão pode ser tornado o botão padrão, que é mostrado com uma borda diferente e é ativado pressionando Return. Muitas vezes, este será o botão OK ou equivalente. No entanto, se pressionar este botão por engano pode causar perda de dados, não configure um botão padrão para a janela.</p></item>
</list>

</section>

<section id="text-buttons">
<title>Botões de texto</title>

<list>
<item><p>Rotule todos os botões com verbos imperativos, usando <link xref="writing-style#capitalization">maiusculização de título</link>. Por exemplo, <gui>Save</gui>, <gui>Sort</gui> ou <gui>Update Now</gui>.</p></item>
<item><p>Use <link xref="writing-style#ellipses">reticências</link> quando um botão exige mais entrada do usuário para completar uma ação.</p></item>
<item><p>Forneça uma <link xref="keyboard-input#access-keys">tecla de acesso</link> no rótulo que permite ao usuário ativar diretamente o botão a partir do teclado.</p></item>
<item><p>Mantenha a ordem dos rótulos, de forma que eles não façam com que o botão use espaço demais. Também é importante considerar como os rótulos vão alterar o tamanho quando localizados (traduzidos).</p></item>
</list>

</section>

<section id="toggle-buttons">
<title>Botões de alternância</title>

<p>Os botões de alternância parecem os botões regulares, mas são usados para mostrar ou alterar um estado em vez de iniciar uma ação. Os dois estados do botão de alternância, configurados e não, são mostrados por sua aparição “pressionada” ou “para fora”, respectivamente.</p>

</section>

<section id="linked-buttons">
<title>Botões vinculados</title>

<p>Grupos de botões com função semelhante podem ser agrupados. Isso ajuda a comunicar sua semelhança. A vinculação é uma técnica comum para conjuntos de botões de alternância.</p>

</section>

<section id="suggested-and-destructive">
<title>Ações sugeridas e destrutivas</title>

<p>Nos casos em que um botão tem um papel afirmativo particularmente importante, pode-se dar um estilo sugerido. Isso destaca o botão e ajuda a distingui-lo de outros controles visíveis.</p>

<p>Botões que têm uma consequência destrutiva, como remover ou excluir um item de conteúdo, podem ter um estilo destrutivo. Isso destaca o botão colorindo-o e atua como um aviso para o usuário.</p>

<p>Cada visualização deve incluir apenas um único botão sugerido ou destrutivo.</p>

</section>

<section id="api-reference">
<title>Referência de API</title>

<list>
<item><p><link href="https://developer.gnome.org/gtk3/stable/GtkButton.html">GtkButton</link></p></item>
<item><p><link href="https://developer.gnome.org/gtk3/stable/GtkToggleButton.html">GtkToggleButton</link></p></item>
</list>

</section>

</page>
