.\" t .fam H .\" Understrike macro .de us \\$1\l'|0\(ul' .. . . .\" Turn hyphenation off .nh .\" Load monospace fonts .if n \{\ . mso tty-char.tmac . ftr CR R . ftr CI I . ftr CB B .\} .if '\*[.T]'dvi' \ . ftr CB CW . . .\" Start the document .TH "GXK-Functions" "3" "25 May 2005" "BEAST-0.6.6-rc1" "BEAST-0.6.6-rc1" .SH NAME .PP GXK-Functions - Gtk+ Extension Kit Function Reference .PP \fIDocument Revised:\fP Wed May 25 23:38:23 2005 .br .SH SYNOPSIS .PP .na \fB\f(CBbst_gmask_container_create\fP\f1(\fI\f(CIborder_width\fP\f1, \fI\f(CIdislodge_columns\fP\f1); .br \fB\f(CBbst_gmask_foreach\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CIfunc\fP\f1, \fI\f(CIdata\fP\f1); .br \fB\f(CBbst_gmask_form\fP\f1(\fI\f(CIgmask_container\fP\f1, \fI\f(CIaction\fP\f1, \fI\f(CIgpack\fP\f1); .br \fB\f(CBbst_gmask_get_action\fP\f1(\fI\f(CImask\fP\f1); .br \fB\f(CBbst_gmask_get_aux1\fP\f1(\fI\f(CImask\fP\f1); .br \fB\f(CBbst_gmask_get_aux2\fP\f1(\fI\f(CImask\fP\f1); .br \fB\f(CBbst_gmask_get_aux3\fP\f1(\fI\f(CImask\fP\f1); .br \fB\f(CBbst_gmask_get_prompt\fP\f1(\fI\f(CImask\fP\f1); .br \fB\f(CBbst_gmask_pack\fP\f1(\fI\f(CImask\fP\f1); .br \fB\f(CBbst_gmask_quick\fP\f1(\fI\f(CIgmask_container\fP\f1, \fI\f(CIcolumn\fP\f1, \fI\f(CIprompt\fP\f1, \fI\f(CIaction\fP\f1, \fI\f(CItip_text\fP\f1); .br \fB\f(CBbst_gmask_set_aux1\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CIwidget\fP\f1); .br \fB\f(CBbst_gmask_set_aux2\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CIwidget\fP\f1); .br \fB\f(CBbst_gmask_set_aux3\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CIwidget\fP\f1); .br \fB\f(CBbst_gmask_set_column\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CIcolumn\fP\f1); .br \fB\f(CBbst_gmask_set_prompt\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CIwidget\fP\f1); .br \fB\f(CBbst_gmask_set_tip\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CItip_text\fP\f1); .br \fB\f(CBg_object_get_double\fP\f1(\fI\f(CIobject\fP\f1, \fI\f(CIname\fP\f1); .br \fB\f(CBg_object_get_long\fP\f1(\fI\f(CIobject\fP\f1, \fI\f(CIname\fP\f1); .br \fB\f(CBg_object_set_double\fP\f1(\fI\f(CIobject\fP\f1, \fI\f(CIname\fP\f1, \fI\f(CIv_double\fP\f1); .br \fB\f(CBg_object_set_long\fP\f1(\fI\f(CIobject\fP\f1, \fI\f(CIname\fP\f1, \fI\f(CIv_long\fP\f1); .br \fB\f(CBgnome_canvas_set_zoom\fP\f1(\fI\f(CIcanvas\fP\f1, \fI\f(CIpixels_per_unit\fP\f1); .br \fB\f(CBgnome_canvas_text_set_zoom_size\fP\f1(\fI\f(CIitem\fP\f1, \fI\f(CIpixels\fP\f1); .br \fB\f(CBgtk_box_get_nth_child\fP\f1(\fI\f(CIbox\fP\f1, \fI\f(CIpos\fP\f1); .br \fB\f(CBgtk_notebook_current_widget\fP\f1(\fI\f(CInotebook\fP\f1); .br \fB\f(CBgxk_cell_editable_canceled\fP\f1(\fI\f(CIecell\fP\f1); .br \fB\f(CBgxk_cell_editable_is_focus_handler\fP\f1(\fI\f(CIecell\fP\f1); .br \fB\f(CBgxk_cell_renderer_popup_get_type\fP\f1(); .br \fB\f(CBgxk_color_alloc\fP\f1(\fI\f(CIcolormap\fP\f1, \fI\f(CIcolor\fP\f1); .br \fB\f(CBgxk_dialog_action*\fP\f1(\fI\f(CIdialog\fP\f1, \fI\f(CIaction\fP\f1, \fI\f(CIcallback\fP\f1, \fI\f(CIdata\fP\f1); .br \fB\f(CBgxk_dialog_add_flags\fP\f1(\fI\f(CIdialog\fP\f1, \fI\f(CIflags\fP\f1); .br \fB\f(CBgxk_dialog_clear_flags\fP\f1(\fI\f(CIdialog\fP\f1, \fI\f(CIflags\fP\f1); .br \fB\f(CBgxk_dialog_get_child\fP\f1(\fI\f(CIdialog\fP\f1); .br \fB\f(CBgxk_dialog_get_status_window\fP\f1(); .br \fB\f(CBgxk_dialog_new\fP\f1(\fI\f(CIpointer_loc\fP\f1, \fI\f(CIalive_object\fP\f1, \fI\f(CIflags\fP\f1, \fI\f(CItitle\fP\f1, \fI\f(CIchild\fP\f1); .br \fB\f(CBgxk_dialog_remove_actions\fP\f1(\fI\f(CIdialog\fP\f1); .br \fB\f(CBgxk_dialog_set_child\fP\f1(\fI\f(CIdialog\fP\f1, \fI\f(CIchild\fP\f1); .br \fB\f(CBgxk_dialog_set_default\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIdefault_widget\fP\f1); .br \fB\f(CBgxk_dialog_set_focus\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIfocus_widget\fP\f1); .br \fB\f(CBgxk_dialog_set_sizes\fP\f1(\fI\f(CIdialog\fP\f1, \fI\f(CImin_width\fP\f1, \fI\f(CImin_height\fP\f1, \fI\f(CIdefault_width\fP\f1, \fI\f(CIdefault_height\fP\f1); .br \fB\f(CBgxk_dialog_set_title\fP\f1(\fI\f(CIdialog\fP\f1, \fI\f(CItitle\fP\f1); .br \fB\f(CBgxk_expander_connect_to_widget\fP\f1(\fI\f(CIexpander\fP\f1, \fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_file_selection_heal\fP\f1(\fI\f(CIfs\fP\f1); .br \fB\f(CBgxk_grab_pointer_and_keyboard\fP\f1(\fI\f(CIwindow\fP\f1, \fI\f(CIowner_events\fP\f1, \fI\f(CIevent_mask\fP\f1, \fI\f(CIconfine_to\fP\f1, \fI\f(CIcursor\fP\f1, \fI\f(CItime\fP\f1); .br \fB\f(CBgxk_idle_show_widget\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_idle_showraise\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_idle_unrealize_widget\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_item_factory_get_item\fP\f1(\fI\f(CIifactory\fP\f1, \fI\f(CIpath\fP\f1); .br \fB\f(CBgxk_item_factory_get_widget\fP\f1(\fI\f(CIifactory\fP\f1, \fI\f(CIpath\fP\f1); .br \fB\f(CBgxk_item_factory_sensitize\fP\f1(\fI\f(CIifactory\fP\f1, \fI\f(CIpath\fP\f1, \fI\f(CIsensitive\fP\f1); .br \fB\f(CBgxk_label_set_attributes:\fP\f1(\fI\f(CIlabel\fP\f1, \fI\f(CI...\fP\f1); .br \fB\f(CBgxk_led_new\fP\f1(\fI\f(CIcolor\fP\f1); .br \fB\f(CBgxk_led_set_color\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIcolor\fP\f1); .br \fB\f(CBgxk_menu_attach_as_popup\fP\f1(\fI\f(CImenu\fP\f1, \fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_menu_attach_as_popup_with_func\fP\f1(\fI\f(CImenu\fP\f1, \fI\f(CIwidget\fP\f1, \fI\f(CImdfunc\fP\f1); .br \fB\f(CBgxk_menu_attach_as_submenu\fP\f1(\fI\f(CImenu\fP\f1, \fI\f(CImenu_item\fP\f1); .br \fB\f(CBgxk_menu_check_sensitive\fP\f1(\fI\f(CImenu\fP\f1); .br \fB\f(CBgxk_menu_set_active\fP\f1(\fI\f(CImenu\fP\f1, \fI\f(CIchild\fP\f1); .br \fB\f(CBgxk_notebook_append\fP\f1(\fI\f(CInotebook\fP\f1, \fI\f(CIchild\fP\f1, \fI\f(CItab_text\fP\f1, \fI\f(CIfillexpand\fP\f1); .br \fB\f(CBgxk_notebook_descendant_get_page\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_notebook_descendant_get_tab\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_notebook_set_current_page_widget\fP\f1(\fI\f(CInotebook\fP\f1, \fI\f(CIpage\fP\f1); .br \fB\f(CBgxk_option_menu_set_menu\fP\f1(\fI\f(CIoption_menu\fP\f1, \fI\f(CImenu\fP\f1); .br \fB\f(CBgxk_polygon_new\fP\f1(\fI\f(CIpolygon_graph\fP\f1); .br \fB\f(CBgxk_polygon_set_arcs\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIn_arcs\fP\f1, \fI\f(CIarcs\fP\f1); .br \fB\f(CBgxk_polygon_set_graph\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIpolygon_graph\fP\f1); .br \fB\f(CBgxk_polygon_set_length\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIlength\fP\f1); .br \fB\f(CBgxk_polygon_set_lines\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIn_lines\fP\f1, \fI\f(CIlines\fP\f1); .br \fB\f(CBgxk_proxy_editable_get_type\fP\f1(); .br \fB\f(CBgxk_proxy_editable_set_cell_editable\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIecell\fP\f1); .br \fB\f(CBgxk_scroll_text_advance\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIuri\fP\f1); .br \fB\f(CBgxk_scroll_text_append\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIstring\fP\f1); .br \fB\f(CBgxk_scroll_text_append_file\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIfile_name\fP\f1); .br \fB\f(CBgxk_scroll_text_append_file_tsm\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIfile_name\fP\f1); .br \fB\f(CBgxk_scroll_text_append_tsm\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIstring\fP\f1); .br \fB\f(CBgxk_scroll_text_aprintf\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CItext_fmt\fP\f1); .br \fB\f(CBgxk_scroll_text_clear\fP\f1(\fI\f(CIsctext\fP\f1); .br \fB\f(CBgxk_scroll_text_create\fP\f1(\fI\f(CIflags\fP\f1, \fI\f(CIstring\fP\f1); .br \fB\f(CBgxk_scroll_text_display\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIuri\fP\f1); .br \fB\f(CBgxk_scroll_text_enter\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIuri\fP\f1); .br \fB\f(CBgxk_scroll_text_get_text_view\fP\f1(\fI\f(CIsctext\fP\f1); .br \fB\f(CBgxk_scroll_text_pop_indent\fP\f1(\fI\f(CIsctext\fP\f1); .br \fB\f(CBgxk_scroll_text_push_indent\fP\f1(\fI\f(CIsctext\fP\f1); .br \fB\f(CBgxk_scroll_text_rewind\fP\f1(\fI\f(CIsctext\fP\f1); .br \fB\f(CBgxk_scroll_text_set\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIstring\fP\f1); .br \fB\f(CBgxk_scroll_text_set_index\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIuri\fP\f1); .br \fB\f(CBgxk_scroll_text_set_tsm\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIstring\fP\f1); .br \fB\f(CBgxk_scrolled_window_create\fP\f1(\fI\f(CIchild\fP\f1, \fI\f(CIshadow_type\fP\f1, \fI\f(CIxrequest\fP\f1, \fI\f(CIyrequest\fP\f1); .br \fB\f(CBgxk_scrolled_window_spare_space\fP\f1(\fI\f(CIscwin\fP\f1); .br \fB\f(CBgxk_scrolled_window_unspare_space\fP\f1(\fI\f(CIscwin\fP\f1); .br \fB\f(CBgxk_signal_handler_exists\fP\f1(\fI\f(CIinstance\fP\f1, \fI\f(CIdetailed_signal\fP\f1, \fI\f(CIcallback\fP\f1, \fI\f(CIdata\fP\f1); .br \fB\f(CBgxk_signal_handler_pending\fP\f1(\fI\f(CIinstance\fP\f1, \fI\f(CIdetailed_signal\fP\f1, \fI\f(CIcallback\fP\f1, \fI\f(CIdata\fP\f1); .br \fB\f(CBgxk_size_group\fP\f1(\fI\f(CIsgmode\fP\f1, \fI\f(CI...\fP\f1); .br \fB\f(CBgxk_size_height\fP\f1(\fI\f(CIicon_size\fP\f1); .br \fB\f(CBgxk_size_width\fP\f1(\fI\f(CIicon_size\fP\f1); .br \fB\f(CBgxk_spline_copy\fP\f1(\fI\f(CIspline\fP\f1); .br \fB\f(CBgxk_spline_dump\fP\f1(\fI\f(CIspline\fP\f1); .br \fB\f(CBgxk_spline_eval\fP\f1(\fI\f(CIspline\fP\f1, \fI\f(CIx\fP\f1, \fI\f(CIyd1\fP\f1); .br \fB\f(CBgxk_spline_findx\fP\f1(\fI\f(CIspline\fP\f1, \fI\f(CIy\fP\f1); .br \fB\f(CBgxk_spline_free\fP\f1(\fI\f(CIspline\fP\f1); .br \fB\f(CBgxk_spline_new\fP\f1(\fI\f(CIn_points\fP\f1, \fI\f(CIpoints\fP\f1, \fI\f(CIdy_start\fP\f1, \fI\f(CIdy_end\fP\f1); .br \fB\f(CBgxk_spline_new_natural\fP\f1(\fI\f(CIn_points\fP\f1, \fI\f(CIpoints\fP\f1); .br \fB\f(CBgxk_spline_y\fP\f1(\fI\f(CIspline\fP\f1, \fI\f(CIx\fP\f1); .br \fB\f(CBgxk_status_bar_create\fP\f1(); .br \fB\f(CBgxk_status_clear\fP\f1(); .br \fB\f(CBgxk_status_errnoprintf\fP\f1(\fI\f(CIlibc_errno\fP\f1, \fI\f(CImessage_fmt\fP\f1); .br \fB\f(CBgxk_status_printf\fP\f1(\fI\f(CIpercentage\fP\f1, \fI\f(CIstatus_msg\fP\f1, \fI\f(CImessage_fmt\fP\f1); .br \fB\f(CBgxk_status_set\fP\f1(\fI\f(CIpercentage\fP\f1, \fI\f(CImessage\fP\f1, \fI\f(CIstatus_msg\fP\f1); .br \fB\f(CBgxk_status_window_pop\fP\f1(); .br \fB\f(CBgxk_status_window_push\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_stock_button\fP\f1(\fI\f(CIstock_id\fP\f1, \fI\f(CIlabel\fP\f1); .br \fB\f(CBgxk_stock_button_child\fP\f1(\fI\f(CIstock_id\fP\f1, \fI\f(CIlabel\fP\f1); .br \fB\f(CBgxk_stock_fallback_pixbuf\fP\f1(\fI\f(CIstock_id\fP\f1); .br \fB\f(CBgxk_stock_icon_window\fP\f1(\fI\f(CIstock_id\fP\f1); .br \fB\f(CBgxk_stock_image\fP\f1(\fI\f(CIstock_icon_id\fP\f1, \fI\f(CIicon_size\fP\f1); .br \fB\f(CBgxk_stock_register_icon\fP\f1(\fI\f(CIicon\fP\f1); .br \fB\f(CBgxk_stock_register_icons\fP\f1(\fI\f(CIn_icons\fP\f1, \fI\f(CIicons\fP\f1); .br \fB\f(CBgxk_stock_register_item\fP\f1(\fI\f(CIitem\fP\f1); .br \fB\f(CBgxk_stock_register_items\fP\f1(\fI\f(CIn_items\fP\f1, \fI\f(CIitems\fP\f1); .br \fB\f(CBgxk_text_view_cursor_to_end\fP\f1(\fI\f(CItview\fP\f1); .br \fB\f(CBgxk_text_view_cursor_to_start\fP\f1(\fI\f(CItview\fP\f1); .br \fB\f(CBgxk_text_view_enter_browse_mode\fP\f1(\fI\f(CItview\fP\f1); .br \fB\f(CBgxk_text_view_leave_browse_mode\fP\f1(\fI\f(CItview\fP\f1); .br \fB\f(CBgxk_toplevel_activate_default\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_toplevel_delete\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_toplevel_hide\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_tree_model_get_iter\fP\f1(\fI\f(CItree_model\fP\f1, \fI\f(CIiter\fP\f1, \fI\f(CIpath\fP\f1); .br \fB\f(CBgxk_tree_path_prev\fP\f1(\fI\f(CIpath\fP\f1); .br \fB\f(CBgxk_tree_selection_force_browse\fP\f1(\fI\f(CIselection\fP\f1, \fI\f(CImodel\fP\f1); .br \fB\f(CBgxk_tree_selection_select_ipath\fP\f1(\fI\f(CIselection\fP\f1, \fI\f(CI...\fP\f1); .br \fB\f(CBgxk_tree_selection_select_spath\fP\f1(\fI\f(CIselection\fP\f1, \fI\f(CIstr_path\fP\f1); .br \fB\f(CBgxk_tree_selection_unselect_ipath\fP\f1(\fI\f(CIselection\fP\f1, \fI\f(CI...\fP\f1); .br \fB\f(CBgxk_tree_selection_unselect_spath\fP\f1(\fI\f(CIselection\fP\f1, \fI\f(CIstr_path\fP\f1); .br \fB\f(CBgxk_tree_spath_index0\fP\f1(\fI\f(CIstrpath\fP\f1); .br \fB\f(CBgxk_tree_view_add_column\fP\f1(\fI\f(CItree_view\fP\f1, \fI\f(CIposition\fP\f1, \fI\f(CIcolumn\fP\f1, \fI\f(CIcell\fP\f1, \fI\f(CI...\fP\f1); .br \fB\f(CBgxk_tree_view_add_popup_column\fP\f1(\fI\f(CItree_view\fP\f1, \fI\f(CImodel_column\fP\f1, \fI\f(CIcolumn_flags\fP\f1, \fI\f(CIxalign\fP\f1, \fI\f(CItitle\fP\f1, \fI\f(CItooltip\fP\f1, \fI\f(CIedited_callback\fP\f1, \fI\f(CIpopup_callback\fP\f1, \fI\f(CIdata\fP\f1, \fI\f(CIcflags\fP\f1); .br \fB\f(CBgxk_tree_view_add_text_column\fP\f1(\fI\f(CItree_view\fP\f1, \fI\f(CImodel_column\fP\f1, \fI\f(CIcolumn_flags\fP\f1, \fI\f(CIxalign\fP\f1, \fI\f(CItitle\fP\f1, \fI\f(CItooltip\fP\f1, \fI\f(CIedited_callback\fP\f1, \fI\f(CIdata\fP\f1, \fI\f(CIcflags\fP\f1); .br \fB\f(CBgxk_tree_view_add_toggle_column\fP\f1(\fI\f(CItree_view\fP\f1, \fI\f(CImodel_column\fP\f1, \fI\f(CIcolumn_flags\fP\f1, \fI\f(CIxalign\fP\f1, \fI\f(CItitle\fP\f1, \fI\f(CItooltip\fP\f1, \fI\f(CItoggled_callback\fP\f1, \fI\f(CIdata\fP\f1, \fI\f(CIcflags\fP\f1); .br \fB\f(CBgxk_tree_view_append_text_columns\fP\f1(\fI\f(CItree_view\fP\f1, \fI\f(CIn_cols\fP\f1, \fI\f(CI...\fP\f1); .br \fB\f(CBgxk_tree_view_column_set_tip_title\fP\f1(\fI\f(CItree_column\fP\f1, \fI\f(CItitle\fP\f1, \fI\f(CItooltip\fP\f1); .br \fB\f(CBgxk_tree_view_focus_row\fP\f1(\fI\f(CItree\fP\f1, \fI\f(CIrow\fP\f1); .br \fB\f(CBgxk_tree_view_get_bin_window_pos\fP\f1(\fI\f(CItree\fP\f1, \fI\f(CIx_p\fP\f1, \fI\f(CIy_p\fP\f1); .br \fB\f(CBgxk_tree_view_get_row_area\fP\f1(\fI\f(CItree\fP\f1, \fI\f(CIrow\fP\f1, \fI\f(CIy_p\fP\f1, \fI\f(CIheight_p\fP\f1, \fI\f(CIcontent_area\fP\f1); .br \fB\f(CBgxk_tree_view_get_row_from_coord\fP\f1(\fI\f(CItree\fP\f1, \fI\f(CIy\fP\f1, \fI\f(CIrow_p\fP\f1); .br \fB\f(CBgxk_tree_view_get_selected_row\fP\f1(\fI\f(CItree\fP\f1); .br \fB\f(CBgxk_tree_view_is_row_selected\fP\f1(\fI\f(CItree\fP\f1, \fI\f(CIrow\fP\f1); .br \fB\f(CBgxk_type_register_generated\fP\f1(\fI\f(CIn_entries\fP\f1, \fI\f(CIentries\fP\f1); .br \fB\f(CBgxk_ungrab_pointer_and_keyboard\fP\f1(\fI\f(CIwindow\fP\f1, \fI\f(CItime\fP\f1); .br \fB\f(CBgxk_vseparator_space_new\fP\f1(\fI\f(CIdraw_seperator\fP\f1); .br \fB\f(CBgxk_widget_activate_accel_group\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIaccel_group\fP\f1); .br \fB\f(CBgxk_widget_add_font_requisition\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIn_chars\fP\f1, \fI\f(CIn_digits\fP\f1); .br \fB\f(CBgxk_widget_add_option\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIoption\fP\f1, \fI\f(CIvalue\fP\f1); .br \fB\f(CBgxk_widget_ancestry_viewable\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_attached_hierarchy_changed\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_check_option\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIoption\fP\f1); .br \fB\f(CBgxk_widget_find_level_ordered\fP\f1(\fI\f(CItoplevel\fP\f1, \fI\f(CIname\fP\f1); .br \fB\f(CBgxk_widget_force_bg_clear\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_get_attach_toplevel\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_get_latent_tooltip\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_get_options\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_has_ancestor\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIancestor\fP\f1); .br \fB\f(CBgxk_widget_make_insensitive\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_make_sensitive\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_modify_as_title\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_modify_base_as_bg\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_modify_bg_as_active\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_modify_bg_as_base\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_modify_normal_bg_as_base\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_proxy_requisition\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIxscale\fP\f1, \fI\f(CIyscale\fP\f1); .br \fB\f(CBgxk_widget_regulate\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIsensitive\fP\f1, \fI\f(CIactive\fP\f1); .br \fB\f(CBgxk_widget_regulate_uses_active\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_request_hclient_height\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIclient\fP\f1); .br \fB\f(CBgxk_widget_request_vclient_width\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIclient\fP\f1); .br \fB\f(CBgxk_widget_set_latent_tooltip\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CItooltip\fP\f1); .br \fB\f(CBgxk_widget_set_tooltip\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CItooltip\fP\f1); .br \fB\f(CBgxk_widget_showraise\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_viewable\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_widget_viewable_changed\fP\f1(\fI\f(CIwidget\fP\f1); .br \fB\f(CBgxk_window_get_menu_accel_group\fP\f1(\fI\f(CIwindow\fP\f1); .br \fB\f(CBgxk_window_process_next\fP\f1(\fI\f(CIwindow\fP\f1, \fI\f(CIupdate_children\fP\f1); .br \fB\f(CBgxk_window_set_cursor_type\fP\f1(\fI\f(CIwindow\fP\f1, \fI\f(CIcursor\fP\f1); .br .ad .SH DESCRIPTION .TP .PD 0 \fB\f(CBbst_gmask_container_create\fP\f1(\fI\f(CIborder_width\fP\f1, \fI\f(CIdislodge_columns\fP\f1); .na .TS nokeep; l l l. \fI\f(CIguint \fP\f1 \fI\f(CIborder_width\fP\f1; T{ Border width of this GUI mask T} \fI\f(CIgboolean \fP\f1 \fI\f(CIdislodge_columns\fP\f1; T{ Provide expandable space between columns T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ GUI field mask container T} .TE .ad Create a container capable to hold GUI field masks. This is the container to be passed into \fB\f(CBbst_gmask_form()\fP\f1. In case multiple field mask columns are packed into the container (by using \fB\f(CBbst_gmask_set_column()\fP\f1 on the filed masks), \fI\f(CIdislodge_columns\fP\f1 specifies whether the field mask columns are to be closely aligned. .TP .PD 0 \fB\f(CBbst_gmask_foreach\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CIfunc\fP\f1, \fI\f(CIdata\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} \fI\f(CIgpointer \fP\f1 \fI\f(CIfunc\fP\f1; T{ foreach function as: void \fB\f(CBfunc(GtkWidget*, gpointer data)\fP\f1; T} \fI\f(CIgpointer \fP\f1 \fI\f(CIdata\fP\f1; T{ data passed in to \fI\f(CIfunc\fP\f1 T} .TE .ad Invoke \fI\f(CIfunc\fP\f1() with each of the widgets set for this field mask. .TP .PD 0 \fB\f(CBbst_gmask_form\fP\f1(\fI\f(CIgmask_container\fP\f1, \fI\f(CIaction\fP\f1, \fI\f(CIgpack\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIgmask_container\fP\f1; T{ container created with \fB\f(CBbst_gmask_container_create()\fP\f1 T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIaction\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIBstGMaskPack \fP\f1 \fI\f(CIgpack\fP\f1; T{ \fI\f(CIBstGMaskPack\fP\f1 packing type T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ a new GUI field mask T} .TE .ad Create a new GUI field mask with \fI\f(CIaction\fP\f1 as action widget. Each GUI field mask consists of an action widget which may be neighboured by pre and post action widgets, the action widget is usually something like a \fI\f(CIGtkEntry\fP\f1 input widget. Also, most field masks have a prompt widget, usually a \fI\f(CIGtkLabel\fP\f1, labeling the field mask with a name. Optionally, up to three auxillary widgets are supported per field mask, layed out between the prompt and the action widgets. The second auxillary widget will expand if additional space is available. Other layout details are configured through the \fI\f(CIgpack\fP\f1 packing type: .br \fCBST_GMASK_FIT\f1 - the action widget is not expanded, .br \fCBST_GMASK_INTERLEAVE\f1 - allow the action widget to expand across auxillary columns if it requests that much space, .br \fCBST_GMASK_BIG\f1 - force expansion of the action widget across all possible columns up to the prompt, .br \fCBST_GMASK_CENTER\f1 - center the action widget within space across all possible columns up to the prompt. .br \fCBST_GMASK_MULTI_SPAN\f1 - span aux2 widget across multiple gmask columns. .TP .PD 0 \fB\f(CBbst_gmask_get_action\fP\f1(\fI\f(CImask\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ the requested \fI\f(CIGtkWidget\fP\f1 or \fCNULL\f1 T} .TE .ad Retrieve the action widget of this GUI field \fI\f(CImask\fP\f1. .TP .PD 0 \fB\f(CBbst_gmask_get_aux1\fP\f1(\fI\f(CImask\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ the requested \fI\f(CIGtkWidget\fP\f1 or \fCNULL\f1 T} .TE .ad Retrieve the first auxillary widget of this GUI field \fI\f(CImask\fP\f1. .TP .PD 0 \fB\f(CBbst_gmask_get_aux2\fP\f1(\fI\f(CImask\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ the requested \fI\f(CIGtkWidget\fP\f1 or \fCNULL\f1 T} .TE .ad Retrieve the second auxillary widget of this GUI field \fI\f(CImask\fP\f1. .TP .PD 0 \fB\f(CBbst_gmask_get_aux3\fP\f1(\fI\f(CImask\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ the requested \fI\f(CIGtkWidget\fP\f1 or \fCNULL\f1 T} .TE .ad Retrieve the third auxillary widget of this GUI field \fI\f(CImask\fP\f1. .TP .PD 0 \fB\f(CBbst_gmask_get_prompt\fP\f1(\fI\f(CImask\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ the requested \fI\f(CIGtkWidget\fP\f1 or \fCNULL\f1 T} .TE .ad Retrieve the prompt widget of this GUI field \fI\f(CImask\fP\f1. .TP .PD 0 \fB\f(CBbst_gmask_pack\fP\f1(\fI\f(CImask\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} .TE .ad After the GUI field mask is fully configured, by setting all associated widgets on it, column tooltip text, etc., this function actually packs it into its container. The field mask setters shouldn't be used after this point. .TP .PD 0 \fB\f(CBbst_gmask_quick\fP\f1(\fI\f(CIgmask_container\fP\f1, \fI\f(CIcolumn\fP\f1, \fI\f(CIprompt\fP\f1, \fI\f(CIaction\fP\f1, \fI\f(CItip_text\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIgmask_container\fP\f1; T{ container created with \fB\f(CBbst_gmask_container_create()\fP\f1 T} \fI\f(CIguint \fP\f1 \fI\f(CIcolumn\fP\f1; T{ column number for \fB\f(CBbst_gmask_set_column()\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIprompt\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 for \fB\f(CBbst_gmask_set_prompt()\fP\f1 T} \fI\f(CIgpointer \fP\f1 \fI\f(CIaction\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 as with \fB\f(CBbst_gmask_form()\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItip_text\fP\f1; T{ text for \fB\f(CBbst_gmask_set_tip()\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ an already packed GUI field mask T} .TE .ad Shorthand to form a GUI field mask in \fI\f(CIcolumn\fP\f1 of type \fCBST_GMASK_INTERLEAVE\f1, with \fI\f(CIprompt\fP\f1 and \fI\f(CItip_text\fP\f1. Note that this function already calls \fB\f(CBbst_gmask_pack()\fP\f1, so the returned field mask already can't be modified anymore. .TP .PD 0 \fB\f(CBbst_gmask_set_aux1\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} \fI\f(CIgpointer \fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad Set the first auxillary widget of this GUI field \fI\f(CImask\fP\f1. .TP .PD 0 \fB\f(CBbst_gmask_set_aux2\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} \fI\f(CIgpointer \fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad Set the second auxillary widget of this GUI field \fI\f(CImask\fP\f1. In contrast to the first and third auxillary widget, this one is expanded if extra space is available. .TP .PD 0 \fB\f(CBbst_gmask_set_aux3\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} \fI\f(CIgpointer \fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad Set the third auxillary widget of this GUI field \fI\f(CImask\fP\f1. .TP .PD 0 \fB\f(CBbst_gmask_set_column\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CIcolumn\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} \fI\f(CIguint \fP\f1 \fI\f(CIcolumn\fP\f1; T{ column number T} .TE .ad Set the field mask column. By default all field masks are packed into column \fC0\f1, so that only vertical packing occours. .TP .PD 0 \fB\f(CBbst_gmask_set_prompt\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} \fI\f(CIgpointer \fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad Set the prompt widget of this GUI field \fI\f(CImask\fP\f1. .TP .PD 0 \fB\f(CBbst_gmask_set_tip\fP\f1(\fI\f(CImask\fP\f1, \fI\f(CItip_text\fP\f1); .na .TS nokeep; l l l. \fI\f(CIBstGMask*\fP\f1 \fI\f(CImask\fP\f1; T{ valid \fI\f(CIBstGMask\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItip_text\fP\f1; T{ tooltip text T} .TE .ad Set the tooltip text of this GUI field \fI\f(CImask\fP\f1. .TP .PD 0 \fB\f(CBg_object_get_double\fP\f1(\fI\f(CIobject\fP\f1, \fI\f(CIname\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIobject\fP\f1; T{ a valid GObject T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIname\fP\f1; T{ name of the double value to retrieve T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ the actual value T} .TE .ad Convenience variant of \fB\f(CBg_object_get_data()\fP\f1 to retrieve a double instead of a pointer. .TP .PD 0 \fB\f(CBg_object_get_long\fP\f1(\fI\f(CIobject\fP\f1, \fI\f(CIname\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIobject\fP\f1; T{ a valid GObject T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIname\fP\f1; T{ name of the long value to retrieve T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ the actual value T} .TE .ad Convenience variant of \fB\f(CBg_object_get_data()\fP\f1 to retrieve a long instead of a pointer. .TP .PD 0 \fB\f(CBg_object_set_double\fP\f1(\fI\f(CIobject\fP\f1, \fI\f(CIname\fP\f1, \fI\f(CIv_double\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIobject\fP\f1; T{ a valid GObject T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIname\fP\f1; T{ name of the double value to set T} \fI\f(CIgdouble \fP\f1 \fI\f(CIv_double\fP\f1; T{ the actual value T} .TE .ad Convenience variant of \fB\f(CBg_object_set_data()\fP\f1 to set a double instead of a pointer. .TP .PD 0 \fB\f(CBg_object_set_long\fP\f1(\fI\f(CIobject\fP\f1, \fI\f(CIname\fP\f1, \fI\f(CIv_long\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIobject\fP\f1; T{ a valid GObject T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIname\fP\f1; T{ name of the long value to set T} \fI\f(CIglong \fP\f1 \fI\f(CIv_long\fP\f1; T{ the actual value T} .TE .ad Convenience variant of \fB\f(CBg_object_set_data()\fP\f1 to set a long instead of a pointer. .TP .PD 0 \fB\f(CBgnome_canvas_set_zoom\fP\f1(\fI\f(CIcanvas\fP\f1, \fI\f(CIpixels_per_unit\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGnomeCanvas*\fP\f1 \fI\f(CIcanvas\fP\f1; T{ valid \fI\f(CIGnomeCanvas\fP\f1 T} \fI\f(CIgdouble \fP\f1 \fI\f(CIpixels_per_unit\fP\f1; T{ zoom factor (defaults to \fC1.0\f1) T} .TE .ad This function calls \fB\f(CBgnome_canvas_set_pixels_per_unit()\fP\f1 with its arguments and in addition adjusts the font sizes of all canvas text items where \fB\f(CBgnome_canvas_text_set_zoom_size()\fP\f1 was used before. .TP .PD 0 \fB\f(CBgnome_canvas_text_set_zoom_size\fP\f1(\fI\f(CIitem\fP\f1, \fI\f(CIpixels\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGnomeCanvasText*\fP\f1 \fI\f(CIitem\fP\f1; T{ canvas text item T} \fI\f(CIgdouble \fP\f1 \fI\f(CIpixels\fP\f1; T{ default font size T} .TE .ad Set the default font size in pixels of a canvas text item. The size will be adjusted when the canvas zoomed via \fB\f(CBgnome_canvas_set_zoom()\fP\f1. .TP .PD 0 \fB\f(CBgtk_box_get_nth_child\fP\f1(\fI\f(CIbox\fP\f1, \fI\f(CIpos\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkBox*\fP\f1 \fI\f(CIbox\fP\f1; T{ a valid GtkBox T} \fI\f(CIgint \fP\f1 \fI\f(CIpos\fP\f1; T{ position of the requested child T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ a child of \fI\f(CIbox\fP\f1 or \fCNULL\f1 T} .TE .ad Find the child at position \fI\f(CIpos\fP\f1 (\fC0\f1 indicates the first child) of \fI\f(CIbox\fP\f1 and return it. To retrieve the last xchild of \fI\f(CIbox\fP\f1, -\fC1\f1 may be passed as \fI\f(CIpos\fP\f1. .TP .PD 0 \fB\f(CBgtk_notebook_current_widget\fP\f1(\fI\f(CInotebook\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkNotebook*\fP\f1 \fI\f(CInotebook\fP\f1; T{ valid \fI\f(CIGtkNotebook\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ the widget corresponding to the current page T} .TE .ad This function is essentially a shortcut for \fB\f(CBgtk_notebook_get_current_page()\fP\f1 and \fB\f(CBgtk_notebook_get_nth_page()\fP\f1. .TP .PD 0 \fB\f(CBgxk_cell_editable_canceled\fP\f1(\fI\f(CIecell\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkCellEditable*\fP\f1 \fI\f(CIecell\fP\f1; T{ valid \fI\f(CIGtkCellEditable\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ whether editing got aborted T} .TE .ad Return whether editing was canceled (currently supported by GtkEntry and triggered by pressing Escape during editing). .TP .PD 0 \fB\f(CBgxk_cell_editable_is_focus_handler\fP\f1(\fI\f(CIecell\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkCellEditable*\fP\f1 \fI\f(CIecell\fP\f1; T{ valid \fI\f(CIGtkCellEditable\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ returns \fCFALSE\f1 T} .TE .ad Call \fB\f(CBgtk_cell_editable_editing_done()\fP\f1 if necessary and return \fCFALSE\f1. This function is meant to be used to handle "notify::is-focus" signals on \fI\f(CIGtkCellEditable\fP\f1 widgets. .TP .PD 0 \fB\f(CBgxk_cell_renderer_popup_get_type\fP\f1(); .na .TS nokeep; l l l. \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ \fCGXK_TYPE_CELL_RENDERER_POPUP\f1 T} .TE .ad \fI\f(CIGxkCellRendererPopup\fP\f1 is an editable text cell renderer which supports popping up an auxillary window. .TP .PD 0 \fB\f(CBgxk_color_alloc\fP\f1(\fI\f(CIcolormap\fP\f1, \fI\f(CIcolor\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGdkColormap*\fP\f1 \fI\f(CIcolormap\fP\f1; T{ valid \fI\f(CIGdkColormap\fP\f1 T} \fI\f(CIGdkColor*\fP\f1 \fI\f(CIcolor\fP\f1; T{ valid \fI\f(CIGdkColor\fP\f1 T} .TE .ad Allocate a color like \fB\f(CBgdk_color_alloc()\fP\f1 with automated error checking. .TP .PD 0 \fB\f(CBgxk_dialog_action*\fP\f1(\fI\f(CIdialog\fP\f1, \fI\f(CIaction\fP\f1, \fI\f(CIcallback\fP\f1, \fI\f(CIdata\fP\f1); .na .TS nokeep; l l l. \fI\f(CIdialog\fP\f1; T{ valid GxkDialog T} \fI\f(CIaction\fP\f1; T{ button label or stock ID T} \fI\f(CIcallback\fP\f1; T{ callback function for button activation T} \fI\f(CIdata\fP\f1; T{ callback data T} .TE .ad Add a new (stock) button to a dialog. .TP .PD 0 \fB\f(CBgxk_dialog_add_flags\fP\f1(\fI\f(CIdialog\fP\f1, \fI\f(CIflags\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkDialog*\fP\f1 \fI\f(CIdialog\fP\f1; T{ valid GxkDialog T} \fI\f(CIGxkDialogFlags \fP\f1 \fI\f(CIflags\fP\f1; T{ additional flags to set on the dialog. T} .TE .ad Alter dialog flags, see \fB\f(CBgxk_dialog_new()\fP\f1. .TP .PD 0 \fB\f(CBgxk_dialog_clear_flags\fP\f1(\fI\f(CIdialog\fP\f1, \fI\f(CIflags\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkDialog*\fP\f1 \fI\f(CIdialog\fP\f1; T{ valid GxkDialog T} \fI\f(CIGxkDialogFlags \fP\f1 \fI\f(CIflags\fP\f1; T{ flags to unset on the dialog. T} .TE .ad Alter dialog flags, see \fB\f(CBgxk_dialog_new()\fP\f1. .TP .PD 0 \fB\f(CBgxk_dialog_get_child\fP\f1(\fI\f(CIdialog\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkDialog*\fP\f1 \fI\f(CIdialog\fP\f1; T{ valid GxkDialog T} .TE .ad Retrieve the primary child of the dialog. .TP .PD 0 \fB\f(CBgxk_dialog_get_status_window\fP\f1(); .na .TS nokeep; l l l. \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ a valid GxkDialog or \fCNULL\f1 T} .TE .ad Retrieve the most recently entered GxkDialog if any. .TP .PD 0 \fB\f(CBgxk_dialog_new\fP\f1(\fI\f(CIpointer_loc\fP\f1, \fI\f(CIalive_object\fP\f1, \fI\f(CIflags\fP\f1, \fI\f(CItitle\fP\f1, \fI\f(CIchild\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIpointer_loc\fP\f1; T{ pointer to nullify upon dialog destruction T} \fI\f(CIGtkObject*\fP\f1 \fI\f(CIalive_object\fP\f1; T{ object which upon destruction, takes the dialog with it T} \fI\f(CIGxkDialogFlags \fP\f1 \fI\f(CIflags\fP\f1; T{ dialog flags T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItitle\fP\f1; T{ window title for the dialog T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIchild\fP\f1; T{ child to pack into the dialog T} .TE .ad Create a new configurable dialog. Possible values for the flags are: .br \fCGXK_DIALOG_HIDE_ON_DELETE\f1: only hide and not destroy the dialog upon window manager delete events; .br \fCGXK_DIALOG_IGNORE_ESCAPE\f1: prevents delete event generation on Escape key presses; .br \fCGXK_DIALOG_DELETE_BUTTON\f1: add a "Close" button to the dialog; .br \fCGXK_DIALOG_STATUS_BAR\f1: add a status bar widget to the dialog; .br \fCGXK_DIALOG_WINDOW_GROUP\f1: open up an extra window group for the dialog; .br \fCGXK_DIALOG_MODAL\f1: the dialog is modal while visible; .br \fCGXK_DIALOG_POPUP_POS\f1: popup the dialog below mouse pointer; .br \fCGXK_DIALOG_PRESERVE_STATE\f1: prevents unrealization of the dialog upon hiding, which preserves properties like the window size. .TP .PD 0 \fB\f(CBgxk_dialog_remove_actions\fP\f1(\fI\f(CIdialog\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkDialog*\fP\f1 \fI\f(CIdialog\fP\f1; T{ valid GxkDialog T} .TE .ad Remove all action buttons setup for this dialog. .TP .PD 0 \fB\f(CBgxk_dialog_set_child\fP\f1(\fI\f(CIdialog\fP\f1, \fI\f(CIchild\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkDialog*\fP\f1 \fI\f(CIdialog\fP\f1; T{ valid GxkDialog T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIchild\fP\f1; T{ new child T} .TE .ad Change the dialog's primary child to \fI\f(CIchild\fP\f1. Destroys the old child if any. .TP .PD 0 \fB\f(CBgxk_dialog_set_default\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIdefault_widget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkDialog*\fP\f1 \fI\f(CIself\fP\f1; T{ T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIdefault_widget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad This function is similar to \fB\f(CBgxk_dialog_set_focus()\fP\f1, it just affects the widget taking the default activation. .TP .PD 0 \fB\f(CBgxk_dialog_set_focus\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIfocus_widget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkDialog*\fP\f1 \fI\f(CIself\fP\f1; T{ T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIfocus_widget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad A \fI\f(CIGxkDialog\fP\f1 will automatically unset the focus everytime it is shown, unless \fI\f(CIfocus_widget\fP\f1 is a valid widget that can be focused each time. .TP .PD 0 \fB\f(CBgxk_dialog_set_sizes\fP\f1(\fI\f(CIdialog\fP\f1, \fI\f(CImin_width\fP\f1, \fI\f(CImin_height\fP\f1, \fI\f(CIdefault_width\fP\f1, \fI\f(CIdefault_height\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkDialog*\fP\f1 \fI\f(CIdialog\fP\f1; T{ valid GxkDialog T} \fI\f(CIgint \fP\f1 \fI\f(CImin_width\fP\f1; T{ minimum dialog width or -\fC1\f1 T} \fI\f(CIgint \fP\f1 \fI\f(CImin_height\fP\f1; T{ minimum dialog height or -\fC1\f1 T} \fI\f(CIgint \fP\f1 \fI\f(CIdefault_width\fP\f1; T{ default dialog width or -\fC1\f1 T} \fI\f(CIgint \fP\f1 \fI\f(CIdefault_height\fP\f1; T{ default dialog height or -\fC1\f1 T} .TE .ad Set the dialog's minimum and default sizes, constrained to not exceed the screen dimensions. .TP .PD 0 \fB\f(CBgxk_dialog_set_title\fP\f1(\fI\f(CIdialog\fP\f1, \fI\f(CItitle\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkDialog*\fP\f1 \fI\f(CIdialog\fP\f1; T{ valid GxkDialog T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItitle\fP\f1; T{ dialog window manager title T} .TE .ad Change the dialog's window manager title and role. .TP .PD 0 \fB\f(CBgxk_expander_connect_to_widget\fP\f1(\fI\f(CIexpander\fP\f1, \fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIexpander\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 with boolean ::expanded property T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad Setup signal connections, so that the visibility of \fI\f(CIwidget\fP\f1 is controlled by the ::expanded property of \fI\f(CIexpander\fP\f1. .TP .PD 0 \fB\f(CBgxk_file_selection_heal\fP\f1(\fI\f(CIfs\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkFileSelection*\fP\f1 \fI\f(CIfs\fP\f1; T{ valid \fI\f(CIGtkFileSelection\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ new toplevel VBox of the file selection T} .TE .ad Fixup various oddities that happened to the Gtk+ file selection widget over time. This function corrects container border widths, spacing, button placement and the default and focus widgets. Also, the lifetime of the file selection window is tied to the returned \fI\f(CIGtkVBox\fP\f1, enabling removal of the \fI\f(CIGtkVBox\fP\f1 from it's parent and thus using the file selection widgets in a custom \fI\f(CIGtkWindow\fP\f1. .TP .PD 0 \fB\f(CBgxk_grab_pointer_and_keyboard\fP\f1(\fI\f(CIwindow\fP\f1, \fI\f(CIowner_events\fP\f1, \fI\f(CIevent_mask\fP\f1, \fI\f(CIconfine_to\fP\f1, \fI\f(CIcursor\fP\f1, \fI\f(CItime\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGdkWindow*\fP\f1 \fI\f(CIwindow\fP\f1; T{ the window receiving the grab T} \fI\f(CIgboolean \fP\f1 \fI\f(CIowner_events\fP\f1; T{ if \fCTRUE\f1, events will be reported relative to \fI\f(CIwindow\fP\f1 T} \fI\f(CIGdkEventMask \fP\f1 \fI\f(CIevent_mask\fP\f1; T{ mask of interesting events T} \fI\f(CIGdkWindow*\fP\f1 \fI\f(CIconfine_to\fP\f1; T{ limits the pointer to the specified window T} \fI\f(CIGdkCursor*\fP\f1 \fI\f(CIcursor\fP\f1; T{ cursor to use for the duration of the grab T} \fI\f(CIguint32 \fP\f1 \fI\f(CItime\fP\f1; T{ event time when grab is requested T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ \fCTRUE\f1 if pointer and keyboard could successfully be grabbed T} .TE .ad This function grabs the pointer and keyboard simultaneously. This is recommended over plain pointer grabs, to reduce the risk of other applications (for instance the window manager) aborting the current grab and leaving the application in an invalid state. .TP .PD 0 \fB\f(CBgxk_idle_show_widget\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad Defer showing this widget until the next idle handler is run. This is useful if other things are pending which need to be processed first, for instance hiding other toplevels. .TP .PD 0 \fB\f(CBgxk_idle_showraise\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad Defers showing and raising this widget like \fB\f(CBgxk_widget_showraise()\fP\f1 until the next idle handler is run. This is useful if other things are pending which need to be processed first, for instance hiding other toplevels or constructing remaining parts of the widget hierarchy. .TP .PD 0 \fB\f(CBgxk_idle_unrealize_widget\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid \fI\f(CIGtkWindow\fP\f1 T} .TE .ad Defer unrealizing this widget until the next idle handler is run. This is useful if other things are pending which need to be processed first, e.g. completing a running signal emission. .TP .PD 0 \fB\f(CBgxk_item_factory_get_item\fP\f1(\fI\f(CIifactory\fP\f1, \fI\f(CIpath\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkItemFactory*\fP\f1 \fI\f(CIifactory\fP\f1; T{ valid \fI\f(CIGtkItemFactory\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIpath\fP\f1; T{ item factory path T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ menu item according to \fI\f(CIpath\fP\f1 T} .TE .ad This function strips unescaped underlines ('_') from \fI\f(CIpath\fP\f1 and then calls \fB\f(CBgtk_item_factory_get_item()\fP\f1. .TP .PD 0 \fB\f(CBgxk_item_factory_get_widget\fP\f1(\fI\f(CIifactory\fP\f1, \fI\f(CIpath\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkItemFactory*\fP\f1 \fI\f(CIifactory\fP\f1; T{ valid \fI\f(CIGtkItemFactory\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIpath\fP\f1; T{ item factory path T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ widget according to \fI\f(CIpath\fP\f1 T} .TE .ad This function strips unescaped underlines ('_') from \fI\f(CIpath\fP\f1 and then calls \fB\f(CBgtk_item_factory_get_widget()\fP\f1. .TP .PD 0 \fB\f(CBgxk_item_factory_sensitize\fP\f1(\fI\f(CIifactory\fP\f1, \fI\f(CIpath\fP\f1, \fI\f(CIsensitive\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkItemFactory*\fP\f1 \fI\f(CIifactory\fP\f1; T{ valid \fI\f(CIGtkItemFactory\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIpath\fP\f1; T{ item factory path T} \fI\f(CIgboolean \fP\f1 \fI\f(CIsensitive\fP\f1; T{ whether menu item should be sensitive T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ menu item according to \fI\f(CIpath\fP\f1 T} .TE .ad This function turns the menu item found via \fB\f(CBgxk_item_factory_get_item()\fP\f1 (in-)sensitive according to \fI\f(CIsensitive\fP\f1. Additional checks are performed before making a menu item sensitive to avoid showing e.g. empty submenus. .TP .PD 0 \fB\f(CBgxk_label_set_attributes:\fP\f1(\fI\f(CIlabel\fP\f1, \fI\f(CI...\fP\f1); .na .TS nokeep; l l l. \fI\f(CIlabel\fP\f1; T{ a \fI\f(CIGtkLabel\fP\f1 T} \fI\f(CI...\fP\f1; T{ a list of PangoAttrType and value pairs terminated by -\fC1.\f1 T} .TE .ad Sets Pango attributes on a \fI\f(CIGtkLabel\fP\f1 in a more convenient way than \fB\f(CBgtk_label_set_attributes()\fP\f1. This function is useful if you want to change the font attributes of a \fI\f(CIGtkLabel\fP\f1. This is an alternative to using PangoMarkup which is slow to parse and akward to handle in an i18n-friendly way. The attributes are set on the complete label, from start to end. If you need to set attributes on part of the label, you will have to use the PangoAttributes API directly. This function is based on \fB\f(CBgimp_label_set_attributes()\fP\f1. .TP .PD 0 \fB\f(CBgxk_led_new\fP\f1(\fI\f(CIcolor\fP\f1); .na .TS nokeep; l l l. \fI\f(CIguint \fP\f1 \fI\f(CIcolor\fP\f1; T{ rgb color T} .TE .ad Create a new led widget. It's active color can be specified as 24bit RGB \fI\f(CIcolor\fP\f1 value. .TP .PD 0 \fB\f(CBgxk_led_set_color\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIcolor\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkLed*\fP\f1 \fI\f(CIself\fP\f1; T{ valid GxkLed T} \fI\f(CIguint \fP\f1 \fI\f(CIcolor\fP\f1; T{ color as RGB byte triple T} .TE .ad Set the current led color as 24bit RGB values. .TP .PD 0 \fB\f(CBgxk_menu_attach_as_popup\fP\f1(\fI\f(CImenu\fP\f1, \fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkMenu*\fP\f1 \fI\f(CImenu\fP\f1; T{ valid \fI\f(CIGtkMenu\fP\f1 T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ T} .TE .ad This function is a replacement for \fB\f(CBgtk_menu_attach_to_widget()\fP\f1. Similar to \fB\f(CBgxk_menu_attach_as_submenu()\fP\f1, it sets up a propagation mechanism, so \fI\f(CImenu\fP\f1 and submenus thereof automatically fetch their accelerator groups via \fB\f(CBgxk_window_get_menu_accel_group()\fP\f1 from the toplevel window. In addition, this function allowes \fB\f(CBgxk_widget_find_level_ordered()\fP\f1 to also consider popup menus in its search. .TP .PD 0 \fB\f(CBgxk_menu_attach_as_popup_with_func\fP\f1(\fI\f(CImenu\fP\f1, \fI\f(CIwidget\fP\f1, \fI\f(CImdfunc\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkMenu*\fP\f1 \fI\f(CImenu\fP\f1; T{ valid \fI\f(CIGtkMenu\fP\f1 T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ T} \fI\f(CIGtkMenuDetachFunc \fP\f1 \fI\f(CImdfunc\fP\f1; T{ a \fI\f(CIGtkMenuDetachFunc\fP\f1 func as in \fB\f(CBgtk_menu_attach_to_widget()\fP\f1 T} .TE .ad Variant of \fB\f(CBgxk_menu_attach_as_popup()\fP\f1 which preserves the \fI\f(CIGtkMenuDetachFunc\fP\f1. .TP .PD 0 \fB\f(CBgxk_menu_attach_as_submenu\fP\f1(\fI\f(CImenu\fP\f1, \fI\f(CImenu_item\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkMenu*\fP\f1 \fI\f(CImenu\fP\f1; T{ valid \fI\f(CIGtkMenu\fP\f1 T} \fI\f(CIGtkMenuItem*\fP\f1 \fI\f(CImenu_item\fP\f1; T{ valid \fI\f(CIGtkMenuItem\fP\f1 T} .TE .ad This function is a replacement for \fB\f(CBgtk_menu_item_set_submenu()\fP\f1. It installs the necessary hooks on the \fI\f(CImenu\fP\f1 to automatically update sensitivity of \fI\f(CImenu_item\fP\f1 in response to children being deleted or added to the \fI\f(CImenu\fP\f1. The rationale behind this is to avoid empty submenus popups. Also, a propagation mechanism is set up, so \fI\f(CImenu\fP\f1 and submenus thereof automatically fetch their accelerator groups via \fB\f(CBgxk_window_get_menu_accel_group()\fP\f1 from the toplevel window. .TP .PD 0 \fB\f(CBgxk_menu_check_sensitive\fP\f1(\fI\f(CImenu\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkMenu*\fP\f1 \fI\f(CImenu\fP\f1; T{ valid \fI\f(CIGtkMenu\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ TRUE if \fI\f(CImenu\fP\f1 contains selectable items T} .TE .ad This function tests whether a menu contains selectable menu items. It can be used to determine sensitivity for menu items containing submenus. .TP .PD 0 \fB\f(CBgxk_menu_set_active\fP\f1(\fI\f(CImenu\fP\f1, \fI\f(CIchild\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkMenu*\fP\f1 \fI\f(CImenu\fP\f1; T{ valid \fI\f(CIGtkMenu\fP\f1 T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIchild\fP\f1; T{ an immediate child of \fI\f(CImenu\fP\f1 T} .TE .ad This function replaces \fB\f(CBgtk_menu_set_active()\fP\f1. The \fI\f(CIchild\fP\f1 to be set as last selection is passed in as ordinary child pointer and if the menu is attached to an option menu or menu button, the attach widget is updated after the selection changed, due to the emission of ::selection-done. .TP .PD 0 \fB\f(CBgxk_notebook_append\fP\f1(\fI\f(CInotebook\fP\f1, \fI\f(CIchild\fP\f1, \fI\f(CItab_text\fP\f1, \fI\f(CIfillexpand\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkNotebook*\fP\f1 \fI\f(CInotebook\fP\f1; T{ a valid notebook T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIchild\fP\f1; T{ a valid parent-less widget T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItab_text\fP\f1; T{ T} \fI\f(CIgboolean \fP\f1 \fI\f(CIfillexpand\fP\f1; T{ whether the tab label should expand T} .TE .ad Add a new page containing \fI\f(CIchild\fP\f1 to \fI\f(CInotebook\fP\f1, naming the page \fI\f(CIlabel\fP\f1. .TP .PD 0 \fB\f(CBgxk_notebook_descendant_get_page\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ notebook page widget or \fCNULL\f1 T} .TE .ad Find the innermost notebook page widget that contains \fI\f(CIwidget\fP\f1. .TP .PD 0 \fB\f(CBgxk_notebook_descendant_get_tab\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ notebook page tab widget or \fCNULL\f1 T} .TE .ad Find the innermost notebook page widget that contains \fI\f(CIwidget\fP\f1 and return its tabulator widget. .TP .PD 0 \fB\f(CBgxk_notebook_set_current_page_widget\fP\f1(\fI\f(CInotebook\fP\f1, \fI\f(CIpage\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkNotebook*\fP\f1 \fI\f(CInotebook\fP\f1; T{ valid \fI\f(CIGtkNotebook\fP\f1 T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIpage\fP\f1; T{ \fI\f(CInotebook\fP\f1 page widget T} .TE .ad Set the current notebook page from a page widget, instead of a page number. .TP .PD 0 \fB\f(CBgxk_option_menu_set_menu\fP\f1(\fI\f(CIoption_menu\fP\f1, \fI\f(CImenu\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkOptionMenu*\fP\f1 \fI\f(CIoption_menu\fP\f1; T{ valid \fI\f(CIGtkOptionMenu\fP\f1 T} \fI\f(CIGtkMenu*\fP\f1 \fI\f(CImenu\fP\f1; T{ valid \fI\f(CIGtkMenu\fP\f1 T} .TE .ad This function is a replacement for \fB\f(CBgtk_option_menu_set_menu()\fP\f1. Similar to \fB\f(CBgxk_menu_attach_as_submenu()\fP\f1, it sets up a propagation mechanism, so \fI\f(CImenu\fP\f1 and submenus thereof automatically fetch their accelerator groups via \fB\f(CBgxk_window_get_menu_accel_group()\fP\f1 from the toplevel window. .TP .PD 0 \fB\f(CBgxk_polygon_new\fP\f1(\fI\f(CIpolygon_graph\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkPolygonGraph*\fP\f1 \fI\f(CIpolygon_graph\fP\f1; T{ set of lines and arcs T} .TE .ad Create a new polygon widget. .TP .PD 0 \fB\f(CBgxk_polygon_set_arcs\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIn_arcs\fP\f1, \fI\f(CIarcs\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkPolygon*\fP\f1 \fI\f(CIself\fP\f1; T{ valid \fI\f(CIGxkPolygon\fP\f1 T} \fI\f(CIguint \fP\f1 \fI\f(CIn_arcs\fP\f1; T{ number of arcs T} \fI\f(CIGxkPolygonArc*\fP\f1 \fI\f(CIarcs\fP\f1; T{ array of arcs T} .TE .ad Set the arcs for this polygon. The direction of an arc determines it's shadow type. .TP .PD 0 \fB\f(CBgxk_polygon_set_graph\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIpolygon_graph\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkPolygon*\fP\f1 \fI\f(CIself\fP\f1; T{ valid \fI\f(CIGxkPolygon\fP\f1 T} \fI\f(CIGxkPolygonGraph*\fP\f1 \fI\f(CIpolygon_graph\fP\f1; T{ set of lines and arcs T} .TE .ad Set the lines and arcs for this polygon, see \fB\f(CBgxk_polygon_set_lines()\fP\f1 and \fB\f(CBgxk_polygon_set_arcs()\fP\f1. .TP .PD 0 \fB\f(CBgxk_polygon_set_length\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIlength\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkPolygon*\fP\f1 \fI\f(CIself\fP\f1; T{ valid \fI\f(CIGxkPolygon\fP\f1 T} \fI\f(CIguint \fP\f1 \fI\f(CIlength\fP\f1; T{ set of lines and arcs T} .TE .ad Set the desired width and height for this polygon to \fI\f(CIlength\fP\f1. .TP .PD 0 \fB\f(CBgxk_polygon_set_lines\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIn_lines\fP\f1, \fI\f(CIlines\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkPolygon*\fP\f1 \fI\f(CIself\fP\f1; T{ valid \fI\f(CIGxkPolygon\fP\f1 T} \fI\f(CIguint \fP\f1 \fI\f(CIn_lines\fP\f1; T{ number of lines T} \fI\f(CIGxkPolygonLine*\fP\f1 \fI\f(CIlines\fP\f1; T{ array of lines T} .TE .ad Set the lines for this polygon. The direction of a line determines it's shadow type. .TP .PD 0 \fB\f(CBgxk_proxy_editable_get_type\fP\f1(); .na .TS nokeep; l l l. \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ \fCGXK_TYPE_PROXY_EDITABLE\f1 T} .TE .ad \fI\f(CIGxkProxyEditable\fP\f1 is a \fI\f(CIGtkEventBox\fP\f1 which proxies the \fI\f(CIGtkCellEditable\fP\f1 interface onto a backend widget which also implements the \fI\f(CIGtkCellEditable\fP\f1 interface. .TP .PD 0 \fB\f(CBgxk_proxy_editable_set_cell_editable\fP\f1(\fI\f(CIself\fP\f1, \fI\f(CIecell\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkProxyEditable*\fP\f1 \fI\f(CIself\fP\f1; T{ valid \fI\f(CIGxkProxyEditable\fP\f1 T} \fI\f(CIGtkCellEditable*\fP\f1 \fI\f(CIecell\fP\f1; T{ valid \fI\f(CIGtkCellEditable\fP\f1 T} .TE .ad Set the backend \fI\f(CIecell\fP\f1 onto which \fI\f(CIGtkCellEditable\fP\f1 methods issued on \fI\f(CIself\fP\f1 are to be forwarded. This function may only be called once per \fI\f(CIGxkProxyEditable\fP\f1. .TP .PD 0 \fB\f(CBgxk_scroll_text_advance\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIuri\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIuri\fP\f1; T{ resource locator T} .TE .ad Relative to the url currently being displayed load and display the possibly partial (relative) url \fI\f(CIuri\fP\f1. Navigation history is affected. .TP .PD 0 \fB\f(CBgxk_scroll_text_append\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIstring\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstring\fP\f1; T{ the text to be displayed T} .TE .ad Append \fI\f(CIstring\fP\f1 to the textual contents of this \fI\f(CIsctext\fP\f1. .TP .PD 0 \fB\f(CBgxk_scroll_text_append_file\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIfile_name\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIfile_name\fP\f1; T{ file holding the text to be displayed T} .TE .ad Append the contents of \fI\f(CIfile_name\fP\f1 to the textual contents of this \fI\f(CIsctext\fP\f1. .TP .PD 0 \fB\f(CBgxk_scroll_text_append_file_tsm\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIfile_name\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIfile_name\fP\f1; T{ file holding the text to be displayed in tag-span-markup T} .TE .ad Append the contents of \fI\f(CIfile_name\fP\f1 to the textual contents of this \fI\f(CIsctext\fP\f1, where those contents are marked up with tag-span-markup. .TP .PD 0 \fB\f(CBgxk_scroll_text_append_tsm\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIstring\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstring\fP\f1; T{ the text to be displayed in tag-span-markup T} .TE .ad Append \fI\f(CIstring\fP\f1 to the textual contents of this \fI\f(CIsctext\fP\f1, where \fI\f(CIstring\fP\f1 is marked up with tag-span-markup. .TP .PD 0 \fB\f(CBgxk_scroll_text_aprintf\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CItext_fmt\fP\f1); .na .TS nokeep; l l l. \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} \fI\f(CItext_fmt\fP\f1; T{ \fB\f(CBprintf(\fC3\f1)\fP\f1 style format string T} .TE .ad Append \fI\f(CItext_fmt\fP\f1 to the textual contents of this \fI\f(CIsctext\fP\f1. .TP .PD 0 \fB\f(CBgxk_scroll_text_clear\fP\f1(\fI\f(CIsctext\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} .TE .ad Clear the textual contents of this \fI\f(CIsctext\fP\f1 and reset the indentation level. .TP .PD 0 \fB\f(CBgxk_scroll_text_create\fP\f1(\fI\f(CIflags\fP\f1, \fI\f(CIstring\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkScrollTextFlags \fP\f1 \fI\f(CIflags\fP\f1; T{ T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstring\fP\f1; T{ default contents T} .TE .ad Create a scrollable text view. Behaviour and apperance can .br GXK_SCROLL_TEXT_MONO - use a fixed width font; .br GXK_SCROLL_TEXT_SANS - use a sans serif font; .br GXK_SCROLL_TEXT_SERIF - use a serif font; .br GXK_SCROLL_TEXT_WRAP - allow word wrapping of \fI\f(CIstring\fP\f1; .br GXK_SCROLL_TEXT_CENTER - center \fI\f(CIstring\fP\f1; .br GXK_SCROLL_TEXT_WIDGET_BG - do not use white as background, but keep the usual (grey) widget background; .br GXK_SCROLL_TEXT_NAVIGATABLE - add a navigation bar and allow the user to navigate through clickable links; .br GXK_SCROLL_TEXT_EDITABLE - permit modifications of the text; .br GXK_SCROLL_TEXT_HFIXED - make horizontal dimension unscrollable .br GXK_SCROLL_TEXT_VFIXED - make vertical dimension unscrollable .br GXK_SCROLL_TEXT_WIDGET_LOOK - this is a combination of flags to adjust the scroll text to look like an ordinary \fI\f(CIGtkLabel\fP\f1, which amounts to using a sans serif font, normal widget background and allowing word wrapping. .TP .PD 0 \fB\f(CBgxk_scroll_text_display\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIuri\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIuri\fP\f1; T{ resource locator T} .TE .ad Load and display the resource from \fI\f(CIuri\fP\f1 without altering the navigation history. .TP .PD 0 \fB\f(CBgxk_scroll_text_enter\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIuri\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIuri\fP\f1; T{ resource locator T} .TE .ad Load and display the url \fI\f(CIuri\fP\f1. Navigation history is affected. .TP .PD 0 \fB\f(CBgxk_scroll_text_get_text_view\fP\f1(\fI\f(CIsctext\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ a GtkTextView widget T} .TE .ad Return the internally used GtkTextView of this \fI\f(CIsctext\fP\f1. .TP .PD 0 \fB\f(CBgxk_scroll_text_pop_indent\fP\f1(\fI\f(CIsctext\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} .TE .ad Decrement the global indentation level after a previous increment with \fB\f(CBgxk_scroll_text_push_indent()\fP\f1. .TP .PD 0 \fB\f(CBgxk_scroll_text_push_indent\fP\f1(\fI\f(CIsctext\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} .TE .ad Increment the global indentation level, which affects overall indentation of text added with \fB\f(CBgxk_scroll_text_append()\fP\f1 and friends. .TP .PD 0 \fB\f(CBgxk_scroll_text_rewind\fP\f1(\fI\f(CIsctext\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} .TE .ad Go back in navigation history as far as possible. .TP .PD 0 \fB\f(CBgxk_scroll_text_set\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIstring\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstring\fP\f1; T{ the new text to be displayed T} .TE .ad Replace the textual contents of this \fI\f(CIsctext\fP\f1 with \fI\f(CIstring\fP\f1. .TP .PD 0 \fB\f(CBgxk_scroll_text_set_index\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIuri\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIuri\fP\f1; T{ resource locator T} .TE .ad Affect what uri is being displayed by pressing on the "Index" navigation button. .TP .PD 0 \fB\f(CBgxk_scroll_text_set_tsm\fP\f1(\fI\f(CIsctext\fP\f1, \fI\f(CIstring\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIsctext\fP\f1; T{ a scroll text widget as returned from \fB\f(CBgxk_scroll_text_create()\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstring\fP\f1; T{ the new text to be displayed in tag-span-markup T} .TE .ad Replace the textual contents of this \fI\f(CIsctext\fP\f1 with \fI\f(CIstring\fP\f1, where \fI\f(CIstring\fP\f1 is marked up with tag-span-markup. .TP .PD 0 \fB\f(CBgxk_scrolled_window_create\fP\f1(\fI\f(CIchild\fP\f1, \fI\f(CIshadow_type\fP\f1, \fI\f(CIxrequest\fP\f1, \fI\f(CIyrequest\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIchild\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIGtkShadowType \fP\f1 \fI\f(CIshadow_type\fP\f1; T{ shadow around the \fI\f(CIGtkViewport\fP\f1 T} \fI\f(CIgdouble \fP\f1 \fI\f(CIxrequest\fP\f1; T{ fractional factor for screen width T} \fI\f(CIgdouble \fP\f1 \fI\f(CIyrequest\fP\f1; T{ fractional factor for screen height T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ the newly created \fI\f(CIGtkScrolledWindow\fP\f1 T} .TE .ad Create a \fI\f(CIGtkScrolledWindow\fP\f1 with a \fI\f(CIGtkViewport\fP\f1 as parent of \fI\f(CIchild\fP\f1. The \fI\f(CIxrequest\fP\f1 and \fI\f(CIyrequest\fP\f1 arguments are passed on to \fB\f(CBgxk_widget_proxy_requisition()\fP\f1. .TP .PD 0 \fB\f(CBgxk_scrolled_window_spare_space\fP\f1(\fI\f(CIscwin\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkScrolledWindow*\fP\f1 \fI\f(CIscwin\fP\f1; T{ valid \fI\f(CIGtkScrolledWindow\fP\f1 T} .TE .ad A normal \fI\f(CIGtkScrolledWindow\fP\f1 requests extra space for a horizontal scrollbar if the vertical scroll policy is set to \fCGTK_POLICY_NEVER\f1 and vice versa, regardless of whether the scrollbars have to be shown or not. This function patches up this behaviour to spare the extra requested space from the outer scrolled window requisition if possible (that is, if the corresponding scrollbar is not currently visible). .TP .PD 0 \fB\f(CBgxk_scrolled_window_unspare_space\fP\f1(\fI\f(CIscwin\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkScrolledWindow*\fP\f1 \fI\f(CIscwin\fP\f1; T{ valid \fI\f(CIGtkScrolledWindow\fP\f1 T} .TE .ad Undo the effect of a call to \fB\f(CBgxk_scrolled_window_spare_space()\fP\f1. .TP .PD 0 \fB\f(CBgxk_signal_handler_exists\fP\f1(\fI\f(CIinstance\fP\f1, \fI\f(CIdetailed_signal\fP\f1, \fI\f(CIcallback\fP\f1, \fI\f(CIdata\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIinstance\fP\f1; T{ object instance with signals T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIdetailed_signal\fP\f1; T{ signal name T} \fI\f(CIGCallback \fP\f1 \fI\f(CIcallback\fP\f1; T{ custom callback function T} \fI\f(CIgpointer \fP\f1 \fI\f(CIdata\fP\f1; T{ callback data T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ whether callback is connected T} .TE .ad Find out whether a specific \fI\f(CIcallback\fP\f1 is connected to a specific signal on an instance, the callback may be blocked. \fI\f(CIdetailed_signal\fP\f1 may be \fCNULL\f1 to act as a wildcard. \fCTRUE\f1 is returned if the \fI\f(CIcallback\fP\f1 is found, \fCFALSE\f1 otherwise. .TP .PD 0 \fB\f(CBgxk_signal_handler_pending\fP\f1(\fI\f(CIinstance\fP\f1, \fI\f(CIdetailed_signal\fP\f1, \fI\f(CIcallback\fP\f1, \fI\f(CIdata\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIinstance\fP\f1; T{ object instance with signals T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIdetailed_signal\fP\f1; T{ signal name T} \fI\f(CIGCallback \fP\f1 \fI\f(CIcallback\fP\f1; T{ custom callback function T} \fI\f(CIgpointer \fP\f1 \fI\f(CIdata\fP\f1; T{ callback data T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ whether callback is connected T} .TE .ad Find out whether a specific \fI\f(CIcallback\fP\f1 is pending (connected and unblocked) for a specific signal on an instance. \fI\f(CIdetailed_signal\fP\f1 may be \fCNULL\f1 to act as a wildcard. \fCTRUE\f1 is returned if the \fI\f(CIcallback\fP\f1 is found, \fCFALSE\f1 otherwise. .TP .PD 0 \fB\f(CBgxk_size_group\fP\f1(\fI\f(CIsgmode\fP\f1, \fI\f(CI...\fP\f1); .na .TS nokeep; l l l. \fI\f(CIsgmode\fP\f1; T{ size group mode, one of \fCGTK_SIZE_GROUP_NONE\f1, T} \fI\f(CI...\fP\f1; T{ \fCNULL\f1 terminated list of widgets to group together T} .TE .ad \fCGTK_SIZE_GROUP_HORIZONTAL\f1, \fCGTK_SIZE_GROUP_VERTICAL\f1 or \fCGTK_SIZE_GROUP_BOTH\f1 Group horizontal and/or vertical resizing behaviour of widgets. See \fB\f(CBgtk_size_group_set_mode()\fP\f1 on the effect of the various grouping modes. .TP .PD 0 \fB\f(CBgxk_size_height\fP\f1(\fI\f(CIicon_size\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkIconSize \fP\f1 \fI\f(CIicon_size\fP\f1; T{ image size id T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ image size height T} .TE .ad Return the height of a specific image size. .TP .PD 0 \fB\f(CBgxk_size_width\fP\f1(\fI\f(CIicon_size\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkIconSize \fP\f1 \fI\f(CIicon_size\fP\f1; T{ image size id T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ image size width T} .TE .ad Return the width of a specific image size. .TP .PD 0 \fB\f(CBgxk_spline_copy\fP\f1(\fI\f(CIspline\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkSpline*\fP\f1 \fI\f(CIspline\fP\f1; T{ correctly setup \fI\f(CIGxkSpline\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ newly allocated spline T} .TE .ad Produce a copy of an already setup spline. .TP .PD 0 \fB\f(CBgxk_spline_dump\fP\f1(\fI\f(CIspline\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkSpline*\fP\f1 \fI\f(CIspline\fP\f1; T{ correctly setup \fI\f(CIGxkSpline\fP\f1 T} .TE .ad Produce a debugging printout of \fI\f(CIspline\fP\f1 on stderr. .TP .PD 0 \fB\f(CBgxk_spline_eval\fP\f1(\fI\f(CIspline\fP\f1, \fI\f(CIx\fP\f1, \fI\f(CIyd1\fP\f1); .na .TS nokeep; l l l. \fI\f(CIconst GxkSpline*\fP\f1 \fI\f(CIspline\fP\f1; T{ correctly setup \fI\f(CIGxkSpline\fP\f1 T} \fI\f(CIdouble \fP\f1 \fI\f(CIx\fP\f1; T{ x position for evaluation T} \fI\f(CIdouble*\fP\f1 \fI\f(CIyd1\fP\f1; T{ T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ y of \fI\f(CIspline\fP\f1 at position x T} .TE .ad Evaluate the \fI\f(CIspline\fP\f1 polynomial at position \fI\f(CIx\fP\f1 and return the interpolated value y, as well as its first derivative. .TP .PD 0 \fB\f(CBgxk_spline_findx\fP\f1(\fI\f(CIspline\fP\f1, \fI\f(CIy\fP\f1); .na .TS nokeep; l l l. \fI\f(CIconst GxkSpline*\fP\f1 \fI\f(CIspline\fP\f1; T{ correctly setup \fI\f(CIGxkSpline\fP\f1 T} \fI\f(CIdouble \fP\f1 \fI\f(CIy\fP\f1; T{ interpolated y value T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ x position to yield y or NAN T} .TE .ad Find an x position for which spline evaluation yields y. Due to round off, calling \fB\f(CBgxk_spline_y()\fP\f1 on the result may produce a number equal to y only within a certain epsilon. If multiple x positions will yield y upon evaluation, any of them may be returned. If no x position can yield y, NAN is returned. Evaluation of this function may take about \fC10\f1 times as long as calling its counterpart \fB\f(CBgxk_spline_y()\fP\f1, some times much longer. .TP .PD 0 \fB\f(CBgxk_spline_free\fP\f1(\fI\f(CIspline\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGxkSpline*\fP\f1 \fI\f(CIspline\fP\f1; T{ correctly setup \fI\f(CIGxkSpline\fP\f1 T} .TE .ad Free a \fI\f(CIspline\fP\f1 structure. .TP .PD 0 \fB\f(CBgxk_spline_new\fP\f1(\fI\f(CIn_points\fP\f1, \fI\f(CIpoints\fP\f1, \fI\f(CIdy_start\fP\f1, \fI\f(CIdy_end\fP\f1); .na .TS nokeep; l l l. \fI\f(CIguint \fP\f1 \fI\f(CIn_points\fP\f1; T{ number of fix points T} \fI\f(CIconst GxkSplinePoint*\fP\f1 \fI\f(CIpoints\fP\f1; T{ fix points T} \fI\f(CIdouble \fP\f1 \fI\f(CIdy_start\fP\f1; T{ first derivatives at point[\fC0\f1] T} \fI\f(CIdouble \fP\f1 \fI\f(CIdy_end\fP\f1; T{ first derivatives at point[n_points - \fC1\f1] T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ newly allocated spline T} .TE .ad Create a not-a-knot spline based on a given set of fix points and the first derivative of the first and last point of the interpolating function. .TP .PD 0 \fB\f(CBgxk_spline_new_natural\fP\f1(\fI\f(CIn_points\fP\f1, \fI\f(CIpoints\fP\f1); .na .TS nokeep; l l l. \fI\f(CIguint \fP\f1 \fI\f(CIn_points\fP\f1; T{ number of fix points T} \fI\f(CIconst GxkSplinePoint*\fP\f1 \fI\f(CIpoints\fP\f1; T{ fix points T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ newly allocated spline T} .TE .ad Create a natural spline based on a given set of fix points. .TP .PD 0 \fB\f(CBgxk_spline_y\fP\f1(\fI\f(CIspline\fP\f1, \fI\f(CIx\fP\f1); .na .TS nokeep; l l l. \fI\f(CIconst GxkSpline*\fP\f1 \fI\f(CIspline\fP\f1; T{ correctly setup \fI\f(CIGxkSpline\fP\f1 T} \fI\f(CIdouble \fP\f1 \fI\f(CIx\fP\f1; T{ x position for evaluation T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ y of \fI\f(CIspline\fP\f1 at position x T} .TE .ad Evaluate the \fI\f(CIspline\fP\f1 polynomial at position \fI\f(CIx\fP\f1 and return the interpolated value y. .TP .PD 0 \fB\f(CBgxk_status_bar_create\fP\f1(); .na .TS nokeep; l l l. \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ status bar container T} .TE .ad Create a status bar suitable to be packed into windows with status bar support. .TP .PD 0 \fB\f(CBgxk_status_clear\fP\f1(); Clear the current status bar. .TP .PD 0 \fB\f(CBgxk_status_errnoprintf\fP\f1(\fI\f(CIlibc_errno\fP\f1, \fI\f(CImessage_fmt\fP\f1); .na .TS nokeep; l l l. \fI\f(CIlibc_errno\fP\f1; T{ errno value T} \fI\f(CImessage_fmt\fP\f1; T{ printf style message to be displayed T} .TE .ad Similar to \fB\f(CBgxk_status_printf()\fP\f1 but figures the error status automatically from the passed in \fI\f(CIlibc_errno\fP\f1. .TP .PD 0 \fB\f(CBgxk_status_printf\fP\f1(\fI\f(CIpercentage\fP\f1, \fI\f(CIstatus_msg\fP\f1, \fI\f(CImessage_fmt\fP\f1); .na .TS nokeep; l l l. \fI\f(CIpercentage\fP\f1; T{ progress percentage T} \fI\f(CIstatus_msg\fP\f1; T{ error status T} \fI\f(CImessage_fmt\fP\f1; T{ printf style message to be displayed T} .TE .ad Similar to \fB\f(CBgxk_status_set()\fP\f1 but supports construction of the message through a \fB\f(CBprintf(\fC3\f1)\fP\f1 style argument list. .TP .PD 0 \fB\f(CBgxk_status_set\fP\f1(\fI\f(CIpercentage\fP\f1, \fI\f(CImessage\fP\f1, \fI\f(CIstatus_msg\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgfloat \fP\f1 \fI\f(CIpercentage\fP\f1; T{ progress percentage T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CImessage\fP\f1; T{ message to be displayed T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstatus_msg\fP\f1; T{ error status T} .TE .ad Set the current status bar message, progress percentage (usually \fC0\f1% - \fC100\f1% or one of the special values: \fCGXK_STATUS_ERROR\f1, \fCGXK_STATUS_WAIT\f1, \fCGXK_STATUS_IDLE\f1, \fCGXK_STATUS_IDLE_HINT\f1 or \fCGXK_STATUS_PROGRESS\f1) and error status. .TP .PD 0 \fB\f(CBgxk_status_window_pop\fP\f1(); Pop the most recently pushed window from the status bar window stack. .TP .PD 0 \fB\f(CBgxk_status_window_push\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIwidget\fP\f1; T{ status bar window T} .TE .ad Push a window onto the stack of windows that have the current status bar. .TP .PD 0 \fB\f(CBgxk_stock_button\fP\f1(\fI\f(CIstock_id\fP\f1, \fI\f(CIlabel\fP\f1); .na .TS nokeep; l l l. \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstock_id\fP\f1; T{ stock name T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIlabel\fP\f1; T{ button text T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ a visible GtkButton widget T} .TE .ad Create a GtkButton widget with a stock image and custom label text. .TP .PD 0 \fB\f(CBgxk_stock_button_child\fP\f1(\fI\f(CIstock_id\fP\f1, \fI\f(CIlabel\fP\f1); .na .TS nokeep; l l l. \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstock_id\fP\f1; T{ stock name T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIlabel\fP\f1; T{ button text T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ a visible widget suitable as GtkButton child T} .TE .ad This function does the same as \fB\f(CBgxk_stock_button()\fP\f1 except for creating the actual button. The button's child is instead returned to the caller, this might e.g. be useful if a button is created containing multiple children which are shown only selectively during runtime. .TP .PD 0 \fB\f(CBgxk_stock_fallback_pixbuf\fP\f1(\fI\f(CIstock_id\fP\f1); .na .TS nokeep; l l l. \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstock_id\fP\f1; T{ stock name T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ this \fI\f(CIstock_id\fP\f1's pixbuf (or \fCNULL\f1 for invalid stock ids) T} .TE .ad Return the pixbuf associated with \fI\f(CIstock_id\fP\f1, the pixbuf is owned by the stock system and persists throughout runtime. To display stock icons in widgets use \fB\f(CBgxk_stock_image()\fP\f1 and not this pixbuf. .TP .PD 0 \fB\f(CBgxk_stock_icon_window\fP\f1(\fI\f(CIstock_id\fP\f1); .na .TS nokeep; l l l. \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstock_id\fP\f1; T{ a valid stock icon name T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ a window showing the stock icon T} .TE .ad Create a window displaying a stock icon which is transparent according to the icon's alpha mask. Such windows are mostly useful to implement drag-and-drop operations with stock icons. .TP .PD 0 \fB\f(CBgxk_stock_image\fP\f1(\fI\f(CIstock_icon_id\fP\f1, \fI\f(CIicon_size\fP\f1); .na .TS nokeep; l l l. \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstock_icon_id\fP\f1; T{ stock name T} \fI\f(CIGtkIconSize \fP\f1 \fI\f(CIicon_size\fP\f1; T{ image size T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ a visible GtkImage widget or \fCNULL\f1 T} .TE .ad Create a GtkImage widget with a stock image of a certain size, or return \fCNULL\f1 if the image doesn't exist. The returned image widget correctly displays the stock icon, honouring prelight and sensitivity state of the widget. .TP .PD 0 \fB\f(CBgxk_stock_register_icon\fP\f1(\fI\f(CIicon\fP\f1); .na .TS nokeep; l l l. \fI\f(CIconst GxkStockIcon*\fP\f1 \fI\f(CIicon\fP\f1; T{ a validly filled out GxkStockIcon T} .TE .ad Register a new stock icon from an inlined pixbuf. The inlined pixbuf pixels are not copied, so the caller must make sure for the data to remain valid. .TP .PD 0 \fB\f(CBgxk_stock_register_icons\fP\f1(\fI\f(CIn_icons\fP\f1, \fI\f(CIicons\fP\f1); .na .TS nokeep; l l l. \fI\f(CIguint \fP\f1 \fI\f(CIn_icons\fP\f1; T{ number of icons to register T} \fI\f(CIconst GxkStockIcon*\fP\f1 \fI\f(CIicons\fP\f1; T{ a validly filled out array of GxkStockIcon T} .TE .ad For all \fI\f(CIn_icons\fP\f1 contained in \fI\f(CIicons\fP\f1, call \fB\f(CBgxk_stock_register_icon()\fP\f1. .TP .PD 0 \fB\f(CBgxk_stock_register_item\fP\f1(\fI\f(CIitem\fP\f1); .na .TS nokeep; l l l. \fI\f(CIconst GxkStockItem*\fP\f1 \fI\f(CIitem\fP\f1; T{ a validly filled out GxkStockItem T} .TE .ad Register a new stock item. The new stock item \fI\f(CIitem\fP\f1->stock_id is registered with an item label of \fI\f(CIitem\fP\f1->label and the stock icon \fI\f(CIitem\fP\f1->stock_fallback. If \fI\f(CIitem\fP\f1->label is \fCNULL\f1, \fI\f(CIitem\fP\f1->stock_fallback must not be \fCNULL\f1, and \fI\f(CIitem\fP\f1->stock_id becomes merely an alias of \fI\f(CIitem\fP\f1->stock_fallback. .TP .PD 0 \fB\f(CBgxk_stock_register_items\fP\f1(\fI\f(CIn_items\fP\f1, \fI\f(CIitems\fP\f1); .na .TS nokeep; l l l. \fI\f(CIguint \fP\f1 \fI\f(CIn_items\fP\f1; T{ number of items to register T} \fI\f(CIconst GxkStockItem*\fP\f1 \fI\f(CIitems\fP\f1; T{ a validly filled out array of GxkStockItem T} .TE .ad For all \fI\f(CIn_items\fP\f1 contained in \fI\f(CIitems\fP\f1, call \fB\f(CBgxk_stock_register_item()\fP\f1. .TP .PD 0 \fB\f(CBgxk_text_view_cursor_to_end\fP\f1(\fI\f(CItview\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTextView*\fP\f1 \fI\f(CItview\fP\f1; T{ a GtkTextView object T} .TE .ad Move the insertion and selection bound mark to the end of the text view's buffer and keep the cursor on screen. .TP .PD 0 \fB\f(CBgxk_text_view_cursor_to_start\fP\f1(\fI\f(CItview\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTextView*\fP\f1 \fI\f(CItview\fP\f1; T{ a GtkTextView object T} .TE .ad Move the insertion and selection bound mark to the start of the text view's buffer and keep the cursor on screen. .TP .PD 0 \fB\f(CBgxk_text_view_enter_browse_mode\fP\f1(\fI\f(CItview\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTextView*\fP\f1 \fI\f(CItview\fP\f1; T{ a GtkTextView object T} .TE .ad Install key press handlers on a text view which allow scrolling its contents into any direction. .TP .PD 0 \fB\f(CBgxk_text_view_leave_browse_mode\fP\f1(\fI\f(CItview\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTextView*\fP\f1 \fI\f(CItview\fP\f1; T{ a GtkTextView object T} .TE .ad Deinstall key press handlers previously installed with \fB\f(CBgxk_text_view_enter_browse_mode()\fP\f1. .TP .PD 0 \fB\f(CBgxk_toplevel_activate_default\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a widget having a toplevel T} .TE .ad Activate the default widget of the toplevel of \fI\f(CIwidget\fP\f1. .TP .PD 0 \fB\f(CBgxk_toplevel_delete\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a widget having a toplevel T} .TE .ad This function is useful to produce the an effect similar to user caused window manager triggered window deletion on the toplevel of \fI\f(CIwidget\fP\f1. Note that this function will cause window deletion despite any grabs in effect however. .TP .PD 0 \fB\f(CBgxk_toplevel_hide\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a widget having a toplevel T} .TE .ad Hide the toplevel of \fI\f(CIwidget\fP\f1. .TP .PD 0 \fB\f(CBgxk_tree_model_get_iter\fP\f1(\fI\f(CItree_model\fP\f1, \fI\f(CIiter\fP\f1, \fI\f(CIpath\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeModel*\fP\f1 \fI\f(CItree_model\fP\f1; T{ T} \fI\f(CIGtkTreeIter*\fP\f1 \fI\f(CIiter\fP\f1; T{ T} \fI\f(CIGtkTreePath*\fP\f1 \fI\f(CIpath\fP\f1; T{ T} .TE .ad This function is a replacement for \fB\f(CBgtk_tree_model_get_iter()\fP\f1 for Gtk+-\fC2.4\f1. For sort models, \fB\f(CBgtk_tree_model_get_iter()\fP\f1 can erroneously return \fCTRUE\f1 which is corrected by calling this function instead. .TP .PD 0 \fB\f(CBgxk_tree_path_prev\fP\f1(\fI\f(CIpath\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreePath*\fP\f1 \fI\f(CIpath\fP\f1; T{ valid \fI\f(CIGtkTreePath\fP\f1 T} .TE .ad Workaround for \fB\f(CBgtk_tree_path_prev()\fP\f1 which corrupts memory if called on empty paths (up to version Gtk+-\fC2.4\f1 at least). .TP .PD 0 \fB\f(CBgxk_tree_selection_force_browse\fP\f1(\fI\f(CIselection\fP\f1, \fI\f(CImodel\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeSelection*\fP\f1 \fI\f(CIselection\fP\f1; T{ GtkTreeSelection to watch T} \fI\f(CIGtkTreeModel*\fP\f1 \fI\f(CImodel\fP\f1; T{ tree model used with \fI\f(CIselection\fP\f1 T} .TE .ad Watch deletion and insertions into empty trees to ensure valid selections across these events. .TP .PD 0 \fB\f(CBgxk_tree_selection_select_ipath\fP\f1(\fI\f(CIselection\fP\f1, \fI\f(CI...\fP\f1); .na .TS nokeep; l l l. \fI\f(CIselection\fP\f1; T{ GtkTreeSelection to modify T} \fI\f(CI...\fP\f1; T{ GtkTreePath indices T} .TE .ad Select the row denoted by the path to be constructed from the -\fC1\f1 terminated indices. .TP .PD 0 \fB\f(CBgxk_tree_selection_select_spath\fP\f1(\fI\f(CIselection\fP\f1, \fI\f(CIstr_path\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeSelection*\fP\f1 \fI\f(CIselection\fP\f1; T{ GtkTreeSelection to modify T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstr_path\fP\f1; T{ a stringified GtkTreePath T} .TE .ad Select the row denoted by \fI\f(CIstr_path\fP\f1. .TP .PD 0 \fB\f(CBgxk_tree_selection_unselect_ipath\fP\f1(\fI\f(CIselection\fP\f1, \fI\f(CI...\fP\f1); .na .TS nokeep; l l l. \fI\f(CIselection\fP\f1; T{ GtkTreeSelection to modify T} \fI\f(CI...\fP\f1; T{ GtkTreePath indices T} .TE .ad Select the row denoted by the path to be constructed from the -\fC1\f1 terminated indices. .TP .PD 0 \fB\f(CBgxk_tree_selection_unselect_spath\fP\f1(\fI\f(CIselection\fP\f1, \fI\f(CIstr_path\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeSelection*\fP\f1 \fI\f(CIselection\fP\f1; T{ GtkTreeSelection to modify T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstr_path\fP\f1; T{ a stringified GtkTreePath T} .TE .ad Unselect the row denoted by \fI\f(CIstr_path\fP\f1. .TP .PD 0 \fB\f(CBgxk_tree_spath_index0\fP\f1(\fI\f(CIstrpath\fP\f1); .na .TS nokeep; l l l. \fI\f(CIconst gchar*\fP\f1 \fI\f(CIstrpath\fP\f1; T{ stringified \fI\f(CIGtkTreePath\fP\f1 T} .TE .ad Return index[\fC0\f1] of \fI\f(CIstrpath\fP\f1. Useful for paths in lists, where index[\fC0\f1] usually corresponds to the nth row. .TP .PD 0 \fB\f(CBgxk_tree_view_add_column\fP\f1(\fI\f(CItree_view\fP\f1, \fI\f(CIposition\fP\f1, \fI\f(CIcolumn\fP\f1, \fI\f(CIcell\fP\f1, \fI\f(CI...\fP\f1); .na .TS nokeep; l l l. \fI\f(CItree_view\fP\f1; T{ valid \fI\f(CIGtkTreeView\fP\f1 T} \fI\f(CIposition\fP\f1; T{ column position (or -\fC1\f1 to append) T} \fI\f(CIcolumn\fP\f1; T{ valid \fI\f(CIGtkTreeViewColumn\fP\f1 T} \fI\f(CIcell\fP\f1; T{ valid \fI\f(CIGtkCellRenderer\fP\f1 T} \fI\f(CI...\fP\f1; T{ attribute mappings T} .TE .ad Appends \fI\f(CIcell\fP\f1 to \fI\f(CIcolumn\fP\f1 and adds \fI\f(CIcolumn\fP\f1 to \fI\f(CItree_view\fP\f1 at the specified \fI\f(CIposition\fP\f1. This function takes a \fCNULL\f1-terminated list of attribute mappings consisting of a string and a guint, mapping cell attributes to model columns as documented in \fB\f(CBgtk_tree_view_column_add_attribute()\fP\f1. .TP .PD 0 \fB\f(CBgxk_tree_view_add_popup_column\fP\f1(\fI\f(CItree_view\fP\f1, \fI\f(CImodel_column\fP\f1, \fI\f(CIcolumn_flags\fP\f1, \fI\f(CIxalign\fP\f1, \fI\f(CItitle\fP\f1, \fI\f(CItooltip\fP\f1, \fI\f(CIedited_callback\fP\f1, \fI\f(CIpopup_callback\fP\f1, \fI\f(CIdata\fP\f1, \fI\f(CIcflags\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeView*\fP\f1 \fI\f(CItree_view\fP\f1; T{ valid \fI\f(CIGtkTreeView\fP\f1 T} \fI\f(CIguint \fP\f1 \fI\f(CImodel_column\fP\f1; T{ model column T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIcolumn_flags\fP\f1; T{ T} \fI\f(CIgdouble \fP\f1 \fI\f(CIxalign\fP\f1; T{ horizontal text alignment T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItitle\fP\f1; T{ column title T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItooltip\fP\f1; T{ column tooltip T} \fI\f(CIgpointer \fP\f1 \fI\f(CIedited_callback\fP\f1; T{ edit notification callback T} \fI\f(CIgpointer \fP\f1 \fI\f(CIpopup_callback\fP\f1; T{ popup notification callback T} \fI\f(CIgpointer \fP\f1 \fI\f(CIdata\fP\f1; T{ data passed in to toggled_callback T} \fI\f(CIGConnectFlags \fP\f1 \fI\f(CIcflags\fP\f1; T{ connection flags T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ a newly added \fI\f(CIGtkTreeViewColumn\fP\f1 T} .TE .ad Add a text column with popup facility, similar to \fB\f(CBgxk_tree_view_add_text_column()\fP\f1. This function takes an additional argument \fI\f(CIpopup_callback\fP\f1() which is called when the user clicks on the cells "popup" button. .TP .PD 0 \fB\f(CBgxk_tree_view_add_text_column\fP\f1(\fI\f(CItree_view\fP\f1, \fI\f(CImodel_column\fP\f1, \fI\f(CIcolumn_flags\fP\f1, \fI\f(CIxalign\fP\f1, \fI\f(CItitle\fP\f1, \fI\f(CItooltip\fP\f1, \fI\f(CIedited_callback\fP\f1, \fI\f(CIdata\fP\f1, \fI\f(CIcflags\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeView*\fP\f1 \fI\f(CItree_view\fP\f1; T{ valid \fI\f(CIGtkTreeView\fP\f1 T} \fI\f(CIguint \fP\f1 \fI\f(CImodel_column\fP\f1; T{ model column T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIcolumn_flags\fP\f1; T{ column flags T} \fI\f(CIgdouble \fP\f1 \fI\f(CIxalign\fP\f1; T{ horizontal text alignment T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItitle\fP\f1; T{ column title T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItooltip\fP\f1; T{ column tooltip T} \fI\f(CIgpointer \fP\f1 \fI\f(CIedited_callback\fP\f1; T{ notification callback T} \fI\f(CIgpointer \fP\f1 \fI\f(CIdata\fP\f1; T{ data passed in to toggled_callback T} \fI\f(CIGConnectFlags \fP\f1 \fI\f(CIcflags\fP\f1; T{ connection flags T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ a newly added \fI\f(CIGtkTreeViewColumn\fP\f1 T} .TE .ad Add a new column with text cell to a \fI\f(CItree_view\fP\f1. The \fI\f(CImodel_column\fP\f1 indicates the column number of the tree model containing the text to be displayed, the \fI\f(CIcolumn_flags\fP\f1 toggle specific column characteristics (see \fB\f(CBgxk_tree_view_append_text_columns()\fP\f1 for details) and \fI\f(CIxalign\fP\f1 controls the horizontal cell alignment (between \fC0\f1 and \fC1\f1). If non-\fCNULL\f1, \fI\f(CIedited_callback\fP\f1(\fI\f(CIdata\fP\f1) is connected with \fI\f(CIcflags\fP\f1 (see \fB\f(CBg_signal_connect_data()\fP\f1) to the "::edited" signal of the text cell and the cell is made editable. .TP .PD 0 \fB\f(CBgxk_tree_view_add_toggle_column\fP\f1(\fI\f(CItree_view\fP\f1, \fI\f(CImodel_column\fP\f1, \fI\f(CIcolumn_flags\fP\f1, \fI\f(CIxalign\fP\f1, \fI\f(CItitle\fP\f1, \fI\f(CItooltip\fP\f1, \fI\f(CItoggled_callback\fP\f1, \fI\f(CIdata\fP\f1, \fI\f(CIcflags\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeView*\fP\f1 \fI\f(CItree_view\fP\f1; T{ valid \fI\f(CIGtkTreeView\fP\f1 T} \fI\f(CIguint \fP\f1 \fI\f(CImodel_column\fP\f1; T{ model column T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIcolumn_flags\fP\f1; T{ T} \fI\f(CIgdouble \fP\f1 \fI\f(CIxalign\fP\f1; T{ horizontal text alignment T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItitle\fP\f1; T{ column title T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItooltip\fP\f1; T{ column tooltip T} \fI\f(CIgpointer \fP\f1 \fI\f(CItoggled_callback\fP\f1; T{ notification callback T} \fI\f(CIgpointer \fP\f1 \fI\f(CIdata\fP\f1; T{ data passed in to toggled_callback T} \fI\f(CIGConnectFlags \fP\f1 \fI\f(CIcflags\fP\f1; T{ connection flags T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ a newly added \fI\f(CIGtkTreeViewColumn\fP\f1 T} .TE .ad Add a toggle button column, similar to \fB\f(CBgxk_tree_view_add_text_column()\fP\f1, however the model column is expected to be of type \fCG_TYPE_BOOLEAN\f1, and instead of an \fI\f(CIedited_callback\fP\f1(), this function has a void \fI\f(CItoggled_callback\fP\f1(\fI\f(CIGtkCellRendererToggle*\fP\f1, const gchar *strpath, \fI\f(CIdata\fP\f1) callback which is connected to the "toggled" signal of the new cell. .TP .PD 0 \fB\f(CBgxk_tree_view_append_text_columns\fP\f1(\fI\f(CItree_view\fP\f1, \fI\f(CIn_cols\fP\f1, \fI\f(CI...\fP\f1); .na .TS nokeep; l l l. \fI\f(CItree_view\fP\f1; T{ valid \fI\f(CIGtkTreeView\fP\f1 T} \fI\f(CIn_cols\fP\f1; T{ number of columns to append T} \fI\f(CI...\fP\f1; T{ column arguments T} .TE .ad Add \fI\f(CIn_cols\fP\f1 new columns with text cells to \fI\f(CItree_view\fP\f1 (a short hand version for multiple calls to \fB\f(CBgxk_tree_view_add_text_column()\fP\f1). Per column, the caller needs to supply a \fI\f(CIguint\fP\f1, a string, a \fI\f(CIgdouble\fP\f1 and another string. The Arguments are used as model column number (for the text to be displayed), the column specific flags, the horizontal cell alignment (between \fC0\f1 and \fC1\f1) and the column title respectively. The \fI\f(CIcolumn_flags\fP\f1 argument is a combination of letters that are able to switch certain characteristics on or of, currently supported are: .br \fCF\f1 - column is fixed in sizing; .br \fCA\f1 - column resizes automatically; .br \fCG\f1 - columns sizing behaviour is grow only; .br \fCS\f1 - column is sortable; .br \fCs\f1 - column is unsortable; .br \fCO\f1 - column is reorderable; .br \fCo\f1 - column is not reorderable; .br \fCR\f1 - column is user-resizable; .br \fCr\f1 - column is not user-resizable; .br \fCP\f1 - add extra padding between multiple cells of the same column; .br \fCp\f1 - cancel a previous \fCP\f1 flag; .br %# - automatically popup dialogs for popup cell renderers. .TP .PD 0 \fB\f(CBgxk_tree_view_column_set_tip_title\fP\f1(\fI\f(CItree_column\fP\f1, \fI\f(CItitle\fP\f1, \fI\f(CItooltip\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeViewColumn*\fP\f1 \fI\f(CItree_column\fP\f1; T{ valid \fI\f(CIGtkTreeViewColumn\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItitle\fP\f1; T{ column title T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItooltip\fP\f1; T{ column tooltip T} .TE .ad Set a tree view column title and its tooltip. This is a bug workaroud for missing tree view column API to set tooltips, so the column title or column title widget shouldn't be changed after calling this function. .TP .PD 0 \fB\f(CBgxk_tree_view_focus_row\fP\f1(\fI\f(CItree\fP\f1, \fI\f(CIrow\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeView*\fP\f1 \fI\f(CItree\fP\f1; T{ valid \fI\f(CIGtkTreeView\fP\f1 T} \fI\f(CIgint \fP\f1 \fI\f(CIrow\fP\f1; T{ row to focus T} .TE .ad Force focus to \fI\f(CIrow\fP\f1, causes automatic selection of \fI\f(CIrow\fP\f1 in browse mode. .TP .PD 0 \fB\f(CBgxk_tree_view_get_bin_window_pos\fP\f1(\fI\f(CItree\fP\f1, \fI\f(CIx_p\fP\f1, \fI\f(CIy_p\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeView*\fP\f1 \fI\f(CItree\fP\f1; T{ valid \fI\f(CIGtkTreeView\fP\f1 T} \fI\f(CIgint*\fP\f1 \fI\f(CIx_p\fP\f1; T{ x position T} \fI\f(CIgint*\fP\f1 \fI\f(CIy_p\fP\f1; T{ y position T} .TE .ad Retrieve the position of the bin window (row display area) of a \fI\f(CIGtkTreeView\fP\f1 widget once it's realized. .TP .PD 0 \fB\f(CBgxk_tree_view_get_row_area\fP\f1(\fI\f(CItree\fP\f1, \fI\f(CIrow\fP\f1, \fI\f(CIy_p\fP\f1, \fI\f(CIheight_p\fP\f1, \fI\f(CIcontent_area\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeView*\fP\f1 \fI\f(CItree\fP\f1; T{ valid \fI\f(CIGtkTreeView\fP\f1 T} \fI\f(CIgint \fP\f1 \fI\f(CIrow\fP\f1; T{ row to retrieve area coordinates for T} \fI\f(CIgint*\fP\f1 \fI\f(CIy_p\fP\f1; T{ y position of \fI\f(CIrow\fP\f1 T} \fI\f(CIgint*\fP\f1 \fI\f(CIheight_p\fP\f1; T{ height of \fI\f(CIrow\fP\f1 T} \fI\f(CIgboolean \fP\f1 \fI\f(CIcontent_area\fP\f1; T{ whether the cell background area or content area is returned T} .TE .ad Retrieve the position and height of a row of a \fI\f(CIGtkTreeView\fP\f1 widget within its bin window. .TP .PD 0 \fB\f(CBgxk_tree_view_get_row_from_coord\fP\f1(\fI\f(CItree\fP\f1, \fI\f(CIy\fP\f1, \fI\f(CIrow_p\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeView*\fP\f1 \fI\f(CItree\fP\f1; T{ valid \fI\f(CIGtkTreeView\fP\f1 T} \fI\f(CIgint \fP\f1 \fI\f(CIy\fP\f1; T{ bin window y coordinate T} \fI\f(CIgint*\fP\f1 \fI\f(CIrow_p\fP\f1; T{ row pointed to by \fI\f(CIy\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ whether y lies within the visible area T} .TE .ad Retrieve the row within which \fI\f(CIy\fP\f1 lies. If \fI\f(CIy\fP\f1 lies outside the visible area, the row is clamped to visible rows. .TP .PD 0 \fB\f(CBgxk_tree_view_get_selected_row\fP\f1(\fI\f(CItree\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeView*\fP\f1 \fI\f(CItree\fP\f1; T{ valid \fI\f(CIGtkTreeView\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ first selected row or -\fC1\f1 T} .TE .ad Retrieve the selected row in browse mode (for other selection modes, return the first selected row if any). .TP .PD 0 \fB\f(CBgxk_tree_view_is_row_selected\fP\f1(\fI\f(CItree\fP\f1, \fI\f(CIrow\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkTreeView*\fP\f1 \fI\f(CItree\fP\f1; T{ valid \fI\f(CIGtkTreeView\fP\f1 T} \fI\f(CIgint \fP\f1 \fI\f(CIrow\fP\f1; T{ row to test T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ whether \fI\f(CIrow\fP\f1 is selected T} .TE .ad Check whether \fI\f(CIrow\fP\f1 in \fI\f(CItree\fP\f1 is selected. .TP .PD 0 \fB\f(CBgxk_type_register_generated\fP\f1(\fI\f(CIn_entries\fP\f1, \fI\f(CIentries\fP\f1); .na .TS nokeep; l l l. \fI\f(CIguint \fP\f1 \fI\f(CIn_entries\fP\f1; T{ number of generated types to register T} \fI\f(CIconst GxkTypeGenerated*\fP\f1 \fI\f(CIentries\fP\f1; T{ GxkTypeGenerated type descriptions T} .TE .ad Register each of the generated type entries with the type system. Currently supported parent types are \fCG_TYPE_ENUM\f1 and \fCG_TYPE_FLAGS\f1 in which cases the \fI\f(CItype_data\fP\f1 member must point to a \fCNULL\f1 terminated array of GEnumValue or GFlagValue structures. No extra copying is performed, so the passed in structures have to persist throughout runtime. .TP .PD 0 \fB\f(CBgxk_ungrab_pointer_and_keyboard\fP\f1(\fI\f(CIwindow\fP\f1, \fI\f(CItime\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGdkWindow*\fP\f1 \fI\f(CIwindow\fP\f1; T{ window pointer was previously grabed on T} \fI\f(CIguint32 \fP\f1 \fI\f(CItime\fP\f1; T{ T} .TE .ad This function releases a pointer and keyboard grab acquired through \fB\f(CBgxk_grab_pointer_and_keyboard()\fP\f1. The \fI\f(CIwindow\fP\f1 is used to release grabs on the correct display, see \fB\f(CBgdk_display_pointer_ungrab()\fP\f1 and \fB\f(CBgdk_display_keyboard_ungrab()\fP\f1 on this. .TP .PD 0 \fB\f(CBgxk_vseparator_space_new\fP\f1(\fI\f(CIdraw_seperator\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgboolean \fP\f1 \fI\f(CIdraw_seperator\fP\f1; T{ enable visible vertical seperator T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ visible vertical space/seperator widget T} .TE .ad Create a vertical seperator widget. \fI\f(CIdraw_seperator\fP\f1 indicates whether the seperator should be amount to simple space or not. .TP .PD 0 \fB\f(CBgxk_widget_activate_accel_group\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIaccel_group\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIGtkAccelGroup*\fP\f1 \fI\f(CIaccel_group\fP\f1; T{ a valid \fI\f(CIGtkAccelGroup\fP\f1 T} .TE .ad Activate accelerators within accel group when \fI\f(CIwidget\fP\f1 receives key press events. This function isn't pure convenience, as it works around Gtk+-\fC2.2\f1 not exporting _\fB\f(CBgtk_accel_group_activate()\fP\f1, _\fB\f(CBgtk_accel_group_attach()\fP\f1 or _\fB\f(CBgtk_accel_group_detach()\fP\f1. .TP .PD 0 \fB\f(CBgxk_widget_add_font_requisition\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIn_chars\fP\f1, \fI\f(CIn_digits\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIguint \fP\f1 \fI\f(CIn_chars\fP\f1; T{ number of characters to request space for T} \fI\f(CIguint \fP\f1 \fI\f(CIn_digits\fP\f1; T{ number of digits to request space for T} .TE .ad This function adds up extra space to the widget size requisition. The space is an approximation of the space required by \fI\f(CIn_chars\fP\f1 characters and \fI\f(CIn_digits\fP\f1 digits written with the widgets font. .TP .PD 0 \fB\f(CBgxk_widget_add_option\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIoption\fP\f1, \fI\f(CIvalue\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIoption\fP\f1; T{ option to add to widget T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIvalue\fP\f1; T{ value of \fI\f(CIoption\fP\f1 (currently just "+" and "-" are supported) T} .TE .ad Add/set a custom \fI\f(CIoption\fP\f1 of \fI\f(CIwidget\fP\f1 to a particular \fI\f(CIvalue\fP\f1. Custom options on widgets are used to attach extra information to widgets which may be useful to otherwise disjoint code portions. The actual options are implemented by means of \fB\f(CBg_option_concat()\fP\f1, \fB\f(CBg_option_check()\fP\f1 and \fB\f(CBg_option_get()\fP\f1. .TP .PD 0 \fB\f(CBgxk_widget_ancestry_viewable\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid \fCGtkWidget\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ whether \fI\f(CIwidget\fP\f1 is visible on screen T} .TE .ad Checks for \fI\f(CIwidget\fP\f1 to be effectively visible on screen. This function works around a bug in Gtk+ versions <= \fC2.4\f1.\fC10\f1, with newer Gtk+ versions, (\fB\f(CBgdk_window_is_viewable(widget->window)\fP\f1 && \fB\f(CBGTK_WIDGET_DRAWABLE(widget)\fP\f1) is a suitable replacement. .TP .PD 0 \fB\f(CBgxk_widget_attached_hierarchy_changed\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad Setting or unsetting a parent on a widget leads to emission of the ::hirarchy-changed signal on the widget and any children it contains. However, popup menus which are merely attached to widgets aren't properly notified upon such hirarchy changes, for this \fB\f(CBgxk_widget_attached_hierarchy_changed()\fP\f1 is provided. On menus which got attached to a widget with \fB\f(CBgxk_menu_attach_as_popup()\fP\f1, the signal ::attached-hirarchy-changed is emitted if ::hirarchy-changed is emitted on the widget, by calling \fB\f(CBgxk_widget_attached_hierarchy_changed()\fP\f1 on the menu. .TP .PD 0 \fB\f(CBgxk_widget_check_option\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIoption\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIoption\fP\f1; T{ option to check for T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ whether \fI\f(CIoption\fP\f1 is set T} .TE .ad Test whether the custom \fI\f(CIoption\fP\f1 is set on \fI\f(CIwidget\fP\f1. .TP .PD 0 \fB\f(CBgxk_widget_find_level_ordered\fP\f1(\fI\f(CItoplevel\fP\f1, \fI\f(CIname\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CItoplevel\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CIname\fP\f1; T{ name of the widget being looked for T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ a widget named \fI\f(CIname\fP\f1 or \fCNULL\f1 T} .TE .ad Search for a widget named \fI\f(CIname\fP\f1, child of \fI\f(CItoplevel\fP\f1. The search is ordered by looking at all children of a container before increasing depth. This function also considers submenus in menu items "children", as well as popup menus attached via \fB\f(CBgxk_menu_attach_as_popup()\fP\f1 (not ones attached via \fB\f(CBgtk_menu_attach_to_widget()\fP\f1 though, since Gtk+ doesn't store/export the neccessary information). .TP .PD 0 \fB\f(CBgxk_widget_force_bg_clear\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid GtkWidget T} .TE .ad Enforce drawing of a widget's background. Some widgets do not explicitely draw their background, but simply draw themsleves on top of their parent's background. This function forces the widget into drawing its background according to its style settings. .TP .PD 0 \fB\f(CBgxk_widget_get_attach_toplevel\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad This function returns the topmost container widget for \fI\f(CIwidget\fP\f1, much like \fB\f(CBgtk_widget_get_toplevel()\fP\f1. The only difference is that for menus, not the immediate parent is returned (the \fI\f(CIGtkWindow\fP\f1 used to display a menu) but the tree walk continues on the menu item using the menu as submenu. For example, for a window containing a menubar with submenus, \fB\f(CBgtk_widget_get_toplevel()\fP\f1 invoked on one of the menu items will return the \fI\f(CIGtkWindow\fP\f1 widgets for the corresponding submenus, while \fB\f(CBgxk_widget_get_attach_toplevel()\fP\f1 will return the actual \fI\f(CIGtkWindow\fP\f1 containing the menubar. .TP .PD 0 \fB\f(CBgxk_widget_get_latent_tooltip\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid GtkWidget T} .TE .ad Retrieve the latent tooltip for \fI\f(CIwidget\fP\f1. See \fB\f(CBgxk_widget_set_latent_tooltip()\fP\f1 for the purpose of latent tooltips. .TP .PD 0 \fB\f(CBgxk_widget_get_options\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ custom options set on the widget T} .TE .ad This function returns the set of custom options currently set on the widget. .TP .PD 0 \fB\f(CBgxk_widget_has_ancestor\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIancestor\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIgpointer \fP\f1 \fI\f(CIancestor\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ whether \fI\f(CIancestor\fP\f1 is ancestor of \fI\f(CIwidget\fP\f1 T} .TE .ad This function checks whether \fI\f(CIwidget\fP\f1 and \fI\f(CIancestor\fP\f1 are equal, or whether \fI\f(CIancestor\fP\f1 is an ancestor of \fI\f(CIwidget\fP\f1, in the same way \fB\f(CBgtk_widget_is_ancestor()\fP\f1 tests it. .TP .PD 0 \fB\f(CBgxk_widget_make_insensitive\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid GtkWidget T} .TE .ad This function is euqivalent to gtk_widget_set_sensitive (\fI\f(CIwidget\fP\f1, \fI\f(CIFALSE\fP\f1); It exists as a convenient signal connection callback. .TP .PD 0 \fB\f(CBgxk_widget_make_sensitive\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid GtkWidget T} .TE .ad This function is euqivalent to gtk_widget_set_sensitive (\fI\f(CIwidget\fP\f1, \fI\f(CITRUE\fP\f1); It exists as a convenient signal connection callback. .TP .PD 0 \fB\f(CBgxk_widget_modify_as_title\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid GtkWidget T} .TE .ad Modify the widget and it's style, so that it is insensitive, but doesn't quite look that way. Useful for inactive title menu items in menus (\fI\f(CIwidget\fP\f1 should be the menu item's label). .TP .PD 0 \fB\f(CBgxk_widget_modify_base_as_bg\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid GtkWidget T} .TE .ad Modify the widget's base background (used by list and text widgets) to look like an ordinary widget background. This is useful if a list, text or similar widget shouldn't stand out as such, e.g. when the GtkTextView widget displaying a long non-editable text should look similar to a GtkLabel. .TP .PD 0 \fB\f(CBgxk_widget_modify_bg_as_active\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid GtkWidget T} .TE .ad Modify the widget's background to look like the background of depressed button. .TP .PD 0 \fB\f(CBgxk_widget_modify_bg_as_base\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid GtkWidget T} .TE .ad Modify the widget's background to look like the background of a text or list widget (usually white). This is useful if a hbox or similar widget is used to "simulate" a list or text widget. .TP .PD 0 \fB\f(CBgxk_widget_modify_normal_bg_as_base\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid GtkWidget T} .TE .ad Modify the widget's background like \fB\f(CBgxk_widget_modify_bg_as_base()\fP\f1 does, as long as the widget isn't activated or selected. .TP .PD 0 \fB\f(CBgxk_widget_proxy_requisition\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIxscale\fP\f1, \fI\f(CIyscale\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIgdouble \fP\f1 \fI\f(CIxscale\fP\f1; T{ fractional factor for screen width T} \fI\f(CIgdouble \fP\f1 \fI\f(CIyscale\fP\f1; T{ fractional factor for screen height T} .TE .ad Proxy the size requisition of \fI\f(CIwidget\fP\f1 through the ::width-request and ::height-request properties. This is useful only for immediate children of a \fI\f(CIGtkScrolledWindow\fP\f1 (e.g. a \fI\f(CIGtkViewport\fP\f1), to have the \fI\f(CIGtkScrolledWindow\fP\f1 honour the widgets size requisition. If \fI\f(CIxscale\fP\f1 or \fI\f(CIyscale\fP\f1 is passed as -\fC1\f1, the corresponding dimension ::width-request or ::height-request is left unset. If \fI\f(CIxscale\fP\f1 or \fI\f(CIyscale\fP\f1 is passed a value between \fC0\f1 and +\fC1\f1, it is interpreted as a fraction of the screen width or screen height to constrain the corresponding requested dimension. .TP .PD 0 \fB\f(CBgxk_widget_regulate\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIsensitive\fP\f1, \fI\f(CIactive\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIgboolean \fP\f1 \fI\f(CIsensitive\fP\f1; T{ whether \fI\f(CIwidget\fP\f1 should be sensitive T} \fI\f(CIgboolean \fP\f1 \fI\f(CIactive\fP\f1; T{ whether \fI\f(CIwidget\fP\f1 should be active T} .TE .ad Regulate a widgets state. The \fI\f(CIsensitive\fP\f1 parameter controls sensitivity like \fB\f(CBgtk_widget_set_sensitive()\fP\f1 and \fI\f(CIactive\fP\f1 controls whether the widget is active like \fB\f(CBgtk_toggle_button_set_active()\fP\f1 or \fB\f(CBgtk_check_menu_item_set_active()\fP\f1. For menu items, the menu item is also made the active widget in its parent menu, possibly affecting option menus. .TP .PD 0 \fB\f(CBgxk_widget_regulate_uses_active\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ \fCTRUE\f1 if \fB\f(CBgxk_widget_regulate()\fP\f1 uses \fI\f(CIactive\fP\f1 for \fI\f(CIwidget\fP\f1 T} .TE .ad Check whether \fB\f(CBgxk_widget_regulate()\fP\f1 will actually make use of its \fI\f(CIactive\fP\f1 argument for \fI\f(CIwidget\fP\f1. If not, \fCFALSE\f1 is returned, and \fB\f(CBgxk_widget_regulate()\fP\f1 is fully equivalent to just \fB\f(CBgtk_widget_set_sensitive()\fP\f1. .TP .PD 0 \fB\f(CBgxk_widget_request_hclient_height\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIclient\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIclient\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad Request the horizontal size of \fI\f(CIclient\fP\f1 as height for \fI\f(CIwidget\fP\f1. .TP .PD 0 \fB\f(CBgxk_widget_request_vclient_width\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CIclient\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIclient\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad Request the vertical size of \fI\f(CIclient\fP\f1 as width for \fI\f(CIwidget\fP\f1. .TP .PD 0 \fB\f(CBgxk_widget_set_latent_tooltip\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CItooltip\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid GtkWidget T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItooltip\fP\f1; T{ descriptive tooltip T} .TE .ad Set the latent tooltip for this widget. A latent tooltip will not be shown on mouse over for this widget. Instead it can be querried by other widgets via \fB\f(CBgxk_widget_get_latent_tooltip()\fP\f1 to be shown when appropriate. For instance, GxkMenuButton shows the latent tooltip of its currently selected menu item. .TP .PD 0 \fB\f(CBgxk_widget_set_tooltip\fP\f1(\fI\f(CIwidget\fP\f1, \fI\f(CItooltip\fP\f1); .na .TS nokeep; l l l. \fI\f(CIgpointer \fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid \fI\f(CIGtkWidget\fP\f1 T} \fI\f(CIconst gchar*\fP\f1 \fI\f(CItooltip\fP\f1; T{ descriptive tooltip T} .TE .ad As a convenience function, this sets the \fI\f(CItooltip\fP\f1 for \fI\f(CIwidget\fP\f1 on \fCGXK_TOOLTIPS\f1, if \fI\f(CIwidget\fP\f1 is supposed to have tooltips according to the system configuration and also sets the latent tooltip. .TP .PD 0 \fB\f(CBgxk_widget_showraise\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ a valid widget T} .TE .ad Show the widget. If the widget is a toplevel, also raise its window to top. .TP .PD 0 \fB\f(CBgxk_widget_viewable\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad RETURNS: \fCTRUE\f1 if the widget is viewable, \fCFALSE\f1 otherwise Check whether a widget is viewable by verifying the mapped state of the widget and all its parent widgets. .TP .PD 0 \fB\f(CBgxk_widget_viewable_changed\fP\f1(\fI\f(CIwidget\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWidget*\fP\f1 \fI\f(CIwidget\fP\f1; T{ valid \fI\f(CIGtkWidget\fP\f1 T} .TE .ad A widget should call this function if it changed the mapped state of one of its children (or if it is a toplevel and gets show or hidden) to emit the ::viewable-changed signal on the related sub-tree. \fI\f(CIGxkDialog\fP\f1 properly emits this signal if show or hidden, containers like \fI\f(CIGtkNotebook\fP\f1 need this function be explicitely connected to their ::switch-page signal, in order for their children to get properly notified. .TP .PD 0 \fB\f(CBgxk_window_get_menu_accel_group\fP\f1(\fI\f(CIwindow\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGtkWindow*\fP\f1 \fI\f(CIwindow\fP\f1; T{ valid \fI\f(CIGtkWindow\fP\f1 T} \h'-2m'\fI\f(CIRETURNS:\fP\f1 T{ valid \fI\f(CIGtkAccelGroup\fP\f1 T} .TE .ad This function hands out an accel group for \fI\f(CIwindow\fP\f1 specifically targeted at holding accelerators of menu items in this window. .TP .PD 0 \fB\f(CBgxk_window_process_next\fP\f1(\fI\f(CIwindow\fP\f1, \fI\f(CIupdate_children\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGdkWindow*\fP\f1 \fI\f(CIwindow\fP\f1; T{ valid \fI\f(CIGdkWindow\fP\f1 T} \fI\f(CIgboolean \fP\f1 \fI\f(CIupdate_children\fP\f1; T{ whether to also process updates for child windows T} .TE .ad Cause \fI\f(CIwindow\fP\f1 to be updated asyncronously as soon as possible via \fB\f(CBgdk_window_process_updates()\fP\f1. .TP .PD 0 \fB\f(CBgxk_window_set_cursor_type\fP\f1(\fI\f(CIwindow\fP\f1, \fI\f(CIcursor\fP\f1); .na .TS nokeep; l l l. \fI\f(CIGdkWindow*\fP\f1 \fI\f(CIwindow\fP\f1; T{ valid \fI\f(CIGdkWindow*\fP\f1 T} \fI\f(CIGdkCursorType \fP\f1 \fI\f(CIcursor\fP\f1; T{ \fI\f(CIGdkCursorType\fP\f1 cursor type T} .TE .ad Set a window's cursor type. If \fCGXK_DEFAULT_CURSOR\f1 is specified the window's cursor will be inherited from it's parent. .PP .br .PP \fIDocument Revised:\fP Wed May 25 23:38:23 2005 .br