Пример #1
0
void 
Init_gtk_treemodel(VALUE mGtk)
{
    VALUE RG_TARGET_NAMESPACE = G_DEF_INTERFACE(GTK_TYPE_TREE_MODEL, "TreeModel", mGtk);

    RG_DEF_METHOD(flags, 0);
    RG_DEF_METHOD(n_columns, 0);
    RG_DEF_METHOD(get_column_type, 1);
    RG_DEF_METHOD(iter_first, 0);
    RG_DEF_METHOD(get_iter, 1);
    RG_DEF_METHOD(get_value, 2);
    RG_DEF_METHOD(each, 0);
    RG_DEF_METHOD(row_changed, 2);
    RG_DEF_METHOD(row_inserted, 2);
    RG_DEF_METHOD(row_has_child_toggled, 2);
    RG_DEF_METHOD(row_deleted, 1);
    RG_DEF_METHOD(rows_reordered, 3);
    RG_DEF_METHOD_P(iter_is_valid, 1);

    /* GtkTreeModelFlags */
    G_DEF_CLASS(GTK_TYPE_TREE_MODEL_FLAGS, "Flags", RG_TARGET_NAMESPACE);
    G_DEF_CONSTANTS(RG_TARGET_NAMESPACE, GTK_TYPE_TREE_MODEL_FLAGS, "GTK_TREE_MODEL_");

    G_DEF_SIGNAL_FUNC(RG_TARGET_NAMESPACE, "row_changed", (GValToRValSignalFunc)signal_func);
    G_DEF_SIGNAL_FUNC(RG_TARGET_NAMESPACE, "row_inserted", (GValToRValSignalFunc)signal_func);
    G_DEF_SIGNAL_FUNC(RG_TARGET_NAMESPACE, "row_has_child_toggled", (GValToRValSignalFunc)signal_func);
    G_DEF_SIGNAL_FUNC(RG_TARGET_NAMESPACE, "rows_reordered", (GValToRValSignalFunc)signal_rows_reordered_func);

    G_DEF_SETTERS(RG_TARGET_NAMESPACE);
}
Пример #2
0
void
rb_gio2_init_application (VALUE mGio)
{
    VALUE RG_TARGET_NAMESPACE;

    RG_TARGET_NAMESPACE = rb_const_get(mGio, rb_intern("Application"));

    G_DEF_SIGNAL_FUNC(RG_TARGET_NAMESPACE, "open", rg_open_signal_func);
}
void
Init_milter_error_emittable (void)
{
    VALUE rb_mMilterErrorEmittable;

    rb_mMilterErrorEmittable = G_DEF_INTERFACE(MILTER_TYPE_ERROR_EMITTABLE,
                                               "ErrorEmittable", rb_mMilter);

    G_DEF_SIGNAL_FUNC(rb_mMilterErrorEmittable, "error",
                      error_convert);
}
Пример #4
0
void 
Init_gtk_notebook(VALUE mGtk)
{
    VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_NOTEBOOK, "Notebook", mGtk);
    G_DEF_CLASS(GTK_TYPE_NOTEBOOK_PAGE, "NotebookPage", mGtk);

    RG_DEF_METHOD(initialize, 0);
    RG_DEF_METHOD(append_page, -1);
    RG_DEF_METHOD(append_page_menu, -1);
    RG_DEF_METHOD(prepend_page, -1);
    RG_DEF_METHOD(prepend_page_menu, -1);
    RG_DEF_METHOD(insert_page, -1);
    RG_DEF_METHOD(insert_page_menu, -1);
    RG_DEF_METHOD(remove_page, 1);
    RG_DEF_METHOD(page_num, 1);
    RG_DEF_METHOD(next_page, 0);
    RG_DEF_METHOD(prev_page, 0);
    RG_DEF_METHOD(reorder_child, 2);
    RG_DEF_METHOD(get_menu_label, 1);
    RG_DEF_METHOD(get_nth_page, 1);
#if GTK_CHECK_VERSION(2,2,0)
    RG_DEF_METHOD(n_pages, 0);
