behaviour-path.h

Go to the documentation of this file.
00001 // -*- c++ -*-
00002 // Generated by gtkmmproc -- DO NOT MODIFY!
00003 #ifndef _CLUTTERMM_BEHAVIOUR_PATH_H
00004 #define _CLUTTERMM_BEHAVIOUR_PATH_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 <cluttermm/behaviour.h>
00027 #include <cluttermm/scriptable.h>
00028 #include <cluttermm/alpha.h>
00029 #include <cluttermm/types.h>
00030  
00031 
00032 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00033 typedef struct _ClutterBehaviourPath ClutterBehaviourPath;
00034 typedef struct _ClutterBehaviourPathClass ClutterBehaviourPathClass;
00035 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00036 
00037 
00038 namespace Clutter
00039 { class BehaviourPath_Class; } // namespace Clutter
00040 namespace Clutter
00041 {
00042 
00043 
00044 class BehaviourPath 
00045 : public Behaviour, 
00046   public Scriptable
00047 {
00048   
00049 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00050 
00051 public:
00052   typedef BehaviourPath CppObjectType;
00053   typedef BehaviourPath_Class CppClassType;
00054   typedef ClutterBehaviourPath BaseObjectType;
00055   typedef ClutterBehaviourPathClass BaseClassType;
00056 
00057 private:  friend class BehaviourPath_Class;
00058   static CppClassType behaviourpath_class_;
00059 
00060 private:
00061   // noncopyable
00062   BehaviourPath(const BehaviourPath&);
00063   BehaviourPath& operator=(const BehaviourPath&);
00064 
00065 protected:
00066   explicit BehaviourPath(const Glib::ConstructParams& construct_params);
00067   explicit BehaviourPath(ClutterBehaviourPath* castitem);
00068 
00069 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00070 
00071 public:
00072   virtual ~BehaviourPath();
00073 
00074 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00075   static GType get_type()      G_GNUC_CONST;
00076   static GType get_base_type() G_GNUC_CONST;
00077 #endif
00078 
00080   ClutterBehaviourPath*       gobj()       { return reinterpret_cast<ClutterBehaviourPath*>(gobject_); }
00081 
00083   const ClutterBehaviourPath* gobj() const { return reinterpret_cast<ClutterBehaviourPath*>(gobject_); }
00084 
00086   ClutterBehaviourPath* gobj_copy();
00087 
00088 private:
00089 
00090   
00091 protected:
00092   // TODO: pass the knots as a C++ container
00093   explicit BehaviourPath(const Glib::RefPtr<Alpha>& alpha, const ClutterKnot* knots, guint n_knots);
00094 
00095 public:
00096   // TODO: pass the knots as a C++ container
00097   
00098   static Glib::RefPtr<BehaviourPath> create(const Glib::RefPtr<Alpha>& alpha, const ClutterKnot* knots, guint n_knots);
00099 
00100 
00106   void append_knot(const Knot& knot);
00107   
00115   void insert_knot(guint offset, const Knot& knot);
00116   
00122   void remove_knot(guint offset);
00123   
00128   void clear();
00129 
00130   
00136   Glib::SignalProxy1< void,const Knot& > signal_knot_reached();
00137 
00138 
00139   #ifdef GLIBMM_PROPERTIES_ENABLED
00140 
00146   Glib::PropertyProxy_WriteOnly<Knot> property_knot() ;
00147 #endif //#GLIBMM_PROPERTIES_ENABLED
00148 
00149 
00150 public:
00151 
00152 public:
00153   //C++ methods used to invoke GTK+ virtual functions:
00154 #ifdef GLIBMM_VFUNCS_ENABLED
00155 #endif //GLIBMM_VFUNCS_ENABLED
00156 
00157 protected:
00158   //GTK+ Virtual Functions (override these to change behaviour):
00159 #ifdef GLIBMM_VFUNCS_ENABLED
00160 #endif //GLIBMM_VFUNCS_ENABLED
00161 
00162   //Default Signal Handlers::
00163 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00164   virtual void on_knot_reached(const Knot& knot);
00165 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00166 
00167 
00168 };
00169 
00170 } // namespace Clutter
00171 // vim:ts=2,sw=2
00172 
00173 
00174 namespace Glib
00175 {
00184   Glib::RefPtr<Clutter::BehaviourPath> wrap(ClutterBehaviourPath* object, bool take_copy = false);
00185 }
00186 
00187 
00188 #endif /* _CLUTTERMM_BEHAVIOUR_PATH_H */
00189 

Generated on Fri Jun 6 02:17:45 2008 for cluttermm by  doxygen 1.5.5