Difference between revisions of "GTK+ (Italiano)"

From ArchWiki
Jump to: navigation, search
(GTK+ 3.x)
(synchronized interlanguage links with the other wikis)
(8 intermediate revisions by 3 users not shown)
Line 4: Line 4:
 
[[en:GTK+]]
 
[[en:GTK+]]
 
[[es:Improve GTK Application Looks]]
 
[[es:Improve GTK Application Looks]]
 +
[[ja:GTK+]]
 
[[uk:GTK+]]
 
[[uk:GTK+]]
 
[[zh-CN:GTK+]]
 
[[zh-CN:GTK+]]
{{Attenzione|Questo articolo è in fase di traduzione. Seguite per ora le istruzioni della versione inglese.}}
 
 
 
{{Article summary start|Sommario}}
 
{{Article summary start|Sommario}}
 
{{Article summary text|Questi articoli trattano la configurazione di applicazioni GTK+. GTK+ (GIMP Toolkit) è uno strumento multi-piattaforma per la creazione di interfacce utente grafiche (GUI). Qui si esploreranno le utilità usate per configurare un tema GTK+, lo stile, le icone, il font, oltre a spiegare dettagliatamente la configurazione manuale.}}
 
{{Article summary text|Questi articoli trattano la configurazione di applicazioni GTK+. GTK+ (GIMP Toolkit) è uno strumento multi-piattaforma per la creazione di interfacce utente grafiche (GUI). Qui si esploreranno le utilità usate per configurare un tema GTK+, lo stile, le icone, il font, oltre a spiegare dettagliatamente la configurazione manuale.}}
Line 19: Line 18:
 
:''GTK+, o The GIMP Toolkit, è un toolkit multi-piattaforma per creare interfacce utente (UI) grafiche. In quanto offre un set completo di strumenti, GTK+ è adatto per ogni progetto, da piccoli strumenti unici a interfacce complete di applicazioni.''
 
:''GTK+, o The GIMP Toolkit, è un toolkit multi-piattaforma per creare interfacce utente (UI) grafiche. In quanto offre un set completo di strumenti, GTK+ è adatto per ogni progetto, da piccoli strumenti unici a interfacce complete di applicazioni.''
  
GTK+, The GIMP Toolkit, fu creato inizialmente dal [[GNU Project|Progetto GNU]] per il [[GIMP]], ma ora è un toolkit molto famoso con supporto per molte lingue.  
+
GTK+, The GIMP Toolkit, fu creato inizialmente dal [[GNU Project|Progetto GNU]] per il [[GIMP]], ma ora è un toolkit molto famoso con supporto per molte lingue.
  
 
== Programmi di configurazione ==
 
== Programmi di configurazione ==
Line 79: Line 78:
  
  
Se state usando [[Xfce]] 4.8, sia i temi GTK+ 3.x and GTK+ 2.x possono essere modificati tramite l'Appearance Tool. Andate in Impostazioni-->Aspetto. Se lo stile scelto ha sia il tema GTK+ 2.x e GTK+ 3.x verranno usati entrambi. Se lo stile selezionate avesse soltanto il tema GTK+ 2.x, questo verrà usato mentre per le applicazioni GTK+ 3.x verrà usato il tema di default. Stessa cosa nel caso di un tema solo GTK+ 3.0. Per avere un interfaccia regolare conviene usare stili per le GTK+ 2.0 e GTK+ 3.0, potete controllare i pacchetti in [[AUR]]. Un esempio di questi temi è {{AUR|clearwaita-gtk-theme}}.
+
Se state usando [[Xfce_(Italiano)|Xfce]] 4.8, sia i temi GTK+ 3.x and GTK+ 2.x possono essere modificati tramite l'Appearance Tool. Andate in Impostazioni-->Aspetto. Se lo stile scelto ha sia il tema GTK+ 2.x e GTK+ 3.x verranno usati entrambi. Se lo stile selezionate avesse soltanto il tema GTK+ 2.x, questo verrà usato mentre per le applicazioni GTK+ 3.x verrà usato il tema di default. Stessa cosa nel caso di un tema solo GTK+ 3.0. Per avere un interfaccia regolare conviene usare stili per le GTK+ 2.0 e GTK+ 3.0, potete controllare i pacchetti in [[AUR_(Italiano)|AUR]]. Un esempio di questi temi è {{AUR|clearwaita-gtk-theme}}.
  