#endif
    RG_DEF_METHOD(get_tab_label, 1);
    RG_DEF_METHOD(query_tab_label_packing, 1);
    RG_DEF_METHOD(set_menu_label, 2);
    RG_DEF_METHOD(set_menu_label_text, 2);
    RG_DEF_METHOD(set_tab_label, 2);
    RG_DEF_METHOD(set_tab_label_packing, 4);
    RG_DEF_METHOD(set_tab_label_text, 2);
    RG_DEF_METHOD(get_menu_label_text, 1);
    RG_DEF_METHOD(get_tab_label_text, 1);

#if GTK_CHECK_VERSION(2,10,0)
    RG_DEF_METHOD(get_tab_reorderable, 1);
    RG_DEF_METHOD(set_tab_reorderable, 2);
    RG_DEF_METHOD(get_tab_detachable, 1);
    RG_DEF_METHOD(set_tab_detachable, 2);
    RG_DEF_SMETHOD(set_window_creation_hook, 0);
#endif
#if GTK_CHECK_VERSION(2,20,0)
    RG_DEF_METHOD(set_action_widget, 2);
    RG_DEF_METHOD(get_action_widget, 1);
#endif
    /* GtkNotebookTab */
    rb_define_const(RG_TARGET_NAMESPACE, "TAB_FIRST", GTK_NOTEBOOK_TAB_FIRST);
    rb_define_const(RG_TARGET_NAMESPACE, "TAB_LAST", GTK_NOTEBOOK_TAB_LAST);

    G_DEF_SIGNAL_FUNC(RG_TARGET_NAMESPACE, "switch_page", (GValToRValSignalFunc)signal_g2r_func);
}
Пример #5
0
void
Init_gtk_widget(VALUE mGtk)
{
    VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_WIDGET, "Widget", mGtk);

    rb_global_variable(&style_prop_func_table);
    style_prop_func_table = rb_hash_new();

    /*
     * instance methods
     */
    RG_DEF_METHOD(flags, 0);
    RG_DEF_METHOD(set_flags, 1);
    RG_DEF_METHOD(unset_flags, 1);
    RG_DEF_METHOD(unparent, 0);
    RG_DEF_METHOD(show, 0);
    RG_DEF_METHOD(show_now, 0);
    RG_DEF_METHOD(hide, 0);
    RG_DEF_METHOD(show_all, 0);
    RG_DEF_METHOD(hide_all, 0);
    RG_DEF_METHOD(map, 0);
    RG_DEF_METHOD(unmap, 0);
    RG_DEF_METHOD(realize, 0);
    RG_DEF_METHOD(unrealize, 0);
    RG_DEF_METHOD(queue_draw, 0);
    RG_DEF_METHOD(queue_resize, 0);
    RG_DEF_METHOD(queue_resize_no_redraw, 0);
    RG_DEF_METHOD(size_request, 0);
    RG_DEF_METHOD(child_requisition, 0);
    RG_DEF_METHOD(size_allocate, 1);
    RG_DEF_METHOD(add_accelerator, 5);
    RG_DEF_METHOD(remove_accelerator, 3);
    RG_DEF_METHOD(set_accel_path, 2);
    RG_DEF_METHOD(accel_closures, 0);
    RG_DEF_METHOD_P(can_activate_accel, 1);
    RG_DEF_METHOD(event, 1);
    RG_DEF_METHOD(activate, 0);
    RG_DEF_METHOD(reparent, 1);
    RG_DEF_SMETHOD(install_style_property, 1);
    RG_DEF_SMETHOD(style_property, 1);
    RG_DEF_SMETHOD(style_properties, -1);
    RG_DEF_METHOD(intersect, 1);
    RG_DEF_METHOD(grab_default, 0);
    RG_DEF_METHOD(set_state, 1);
    RG_DEF_METHOD(set_parent_window, 1);
    RG_DEF_METHOD(parent_window, 0);
    RG_DEF_METHOD(add_events, 1);
    RG_DEF_METHOD(toplevel, 0);
    RG_DEF_METHOD(get_ancestor, 1);
    RG_DEF_METHOD(colormap, 0);
    RG_DEF_METHOD(set_colormap, 1);
    RG_DEF_METHOD(visual, 0);
    RG_DEF_METHOD(pointer, 0);
    RG_DEF_METHOD_P(ancestor, 1);
    RG_DEF_METHOD(translate_coordinates, 3);
    RG_DEF_METHOD(hide_on_delete, 0);
    RG_DEF_METHOD(ensure_style, 0);
    RG_DEF_METHOD(reset_rc_styles, 0);
    RG_DEF_METHOD(set_direction, 1);
    RG_DEF_METHOD(direction, 0);
    RG_DEF_METHOD(shape_combine_mask, 3);
    RG_DEF_METHOD(input_shape_combine_mask, 3);
    RG_DEF_METHOD(path, 0);
    RG_DEF_METHOD(class_path, 0);
    RG_DEF_METHOD(composite_name, 0);
    RG_DEF_METHOD(modify_style, 1);
    RG_DEF_METHOD(modifier_style, 0);
    RG_DEF_METHOD(modify_fg, 2);
    RG_DEF_METHOD(modify_bg, 2);
    RG_DEF_METHOD(modify_text, 2);
    RG_DEF_METHOD(modify_base, 2);
    RG_DEF_METHOD(modify_font, 1);
