]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
gdk-3.0: Fix gdk_window_destroy binding again
authorJürg Billeter <j@bitron.ch>
Thu, 23 Feb 2012 15:09:57 +0000 (16:09 +0100)
committerJürg Billeter <j@bitron.ch>
Thu, 23 Feb 2012 15:09:57 +0000 (16:09 +0100)
vala/valagirparser.vala
vapi/gdk-3.0.vapi
vapi/metadata/Gdk-3.0.metadata

index 1fc2185fa75d6a3eac56fe7b242b04d5bd00ad4b..530470cc58d6bdbcf34f65fbe1068dcbb08d737e 100644 (file)
@@ -69,7 +69,8 @@ public class Vala.GirParser : CodeVisitor {
                CLOSURE,
                CPREFIX,
                LOWER_CASE_CPREFIX,
-               ERRORDOMAIN;
+               ERRORDOMAIN,
+               DESTROYS_INSTANCE;
 
                public static ArgumentType? from_string (string name) {
                        var enum_class = (EnumClass) typeof(ArgumentType).class_ref ();
@@ -799,6 +800,9 @@ public class Vala.GirParser : CodeVisitor {
                                                }
                                        }
                                        if (!(m is CreationMethod)) {
+                                               if (metadata.has_argument (ArgumentType.DESTROYS_INSTANCE)) {
+                                                       m.set_attribute ("DestroysInstance", true);
+                                               }
                                                // merge custom vfunc
                                                if (metadata.has_argument (ArgumentType.VFUNC_NAME)) {
                                                        var vfunc = parent.lookup (metadata.get_string (ArgumentType.VFUNC_NAME));
index eb99918d7860b810f60aba6d370ff71d0649231c..3d708c99fa3dab52d1dc4ff1486ebbf7622f7372 100644 (file)
@@ -4864,6 +4864,7 @@ namespace Gdk {
                public void coords_to_parent (double x, double y, out double parent_x, out double parent_y);
                public Cairo.Surface create_similar_surface (Cairo.Content content, int width, int height);
                public void deiconify ();
+               [DestroysInstance]
                public void destroy ();
                public void enable_synchronized_configure ();
                public void end_paint ();
@@ -5732,6 +5733,12 @@ namespace Gdk {
        public delegate Gdk.FilterReturn FilterFunc (Gdk.XEvent xevent, Gdk.Event event);
        [CCode (cheader_filename = "gdk/gdk.h", instance_pos = 1.9)]
        public delegate bool WindowChildFunc (Gdk.Window window);
+       [CCode (cheader_filename = "gdk/gdk.h", cname = "GDK_BUTTON_MIDDLE")]
+       public const int BUTTON_MIDDLE;
+       [CCode (cheader_filename = "gdk/gdk.h", cname = "GDK_BUTTON_PRIMARY")]
+       public const int BUTTON_PRIMARY;
+       [CCode (cheader_filename = "gdk/gdk.h", cname = "GDK_BUTTON_SECONDARY")]
+       public const int BUTTON_SECONDARY;
        [CCode (cheader_filename = "gdk/gdk.h", cname = "GDK_CURRENT_TIME")]
        public const int CURRENT_TIME;
        [CCode (cheader_filename = "gdk/gdk.h", cname = "GDK_MAX_TIMECOORD_AXES")]
index febd44b93da5796747302bb6b4c9125925860394..c7368be470fa390b9699984cbd0f84dc8a6c448d 100644 (file)
@@ -48,6 +48,7 @@ Device
         .grab_info_libgtk_only skip
 Display.open_default_libgtk_only skip=false
 Window
+        .destroy destroys_instance
         .destroy_notify skip
 synthesize_window_state skip
 EventMotion