From: Juerg Billeter Date: Tue, 20 Nov 2007 21:24:46 +0000 (+0000) Subject: detect out parameters of value types, add support for array return types X-Git-Tag: VALA_0_1_5~32 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7d76cce9eff12bda38abff212a0ee9122e4d8247;p=platform%2Fupstream%2Fvala.git detect out parameters of value types, add support for array return types 2007-11-20 Juerg Billeter * vapigen/valagidlparser.vala: detect out parameters of value types, add support for array return types * vapi/packages/gtk+-2.0/gtk+-2.0.metadata: set is_array for return value of gtk_tree_path_get_indices * vapi/atk.vapi, vapi/gconf-2.0.vapi, vapi/gdk-2.0.vapi, vapi/gio-2.0.vapi, vapi/gtk+-2.0.vapi, vapi/pango.vapi: regenerated svn path=/trunk/; revision=689 --- diff --git a/ChangeLog b/ChangeLog index 64c17e2..d286d11 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2007-11-20 Jürg Billeter + + * vapigen/valagidlparser.vala: detect out parameters of value types, add + support for array return types + + * vapi/packages/gtk+-2.0/gtk+-2.0.metadata: set is_array for return + value of gtk_tree_path_get_indices + + * vapi/atk.vapi, vapi/gconf-2.0.vapi, vapi/gdk-2.0.vapi, + vapi/gio-2.0.vapi, vapi/gtk+-2.0.vapi, vapi/pango.vapi: regenerated + 2007-11-16 Jürg Billeter * tests/property-sample.vala: remove invalid property definitions diff --git a/vapi/atk.vapi b/vapi/atk.vapi index 1b99319..a6d5d65 100644 --- a/vapi/atk.vapi +++ b/vapi/atk.vapi @@ -578,7 +578,7 @@ namespace Atk { public static weak string attribute_get_name (Atk.TextAttribute attr); public static weak string attribute_get_value (Atk.TextAttribute attr, int index_); public static Atk.TextAttribute attribute_register (string name); - public static void free_ranges (Atk.TextRange ranges); + public static void free_ranges (out Atk.TextRange ranges); public abstract weak Atk.TextRange get_bounded_ranges (Atk.TextRectangle rect, Atk.CoordType coord_type, Atk.TextClipType x_clip_type, Atk.TextClipType y_clip_type); public abstract int get_caret_offset (); public abstract unichar get_character_at_offset (int offset); diff --git a/vapi/gconf-2.0.vapi b/vapi/gconf-2.0.vapi index 708cfca..8339a14 100644 --- a/vapi/gconf-2.0.vapi +++ b/vapi/gconf-2.0.vapi @@ -198,7 +198,7 @@ namespace GConf { } [CCode (ref_function = "gconf_change_set_ref", unref_function = "gconf_change_set_unref", cheader_filename = "gconf/gconf.h")] public class ChangeSet : GLib.Boxed { - public bool check_value (string key, GConf.Value value_retloc); + public bool check_value (string key, out GConf.Value value_retloc); public void clear (); public void @foreach (GConf.ChangeSetForeachFunc func, pointer user_data); public pointer get_user_data (); diff --git a/vapi/gdk-2.0.vapi b/vapi/gdk-2.0.vapi index 5c39667..fa59e45 100644 --- a/vapi/gdk-2.0.vapi +++ b/vapi/gdk-2.0.vapi @@ -1175,7 +1175,7 @@ namespace Gdk { public void get_maximal_cursor_size (uint width, uint height); public virtual int get_n_screens (); public weak string get_name (); - public void get_pointer (Gdk.Screen screen, int x, int y, Gdk.ModifierType mask); + public void get_pointer (out Gdk.Screen screen, int x, int y, Gdk.ModifierType mask); public virtual weak Gdk.Screen get_screen (int screen_num); public weak Gdk.Window get_window_at_pointer (int win_x, int win_y); public void keyboard_ungrab (uint time_); @@ -1312,7 +1312,7 @@ namespace Gdk { public weak Gdk.Display display; public static weak Gdk.Keymap get_default (); public Pango.Direction get_direction (); - public bool get_entries_for_keycode (uint hardware_keycode, Gdk.KeymapKey keys, uint keyvals, int n_entries); + public bool get_entries_for_keycode (uint hardware_keycode, out Gdk.KeymapKey keys, uint keyvals, int n_entries); [NoArrayLength] public bool get_entries_for_keyval (uint keyval, Gdk.KeymapKey[] keys, int n_keys); public static weak Gdk.Keymap get_for_display (Gdk.Display display); @@ -1371,8 +1371,8 @@ namespace Gdk { public Pixbuf.from_xpm_data (string[] data); public Pixbuf.subpixbuf (Gdk.Pixbuf src_pixbuf, int src_x, int src_y, int width, int height); public weak Gdk.Pixbuf @ref (); - public void render_pixmap_and_mask (Gdk.Pixmap pixmap_return, Gdk.Bitmap mask_return, int alpha_threshold); - public void render_pixmap_and_mask_for_colormap (Gdk.Colormap colormap, Gdk.Pixmap pixmap_return, Gdk.Bitmap mask_return, int alpha_threshold); + public void render_pixmap_and_mask (out Gdk.Pixmap pixmap_return, out Gdk.Bitmap mask_return, int alpha_threshold); + public void render_pixmap_and_mask_for_colormap (Gdk.Colormap colormap, out Gdk.Pixmap pixmap_return, out Gdk.Bitmap mask_return, int alpha_threshold); public void render_threshold_alpha (Gdk.Bitmap bitmap, int src_x, int src_y, int dest_x, int dest_y, int width, int height, int alpha_threshold); public void render_to_drawable (Gdk.Drawable drawable, Gdk.GC gc, int src_x, int src_y, int dest_x, int dest_y, int width, int height, Gdk.RgbDither dither, int x_dither, int y_dither); public void render_to_drawable_alpha (Gdk.Drawable drawable, int src_x, int src_y, int dest_x, int dest_y, int width, int height, Gdk.PixbufAlphaMode alpha_mode, int alpha_threshold, Gdk.RgbDither dither, int x_dither, int y_dither); @@ -1451,11 +1451,11 @@ namespace Gdk { } [CCode (cheader_filename = "gdk/gdk.h")] public class Pixmap : Gdk.Drawable { - public static weak Gdk.Pixmap colormap_create_from_xpm (Gdk.Drawable drawable, Gdk.Colormap colormap, Gdk.Bitmap mask, out Gdk.Color transparent_color, string filename); - public static weak Gdk.Pixmap colormap_create_from_xpm_d (Gdk.Drawable drawable, Gdk.Colormap colormap, Gdk.Bitmap mask, out Gdk.Color transparent_color, string data); + public static weak Gdk.Pixmap colormap_create_from_xpm (Gdk.Drawable drawable, Gdk.Colormap colormap, out Gdk.Bitmap mask, out Gdk.Color transparent_color, string filename); + public static weak Gdk.Pixmap colormap_create_from_xpm_d (Gdk.Drawable drawable, Gdk.Colormap colormap, out Gdk.Bitmap mask, out Gdk.Color transparent_color, string data); public static weak Gdk.Pixmap create_from_data (Gdk.Drawable drawable, string data, int width, int height, int depth, out Gdk.Color fg, out Gdk.Color bg); - public static weak Gdk.Pixmap create_from_xpm (Gdk.Drawable drawable, Gdk.Bitmap mask, out Gdk.Color transparent_color, string filename); - public static weak Gdk.Pixmap create_from_xpm_d (Gdk.Drawable drawable, Gdk.Bitmap mask, out Gdk.Color transparent_color, string data); + public static weak Gdk.Pixmap create_from_xpm (Gdk.Drawable drawable, out Gdk.Bitmap mask, out Gdk.Color transparent_color, string filename); + public static weak Gdk.Pixmap create_from_xpm_d (Gdk.Drawable drawable, out Gdk.Bitmap mask, out Gdk.Color transparent_color, string data); public static weak Gdk.Pixmap foreign_new (pointer anid); public static weak Gdk.Pixmap foreign_new_for_display (Gdk.Display display, pointer anid); public static weak Gdk.Pixmap foreign_new_for_screen (Gdk.Screen screen, pointer anid, int width, int height, int depth); @@ -1566,7 +1566,7 @@ namespace Gdk { public void get_frame_extents (out Gdk.Rectangle rect); public void get_geometry (int x, int y, int width, int height, int depth); public weak Gdk.Window get_group (); - public void get_internal_paint_info (Gdk.Drawable real_drawable, int x_offset, int y_offset); + public void get_internal_paint_info (out Gdk.Drawable real_drawable, int x_offset, int y_offset); public int get_origin (int x, int y); public weak Gdk.Window get_parent (); public weak Gdk.Window get_pointer (int x, int y, Gdk.ModifierType mask); @@ -1741,8 +1741,8 @@ namespace Gdk { public static weak Gdk.DragContext drag_begin (Gdk.Window window, GLib.List targets); public static void drag_drop (Gdk.DragContext context, uint time_); public static bool drag_drop_succeeded (Gdk.DragContext context); - public static void drag_find_window (Gdk.DragContext context, Gdk.Window drag_window, int x_root, int y_root, Gdk.Window dest_window, Gdk.DragProtocol protocol); - public static void drag_find_window_for_screen (Gdk.DragContext context, Gdk.Window drag_window, Gdk.Screen screen, int x_root, int y_root, Gdk.Window dest_window, Gdk.DragProtocol protocol); + public static void drag_find_window (Gdk.DragContext context, Gdk.Window drag_window, int x_root, int y_root, out Gdk.Window dest_window, Gdk.DragProtocol protocol); + public static void drag_find_window_for_screen (Gdk.DragContext context, Gdk.Window drag_window, Gdk.Screen screen, int x_root, int y_root, out Gdk.Window dest_window, Gdk.DragProtocol protocol); public static uint drag_get_protocol (uint xid, Gdk.DragProtocol protocol); public static uint drag_get_protocol_for_display (Gdk.Display display, uint xid, Gdk.DragProtocol protocol); public static Gdk.Atom drag_get_selection (Gdk.DragContext context); @@ -1807,7 +1807,7 @@ namespace Gdk { public static void input_remove (int tag); public static void input_set_extension_events (Gdk.Window window, int mask, Gdk.ExtensionMode mode); public static Gdk.GrabStatus keyboard_grab (Gdk.Window window, bool owner_events, uint time_); - public static bool keyboard_grab_info_libgtk_only (Gdk.Display display, Gdk.Window grab_window, bool owner_events); + public static bool keyboard_grab_info_libgtk_only (Gdk.Display display, out Gdk.Window grab_window, bool owner_events); public static void keyboard_ungrab (uint time_); public static void keyval_convert_case (uint symbol, uint lower, uint upper); public static uint keyval_from_name (string keyval_name); @@ -1828,7 +1828,7 @@ namespace Gdk { public static weak Gdk.Region pango_layout_line_get_clip_region (Pango.LayoutLine line, int x_origin, int y_origin, int index_ranges, int n_ranges); public static void parse_args (int argc, string argv); public static Gdk.GrabStatus pointer_grab (Gdk.Window window, bool owner_events, Gdk.EventMask event_mask, Gdk.Window confine_to, Gdk.Cursor cursor, uint time_); - public static bool pointer_grab_info_libgtk_only (Gdk.Display display, Gdk.Window grab_window, bool owner_events); + public static bool pointer_grab_info_libgtk_only (Gdk.Display display, out Gdk.Window grab_window, bool owner_events); public static bool pointer_is_grabbed (); public static void pointer_ungrab (uint time_); public static void pre_parse_libgtk_only (); @@ -1838,7 +1838,7 @@ namespace Gdk { [NoArrayLength] public static bool property_get (Gdk.Window window, Gdk.Atom property, Gdk.Atom type, ulong offset, ulong length, int pdelete, out Gdk.Atom actual_property_type, int actual_format, int actual_length, uchar[] data); public static void query_depths (int depths, int count); - public static void query_visual_types (Gdk.VisualType visual_types, int count); + public static void query_visual_types (out Gdk.VisualType visual_types, int count); public static bool rgb_colormap_ditherable (Gdk.Colormap cmap); public static bool rgb_ditherable (); public static void rgb_find_color (Gdk.Colormap colormap, out Gdk.Color color); diff --git a/vapi/gio-2.0.vapi b/vapi/gio-2.0.vapi index 1c6c978..f1c8393 100644 --- a/vapi/gio-2.0.vapi +++ b/vapi/gio-2.0.vapi @@ -668,7 +668,7 @@ namespace GLib { public bool set_attribute_uint32 (string attribute, uint value, GLib.FileQueryInfoFlags flags, GLib.Cancellable cancellable) throws GLib.Error; public bool set_attribute_uint64 (string attribute, uint64 value, GLib.FileQueryInfoFlags flags, GLib.Cancellable cancellable) throws GLib.Error; public abstract void set_attributes_async (GLib.FileInfo info, GLib.FileQueryInfoFlags flags, int io_priority, GLib.Cancellable cancellable, GLib.AsyncReadyCallback callback, pointer user_data); - public abstract bool set_attributes_finish (GLib.AsyncResult result, GLib.FileInfo info) throws GLib.Error; + public abstract bool set_attributes_finish (GLib.AsyncResult result, out GLib.FileInfo info) throws GLib.Error; public abstract bool set_attributes_from_info (GLib.FileInfo info, GLib.FileQueryInfoFlags flags, GLib.Cancellable cancellable) throws GLib.Error; public abstract weak GLib.File set_display_name (string display_name, GLib.Cancellable cancellable) throws GLib.Error; public abstract void set_display_name_async (string display_name, int io_priority, GLib.Cancellable cancellable, GLib.AsyncReadyCallback callback, pointer user_data); diff --git a/vapi/gtk+-2.0.vapi b/vapi/gtk+-2.0.vapi index 47cdb8b..45140d7 100644 --- a/vapi/gtk+-2.0.vapi +++ b/vapi/gtk+-2.0.vapi @@ -953,7 +953,7 @@ namespace Gtk { public void class_path (uint path_length, string path, string path_reversed); public weak Pango.Context create_pango_context (); public weak Pango.Layout create_pango_layout (string text); - public void destroyed (Gtk.Widget widget_pointer); + public void destroyed (out Gtk.Widget widget_pointer); public void draw (out Gdk.Rectangle area); public void ensure_style (); public void error_bell (); @@ -1309,8 +1309,8 @@ namespace Gtk { public weak GLib.List list; public static weak Gtk.Style get_cell_style (Gtk.CTree ctree, Gtk.CTreeNode node, int column); public static Gtk.CellType get_cell_type (Gtk.CTree ctree, Gtk.CTreeNode node, int column); - public static bool get_pixmap (Gtk.CTree ctree, Gtk.CTreeNode node, int column, Gdk.Pixmap pixmap, Gdk.Bitmap mask); - public static bool get_pixtext (Gtk.CTree ctree, Gtk.CTreeNode node, int column, string text, uchar spacing, Gdk.Pixmap pixmap, Gdk.Bitmap mask); + public static bool get_pixmap (Gtk.CTree ctree, Gtk.CTreeNode node, int column, out Gdk.Pixmap pixmap, out Gdk.Bitmap mask); + public static bool get_pixtext (Gtk.CTree ctree, Gtk.CTreeNode node, int column, string text, uchar spacing, out Gdk.Pixmap pixmap, out Gdk.Bitmap mask); public static pointer get_row_data (Gtk.CTree ctree, Gtk.CTreeNode node); public static weak Gtk.Style get_row_style (Gtk.CTree ctree, Gtk.CTreeNode node); public static bool get_selectable (Gtk.CTree ctree, Gtk.CTreeNode node); @@ -1866,7 +1866,8 @@ namespace Gtk { public weak Gtk.TreePath copy (); public void down (); public int get_depth (); - public int get_indices (); + [NoArrayLength] + public weak int[] get_indices (); public bool is_ancestor (Gtk.TreePath descendant); public bool is_descendant (Gtk.TreePath ancestor); public TreePath (); @@ -2360,8 +2361,8 @@ namespace Gtk { public weak string get_column_title (int column); public weak Gtk.Widget get_column_widget (int column); public weak Gtk.Adjustment get_hadjustment (); - public int get_pixmap (int row, int column, Gdk.Pixmap pixmap, Gdk.Bitmap mask); - public int get_pixtext (int row, int column, string text, uchar spacing, Gdk.Pixmap pixmap, Gdk.Bitmap mask); + public int get_pixmap (int row, int column, out Gdk.Pixmap pixmap, out Gdk.Bitmap mask); + public int get_pixtext (int row, int column, string text, uchar spacing, out Gdk.Pixmap pixmap, out Gdk.Bitmap mask); public pointer get_row_data (int row); public weak Gtk.Style get_row_style (int row); public bool get_selectable (int row); @@ -2471,7 +2472,7 @@ namespace Gtk { public weak Gtk.CTreeNode find_by_row_data (Gtk.CTreeNode node, pointer data); public weak Gtk.CTreeNode find_by_row_data_custom (Gtk.CTreeNode node, pointer data, GLib.CompareFunc func); public weak Gtk.CTreeNode find_node_ptr (Gtk.CTreeRow ctree_row); - public bool get_node_info (Gtk.CTreeNode node, string text, uchar spacing, Gdk.Pixmap pixmap_closed, Gdk.Bitmap mask_closed, Gdk.Pixmap pixmap_opened, Gdk.Bitmap mask_opened, bool is_leaf, bool expanded); + public bool get_node_info (Gtk.CTreeNode node, string text, uchar spacing, out Gdk.Pixmap pixmap_closed, out Gdk.Bitmap mask_closed, out Gdk.Pixmap pixmap_opened, out Gdk.Bitmap mask_opened, bool is_leaf, bool expanded); public weak Gtk.CTreeNode insert_gnode (Gtk.CTreeNode parent, Gtk.CTreeNode sibling, GLib.Node gnode, Gtk.CTreeGNodeFunc func, pointer data); [NoArrayLength] public weak Gtk.CTreeNode insert_node (Gtk.CTreeNode parent, Gtk.CTreeNode sibling, string[] text, uchar spacing, Gdk.Pixmap pixmap_closed, Gdk.Bitmap mask_closed, Gdk.Pixmap pixmap_opened, Gdk.Bitmap mask_opened, bool is_leaf, bool expanded); @@ -3572,7 +3573,7 @@ namespace Gtk { public virtual bool filter_keypress (Gdk.EventKey event); public virtual void focus_in (); public virtual void focus_out (); - public virtual void get_preedit_string (string str, Pango.AttrList attrs, int cursor_pos); + public virtual void get_preedit_string (string str, out Pango.AttrList attrs, int cursor_pos); public virtual bool get_surrounding (string text, int cursor_index); public virtual void reset (); public virtual void set_client_window (Gdk.Window window); @@ -3651,10 +3652,10 @@ namespace Gtk { public void enable_model_drag_source (Gdk.ModifierType start_button_mask, Gtk.TargetEntry[] targets, int n_targets, Gdk.DragAction actions); public int get_column_spacing (); public int get_columns (); - public bool get_cursor (Gtk.TreePath path, Gtk.CellRenderer cell); - public bool get_dest_item_at_pos (int drag_x, int drag_y, Gtk.TreePath path, Gtk.IconViewDropPosition pos); - public void get_drag_dest_item (Gtk.TreePath path, Gtk.IconViewDropPosition pos); - public bool get_item_at_pos (int x, int y, Gtk.TreePath path, Gtk.CellRenderer cell); + public bool get_cursor (out Gtk.TreePath path, out Gtk.CellRenderer cell); + public bool get_dest_item_at_pos (int drag_x, int drag_y, out Gtk.TreePath path, Gtk.IconViewDropPosition pos); + public void get_drag_dest_item (out Gtk.TreePath path, Gtk.IconViewDropPosition pos); + public bool get_item_at_pos (int x, int y, out Gtk.TreePath path, out Gtk.CellRenderer cell); public int get_item_width (); public int get_margin (); public int get_markup_column (); @@ -3669,8 +3670,8 @@ namespace Gtk { public int get_spacing (); public int get_text_column (); public int get_tooltip_column (); - public bool get_tooltip_context (int x, int y, bool keyboard_tip, Gtk.TreeModel model, Gtk.TreePath path, out Gtk.TreeIter iter); - public bool get_visible_range (Gtk.TreePath start_path, Gtk.TreePath end_path); + public bool get_tooltip_context (int x, int y, bool keyboard_tip, out Gtk.TreeModel model, out Gtk.TreePath path, out Gtk.TreeIter iter); + public bool get_visible_range (out Gtk.TreePath start_path, out Gtk.TreePath end_path); public IconView (); public IconView.with_model (Gtk.TreeModel model); public bool path_is_selected (Gtk.TreePath path); @@ -3726,14 +3727,14 @@ namespace Gtk { [CCode (cheader_filename = "gtk/gtk.h")] public class Image : Gtk.Misc, Atk.Implementor, Gtk.Buildable { public void clear (); - public void get (Gdk.Image val, Gdk.Bitmap mask); + public void get (out Gdk.Image val, out Gdk.Bitmap mask); public weak Gdk.PixbufAnimation get_animation (); public void get_icon_name (string icon_name, Gtk.IconSize size); - public void get_icon_set (Gtk.IconSet icon_set, Gtk.IconSize size); - public void get_image (Gdk.Image gdk_image, Gdk.Bitmap mask); + public void get_icon_set (out Gtk.IconSet icon_set, Gtk.IconSize size); + public void get_image (out Gdk.Image gdk_image, out Gdk.Bitmap mask); public weak Gdk.Pixbuf get_pixbuf (); public int get_pixel_size (); - public void get_pixmap (Gdk.Pixmap pixmap, Gdk.Bitmap mask); + public void get_pixmap (out Gdk.Pixmap pixmap, out Gdk.Bitmap mask); public void get_stock (string stock_id, Gtk.IconSize size); public Gtk.ImageType get_storage_type (); public Image (); @@ -4501,7 +4502,7 @@ namespace Gtk { public weak Gdk.Bitmap mask; public weak Gdk.Pixmap pixmap_insensitive; public uint build_insensitive; - public void get (Gdk.Pixmap val, Gdk.Bitmap mask); + public void get (out Gdk.Pixmap val, out Gdk.Bitmap mask); public Pixmap (Gdk.Pixmap pixmap, Gdk.Bitmap mask); public void set (Gdk.Pixmap val, Gdk.Bitmap mask); public void set_build_insensitive (bool build); @@ -5262,7 +5263,7 @@ namespace Gtk { [CCode (cheader_filename = "gtk/gtk.h")] public class StatusIcon : GLib.Object { public bool get_blinking (); - public bool get_geometry (Gdk.Screen screen, out Gdk.Rectangle area, Gtk.Orientation orientation); + public bool get_geometry (out Gdk.Screen screen, out Gdk.Rectangle area, Gtk.Orientation orientation); public weak string get_icon_name (); public weak Gdk.Pixbuf get_pixbuf (); public weak Gdk.Screen get_screen (); @@ -6020,7 +6021,7 @@ namespace Gtk { public void disable (); public void enable (); public void force_window (); - public static bool get_info_from_tip_window (Gtk.Window tip_window, Gtk.Tooltips tooltips, Gtk.Widget current_widget); + public static bool get_info_from_tip_window (Gtk.Window tip_window, out Gtk.Tooltips tooltips, out Gtk.Widget current_widget); public Tooltips (); public void set_delay (uint delay); public void set_tip (Gtk.Widget widget, string tip_text, string tip_private); @@ -6083,8 +6084,8 @@ namespace Gtk { public Gtk.DestroyNotify destroy; public int count_selected_rows (); public Gtk.SelectionMode get_mode (); - public bool get_selected (Gtk.TreeModel model, out Gtk.TreeIter iter); - public weak GLib.List get_selected_rows (Gtk.TreeModel model); + public bool get_selected (out Gtk.TreeModel model, out Gtk.TreeIter iter); + public weak GLib.List get_selected_rows (out Gtk.TreeModel model); public weak Gtk.TreeView get_tree_view (); public pointer get_user_data (); public bool iter_is_selected (out Gtk.TreeIter iter); @@ -6172,9 +6173,9 @@ namespace Gtk { public void get_cell_area (Gtk.TreePath path, Gtk.TreeViewColumn column, out Gdk.Rectangle rect); public weak Gtk.TreeViewColumn get_column (int n); public weak GLib.List get_columns (); - public void get_cursor (Gtk.TreePath path, Gtk.TreeViewColumn focus_column); - public bool get_dest_row_at_pos (int drag_x, int drag_y, Gtk.TreePath path, Gtk.TreeViewDropPosition pos); - public void get_drag_dest_row (Gtk.TreePath path, Gtk.TreeViewDropPosition pos); + public void get_cursor (out Gtk.TreePath path, out Gtk.TreeViewColumn focus_column); + public bool get_dest_row_at_pos (int drag_x, int drag_y, out Gtk.TreePath path, Gtk.TreeViewDropPosition pos); + public void get_drag_dest_row (out Gtk.TreePath path, Gtk.TreeViewDropPosition pos); public bool get_enable_search (); public bool get_enable_tree_lines (); public weak Gtk.TreeViewColumn get_expander_column (); @@ -6187,7 +6188,7 @@ namespace Gtk { public bool get_hover_selection (); public int get_level_indentation (); public weak Gtk.TreeModel get_model (); - public bool get_path_at_pos (int x, int y, Gtk.TreePath path, Gtk.TreeViewColumn column, int cell_x, int cell_y); + public bool get_path_at_pos (int x, int y, out Gtk.TreePath path, out Gtk.TreeViewColumn column, int cell_x, int cell_y); public bool get_reorderable (); public Gtk.TreeViewRowSeparatorFunc get_row_separator_func (); public bool get_rubber_banding (); @@ -6199,9 +6200,9 @@ namespace Gtk { public weak Gtk.TreeSelection get_selection (); public bool get_show_expanders (); public int get_tooltip_column (); - public bool get_tooltip_context (int x, int y, bool keyboard_tip, Gtk.TreeModel model, Gtk.TreePath path, out Gtk.TreeIter iter); + public bool get_tooltip_context (int x, int y, bool keyboard_tip, out Gtk.TreeModel model, out Gtk.TreePath path, out Gtk.TreeIter iter); public weak Gtk.Adjustment get_vadjustment (); - public bool get_visible_range (Gtk.TreePath start_path, Gtk.TreePath end_path); + public bool get_visible_range (out Gtk.TreePath start_path, out Gtk.TreePath end_path); public void get_visible_rect (out Gdk.Rectangle visible_rect); public int insert_column (Gtk.TreeViewColumn column, int position); public int insert_column_with_attributes (int position, string title, Gtk.CellRenderer cell, ...); @@ -7467,6 +7468,6 @@ namespace Gtk { public static uint timeout_add (uint interval, Gtk.Function function, pointer data); public static uint timeout_add_full (uint interval, Gtk.Function function, Gtk.CallbackMarshal marshal, pointer data, Gtk.DestroyNotify destroy); public static void timeout_remove (uint timeout_handler_id); - public static bool tree_get_row_drag_data (Gtk.SelectionData selection_data, Gtk.TreeModel tree_model, Gtk.TreePath path); + public static bool tree_get_row_drag_data (Gtk.SelectionData selection_data, out Gtk.TreeModel tree_model, out Gtk.TreePath path); public static bool tree_set_row_drag_data (Gtk.SelectionData selection_data, Gtk.TreeModel tree_model, Gtk.TreePath path); } diff --git a/vapi/packages/gtk+-2.0/gtk+-2.0.metadata b/vapi/packages/gtk+-2.0/gtk+-2.0.metadata index 3106cf0..27c8758 100644 --- a/vapi/packages/gtk+-2.0/gtk+-2.0.metadata +++ b/vapi/packages/gtk+-2.0/gtk+-2.0.metadata @@ -124,6 +124,7 @@ GtkTreeModel::row_deleted has_emitter="1" GtkTreeModel::row_has_child_toggled has_emitter="1" GtkTreeModel::row_inserted has_emitter="1" GtkTreeModel::rows_reordered has_emitter="1" +gtk_tree_path_get_indices is_array="1" gtk_tree_path_new_from_indices sentinel="-1" GtkTreePath is_value_type="0" gtk_tree_store_new ellipsis="1" diff --git a/vapi/pango.vapi b/vapi/pango.vapi index ef5dcc0..ec557b9 100644 --- a/vapi/pango.vapi +++ b/vapi/pango.vapi @@ -267,7 +267,7 @@ namespace Pango { public weak Pango.AttrIterator copy (); public weak Pango.Attribute get (Pango.AttrType type); public weak GLib.SList get_attrs (); - public void get_font (Pango.FontDescription desc, Pango.Language language, GLib.SList extra_attrs); + public void get_font (Pango.FontDescription desc, out Pango.Language language, GLib.SList extra_attrs); public bool next (); public void range (int start, int end); } @@ -498,7 +498,7 @@ namespace Pango { public bool get_positions_in_pixels (); public int get_size (); public void get_tab (int tab_index, Pango.TabAlign alignment, int location); - public void get_tabs (Pango.TabAlign alignments, int locations); + public void get_tabs (out Pango.TabAlign alignments, int locations); public TabArray (int initial_size, bool positions_in_pixels); public TabArray.with_positions (int size, bool positions_in_pixels, Pango.TabAlign first_alignment, ...); public void resize (int new_size); @@ -743,7 +743,7 @@ namespace Pango { public static weak GLib.List itemize_with_base_dir (Pango.Context context, Pango.Direction base_dir, string text, int start_index, int length, Pango.AttrList attrs, Pango.AttrIterator cached_iter); public static uchar log2vis_get_embedding_levels (string text, int length, Pango.Direction pbase_dir); public static bool parse_enum (GLib.Type type, string str, int value, bool warn, out string possible_values); - public static bool parse_markup (string markup_text, int length, unichar accel_marker, Pango.AttrList attr_list, out string text, unichar accel_char) throws GLib.Error; + public static bool parse_markup (string markup_text, int length, unichar accel_marker, out Pango.AttrList attr_list, out string text, unichar accel_char) throws GLib.Error; public static bool parse_stretch (string str, Pango.Stretch stretch, bool warn); public static bool parse_style (string str, Pango.Style style, bool warn); public static bool parse_variant (string str, Pango.Variant variant, bool warn); diff --git a/vapigen/valagidlparser.vala b/vapigen/valagidlparser.vala index e6bb2cb..dff94e6 100644 --- a/vapigen/valagidlparser.vala +++ b/vapigen/valagidlparser.vala @@ -870,7 +870,11 @@ public class Vala.GIdlParser : CodeVisitor { } } else { parse_type_string (type, n); - if (type_node.is_pointer && is_value_type (n)) { + if (is_value_type (n)) { + if (type_node.is_pointer) { + type.is_out = true; + } + } else if (type_node.unparsed.has_suffix ("**")) { type.is_out = true; } } @@ -1050,6 +1054,11 @@ public class Vala.GIdlParser : CodeVisitor { } } else if (nv[0] == "sentinel") { m.sentinel = eval (nv[1]); + } else if (nv[0] == "is_array") { + if (eval (nv[1]) == "1") { + return_type.array_rank = 1; + return_type.is_out = false; + } } } }