#if GTK_CHECK_VERSION(2,12,0)
    RG_DEF_METHOD(modify_cursor, 2);
#endif
    RG_DEF_METHOD(create_pango_context, 0);
    RG_DEF_METHOD(pango_context, 0);
    RG_DEF_METHOD(create_pango_layout, -1);
    RG_DEF_METHOD(render_icon, -1);
    RG_DEF_METHOD(queue_draw_area, 4);
    RG_DEF_METHOD(reset_shapes, 0);
    RG_DEF_METHOD(set_redraw_on_allocate, 1);
    RG_DEF_METHOD(set_composite_name, 1);
    RG_DEF_METHOD(set_scroll_adjustments, 2);
    /* for backward compatibility. */
    RG_DEF_ALIAS("set_scroll_adjustment", "set_scroll_adjustments");
    RG_DEF_METHOD(mnemonic_activate, 1);
    RG_DEF_METHOD(region_intersect, 1);
    RG_DEF_METHOD(send_expose, 1);
    RG_DEF_METHOD(style_get_property, 1);
    RG_DEF_METHOD(accessible, 0);
    RG_DEF_METHOD(child_focus, 1);
#if GTK_CHECK_VERSION(2,12,0)
    RG_DEF_METHOD(error_bell, 0);
    RG_DEF_METHOD(keynav_failed, 0);
#endif
    RG_DEF_METHOD(child_notify, 1);
    RG_DEF_METHOD(freeze_child_notify, 0);
    RG_DEF_METHOD_P(child_visible, 0);
    RG_DEF_METHOD(settings, 0);
    RG_DEF_METHOD(get_clipboard, 1);
    RG_DEF_METHOD(display, 0);
    RG_DEF_METHOD(root_window, 0);
    RG_DEF_METHOD(screen, 0);
    RG_DEF_METHOD_P(has_screen, 0);
    RG_DEF_METHOD(set_child_visible, 1);
    RG_DEF_METHOD(get_size_request, 0);
    RG_DEF_METHOD(set_size_request, 2);
    RG_DEF_METHOD(thaw_child_notify, 0);
    RG_DEF_METHOD(mnemonic_labels, 0);
    RG_DEF_METHOD(add_mnemonic_label, 1);
    RG_DEF_METHOD(remove_mnemonic_label, 1);
#if GTK_CHECK_VERSION(2,12,0)
    RG_DEF_METHOD(set_tooltip_window, 1);
    RG_DEF_METHOD(tooltip_window, 0);
    RG_DEF_METHOD(trigger_tooltip_query, 0);
#endif
    RG_DEF_METHOD(action, 0);
    RG_DEF_METHOD_P(composited, 0);
#if !GTK_CHECK_VERSION(2, 14, 0)
    RG_DEF_METHOD(window, 0);
