function label_toggle($dialog, $label, $dialog) { if (!$label) { $label = new GtkLabel('Dialog Test'); $label->set_padding(10, 10); $label->connect_object('destroy', create_function('$w', '$w=null;'), &$label); $vbox = $dialog->vbox; $vbox->pack_start($label, true, true, 0); $label->show(); } else { $label->destroy(); } }
$text->connect('query-tooltip', 'markuptip'); // icon $vbox->add($text = new GtkLabel('Icon Tooltip')); $text->set_has_tooltip(true); $text->connect('query-tooltip', 'icontip'); // stock $vbox->add($text = new GtkLabel('Stock Icon Tooltip')); $text->set_has_tooltip(true); $text->connect('query-tooltip', 'stocktip'); // widget $vbox->add($text = new GtkLabel('Widget Tooltip')); $text->set_has_tooltip(true); $text->connect('query-tooltip', 'widgettip'); // custom tooltip area $vbox->add($text = new GtkLabel('No tip on padding')); $text->set_padding(15, 25); $text->set_has_tooltip(true); $text->connect('query-tooltip', 'textonlytip'); // be brave, use your own tips window $vbox->add($text = new GtkLabel('Different Tooltips Window')); $tipswindow = new GtkWindow(Gtk::WINDOW_POPUP); $content = new GtkLabel('I feel pretty'); $tipswindow->add($content); $content->show(); $text->set_tooltip_window($tipswindow); $text->connect('query-tooltip', 'redboxtip'); // trigger tooltip query for the display on button press $vbox->add($button = new GtkButton('Trigger Tooltip passing Display')); $button->connect_simple('clicked', array('GtkTooltip', 'trigger_tooltip_query'), GdkDisplay::get_default()); $button->set_has_tooltip(true); $button->connect('query-tooltip', 'texttip');