-A barra de ferramentas fornece um conjunto bem organizado de ícones/botões para a execução de vários comandos ou ações. Ao contrário de um menu que também é utilizado para a execução de ações, as barras de ferramentas estão sempre visíveis para o usuário e de fácil acesso.

As barras de ferramentas podem ser utilizadas quando há várias ações que precisam ser apresentados para o usuário. Em vez de fornecer um botão para cada ação, uma barra de ferramentas pode ser usado em seu lugar.

Criar uma barra de ferramentas;


Salve o seguinte código como app2.vala
using Gtk;
class MainWindow : Window  {
  public static int main (string[] args)
  {
    Gtk.init(ref args);  //Gtk intialization
    var window = new MainWindow (); //Create a window
    window.destroy.connect (Gtk.main_quit); //Quit app after window is closed
    window.show_all (); //Makes all widgets visible
    Gtk.main(); //Start the main loop
    return 0;
  }
  public MainWindow()
  {
    this.title = "Toolbars";
    this.set_default_size (250, 60);
    this.window_position = WindowPosition.CENTER;
    this.destroy.connect(Gtk.main_quit); //Quit app when window is closed
    // vboxMain
    var vboxMain = new Box (Orientation.VERTICAL, 0);
    add (vboxMain);
    // Create Toolbar
    var toolbar = new Gtk.Toolbar ();
    toolbar.toolbar_style = ToolbarStyle.BOTH_HORIZ;
    toolbar.get_style_context().add_class(Gtk.STYLE_CLASS_PRIMARY_TOOLBAR);
    vboxMain.pack_start (toolbar, false, false, 0);
    // Create Toolbar buttons
    var btnAdd = new Gtk.ToolButton.from_stock (Gtk.Stock.ADD);
    btnAdd.is_important = true;
    toolbar.add (btnAdd);
    var btnRemove = new Gtk.ToolButton.from_stock (Gtk.Stock.REMOVE);
    toolbar.add (btnRemove);
    var btnClear = new Gtk.ToolButton.from_stock (Gtk.Stock.CLEAR);
    toolbar.add (btnClear);
    // Create a treeview showing a list of Items
    var treeview = new TreeView();
    treeview.insert_column_with_attributes (-1, "Item", new CellRendererText(), "text", 0);
    // Add the treeview to a scrollable window
    var scrolledwin = new ScrolledWindow(treeview.get_hadjustment (), treeview.get_vadjustment ());
    scrolledwin.set_shadow_type (ShadowType.ETCHED_IN);
    scrolledwin.add (treeview);
    scrolledwin.set_size_request (-1, 150);
    vboxMain.pack_start (scrolledwin, true, true, 0);
  }
}
 Vamos compilá-lo com o seguinte comando:
valac --pkg gtk+-3.0 app2.vala -o app2
 Agora para o executar vamos abrir um Terminal no lucal onde temos o Ficheiro app2.vala e executa-lo com o seguinte comando;
./app2


Vamos agora adicionar um botão acrescentando o seguinte código;
var btnAdd = new Gtk.ToolButton.from_stock (Gtk.Stock.ADD);
btnAdd.is_important = true;
toolbar.add (btnAdd);
Criamos o botão da barra de ferramentas usando o construtor ToolButton.from_stock (). Esse construtor cria um botão com um ícone padrão e texto padrão. O ícone é definido a partir do tema de ícones do sistema e que o texto é definido com base no idioma do sistema. O ícone e o texto também podem ser configurados manualmente. 

Vamos definir o estilo;

toolbar.toolbar_style = ToolbarStyle.BOTH_HORIZ;
  • ToolbarStyle.ICONS - Somente os ícones são exibidos.
  • ToolbarStyle.TEXT - Somente os rótulos são exibidos.
  • ToolbarStyle.BOTH - Rótulo será exibido verticalmente abaixo do ícone para todos os botões da barra de ferramentas.
  • ToolbarStyle.BOTH_HORIZ (Recomendado) - Rótulo será exibido horizontalmente para a direita do ícone. Etiqueta é exibida somente se a propriedade "is_important" é verdadeiro para o ToolButton. Esta propriedade tem de ser ajustada manualmente para os botões que devem mostrar o rótulo.

Vamos agora especificar os botões importantes;


Defina o is_important propriedade para TRUE para todos os botões da barra de ferramentas que são importantes. Labels será exibido para esses itens quando o estilo da barra de ferramentas é BOTH_HORIZ.

Agora definimos o fundo;


GTK3 tem uma opção para especificar se uma barra de ferramentas em particular é a barra de ferramentas principal numa janela. A barra de ferramentas principal será highlighed com um agradável efeito de fundo, se o tema GTK suportar o estilo.
toolbar.get_style_context().add_class(Gtk.STYLE_CLASS_PRIMARY_TOOLBAR);
Por favor, note que todos os temas GTK3 não suportam esta propriedade.

Colocar botões à direita;

Adicionar um separador e definir o empate e expandir as propriedades como mostrado abaixo. Todos os itens adicionados após o separador serão colocados no lado direito da barra de ferramentas.
var separator = new Gtk.SeparatorToolItem();
separator.set_draw (false);
separator.set_expand (true);
toolbar.add (separator);

var btnSettings = new Gtk.ToolButton.from_stock
(Gtk.Stock.PREFERENCES);
toolbar.add (btnSettings);
 A imagem que se segue, mostra este ultimo botão adicionado a Barra de Ferramentas;


Fonte; TeeJee Tech

Deixem os vossos comentários a respeito deste artigo.
Comentários
0 Comentários

0 comentários:

Enviar um comentário

Se você tem alguma duvida/sugestão relacionada com este artigo deixe o seu comentário.

Não comente palavras ofensivas.

 
Top