Se usate DE basati sulle GTK+, come [[Xfce]], [[LXDE]], gnome-tweak-tool non funzionerà; controllate su {{bug|23644}}. Dovrete quindi utilizzare [[pacman|install]] {{pkg|librsvg}}, e selezionare manualmente il vostro tema in {{ic|{XDG_CONFIG_HOME}/gtk-3.0/settings.ini}} (generalmente {{ic|~/.config/gtk-3.0/settings.ini}}. Un esempio {{ic|settings.ini}}:
+
Se usate DE basati sulle GTK+, come [[Xfce_(Italiano)|Xfce]], [[LXDE_(Italiano)|LXDE]], gnome-tweak-tool non funzionerà; controllate su {{bug|23644}}. Dovrete quindi utilizzare [[pacman|install]] {{pkg|librsvg}}, e selezionare manualmente il vostro tema in {{ic|{XDG_CONFIG_HOME}/gtk-3.0/settings.ini}} (generalmente {{ic|~/.config/gtk-3.0/settings.ini}}. Un esempio {{ic|settings.ini}}:
 
{{hc|{XDG_CONFIG_HOME}/gtk-3.0/settings.ini|2=
 
{{hc|{XDG_CONFIG_HOME}/gtk-3.0/settings.ini|2=
 
[Settings]
 
[Settings]
Line 96: Line 95:
 
  cp -r /usr/share/themes/Zukitwo/gtk-3.0/ ~/.config/   
 
  cp -r /usr/share/themes/Zukitwo/gtk-3.0/ ~/.config/   
  
Dopo questo avete bisogno di settare il vostro tema nelle configurazione dell'aspetto.After this, you need to set the same theme in your DE's appearance configuration tool. Non sono molti i temi che offrono un aspetto uniforme sia per le applicazioni in GTK+ 3.x che per GTK+ 2.x.  
+
Dopo questo avete bisogno di settare il vostro tema nelle configurazione dell'aspetto. Non sono molti i temi che offrono un aspetto uniforme sia per le applicazioni in GTK+ 3.x che per GTK+ 2.x.  
 
Tra questi ci sono:
 
Tra questi ci sono:
 
#Adwaita per GTK+ 3 e Advaicium per GTK+ 2
 
#Adwaita per GTK+ 3 e Advaicium per GTK+ 2
Line 112: Line 111:
 
{{Note|Ci sono probabilmente altri temi, alcuni di questi sono presenti nei repository AUR, qualcuno potrebbe creare problemi a causa della sovrapposizione dei colori (bianco su sfondi luminosi), in questo caso dovreste usare [http://i.imgur.com/QmeyN.png panel background].}}
 
{{Note|Ci sono probabilmente altri temi, alcuni di questi sono presenti nei repository AUR, qualcuno potrebbe creare problemi a causa della sovrapposizione dei colori (bianco su sfondi luminosi), in questo caso dovreste usare [http://i.imgur.com/QmeyN.png panel background].}}
  
=== GTK+ and QT ===
+
=== GTK+ e QT ===
If you have GTK+ and QT (KDE) applications on your desktop then you know that their looks do not blend well. If you wish to make your GTK+ styles match your QT styles please read [[Uniform Look for QT and GTK Applications]].
+
Se avete applicazioni sia in GTK+ che QT (KDE) allora dovreste sapere che i loro look non vanno molto daccordo. Potete seguire questa guida per uniformarli [[Uniform Look for QT and GTK Applications]].
  
 
== Configuration file ==
 
== Configuration file ==
  
{{Note|See the [http://library.gnome.org/devel/gtk/stable/GtkSettings.html#GtkSettings.properties ''GtkSettings'' properties] in the GTK+ programming reference manual for the full list of GTK configuration options.}}
+
{{Note|Controllate il [http://library.gnome.org/devel/gtk/stable/GtkSettings.html#GtkSettings.properties ''GtkSettings''] nel manuale di riferimento per le GTK+ per la lista completa sulle configurazioni.}}
  
The purpose of this section is to collect GTK configuration settings which can e.g. be used within  {{Ic|~/.gtkrc-2.0}}.  
+
Lo scopo di questa sezione è di raccogliere le configurazioni delle applicazioni in GTK, il file da modificare è {{Ic|~/.gtkrc-2.0}}.  
  
=== Enabling Customizable Keyboard Shortcuts ===
+
=== Attivare scorciatoie da tastiera ===
  
You can customize your GTK applications' keyboard shortcuts (those are called ''accelerators'' in GTK terminology) by hovering your mouse over a menu item and pressing your desired key combination. However, this feature is disabled by default. To enable it, set
+
Potete modificare le scorciatoie da tastiera per le applicazioni GTK (nel linguaggio GTK vengono definiti ''accelerators'')portando il vostro mouse su un elemento di menu e premendo la combinazione di tasti desiderata. L'opzione è disativata di default per abilitarla:
 
  gtk-can-change-accels = 1
 
  gtk-can-change-accels = 1
  
=== Speed up your GNOME menu ===
+
=== Velocizzare l'apertura dei menu di GNOME ===
  
This setting controls the delay between you pointing the mouse at a menu and that menu opening in GNOME. Change this to a setting you prefer. I guess the number is in milliseconds, e.g. 250 being a quarter of a second.
+
Questo controllo server per velocizzare l'apertura dei menu di GNOME. Cambiate il valore come preferite. I numeri sono in millisecondo quindi 250 sono un quarto di secondo
 
  gtk-menu-popup-delay = 0
 
  gtk-menu-popup-delay = 0
  
=== Reduce widget sizes ===
+
=== Diminuire la grandezza dei Widget ===
  
If you have a small screen or you just do not like big icons and widgets, you can resize things easily.
+
Nel caso voleste modificare la configurazione classica dei widgets o delle icone (es. rimpicciolirle),
To have icons without text in toolbars, use
+
Per avere le icone senza il testo nella toolbar usate:
 
  gtk-toolbar-style = GTK_TOOLBAR_ICONS
 
  gtk-toolbar-style = GTK_TOOLBAR_ICONS
To use smaller icons, use a line like this:
+
Per usare icone più piccole create una linea del genere:
 
  gtk-icon-sizes = "panel-menu=16,16:panel=16,16:gtk-menu=16,16:gtk-large-toolbar=16,16\
 
  gtk-icon-sizes = "panel-menu=16,16:panel=16,16:gtk-menu=16,16:gtk-large-toolbar=16,16\
 
  :gtk-small-toolbar=16,16:gtk-button=16,16"
 
  :gtk-small-toolbar=16,16:gtk-button=16,16"
Or to remove icons from buttons completely:
+
Per rimuovere completamente le icone:
 
  gtk-button-images = 0
 
  gtk-button-images = 0
You can also remove icons from menus:
+
Potete anche rimuovere le icone solamente dal menu:
 
  gtk-menu-images = 0
 
  gtk-menu-images = 0
  
There is some more tweaking to do in your themes gtkrc like explained [http://martin.ankerl.com/2008/10/10/how-to-make-a-compact-gnome-theme/ here] and there's another [http://gnome-look.org/content/show.php/Simple+eGTK?content=119812 theme] that does it all.
+
Ci sono ancora altre modifiche al tema gtkrc come spiegato in [http://martin.ankerl.com/2008/10/10/how-to-make-a-compact-gnome-theme/ qui] oppure [http://gnome-look.org/content/show.php/Simple+eGTK?content=119812 tema] che fa tutto.
  
== Development ==
+
== Sviluppo ==
  
When writing a start-from-scratch GTK+ 3 program with C, it's necessary to add CFLAGS for gcc:
+
Quando scrivere un programma GTK+3 da zero usando C è necessario aggiungere i CFLAGS per gcc:
 
  gcc -g -Wall `pkg-config --cflags --libs gtk+-3.0` -o base base.c
 
  gcc -g -Wall `pkg-config --cflags --libs gtk+-3.0` -o base base.c
-g and -Wall parameters are not necessary since they are only for verbose debugging outputs.
+
i parametri -g e -Wall non sono necessari da quando sono utili soltanto per i parametri di debug.
You may try out the official [http://developer.gnome.org/gtk-tutorial/stable/c39.html#SEC-HELLOWORLD Hello World example].
+
Potete provare l'ufficiale [http://developer.gnome.org/gtk-tutorial/stable/c39.html#SEC-HELLOWORLD Hello World example].
  
 
=== Write a simple message dialog app ===
 
=== Write a simple message dialog app ===
You can write your own GTK+ 3 message dialog easily in many programming languages through GObject-Introspection or bindings, or you can simply use bash.
+
Potete scrivere la vostra finestra di dialogo in GTk+ 3 usando numerosi codici di programmazione tramite i GObject-Introspection o bindings, oppure usare semplicemente il bash.
  
The following examples display a simple "Hello world" in a message dialog.
+
Gli esempi seguenti creano un programma che mostra la scritta "Hello World" in una finestra di dialogo.
  
 
====Bash====
 
====Bash====

Revision as of 15:38, 23 February 2014

Sommario help replacing me
Questi articoli trattano la configurazione di applicazioni GTK+. GTK+ (GIMP Toolkit) è uno strumento multi-piattaforma per la creazione di interfacce utente grafiche (GUI). Qui si esploreranno le utilità usate per configurare un tema GTK+, lo stile, le icone, il font, oltre a spiegare dettagliatamente la configurazione manuale.
Risorse collegate
Uniform Look for QT and GTK Applications (Italiano)
Qt
GNU Project

Dal Sito di GTK+:

GTK+, o The GIMP Toolkit, è un toolkit multi-piattaforma per creare interfacce utente (UI) grafiche. In quanto offre un set completo di strumenti, GTK+ è adatto per ogni progetto, da piccoli strumenti unici a interfacce complete di applicazioni.

GTK+, The GIMP Toolkit, fu creato inizialmente dal Progetto GNU per il GIMP, ma ora è un toolkit molto famoso con supporto per molte lingue.

Programmi di configurazione

Questi programmi GUI (Graphic User Interface) permettono la selezione del tema oltre alla personalizzazione del font e del cursore. Generalmente sovrascrivono il file ~/.gtkrc-2.0.

Un comando d'installazione d'esempio:

# pacman -S gtk-theme-switch2

Può essere utile guardare anche Uniformare il look di applicazioni QT e GTK - Come posso configurare lo stile per ogni toolkit

Temi

GTK+ 1.x

Le vecchia applicazioni GTK+ 1 (come xmms) quasi sempre non hanno un bel look all'inizio. La causa è data dal fatto che usano di default dei temi poco gradevoli. Per cambiare la sitazione, è necessario:

  1. scaricare ed installare dei bei temi
  2. cambiare il tema di default

Molti temi gradevoli si trovano in AUR. Per installarli, si veda gtk-smooth-engineAUR.

Per cambiare il tema è possibile usare gtk-theme-switch2. Per avviarlo basta usare il comando 'switch'.

GTK+ 2.x

I maggiori ambienti desktop muniscono l'utente di strumenti per configurare il tema GTK+, le icone, il font e la sua dimensione. In alternativa, si possono usare programmi come quelli appena menzionati.

È raccomandato anche installare alcuni temi GTK+ 2. Il famoso tema Clearlooks è incluso al pacchetto gtk-engines.

Altri temi si possono trovare in AUR:

In alternativa, le impostazioni di GTK+ possono essere configurate manualmente modificando ~/.gtkrc-2.0. Una lista di impostazioni GTK+ possono essere trovate in GNOME library. Per cambiare manualmente il tema GTK+, le icone, i font e la loro grandezza, basta aggiungere le righe seguenti a ~/.gtkrc-2.0:

~/.gtkrc-2.0
gtk-icon-theme-name = "[nome-del-tema-icone]"
gtk-theme-name = "[nome-del-tema]"
gtk-font-name = "[nome-del-font] [grandezza]"

Ad esempio:

~/.gtkrc-2.0
gtk-icon-theme-name = "Tango"
gtk-theme-name = "Murrine-Gray"
gtk-font-name = "DejaVu Sans 8"
Note: L'esempio appena riportato richiede i pacchetti ttf-dejavu, tango-icon-theme, gtk-engine-murrine da repository ufficiali, e murrine-themes-collectionAUR da AUR.

GTK+ 3.x

Se state usando Gnome 3, il tema può essere modificato usando gnome-tweak-tool.


Se state usando Xfce 4.8, sia i temi GTK+ 3.x and GTK+ 2.x possono essere modificati tramite l'Appearance Tool. Andate in Impostazioni-->Aspetto. Se lo stile scelto ha sia il tema GTK+ 2.x e GTK+ 3.x verranno usati entrambi. Se lo stile selezionate avesse soltanto il tema GTK+ 2.x, questo verrà usato mentre per le applicazioni GTK+ 3.x verrà usato il tema di default. Stessa cosa nel caso di un tema solo GTK+ 3.0. Per avere un interfaccia regolare conviene usare stili per le GTK+ 2.0 e GTK+ 3.0, potete controllare i pacchetti in AUR. Un esempio di questi temi è clearwaita-gtk-themeAUR.

Se usate DE basati sulle GTK+, come Xfce, LXDE, gnome-tweak-tool non funzionerà; controllate su FS#23644. Dovrete quindi utilizzare install librsvg, e selezionare manualmente il vostro tema in {XDG_CONFIG_HOME}/gtk-3.0/settings.ini (generalmente ~/.config/gtk-3.0/settings.ini. Un esempio settings.ini:

{XDG_CONFIG_HOME}/gtk-3.0/settings.ini
[Settings]
gtk-application-prefer-dark-theme = false
gtk-theme-name = Zukitwo
gtk-fallback-icon-theme = gnome
gtk-icon-theme-name = [icon theme name]
gtk-font-name = [font name] [font size]

Se questo ancora non funzionasse cancellate la vecchia cartella gtk-3.0 contenuta in {XDG_CONFIG_HOME} e copiate la cartella gtk-3.0 in /path-to-the-theme to {XDG_CONFIG_HOME}. esempio:

rm -r ~/.config/gtk-3.0/
cp -r /usr/share/themes/Zukitwo/gtk-3.0/ ~/.config/  

Dopo questo avete bisogno di settare il vostro tema nelle configurazione dell'aspetto. Non sono molti i temi che offrono un aspetto uniforme sia per le applicazioni in GTK+ 3.x che per GTK+ 2.x. Tra questi ci sono:

  1. Adwaita per GTK+ 3 e Advaicium per GTK+ 2
  2. Newlooks per GKT+ 3 e Clearlooks per GTK+ 2
  3. Zukitwo
  4. Elegant Brit
  5. Atolm
  6. Hope

Potete scoprire quali temi sono istallati sul vostro computer che hanno una versione sia per le GTK2 che per le GTK3 usando questo comando (non funziona se nel nome del file sono contenuti spazi) :

find $(find ~/.themes /usr/share/themes/ -wholename "*/gtk-3.0" | sed -e "s/^\(.*\)\/gtk-3.0$/\1/")\
-wholename "*/gtk-2.0" | sed -e "s/.*\/\(.*\)\/gtk-2.0/\1"/


Note: Ci sono probabilmente altri temi, alcuni di questi sono presenti nei repository AUR, qualcuno potrebbe creare problemi a causa della sovrapposizione dei colori (bianco su sfondi luminosi), in questo caso dovreste usare panel background.

GTK+ e QT

Se avete applicazioni sia in GTK+ che QT (KDE) allora dovreste sapere che i loro look non vanno molto daccordo. Potete seguire questa guida per uniformarli Uniform Look for QT and GTK Applications.

Configuration file

Note: Controllate il GtkSettings nel manuale di riferimento per le GTK+ per la lista completa sulle configurazioni.

Lo scopo di questa sezione è di raccogliere le configurazioni delle applicazioni in GTK, il file da modificare è ~/.gtkrc-2.0.

Attivare scorciatoie da tastiera

Potete modificare le scorciatoie da tastiera per le applicazioni GTK (nel linguaggio GTK vengono definiti accelerators)portando il vostro mouse su un elemento di menu e premendo la combinazione di tasti desiderata. L'opzione è disativata di default per abilitarla:

gtk-can-change-accels = 1

Velocizzare l'apertura dei menu di GNOME

Questo controllo server per velocizzare l'apertura dei menu di GNOME. Cambiate il valore come preferite. I numeri sono in millisecondo quindi 250 sono un quarto di secondo

gtk-menu-popup-delay = 0

Diminuire la grandezza dei Widget

Nel caso voleste modificare la configurazione classica dei widgets o delle icone (es. rimpicciolirle), Per avere le icone senza il testo nella toolbar usate:

gtk-toolbar-style = GTK_TOOLBAR_ICONS

Per usare icone più piccole create una linea del genere:

gtk-icon-sizes = "panel-menu=16,16:panel=16,16:gtk-menu=16,16:gtk-large-toolbar=16,16\
:gtk-small-toolbar=16,16:gtk-button=16,16"

Per rimuovere completamente le icone:

gtk-button-images = 0

Potete anche rimuovere le icone solamente dal menu:

gtk-menu-images = 0

Ci sono ancora altre modifiche al tema gtkrc come spiegato in qui oppure tema che fa tutto.

Sviluppo

Quando scrivere un programma GTK+3 da zero usando C è necessario aggiungere i CFLAGS per gcc:

gcc -g -Wall `pkg-config --cflags --libs gtk+-3.0` -o base base.c

i parametri -g e -Wall non sono necessari da quando sono utili soltanto per i parametri di debug. Potete provare l'ufficiale Hello World example.

Write a simple message dialog app

Potete scrivere la vostra finestra di dialogo in GTk+ 3 usando numerosi codici di programmazione tramite i GObject-Introspection o bindings, oppure usare semplicemente il bash.

Gli esempi seguenti creano un programma che mostra la scritta "Hello World" in una finestra di dialogo.

Bash

hello_world.sh
#!/bin/bash
zenity --info --title='Hello world!' --text='This is an example dialog.'

C

  • Dependency: gtk3
  • Build with: gcc -o hello_world `pkg-config --cflags --libs gtk+-3.0` hello_world.c
hello_world.c
#include <gtk/gtk.h>
void main (int argc, char *argv[]) {
	gtk_init (&argc, &argv);
        GtkWidget *hello = gtk_message_dialog_new (NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "Hello world!");
	gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (hello), "This is an example dialog.");
        gtk_dialog_run(GTK_DIALOG (hello));
}

C++

  • Dependency: gtkmm3
  • Build with: g++ -o hello_world `pkg-config --cflags --libs gtkmm-3.0` hello_world.cc
hello_world.cc
#include <gtkmm.h>
#include <gtkmm/messagedialog.h>
int main(int argc, char *argv[]) {
	Gtk::Main kit(argc, argv);
	Gtk::MessageDialog Hello("Hello world!", false, Gtk::MESSAGE_INFO, Gtk::BUTTONS_OK);
	Hello.set_secondary_text("This is an example dialog.");
	Hello.run();
}

Genie

  • Dependency: gtk3
  • Makedependency: vala
  • Build with: valac --pkg gtk+-3.0 hello_world.gs
hello_world.gs
uses 
	Gtk
init
	Gtk.init (ref args)
	var Hello=new MessageDialog (null, Gtk.DialogFlags.MODAL, Gtk.MessageType.INFO, Gtk.ButtonsType.OK, "Hello world!")
	Hello.format_secondary_text ("This is an example dialog.")
	Hello.run ()

JavaScript

hello_world.js
#!/usr/bin/gjs
Gtk = imports.gi.Gtk
Gtk.init(null, null)
Hello = new Gtk.MessageDialog({type: Gtk.MessageType.INFO,
                               buttons: Gtk.ButtonsType.OK,
                               text: "Hello world!",
                               "secondary-text": "This is an example dialog."})
Hello.run()

Python

hello_world.py
#!/usr/bin/python
from gi.repository import Gtk
Gtk.init(None)
Hello=Gtk.MessageDialog(None, Gtk.DialogFlags.MODAL, Gtk.MessageType.INFO, Gtk.ButtonsType.CLOSE, "Hello world!")
Hello.format_secondary_text("This is an example dialog.")
Hello.run()

Vala

  • Dependency: gtk3
  • Makedependency: vala
  • Build with: valac --pkg gtk+-3.0 hello_world.vala
hello_world.vala
using Gtk;
public class HelloWorld {
	static void main (string[] args) {
		Gtk.init (ref args);
		var Hello=new MessageDialog (null, Gtk.DialogFlags.MODAL, Gtk.MessageType.INFO, Gtk.ButtonsType.OK, "Hello world!");
		Hello.format_secondary_text ("This is an example dialog.");
		Hello.run ();
	}
}

Resources