[cluttermm] Actor: Add content methods.



commit 8b2d2e4e291ccebb1d016524f731ebbe3f65a697
Author: Murray Cumming <murrayc murrayc com>
Date:   Wed Mar 26 21:10:31 2014 +0100

    Actor: Add content methods.
    
    * clutter/src/actor.[hg|ccg]: Add get/set_content(),
      get/set_content_gravity(), get/set_content_scaling_filters(),
      and get/set_content_repeat() and some relevant enums.
    * clutter/src/types.hg: Add an enum here.
    * codegen/m4/convert_clutter.m4: Mention the enums here.

 clutter/src/actor.ccg         |    1 +
 clutter/src/actor.hg          |   24 +++++++++++++++++++++++-
 clutter/src/types.hg          |    1 +
 codegen/m4/convert_clutter.m4 |    7 +++++++
 4 files changed, 32 insertions(+), 1 deletions(-)
---
diff --git a/clutter/src/actor.ccg b/clutter/src/actor.ccg
index b36d15b..77bb887 100644
--- a/clutter/src/actor.ccg
+++ b/clutter/src/actor.ccg
@@ -16,6 +16,7 @@
  */
 
 #include <cluttermm/layout-manager.h>
+#include <cluttermm/content.h>
 #include <clutter/clutter.h>
 #include <iterator>
 
diff --git a/clutter/src/actor.hg b/clutter/src/actor.hg
index cf6fc57..9118605 100644
--- a/clutter/src/actor.hg
+++ b/clutter/src/actor.hg
@@ -24,6 +24,7 @@
 #include <cluttermm/animation.h>
 #include <cluttermm/animatable.h>
 #include <cluttermm/color.h>
+//#include <cluttermm/content.h>
 #include <cluttermm/effect.h>
 //#include <cluttermm/layout-manager.h>
 #include <cluttermm/scriptable.h>
@@ -41,11 +42,14 @@ namespace Clutter
 {
 
 class Animation;
+class Content;
 class LayoutManager;
 
 _WRAP_ENUM(ActorAlign, ClutterActorAlign)
 _WRAP_ENUM(ActorFlags, ClutterActorFlags)
 _WRAP_ENUM(AllocationFlags, ClutterAllocationFlags)
+_WRAP_ENUM(ContentRepeat, ClutterContentRepeat)
+_WRAP_ENUM(ContentGravity, ClutterContentGravity)
 _WRAP_ENUM(Orientation, ClutterOrientation)
 
 //TODO: Write a version of the large description from here: 
http://clutter-project.org/docs/clutter/stable/ClutterActor.html#ClutterActor.description
@@ -92,7 +96,25 @@ public:
   _IGNORE(clutter_actor_queue_relayout) //not for application code.
   _IGNORE(clutter_actor_should_pick_paint ) //not for application code.
 
-  _WRAP_METHOD(bool has_overlaps(), clutter_actor_has_overlaps )
+  _WRAP_METHOD(bool has_overlaps(), clutter_actor_has_overlaps)
+
+  _WRAP_METHOD(void set_content(const Glib::RefPtr<Content>& content), clutter_actor_set_content)
+
+  _WRAP_METHOD(Glib::RefPtr<Content> get_content(), clutter_actor_get_content, refreturn)
+  _WRAP_METHOD(Glib::RefPtr<const Content> get_content() const, clutter_actor_get_content, refreturn, 
constversion)
+
+  _WRAP_METHOD(void set_content_gravity(ContentGravity gravity), clutter_actor_set_content_gravity)
+
+  _WRAP_METHOD(ContentGravity get_content_gravity() const, clutter_actor_get_content_gravity)
+
+  _WRAP_METHOD(void set_content_scaling_filters(ScalingFilter min_filter, ScalingFilter mag_filter), 
clutter_actor_set_content_scaling_filters)
+
+#m4 _CONVERSION(`ScalingFilter&', `ClutterScalingFilter*', `(($2)&($3))')
+  _WRAP_METHOD(void get_content_scaling_filters(ScalingFilter& min_filter, ScalingFilter& mag_filter), 
clutter_actor_get_content_scaling_filters)
+
+  _WRAP_METHOD(void set_content_repeat(ContentRepeat repeat), clutter_actor_set_content_repeat)
+  _WRAP_METHOD(ContentRepeat get_content_repeat() const, clutter_actor_get_content_repeat)
+
 
 #m4 dnl // Those are varargs convenience functions for C coders
   _IGNORE(clutter_actor_animate, clutter_actor_animate_with_alpha, clutter_actor_animate_with_timeline)
diff --git a/clutter/src/types.hg b/clutter/src/types.hg
index dcec94f..3f99a9f 100644
--- a/clutter/src/types.hg
+++ b/clutter/src/types.hg
@@ -45,6 +45,7 @@ _WRAP_ENUM(RotateAxis, ClutterRotateAxis)
 _WRAP_ENUM(Gravity, ClutterGravity)
 _WRAP_ENUM(RequestMode, ClutterRequestMode)
 _WRAP_ENUM(FontFlags, ClutterFontFlags)
+_WRAP_ENUM(ScalingFilter, ClutterScalingFilter)
 _WRAP_ENUM(TextDirection, ClutterTextDirection)
 
 class Vertex
diff --git a/codegen/m4/convert_clutter.m4 b/codegen/m4/convert_clutter.m4
index 955e156..1ab2519 100644
--- a/codegen/m4/convert_clutter.m4
+++ b/codegen/m4/convert_clutter.m4
@@ -45,6 +45,10 @@ _CONVERSION(`const Glib::RefPtr<Container>&',`ClutterContainer*',__CONVERT_REFPT
 _CONVERSION(`ClutterContainer*',`Glib::RefPtr<Container>',`Glib::wrap($3)')
 _CONVERSION(`ClutterContainer*',`Glib::RefPtr<const Container>',`Glib::wrap($3)')
 
+_CONVERSION(`const Glib::RefPtr<Content>&',`ClutterContent*',__CONVERT_REFPTR_TO_P)
+_CONVERSION(`ClutterContent*',`Glib::RefPtr<Content>',`Glib::wrap($3)')
+_CONVERSION(`ClutterContent*',`Glib::RefPtr<const Content>',`Glib::wrap($3)')
+
 _CONVERSION(`ClutterDeviceManager*',`Glib::RefPtr<DeviceManager>',`Glib::wrap($3)')
 
 _CONVERSION(`const Glib::RefPtr<Effect>&',`ClutterEffect*',__CONVERT_REFPTR_TO_P)
@@ -157,6 +161,8 @@ _CONV_ENUM(Clutter,AllocationFlags)
 _CONV_ENUM(Clutter,AnimationMode)
 _CONV_ENUM(Clutter,BinAlignment)
 _CONV_ENUM(Clutter,BoxAlignment)
+_CONV_ENUM(Clutter,ContentGravity)
+_CONV_ENUM(Clutter,ContentRepeat)
 _CONV_ENUM(Clutter,FlowOrientation)
 _CONV_ENUM(Clutter,Gravity)
 _CONV_ENUM(Clutter,InputDeviceType)
@@ -168,6 +174,7 @@ _CONV_ENUM(Clutter,PickMode)
 _CONV_ENUM(Clutter,RequestMode)
 _CONV_ENUM(Clutter,RotateAxis)
 _CONV_ENUM(Clutter,RotateDirection)
+_CONV_ENUM(Clutter,ScalingFilter)
 _CONV_ENUM(Clutter,ShaderType)
 _CONV_ENUM(Clutter,StaticColor)
 _CONV_ENUM(Clutter,TextDirection)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]