#endif
    RG_DEF_METHOD(set_window, 1);
    RG_DEF_METHOD(allocation, 0);
    RG_DEF_METHOD(set_allocation, 4);
    RG_DEF_METHOD(requisition, 0);
    RG_DEF_METHOD(set_requisition, 2);
    RG_DEF_METHOD(state, 0);
    RG_DEF_METHOD(saved_state, 0);

    rb_define_method(RG_TARGET_NAMESPACE, "toplevel?",  widget_TOPLEVEL, 0);
    rb_define_method(RG_TARGET_NAMESPACE, "no_window?", widget_NO_WINDOW, 0);
    rb_define_method(RG_TARGET_NAMESPACE, "realized?",  widget_REALIZED, 0);
    rb_define_method(RG_TARGET_NAMESPACE, "mapped?",    widget_MAPPED, 0);
    rb_define_method(RG_TARGET_NAMESPACE, "drawable?",  widget_DRAWABLE, 0);
    rb_define_method(RG_TARGET_NAMESPACE, "parent_sensitive?", widget_PARENT_SENSITIVE, 0);
    /* This method's name avoid to sensitive? of a property variables. */
    rb_define_method(RG_TARGET_NAMESPACE, "sensitive_with_parent?",   widget_IS_SENSITIVE, 0);
    rb_define_method(RG_TARGET_NAMESPACE, "has_grab?",    widget_HAS_GRAB, 0);
    rb_define_method(RG_TARGET_NAMESPACE, "rc_style?",    widget_RC_STYLE, 0);

    /*
     * singleton methods
     */
    RG_DEF_SMETHOD(push_colormap, 1);
    RG_DEF_SMETHOD(pop_colormap, 0);
    RG_DEF_SMETHOD(set_default_colormap, 1);
    RG_DEF_SMETHOD(default_style, 0);
    RG_DEF_SMETHOD(default_colormap, 0);
    RG_DEF_SMETHOD(default_visual, 0);
    RG_DEF_SMETHOD(set_default_direction, 1);
    RG_DEF_SMETHOD(default_direction, 0);
    RG_DEF_SMETHOD(pop_composite_child, 0);
    RG_DEF_SMETHOD(push_composite_child, 0);

    G_DEF_SETTERS(RG_TARGET_NAMESPACE);

    /*
     * constants
     */
    /* GtkWidgetFlags */
    G_DEF_CLASS(GTK_TYPE_WIDGET_FLAGS, "Flags", RG_TARGET_NAMESPACE);
    G_DEF_CONSTANTS(RG_TARGET_NAMESPACE, GTK_TYPE_WIDGET_FLAGS, "GTK_");

    /* GtkWidgetHelpType */
    G_DEF_CLASS(GTK_TYPE_WIDGET_HELP_TYPE, "HelpType", RG_TARGET_NAMESPACE);
    G_DEF_CONSTANTS(RG_TARGET_NAMESPACE, GTK_TYPE_WIDGET_HELP_TYPE, "GTK_WIDGET_");

    /* GtkTextDirection */
    G_DEF_CLASS(GTK_TYPE_TEXT_DIRECTION, "TextDirection", RG_TARGET_NAMESPACE);
    G_DEF_CONSTANTS(RG_TARGET_NAMESPACE, GTK_TYPE_TEXT_DIRECTION, "GTK_");

    /* Special signals */
    G_DEF_SIGNAL_FUNC(RG_TARGET_NAMESPACE, "size-request", (GValToRValSignalFunc)widget_signal_size_request);
    G_DEF_SIGNAL_FUNC(RG_TARGET_NAMESPACE, "size-allocate", (GValToRValSignalFunc)widget_signal_size_allocate);

}
Пример #6
0
void 
Init_gtk_treeview(VALUE mGtk)
{
    VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_TREE_VIEW, "TreeView", mGtk);

    id_selection = rb_intern("selection");
    id_model = rb_intern("model");

    RG_DEF_METHOD(initialize, -1);
    RG_DEF_METHOD(selection, 0);
    RG_DEF_METHOD(columns_autosize, 0);
    RG_DEF_METHOD(append_column, 1);
    RG_DEF_METHOD(remove_column, 1);
    RG_DEF_METHOD(insert_column, -1);
    RG_DEF_METHOD(get_column, 1);
    RG_DEF_METHOD(columns, 0);
    RG_DEF_METHOD(move_column_after, 2);
    RG_DEF_METHOD(set_column_drag_function, 0);
    RG_DEF_METHOD(scroll_to_point, 2);
    RG_DEF_METHOD(scroll_to_cell, 5);
    RG_DEF_METHOD(set_cursor, 3);
    RG_DEF_METHOD(cursor, 0);
    RG_DEF_METHOD(expand_all, 0);
    RG_DEF_METHOD(collapse_all, 0);
    RG_DEF_METHOD(expand_row, 2);
    RG_DEF_METHOD(collapse_row, 1);
    RG_DEF_METHOD(expand_to_path, 1);
    RG_DEF_METHOD(map_expanded_rows, 0);
    RG_DEF_METHOD_P(row_expanded, 1);
    RG_DEF_METHOD(get_path_at_pos, 2);
    RG_DEF_ALIAS("get_path", "get_path_at_pos");
    RG_DEF_METHOD(get_cell_area, 2);
    RG_DEF_METHOD(get_background_area, 2);
    RG_DEF_METHOD(visible_rect, 0);
    RG_DEF_METHOD(visible_range, 0);
    RG_DEF_METHOD(bin_window, 0);
    RG_DEF_METHOD(widget_to_tree_coords, 2);
    RG_DEF_METHOD(tree_to_widget_coords, 2);
