# MenuButton

Marta Maria Casetti
mmcasetti@gmail.com 2012
Añadir consejos a sus widgets

# Consejo

Una barra de herramientas con un consejo (con una imagen) para un botón.

# Código usado para generar este ejemplo

# Métodos útiles para un widget de consejo

`set_tooltip_text(text)` y `set_tooltip_markup(text)` pueden usarse para añadir un consejo o texto plano (o texto en el lenguaje de marcado de Pango) a un widget.

Para consejos más complejos, por ejemplo para un consejo con una imagen:

Establezca la propiedad `"has-tooltip"` del widget a `True`; esto hará que GTK+ monitorice el widget en busca de movimiento y eventos relacionados que se necesitan para determinar cuándo y dónde mostrar un consejo.

Conecte a la señal `"query-tooltip"`. Esta señal se emitirá cuando se deba mostrar un widget. Uno de los argumentos que se le pasan al manejador de señales es un objeto GtkTooltip. Este es el objeto que se va a mostrar como un consejo, y puede manipularse en su retorno de llamada usando funciones como `set_icon()`. Hay funciones para establecer el texto marcado del consejo (`set_markup(text)`), una imagen desde un icono del almacén (`set_icon_from_stock(stock_id, size)`), o incluso poner un widget personalizado (`set_custom(widget)`).

Devuelva `True` de su manejador de «query-tooltip». Esto hace que el consejo se muestre. Si devuelve `False`, no se mostrará.

En el probablemente raro caso en el que quiera tener aún más control sobre el consejo que se va a mostrar, puede establecer su propia GtkWindow que se usará como ventana del consejo. Esto funciona así:

Establezca `"has-tooltip"` y conecte con `"query-tooltip"` como antes.

Use `set_tooltip_window()` en el widget para establecer una GtkWindow creada como ventana del consejo.

En la devolución de llamada `"query-tooltip"` puede acceder a su ventana usando `get_tooltip_window()` y manipularla como quiera. La semántica del valor de devolución es exactamente la misma que antes, devuelva `True` para mostrar el widget o `False` para no hacerlo.

# Referencias de la API

En este ejemplo se usa lo siguiente:

GtkTooltip

GtkToolbar

GtkWidget

Stock Items