Permalink
Browse files

Working against 0.9 fully, various API fixups and additions

  • Loading branch information...
1 parent 3adc2bb commit 8f0f9768999513e5d1414f26e08b2b407b7a84cc @abock committed May 5, 2009
@@ -11,6 +11,43 @@
<member cname="CLUTTER_INIT_ERROR_LAST" name="Last" value="Internal" />
<member cname="CLUTTER_INIT_ERROR_GTK" name="Gtk" value="CLUTTER_INIT_ERROR_LAST - 1" />
</enum>
+ <interface name="Scrollable" cname="GtkClutterScrollable">
+ <property name="" cname="" type="ginterface" />
+ <property name="" cname="" type="ginterface" />
+ <virtual_method name="SetAdjustments" cname="set_adjustments">
+ <return-type type="void" />
+ <parameters>
+ <parameter type="GtkClutterScrollable*" name="scrollable" />
+ <parameter type="GtkAdjustment*" name="h_adjust" />
+ <parameter type="GtkAdjustment*" name="v_adjust" />
+ </parameters>
+ </virtual_method>
+ <virtual_method name="GetAdjustments" cname="get_adjustments">
+ <return-type type="void" />
+ <parameters>
+ <parameter type="GtkClutterScrollable*" name="scrollable" />
+ <parameter type="GtkAdjustment**" name="h_adjust" />
+ <parameter type="GtkAdjustment**" name="v_adjust" />
+ </parameters>
+ </virtual_method>
+ <method name="GetAdjustments" cname="gtk_clutter_scrollable_get_adjustments">
+ <return-type type="void" />
+ <parameters>
+ <parameter type="GtkAdjustment**" name="h_adjust" />
+ <parameter type="GtkAdjustment**" name="v_adjust" />
+ </parameters>
+ </method>
+ <method name="GetType" cname="gtk_clutter_scrollable_get_type" shared="true">
+ <return-type type="GType" />
+ </method>
+ <method name="SetAdjustments" cname="gtk_clutter_scrollable_set_adjustments">
+ <return-type type="void" />
+ <parameters>
+ <parameter type="GtkAdjustment*" name="h_adjust" />
+ <parameter type="GtkAdjustment*" name="v_adjust" />
+ </parameters>
+ </method>
+ </interface>
<object name="Embed" cname="GtkClutterEmbed" parent="GtkWidget">
<field name="Priv" cname="priv" type="GtkClutterEmbedPrivate*" />
<method name="GetStage" cname="gtk_clutter_embed_get_stage">
@@ -21,5 +58,31 @@
</method>
<constructor cname="gtk_clutter_embed_new" />
</object>
+ <object name="Viewport" cname="GtkClutterViewport" parent="ClutterActor">
+ <field name="Priv" cname="priv" type="GtkClutterViewportPrivate*" />
+ <property name="" cname="" type="class" />
+ <property name="" cname="" type="class" />
+ <implements>
+ <interface cname="ClutterContainer" />
+ <interface cname="GtkClutterScrollable" />
+ </implements>
+ <method name="GetOrigin" cname="gtk_clutter_viewport_get_origin">
+ <return-type type="void" />
+ <parameters>
+ <parameter type="gfloat*" name="x" />
+ <parameter type="gfloat*" name="y" />
+ <parameter type="gfloat*" name="z" />
+ </parameters>
+ </method>
+ <method name="GetType" cname="gtk_clutter_viewport_get_type" shared="true">
+ <return-type type="GType" />
+ </method>
+ <constructor cname="gtk_clutter_viewport_new">
+ <parameters>
+ <parameter type="GtkAdjustment*" name="h_adjust" />
+ <parameter type="GtkAdjustment*" name="v_adjust" />
+ </parameters>
+ </constructor>
+ </object>
</namespace>
</api>
@@ -2,7 +2,7 @@
<api filename="clutter-gtk-api.raw">
<library name="clutter-gtk">
<namespace name="Clutter">
- <dir>../../../clutter-gtk-0.8/clutter-gtk</dir>
+ <dir>../../clutter-gtk/clutter-gtk</dir>
</namespace>
</library>
</api>
@@ -1,5 +1,10 @@
<?xml version="1.0"?>
<metadata>
+ <attr path="/api/namespace/interface[@cname='ClutterContainer']/method[@name='AddActor']" name="name">Add</attr>
+ <attr path="/api/namespace/interface[@cname='ClutterContainer']/method[@name='RemoveActor']" name="name">Remove</attr>
+ <!-- ClutterEmbed -->
+ <attr path="/api/namespace/object[@cname='GtkClutterEmbed']/method[@cname='gtk_clutter_embed_get_stage']/return-type" name="type">ClutterStage*</attr>
+
<remove-node path="/api/namespace/enum[@cname='ClutterGtkInitError']"/>
<add-node path="/api/namespace">
<struct name="GtkUtil">
View
@@ -0,0 +1,123 @@
+//
+// Application.cs
+//
+// Author:
+// Aaron Bockover <abockover@novell.com>
+//
+// Copyright 2009 Aaron Bockover
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using System.Runtime.InteropServices;
+
+namespace Clutter
+{
+ public static class Application
+ {
+ private class ClutterInitException : ApplicationException
+ {
+ private InitError clutter_error;
+
+ public ClutterInitException (InitError error)
+ : base (String.Format ("Error from clutter_init error: {0}", error))
+ {
+ clutter_error = error;
+ }
+
+ public InitError ClutterError {
+ get { return clutter_error; }
+ }
+ }
+
+ [DllImport ("clutter")]
+ private static extern void clutter_main ();
+
+ public static void Run ()
+ {
+ clutter_main ();
+ }
+
+ [DllImport ("clutter")]
+ private static extern void clutter_main_quit ();
+
+ public static void Quit ()
+ {
+ clutter_main_quit ();
+ }
+
+ [DllImport ("clutter")]
+ private static extern InitError clutter_init (IntPtr argc, IntPtr argv);
+
+ public static void Init ()
+ {
+ InitError error = clutter_init (IntPtr.Zero, IntPtr.Zero);
+ if (error != InitError.Success) {
+ throw new ClutterInitException (error);
+ }
+ }
+
+ public static void InitForToolkit ()
+ {
+ if (Environment.OSVersion.Platform == PlatformID.Unix) {
+ X11.SetDisplay (Gdk.Display.Default);
+ X11.DisableEventRetrieval ();
+ } else {
+ Win32.DisableEventRetrieval ();
+ }
+
+ Init ();
+ }
+
+ public static class X11
+ {
+ [DllImport ("gdk-x11")]
+ private static extern IntPtr gdk_x11_display_get_xdisplay (IntPtr display);
+
+ [DllImport ("clutter")]
+ private static extern void clutter_x11_set_display (IntPtr xdisplay);
+
+ public static void SetDisplay (Gdk.Display display)
+ {
+ clutter_x11_set_display (display == null
+ ? IntPtr.Zero
+ : gdk_x11_display_get_xdisplay (display.Handle));
+ }
+
+ [DllImport ("clutter")]
+ private static extern void clutter_x11_disable_event_retrieval ();
+
+ public static void DisableEventRetrieval ()
+ {
+ clutter_x11_disable_event_retrieval ();
+ }
+ }
+
+ public static class Win32
+ {
+ [DllImport ("clutter")]
+ private static extern void clutter_win32_disable_event_retrieval ();
+
+ public static void DisableEventRetrieval ()
+ {
+ clutter_win32_disable_event_retrieval ();
+ }
+ }
+ }
+}
View
@@ -1,22 +0,0 @@
-
-using System;
-using System.Runtime.InteropServices;
-
-namespace Clutter {
- public class ClutterRun {
- [DllImport("clutter")]
- static extern void clutter_main();
-
- public static void Main() {
- clutter_main();
- }
-
- [DllImport("clutter")]
- static extern InitError clutter_init (int argc, IntPtr argv);
-
- public static void Init( ) {
- clutter_init (0, IntPtr.Zero);
- }
-
- }
-}
View
@@ -1,6 +1,36 @@
- public Color (byte red, byte green, byte blue, byte alpha) {
- this.Red = red;
- this.Green = green;
- this.Blue = blue;
- this.Alpha = alpha;
- }
+public static Color Black = new Color (0, 0, 0);
+public static Color White = new Color (255, 255, 255);
+
+public Color (byte red, byte green, byte blue)
+ : this (red, green, blue, 255)
+{
+}
+
+public Color (double red, double green, double blue)
+ : this ((byte)(red * 255.0), (byte)(green * 255.0), (byte)(blue * 255.0))
+{
+}
+
+public Color (double red, double green, double blue, double alpha)
+ : this ((byte)(red * 255.0), (byte)(green * 255.0), (byte)(blue * 255.0), (byte)(alpha * 255.0))
+{
+}
+
+public Color (uint rgbaColor) : this (
+ (byte)(rgbaColor >> 24),
+ (byte)((rgbaColor >> 16) & 0xff),
+ (byte)((rgbaColor >> 8) & 0xff),
+ (byte)(rgbaColor & 0xff))
+{
+}
+
+public static Color FromRgb (uint rgbColor)
+{
+ return new Color ((rgbColor << 8) | 0xff);
+}
+
+public static Color FromRgba (uint rgbaColor)
+{
+ return new Color (rgbaColor);
+}
+
View
@@ -10,13 +10,13 @@ SYMBOLS = clutter-symbols.xml
TARGET = $(ASSEMBLY) $(ASSEMBLY).config
-custom_extradist= clutter-sharp.pc.in clutter-sharp.dll.config.in
-custom_api_includes=
-custom_references=
+custom_extradist = clutter-sharp.pc.in clutter-sharp.dll.config.in
+custom_api_includes =
+custom_references = -r:Mono.Cairo
sources = \
$(srcdir)/ButtonEvent.cs \
- $(srcdir)/ClutterRun.cs \
+ $(srcdir)/Application.cs \
$(srcdir)/CrossingEvent.cs \
$(srcdir)/Event.cs \
$(srcdir)/Idle.cs \
Oops, something went wrong.

0 comments on commit 8f0f976

Please sign in to comment.