actor.h

Go to the documentation of this file.
00001 // -*- c++ -*-
00002 // Generated by gtkmmproc -- DO NOT MODIFY!
00003 #ifndef _CLUTTERMM_ACTOR_H
00004 #define _CLUTTERMM_ACTOR_H
00005 
00006 
00007 #include <glibmm.h>
00008 
00009 /* Copyright (C) 2007 The cluttermm Development Team
00010  *
00011  * This library is free software; you can redistribute it and/or
00012  * modify it under the terms of the GNU Library General Public
00013  * License as published by the Free Software Foundation; either
00014  * version 2 of the License, or (at your option) any later version.
00015  *
00016  * This library is distributed in the hope that it will be useful,
00017  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00018  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00019  * Library General Public License for more details.
00020  *
00021  * You should have received a copy of the GNU Library General Public
00022  * License along with this library; if not, write to the Free
00023  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00024  */
00025 
00026 #include <glibmm/object.h>
00027 #include <cluttermm/color.h>
00028 #include <cluttermm/scriptable.h>
00029 #include <cluttermm/shader.h>
00030 #include <cluttermm/types.h> // For Event*
00031 #include <clutter/clutter-actor.h> // For ClutterActorBox
00032  
00033 
00034 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00035 typedef struct _ClutterActor ClutterActor;
00036 typedef struct _ClutterActorClass ClutterActorClass;
00037 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00038 
00039 
00040 namespace Clutter
00041 { class Actor_Class; } // namespace Clutter
00042 namespace Clutter
00043 {
00044 
00045 class ActorBox
00046 {
00047   public:
00048 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00049   typedef ActorBox CppObjectType;
00050   typedef ClutterActorBox BaseObjectType;
00051 
00052   static GType get_type() G_GNUC_CONST;
00053 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00054 
00055   ActorBox();
00056 
00057   explicit ActorBox(const ClutterActorBox* gobject); // always takes a copy
00058 
00060   ClutterActorBox*       gobj()       { return &gobject_; }
00061 
00063   const ClutterActorBox* gobj() const { return &gobject_; }
00064 
00065 protected:
00066   ClutterActorBox gobject_;
00067 
00068 private:
00069   
00070 public:
00071   ActorBox(Unit x1, Unit y1, Unit x2, Unit y2);
00072 
00073    Unit get_x1() const;
00074     void set_x1(const Unit& value);
00075     Unit get_y1() const;
00076     void set_y1(const Unit& value);
00077     Unit get_x2() const;
00078     void set_x2(const Unit& value);
00079     Unit get_y2() const;
00080     void set_y2(const Unit& value);
00081  
00082 
00083 };
00084 
00085 
00086 class Actor : public Glib::Object, public Scriptable
00087 {
00088   
00089 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00090 
00091 public:
00092   typedef Actor CppObjectType;
00093   typedef Actor_Class CppClassType;
00094   typedef ClutterActor BaseObjectType;
00095   typedef ClutterActorClass BaseClassType;
00096 
00097 private:  friend class Actor_Class;
00098   static CppClassType actor_class_;
00099 
00100 private:
00101   // noncopyable
00102   Actor(const Actor&);
00103   Actor& operator=(const Actor&);
00104 
00105 protected:
00106   explicit Actor(const Glib::ConstructParams& construct_params);
00107   explicit Actor(ClutterActor* castitem);
00108 
00109 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00110 
00111 public:
00112   virtual ~Actor();
00113 
00114 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00115   static GType get_type()      G_GNUC_CONST;
00116   static GType get_base_type() G_GNUC_CONST;
00117 #endif
00118 
00120   ClutterActor*       gobj()       { return reinterpret_cast<ClutterActor*>(gobject_); }
00121 
00123   const ClutterActor* gobj() const { return reinterpret_cast<ClutterActor*>(gobject_); }
00124 
00126   ClutterActor* gobj_copy();
00127 
00128 private:
00129 
00130   
00131 protected:
00132   Actor();
00133 
00134 public:
00135   //There is no create() because this is an abstract base class.
00136   //_WRAP_CREATE()
00137   
00138   
00148   void show();
00149   
00154   void show_all();
00155   
00165   void hide();
00166   
00171   void hide_all();
00172   
00176   void realize();
00177   
00181   void unrealize();
00182   
00188   void paint();
00189   
00197   void queue_redraw();
00198   
00207   void queue_relayout();
00208 
00209   //TODO: Check that we don't want to wrap this: _WRAP_METHOD(void destroy(), clutter_actor_destroy)
00210   //__IGNORE(clutter_actor_destroy)
00211 
00212   
00218   Glib::RefPtr<Actor> get_stage();
00219   
00225   Glib::RefPtr<const Actor> get_stage() const;
00226  
00227 
00234   void set_geometry(const Geometry& geometry);
00235   
00243   Geometry get_geometry() const;
00244   //_WRAP_METHOD(void get_coords(int *x_1, int *y_1, int *x_2, int *y_2) const, clutter_actor_get_coords)
00245   
00259   void set_size(int width, int height);
00260   
00271   void set_sizeu(Unit width, Unit height);
00272   
00285   void get_position(int& x, int& y);
00286   
00299   void get_positionu(Unit& x, Unit& y);
00300   
00309   void set_position(int x, int y);
00310   
00321   void set_positionu(Unit x, Unit y);
00322   //_WRAP_METHOD(void get_abs_position(int& x, int& y) const, clutter_actor_get_abs_position)
00323   
00342   guint get_width() const;
00343   
00364   Unit get_widthu() const;
00365   
00384   guint get_height() const;
00385   
00406   Unit get_heightu() const;
00407   
00415   void set_width(guint width);
00416   
00424   void set_widthu(Unit width);
00425   
00433   void set_height(guint height);
00434   
00442   void set_heightu(Unit height);
00443 
00444   
00452   void set_x(int x);
00453   
00461   void set_xu(Unit x);
00462   
00480   int get_x() const;
00481   
00501   Unit get_xu() const;
00502   
00510   void set_y(int y);
00511   
00519   void set_yu(Unit y);
00520   
00538   int get_y() const;
00539   
00559   Unit get_yu() const;
00560   
00566   void set_reactive(bool reactive = true);
00567   
00573   bool get_reactive() const;
00574 
00575   
00596   void set_rotation(RotateAxis axis, double angle, int x, int y, int z);
00597   
00609   void set_rotationx(RotateAxis axis, Fixed angle, int x, int y, int z);
00610   
00622   void set_rotationu(RotateAxis axis, double angle, Unit x, Unit y, Unit z);
00623   
00637   double get_rotation(RotateAxis axis, int& x, int& y, int& z) const;
00638   
00651   Fixed get_rotationx(RotateAxis axis, int& x, int& y, int& z) const;
00652   
00668   double get_rotationu(RotateAxis axis, Unit& x, Unit& y, Unit& z) const;
00669   
00674   void set_opacity (guint8 opacity);
00675   
00683   guint8 get_opacity() const;
00684   
00689   void set_name(const gchar           *name);
00690   
00695   Glib::ustring get_name() const;
00696   
00702   guint32 get_gid() const;
00703   
00712   void set_clip(int xoff, int yoff, int width, int height);
00713   
00722   void get_clip(int& xoff, int& yoff, int& width, int& height);
00723   
00736   void set_clipu(Unit xoff, Unit yoff, Unit width, Unit height);
00737   
00748   void get_clipu(Unit& xoff, Unit& yoff, Unit& width, Unit& height);
00749   
00752   void remove_clip();
00753   
00759   bool has_clip() const;
00760   
00768   void set_parent(const Glib::RefPtr<Actor>& parent);
00769   
00773   Glib::RefPtr<Actor> get_parent();
00774   
00778   Glib::RefPtr<const Actor> get_parent() const;
00779   
00787   void reparent(const Glib::RefPtr<Actor>& new_parent);
00788   
00795   void unparent();
00796   
00802   void raise(const Glib::RefPtr<Actor>& below);
00803   
00808   void lower(const Glib::RefPtr<Actor>& above);
00809   
00812   void raise_top ();
00813   
00816   void lower_bottom();
00817 
00818   
00825   Glib::RefPtr<Shader> get_shader();
00826   
00833   Glib::RefPtr<const Shader> get_shader() const;
00834   
00843   void set_shader(const Glib::RefPtr<Shader>& shader);
00844   
00852   void set_shader_param(const Glib::ustring& param, float value);
00853   //_WRAP_METHOD_DOCS_ONLY(clutter_actor_get_paint_area)
00854   //ActorBox get_paint_area() const;
00855   
00861   bool is_rotated() const;
00862   
00868   bool is_scaled() const;
00869   
00892   void get_allocation_vertices(Vertex vertices[4]) const;
00893   
00916   void get_allocation_vertices(const Glib::RefPtr<Actor>& ancestor, Vertex vertices[4]) const;
00917   
00933   void get_abs_allocation_vertices(Vertex vertices[4]) const;
00934   
00950   ActorBox get_allocation_box() const;
00951  
00952 
00968   void allocate(const ActorBox& box, bool absolute_origin_changed);
00969 
00970  
00986   void apply_relative_transform_to_point(const Glib::RefPtr<Actor>& ancestor, const Vertex& point, Vertex& vertex) const;
00987   
01010   void apply_relative_transform_to_point(const Vertex& point, Vertex& vertex) const;
01011 
01012   
01031   void get_preferred_size(Unit& min_width_p, Unit& min_height_p, Unit& natural_width_p, Unit& natural_height_p) const;
01032   
01049   void get_preferred_width(Unit for_height, Unit& min_width_p, Unit& natural_width_p) const;
01050   
01066   void get_preferred_height(Unit for_width, Unit& min_height_p, Unit& natural_height_p) const;
01067   
01079   guint8 get_paint_opacity() const;
01080   
01088   void move_anchor_point_from_gravity(Gravity gravity);
01089   
01098   void move_anchor_point(int anchor_x, int anchor_y);
01099   
01107   void move_anchor_pointu(Unit anchor_x, Unit anchor_y);
01108 
01109   
01116   bool get_fixed_position_set() const;
01117   
01124   void set_fixed_position_set(bool is_set);
01125   
01133   void get_transformed_position(int& x, int& y) const;
01134   
01142   void get_transformed_positionu(Unit& x, Unit& y) const;
01143   
01151   void get_transformed_size(guint& width, guint& height) const;
01152   
01170   void get_transformed_sizeu(Unit& width, Unit& height) const;
01171   
01187   void get_allocation_coords(int& x1, int& y1, int& x2, int& y2) const;
01188   
01202   Geometry get_allocation_geometry() const;
01203 
01204   
01209   void set_depth(int depth);
01210   
01215   void set_depthu(Unit depth);
01216   
01220   int get_depth() const;
01221   
01227   Unit get_depthu() const;
01228   
01236   void set_scalex(Fixed scale_x, Fixed scale_y);
01237   
01245   void set_scale(double scale_x, double scale_y);
01246   
01255   void get_scalex(Fixed& scale_x, Fixed& scale_y) const;
01256   
01263   void get_scale(double& scale_x, double& scale_y) const;
01264 
01265   //_WRAP_METHOD(void get_abs_size(guint& width, guint& height) const, clutter_actor_get_abs_size)
01266   
01281   void get_size(guint& width, guint& height) const;
01282   
01297   void get_sizeu(Unit& width, Unit& height) const;
01298   
01309   void move_by(int dx, int dy);
01310   
01321   void move_byu(Unit dx, Unit dy);
01322 
01323   
01332   void apply_transform_to_point(const Vertex& point, Vertex& vertex) const;
01333   
01358   void transform_stage_point(Unit x, Unit y, Unit& x_out, Unit& y_out) const;
01359 
01360   
01372   bool event(ClutterEvent* event, bool capture);
01373   
01381   static Glib::RefPtr<Actor> get_actor_by_gid(guint32 id);
01382 
01383   
01393   void set_anchor_point(int anchor_x, int anchor_y);
01394   
01401   void get_anchor_point(int& anchor_x, int& anchor_y) const;
01402   
01412   void set_anchor_pointu(Unit anchor_x, Unit anchor_y);
01413   
01420   void get_anchor_pointu(Unit& anchor_x, Unit& anchor_y);
01421   
01428   void set_anchor_point_from_gravity(ClutterGravity gravity);
01429 
01430 // signals
01431   
01437   Glib::SignalProxy1< bool,ButtonEvent* > signal_button_press_event();
01438 
01439   
01445   Glib::SignalProxy1< bool,ButtonEvent* > signal_button_release_event();
01446 
01447   
01453   Glib::SignalProxy1< bool,MotionEvent* > signal_motion_event();
01454 
01455   
01461   Glib::SignalProxy1< bool,CrossingEvent* > signal_leave_event();
01462 
01463   
01469   Glib::SignalProxy0< void > signal_show();
01470 
01471   
01477   Glib::SignalProxy0< void > signal_hide();
01478 
01479   
01485   Glib::SignalProxy0< void > signal_destroy();
01486 
01487   
01493   Glib::SignalProxy1< bool,KeyEvent* > signal_key_release_event();
01494 
01495   
01501   Glib::SignalProxy1< bool,CrossingEvent* > signal_enter_event();
01502 
01503   
01509   Glib::SignalProxy1< bool,Event* > signal_event();
01510 
01511   
01517   Glib::SignalProxy0< void > signal_focus_out();
01518 
01519   
01525   Glib::SignalProxy0< void > signal_focus_in();
01526 
01527    
01533   Glib::SignalProxy1< void,const Glib::RefPtr<Actor>& > signal_parent_set();
01534 
01535   
01541   Glib::SignalProxy1< bool,ScrollEvent* > signal_scroll_event();
01542 
01543   
01549   Glib::SignalProxy1< bool,KeyEvent* > signal_key_press_event();
01550 
01551   
01557   Glib::SignalProxy1< bool,Event* > signal_captured_event();
01558 
01559   
01565   Glib::SignalProxy0< void > signal_paint();
01566 
01567   
01573   Glib::SignalProxy0< void > signal_realize();
01574 
01575   
01581   Glib::SignalProxy0< void > signal_unrealize();
01582 
01583 
01584   #ifdef GLIBMM_PROPERTIES_ENABLED
01585 
01591   Glib::PropertyProxy_ReadOnly<ActorBox> property_allocation() const;
01592 #endif //#GLIBMM_PROPERTIES_ENABLED
01593 
01594 
01595   #ifdef GLIBMM_PROPERTIES_ENABLED
01596 
01602   Glib::PropertyProxy<int> property_anchor_x() ;
01603 #endif //#GLIBMM_PROPERTIES_ENABLED
01604 
01605 #ifdef GLIBMM_PROPERTIES_ENABLED
01606 
01612   Glib::PropertyProxy_ReadOnly<int> property_anchor_x() const;
01613 #endif //#GLIBMM_PROPERTIES_ENABLED
01614 
01615   #ifdef GLIBMM_PROPERTIES_ENABLED
01616 
01622   Glib::PropertyProxy<int> property_anchor_y() ;
01623 #endif //#GLIBMM_PROPERTIES_ENABLED
01624 
01625 #ifdef GLIBMM_PROPERTIES_ENABLED
01626 
01632   Glib::PropertyProxy_ReadOnly<int> property_anchor_y() const;
01633 #endif //#GLIBMM_PROPERTIES_ENABLED
01634 
01635   #ifdef GLIBMM_PROPERTIES_ENABLED
01636 
01642   Glib::PropertyProxy<Geometry> property_clip() ;
01643 #endif //#GLIBMM_PROPERTIES_ENABLED
01644 
01645 #ifdef GLIBMM_PROPERTIES_ENABLED
01646 
01652   Glib::PropertyProxy_ReadOnly<Geometry> property_clip() const;
01653 #endif //#GLIBMM_PROPERTIES_ENABLED
01654 
01655   #ifdef GLIBMM_PROPERTIES_ENABLED
01656 
01662   Glib::PropertyProxy<int> property_depth() ;
01663 #endif //#GLIBMM_PROPERTIES_ENABLED
01664 
01665 #ifdef GLIBMM_PROPERTIES_ENABLED
01666 
01672   Glib::PropertyProxy_ReadOnly<int> property_depth() const;
01673 #endif //#GLIBMM_PROPERTIES_ENABLED
01674 
01675   #ifdef GLIBMM_PROPERTIES_ENABLED
01676 
01682   Glib::PropertyProxy<bool> property_fixed_position_set() ;
01683 #endif //#GLIBMM_PROPERTIES_ENABLED
01684 
01685 #ifdef GLIBMM_PROPERTIES_ENABLED
01686 
01692   Glib::PropertyProxy_ReadOnly<bool> property_fixed_position_set() const;
01693 #endif //#GLIBMM_PROPERTIES_ENABLED
01694 
01695   #ifdef GLIBMM_PROPERTIES_ENABLED
01696 
01702   Glib::PropertyProxy<Unit> property_fixed_x() ;
01703 #endif //#GLIBMM_PROPERTIES_ENABLED
01704 
01705 #ifdef GLIBMM_PROPERTIES_ENABLED
01706 
01712   Glib::PropertyProxy_ReadOnly<Unit> property_fixed_x() const;
01713 #endif //#GLIBMM_PROPERTIES_ENABLED
01714 
01715   #ifdef GLIBMM_PROPERTIES_ENABLED
01716 
01722   Glib::PropertyProxy<Unit> property_fixed_y() ;
01723 #endif //#GLIBMM_PROPERTIES_ENABLED
01724 
01725 #ifdef GLIBMM_PROPERTIES_ENABLED
01726 
01732   Glib::PropertyProxy_ReadOnly<Unit> property_fixed_y() const;
01733 #endif //#GLIBMM_PROPERTIES_ENABLED
01734 
01735   #ifdef GLIBMM_PROPERTIES_ENABLED
01736 
01742   Glib::PropertyProxy_ReadOnly<bool> property_has_clip() const;
01743 #endif //#GLIBMM_PROPERTIES_ENABLED
01744 
01745 
01746   #ifdef GLIBMM_PROPERTIES_ENABLED
01747 
01753   Glib::PropertyProxy<int> property_height() ;
01754 #endif //#GLIBMM_PROPERTIES_ENABLED
01755 
01756 #ifdef GLIBMM_PROPERTIES_ENABLED
01757 
01763   Glib::PropertyProxy_ReadOnly<int> property_height() const;
01764 #endif //#GLIBMM_PROPERTIES_ENABLED
01765 
01766   #ifdef GLIBMM_PROPERTIES_ENABLED
01767 
01773   Glib::PropertyProxy<Unit> property_min_height() ;
01774 #endif //#GLIBMM_PROPERTIES_ENABLED
01775 
01776 #ifdef GLIBMM_PROPERTIES_ENABLED
01777 
01783   Glib::PropertyProxy_ReadOnly<Unit> property_min_height() const;
01784 #endif //#GLIBMM_PROPERTIES_ENABLED
01785 
01786   #ifdef GLIBMM_PROPERTIES_ENABLED
01787 
01793   Glib::PropertyProxy<bool> property_min_height_set() ;
01794 #endif //#GLIBMM_PROPERTIES_ENABLED
01795 
01796 #ifdef GLIBMM_PROPERTIES_ENABLED
01797 
01803   Glib::PropertyProxy_ReadOnly<bool> property_min_height_set() const;
01804 #endif //#GLIBMM_PROPERTIES_ENABLED
01805 
01806   #ifdef GLIBMM_PROPERTIES_ENABLED
01807 
01813   Glib::PropertyProxy<Unit> property_min_width() ;
01814 #endif //#GLIBMM_PROPERTIES_ENABLED
01815 
01816 #ifdef GLIBMM_PROPERTIES_ENABLED
01817 
01823   Glib::PropertyProxy_ReadOnly<Unit> property_min_width() const;
01824 #endif //#GLIBMM_PROPERTIES_ENABLED
01825 
01826   #ifdef GLIBMM_PROPERTIES_ENABLED
01827 
01833   Glib::PropertyProxy<bool> property_min_width_set() ;
01834 #endif //#GLIBMM_PROPERTIES_ENABLED
01835 
01836 #ifdef GLIBMM_PROPERTIES_ENABLED
01837 
01843   Glib::PropertyProxy_ReadOnly<bool> property_min_width_set() const;
01844 #endif //#GLIBMM_PROPERTIES_ENABLED
01845 
01846   #ifdef GLIBMM_PROPERTIES_ENABLED
01847 
01853   Glib::PropertyProxy<guint8> property_opacity() ;
01854 #endif //#GLIBMM_PROPERTIES_ENABLED
01855 
01856 #ifdef GLIBMM_PROPERTIES_ENABLED
01857 
01863   Glib::PropertyProxy_ReadOnly<guint8> property_opacity() const;
01864 #endif //#GLIBMM_PROPERTIES_ENABLED
01865 
01866   #ifdef GLIBMM_PROPERTIES_ENABLED
01867 
01873   Glib::PropertyProxy<bool> property_reactive() ;
01874 #endif //#GLIBMM_PROPERTIES_ENABLED
01875 
01876 #ifdef GLIBMM_PROPERTIES_ENABLED
01877 
01883   Glib::PropertyProxy_ReadOnly<bool> property_reactive() const;
01884 #endif //#GLIBMM_PROPERTIES_ENABLED
01885 
01886   #ifdef GLIBMM_PROPERTIES_ENABLED
01887 
01893   Glib::PropertyProxy<RequestMode> property_request_mode() ;
01894 #endif //#GLIBMM_PROPERTIES_ENABLED
01895 
01896 #ifdef GLIBMM_PROPERTIES_ENABLED
01897 
01903   Glib::PropertyProxy_ReadOnly<RequestMode> property_request_mode() const;
01904 #endif //#GLIBMM_PROPERTIES_ENABLED
01905 
01906   #ifdef GLIBMM_PROPERTIES_ENABLED
01907 
01913   Glib::PropertyProxy<double> property_rotation_angle_x() ;
01914 #endif //#GLIBMM_PROPERTIES_ENABLED
01915 
01916 #ifdef GLIBMM_PROPERTIES_ENABLED
01917 
01923   Glib::PropertyProxy_ReadOnly<double> property_rotation_angle_x() const;
01924 #endif //#GLIBMM_PROPERTIES_ENABLED
01925 
01926   #ifdef GLIBMM_PROPERTIES_ENABLED
01927 
01933   Glib::PropertyProxy<double> property_rotation_angle_y() ;
01934 #endif //#GLIBMM_PROPERTIES_ENABLED
01935 
01936 #ifdef GLIBMM_PROPERTIES_ENABLED
01937 
01943   Glib::PropertyProxy_ReadOnly<double> property_rotation_angle_y() const;
01944 #endif //#GLIBMM_PROPERTIES_ENABLED
01945 
01946   #ifdef GLIBMM_PROPERTIES_ENABLED
01947 
01953   Glib::PropertyProxy<double> property_rotation_angle_z() ;
01954 #endif //#GLIBMM_PROPERTIES_ENABLED
01955 
01956 #ifdef GLIBMM_PROPERTIES_ENABLED
01957 
01963   Glib::PropertyProxy_ReadOnly<double> property_rotation_angle_z() const;
01964 #endif //#GLIBMM_PROPERTIES_ENABLED
01965 
01966   #ifdef GLIBMM_PROPERTIES_ENABLED
01967 
01973   Glib::PropertyProxy<Vertex> property_rotation_center_x() ;
01974 #endif //#GLIBMM_PROPERTIES_ENABLED
01975 
01976 #ifdef GLIBMM_PROPERTIES_ENABLED
01977 
01983   Glib::PropertyProxy_ReadOnly<Vertex> property_rotation_center_x() const;
01984 #endif //#GLIBMM_PROPERTIES_ENABLED
01985 
01986   #ifdef GLIBMM_PROPERTIES_ENABLED
01987 
01993   Glib::PropertyProxy<Vertex> property_rotation_center_y() ;
01994 #endif //#GLIBMM_PROPERTIES_ENABLED
01995 
01996 #ifdef GLIBMM_PROPERTIES_ENABLED
01997 
02003   Glib::PropertyProxy_ReadOnly<Vertex> property_rotation_center_y() const;
02004 #endif //#GLIBMM_PROPERTIES_ENABLED
02005 
02006   #ifdef GLIBMM_PROPERTIES_ENABLED
02007 
02013   Glib::PropertyProxy<Vertex> property_rotation_center_z() ;
02014 #endif //#GLIBMM_PROPERTIES_ENABLED
02015 
02016 #ifdef GLIBMM_PROPERTIES_ENABLED
02017 
02023   Glib::PropertyProxy_ReadOnly<Vertex> property_rotation_center_z() const;
02024 #endif //#GLIBMM_PROPERTIES_ENABLED
02025 
02026   #ifdef GLIBMM_PROPERTIES_ENABLED
02027 
02033   Glib::PropertyProxy<double> property_scale_x() ;
02034 #endif //#GLIBMM_PROPERTIES_ENABLED
02035 
02036 #ifdef GLIBMM_PROPERTIES_ENABLED
02037 
02043   Glib::PropertyProxy_ReadOnly<double> property_scale_x() const;
02044 #endif //#GLIBMM_PROPERTIES_ENABLED
02045 
02046   #ifdef GLIBMM_PROPERTIES_ENABLED
02047 
02053   Glib::PropertyProxy<double> property_scale_y() ;
02054 #endif //#GLIBMM_PROPERTIES_ENABLED
02055 
02056 #ifdef GLIBMM_PROPERTIES_ENABLED
02057 
02063   Glib::PropertyProxy_ReadOnly<double> property_scale_y() const;
02064 #endif //#GLIBMM_PROPERTIES_ENABLED
02065 
02066   #ifdef GLIBMM_PROPERTIES_ENABLED
02067 
02073   Glib::PropertyProxy<bool> property_show_on_set_parent() ;
02074 #endif //#GLIBMM_PROPERTIES_ENABLED
02075 
02076 #ifdef GLIBMM_PROPERTIES_ENABLED
02077 
02083   Glib::PropertyProxy_ReadOnly<bool> property_show_on_set_parent() const;
02084 #endif //#GLIBMM_PROPERTIES_ENABLED
02085 
02086   #ifdef GLIBMM_PROPERTIES_ENABLED
02087 
02093   Glib::PropertyProxy<bool> property_visible() ;
02094 #endif //#GLIBMM_PROPERTIES_ENABLED
02095 
02096 #ifdef GLIBMM_PROPERTIES_ENABLED
02097 
02103   Glib::PropertyProxy_ReadOnly<bool> property_visible() const;
02104 #endif //#GLIBMM_PROPERTIES_ENABLED
02105 
02106   #ifdef GLIBMM_PROPERTIES_ENABLED
02107 
02113   Glib::PropertyProxy<int> property_width() ;
02114 #endif //#GLIBMM_PROPERTIES_ENABLED
02115 
02116 #ifdef GLIBMM_PROPERTIES_ENABLED
02117 
02123   Glib::PropertyProxy_ReadOnly<int> property_width() const;
02124 #endif //#GLIBMM_PROPERTIES_ENABLED
02125 
02126   #ifdef GLIBMM_PROPERTIES_ENABLED
02127 
02133   Glib::PropertyProxy<int> property_x() ;
02134 #endif //#GLIBMM_PROPERTIES_ENABLED
02135 
02136 #ifdef GLIBMM_PROPERTIES_ENABLED
02137 
02143   Glib::PropertyProxy_ReadOnly<int> property_x() const;
02144 #endif //#GLIBMM_PROPERTIES_ENABLED
02145 
02146   #ifdef GLIBMM_PROPERTIES_ENABLED
02147 
02153   Glib::PropertyProxy<int> property_y() ;
02154 #endif //#GLIBMM_PROPERTIES_ENABLED
02155 
02156 #ifdef GLIBMM_PROPERTIES_ENABLED
02157 
02163   Glib::PropertyProxy_ReadOnly<int> property_y() const;
02164 #endif //#GLIBMM_PROPERTIES_ENABLED
02165 
02166 
02167   protected:
02168   // according to the clutter docs, these functions should never be called
02169   // directly and are only for subclasses
02170   
02184   void pick(const Color& color);
02185   
02192   bool should_pick_paint() const;
02193 
02194   #ifdef GLIBMM_VFUNCS_ENABLED
02195   virtual void show_all_vfunc();
02196 #endif //GLIBMM_VFUNCS_ENABLED
02197 
02198   #ifdef GLIBMM_VFUNCS_ENABLED
02199   virtual void hide_all_vfunc();
02200 #endif //GLIBMM_VFUNCS_ENABLED
02201 
02202 
02203   // TODO: I think we need to hand-code the vfuncs if we need to handle
02204   // the ClutterUnit* being NULL.
02205    
02206 
02207   #ifdef GLIBMM_VFUNCS_ENABLED
02208   virtual void pick_vfunc(const Color& color);
02209 #endif //GLIBMM_VFUNCS_ENABLED
02210 
02211   #ifdef GLIBMM_VFUNCS_ENABLED
02212   virtual void get_preferred_width_vfunc(Unit for_height, Unit& min_width_p, Unit& natural_width_p) const;
02213 #endif //GLIBMM_VFUNCS_ENABLED
02214 
02215   #ifdef GLIBMM_VFUNCS_ENABLED
02216   virtual void get_preferred_height_vfunc(Unit for_width, Unit& min_height_p, Unit& natural_height_p) const;
02217 #endif //GLIBMM_VFUNCS_ENABLED
02218 
02219   #ifdef GLIBMM_VFUNCS_ENABLED
02220   virtual void allocate_vfunc(const ActorBox& box, bool absolute_origin_changed);
02221 #endif //GLIBMM_VFUNCS_ENABLED
02222 
02223 
02224 public:
02225 
02226 public:
02227   //C++ methods used to invoke GTK+ virtual functions:
02228 #ifdef GLIBMM_VFUNCS_ENABLED
02229 #endif //GLIBMM_VFUNCS_ENABLED
02230 
02231 protected:
02232   //GTK+ Virtual Functions (override these to change behaviour):
02233 #ifdef GLIBMM_VFUNCS_ENABLED
02234 #endif //GLIBMM_VFUNCS_ENABLED
02235 
02236   //Default Signal Handlers::
02237 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
02238   virtual bool on_button_press_event(ButtonEvent* event);
02239   virtual bool on_button_release_event(ButtonEvent* event);
02240   virtual bool on_motion_event(MotionEvent* event);
02241   virtual bool on_leave_event(CrossingEvent* event);
02242   virtual void on_show();
02243   virtual void on_hide();
02244   virtual void on_destroy();
02245   virtual bool on_key_release_event(KeyEvent* event);
02246   virtual bool on_enter_event(CrossingEvent* event);
02247   virtual bool on_event(Event* event);
02248   virtual void on_focus_out();
02249   virtual void on_focus_in();
02250   virtual void on_parent_set(const Glib::RefPtr<Actor>& old_parent);
02251   virtual bool on_scroll_event(ScrollEvent* event);
02252   virtual bool on_key_press_event(KeyEvent* event);
02253   virtual bool on_captured_event(Event* event);
02254   virtual void on_paint();
02255   virtual void on_realize();
02256   virtual void on_unrealize();
02257 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
02258 
02259 
02260 };
02261 
02262 } // namespace Clutter
02263 
02264 
02265 namespace Glib
02266 {
02267 
02272 Clutter::ActorBox& wrap(ClutterActorBox* object);
02273 
02278 const Clutter::ActorBox& wrap(const ClutterActorBox* object);
02279 
02280 #ifndef DOXYGEN_SHOULD_SKIP_THIS
02281 template <>
02282 class Value<Clutter::ActorBox> : public Glib::Value_Boxed<Clutter::ActorBox>
02283 {};
02284 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
02285 
02286 } // namespace Glib
02287 
02288 
02289 namespace Glib
02290 {
02299   Glib::RefPtr<Clutter::Actor> wrap(ClutterActor* object, bool take_copy = false);
02300 }
02301 
02302 
02303 #endif /* _CLUTTERMM_ACTOR_H */
02304 

Generated on Tue Aug 12 00:05:40 2008 for cluttermm by  doxygen 1.5.4