Author: abock
Date: 2006-05-25 11:57:02 -0400 (Thu, 25 May 2006)
New Revision: 61115

Modified:
   branches/abock/gstreamer-sharp/ChangeLog
   branches/abock/gstreamer-sharp/gstreamer-sharp/Bin.custom
   branches/abock/gstreamer-sharp/gstreamer-sharp/Gstreamer.metadata
   branches/abock/gstreamer-sharp/tests/BinTest.cs
Log:
2006-05-25  Aaron Bockover  <[EMAIL PROTECTED]>

    * gstreamer-sharp/Gstreamer.metadata: Hide the Children property and
    implement own version in Bin.custom to return an Element [] instead of
    a GLib.List

    * gstreamer-sharp/Bin.custom: Implement Bin.Children

    * tests/BinTest.cs: wrote a test for Bin.Children



Modified: branches/abock/gstreamer-sharp/ChangeLog
===================================================================
--- branches/abock/gstreamer-sharp/ChangeLog    2006-05-25 15:51:27 UTC (rev 
61114)
+++ branches/abock/gstreamer-sharp/ChangeLog    2006-05-25 15:57:02 UTC (rev 
61115)
@@ -1,5 +1,15 @@
 2006-05-25  Aaron Bockover  <[EMAIL PROTECTED]>
 
+       * gstreamer-sharp/Gstreamer.metadata: Hide the Children property and
+       implement own version in Bin.custom to return an Element [] instead of
+       a GLib.List
+
+       * gstreamer-sharp/Bin.custom: Implement Bin.Children
+
+       * tests/BinTest.cs: wrote a test for Bin.Children
+
+2006-05-25  Aaron Bockover  <[EMAIL PROTECTED]>
+
        * gstreamer-sharp-0.10.pc.in: link against proper assembly
 
 2006-05-21  Aaron Bockover  <[EMAIL PROTECTED]>

Modified: branches/abock/gstreamer-sharp/gstreamer-sharp/Bin.custom
===================================================================
--- branches/abock/gstreamer-sharp/gstreamer-sharp/Bin.custom   2006-05-25 
15:51:27 UTC (rev 61114)
+++ branches/abock/gstreamer-sharp/gstreamer-sharp/Bin.custom   2006-05-25 
15:57:02 UTC (rev 61115)
@@ -1,13 +1,10 @@
 
-    /*[DllImport ("gstreamersharpglue-0.10")]
+    [DllImport ("gstreamersharpglue-0.10")]
     private extern static uint gstsharp_gst_bin_get_children_offset();
 
-    static uint children_offset = gstsharp_gst_bin_get_children_offset();*/
+    static uint children_offset = gstsharp_gst_bin_get_children_offset();
 
-    /* TODO: This needs to be called 'Children' and the default version
-       needs to be hidden (see Gstreamer.metadata) */
-
-    public Element [] List {
+    public Element [] Children {
         get {
             GLib.List list;
             

Modified: branches/abock/gstreamer-sharp/gstreamer-sharp/Gstreamer.metadata
===================================================================
--- branches/abock/gstreamer-sharp/gstreamer-sharp/Gstreamer.metadata   
2006-05-25 15:51:27 UTC (rev 61114)
+++ branches/abock/gstreamer-sharp/gstreamer-sharp/Gstreamer.metadata   
2006-05-25 15:57:02 UTC (rev 61115)
@@ -3,10 +3,10 @@
   <attr path="/api/namespace/[EMAIL PROTECTED]'Bin']" 
name="disable_gtype_ctor">1</attr>
   <attr path="/api/namespace/[EMAIL PROTECTED]'Pipeline']" 
name="disable_gtype_ctor">1</attr>
 
-  <!-- TODO: Why doesn't this work? -->
-  <attr path="/api/namespace/[EMAIL PROTECTED]'Bin']/[EMAIL 
PROTECTED]'Children']" name="hidden">1</attr>
-  <attr path="/api/namespace/[EMAIL PROTECTED]'Bin']/[EMAIL 
PROTECTED]'ChildrenCount']" name="name">ChildCount</attr> 
-  
+
+  <attr path="/api/namespace/[EMAIL PROTECTED]'Bin']/[EMAIL 
PROTECTED]'Children']" name="hidden">1</attr>
+ 
+
   <attr path="/api/namespace/[EMAIL PROTECTED]'Element']/[EMAIL 
PROTECTED]'NoMorePads']" name="name">HasNoMorePads</attr>
   <!-- Hidden as the parameter name conflicts with generated code -->
   <attr path="/api/namespace/[EMAIL PROTECTED]'Element']/[EMAIL 
PROTECTED]'ContinueState']/parameters/[EMAIL PROTECTED]'ret']" 
name="name">state_change_ret</attr>

Modified: branches/abock/gstreamer-sharp/tests/BinTest.cs
===================================================================
--- branches/abock/gstreamer-sharp/tests/BinTest.cs     2006-05-25 15:51:27 UTC 
(rev 61114)
+++ branches/abock/gstreamer-sharp/tests/BinTest.cs     2006-05-25 15:57:02 UTC 
(rev 61115)
@@ -35,7 +35,7 @@
         Element e2 = ElementFactory.Make("fakesink", "fakesink");
         bin.AddMany(e1, e2);
         
-        Assert.AreEqual(bin.List.Length, 2);
+        Assert.AreEqual(bin.ChildrenCount, 2);
         
         e1.Dispose();
         e2.Dispose();
@@ -57,5 +57,31 @@
         e1.Dispose();
         bin.Dispose();
     }
+
+    [Test]
+    public void TestChildren()
+    {
+        Bin bin = new Bin("test-bin");
+
+        Element [] elements = new Element [] {
+            ElementFactory.Make("fakesrc", "fakesrc"),
+            ElementFactory.Make("audioconvert", "audioconvert"),
+            ElementFactory.Make("wavenc", "wavenc"),
+            ElementFactory.Make("fakesink", "fakesink")
+        };
+        
+        foreach(Element element in elements) {
+            bin.Add(element);
+        }
+      
+        Assert.AreEqual(elements.Length, bin.ChildrenCount);
+         Element [] children = bin.Children;
+     
+         for(int i = 0; i < elements.Length; i++) {
+            Assert.AreEqual(elements[i], children[i]);
+        }
+
+        bin.Dispose();
+    }
 }
 

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to