#if GTK_CHECK_VERSION(2,12,0)
    RG_DEF_METHOD(convert_bin_window_to_tree_coords, 2);
    RG_DEF_METHOD(convert_bin_window_to_widget_coords, 2);
    RG_DEF_METHOD(convert_tree_to_bin_window_coords, 2);
    RG_DEF_METHOD(convert_tree_to_widget_coords, 2);
    RG_DEF_METHOD(convert_widget_to_bin_window_coords, 2);
    RG_DEF_METHOD(convert_widget_to_tree_coords, 2);
#endif
    RG_DEF_METHOD(enable_model_drag_dest, 2);
    RG_DEF_METHOD(enable_model_drag_source, 3);
    RG_DEF_METHOD(unset_rows_drag_source, 0);
    RG_DEF_METHOD(unset_rows_drag_dest, 0);
    RG_DEF_METHOD(set_drag_dest_row, 2);
    RG_DEF_METHOD(drag_dest_row, 0);
    RG_DEF_METHOD(get_dest_row_at_pos, 2);
    RG_DEF_ALIAS("get_dest_row", "get_dest_row_at_pos");
    RG_DEF_METHOD(create_row_drag_icon, 1);
    RG_DEF_METHOD(set_search_equal_func, 0);
    RG_DEF_METHOD(set_cursor_on_cell, 4);

    RG_DEF_METHOD(set_row_separator_func, 0);
    RG_DEF_METHOD(search_entry, 0);
    RG_DEF_METHOD(set_search_entry, 1);
    RG_DEF_METHOD(set_search_position_func, 0);

    /* Constants */
    G_DEF_CLASS(GTK_TYPE_TREE_VIEW_DROP_POSITION, "DropPosition", RG_TARGET_NAMESPACE);
    G_DEF_CONSTANTS(RG_TARGET_NAMESPACE, GTK_TYPE_TREE_VIEW_DROP_POSITION, "GTK_TREE_VIEW_");

    /* GtkTreeViewGridLines */
    G_DEF_CLASS(GTK_TYPE_TREE_VIEW_GRID_LINES, "GridLines", RG_TARGET_NAMESPACE);
    G_DEF_CONSTANTS(RG_TARGET_NAMESPACE, GTK_TYPE_TREE_VIEW_GRID_LINES, "GTK_TREE_VIEW_");

    /* Option Signals */
    G_DEF_SIGNAL_FUNC(RG_TARGET_NAMESPACE, "row-collapsed", (GValToRValSignalFunc)treeview_signal_func);
    G_DEF_SIGNAL_FUNC(RG_TARGET_NAMESPACE, "row-expanded", (GValToRValSignalFunc)treeview_signal_func);
    G_DEF_SIGNAL_FUNC(RG_TARGET_NAMESPACE, "test-collapse-row", (GValToRValSignalFunc)treeview_signal_func);
    G_DEF_SIGNAL_FUNC(RG_TARGET_NAMESPACE, "test-expand-row", (GValToRValSignalFunc)treeview_signal_func);
}