scriptable.h

Go to the documentation of this file.
00001 // -*- c++ -*-
00002 // Generated by gtkmmproc -- DO NOT MODIFY!
00003 #ifndef _CLUTTERMM_SCRIPTABLE_H
00004 #define _CLUTTERMM_SCRIPTABLE_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/interface.h>
00027 #include <glibmm/ustring.h>
00028 #include <clutter/clutter-scriptable.h>
00029  
00030 
00031 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00032 typedef struct _ClutterScriptable ClutterScriptable;
00033 typedef struct _ClutterScriptableClass ClutterScriptableClass;
00034 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00035 
00036 
00037 namespace Clutter
00038 { class Scriptable_Class; } // namespace Clutter
00039 namespace Clutter
00040 {
00041 
00042 
00043 class Scriptable : public Glib::Interface
00044 {
00045   
00046 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00047 
00048 public:
00049   typedef Scriptable CppObjectType;
00050   typedef Scriptable_Class CppClassType;
00051   typedef ClutterScriptable BaseObjectType;
00052   typedef ClutterScriptableIface BaseClassType;
00053 
00054 private:
00055   friend class Scriptable_Class;
00056   static CppClassType scriptable_class_;
00057 
00058   // noncopyable
00059   Scriptable(const Scriptable&);
00060   Scriptable& operator=(const Scriptable&);
00061 
00062 protected:
00063   Scriptable(); // you must derive from this class
00064 
00071   explicit Scriptable(const Glib::Interface_Class& interface_class);
00072 
00073 public:
00074   // This is public so that C++ wrapper instances can be
00075   // created for C instances of unwrapped types.
00076   // For instance, if an unexpected C type implements the C interface. 
00077   explicit Scriptable(ClutterScriptable* castitem);
00078 
00079 protected:
00080 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00081 
00082 public:
00083   virtual ~Scriptable();
00084 
00085   static void add_interface(GType gtype_implementer);
00086 
00087 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00088   static GType get_type()      G_GNUC_CONST;
00089   static GType get_base_type() G_GNUC_CONST;
00090 #endif
00091 
00093   ClutterScriptable*       gobj()       { return reinterpret_cast<ClutterScriptable*>(gobject_); }
00094 
00096   const ClutterScriptable* gobj() const { return reinterpret_cast<ClutterScriptable*>(gobject_); }
00097 
00098 private:
00099 
00100 
00101 public:
00102   
00113   void set_id(const std::string& id);
00114   
00121   std::string get_id() const;
00122 
00123   //gtkmmproc error: actor_added :  signal defs lookup failed
00124   //gtkmmproc error: actor_removed :  signal defs lookup failed
00125   // TODO: parse_custom_node, set_custom_property
00126 
00127 protected:
00128 
00129   #ifdef GLIBMM_VFUNCS_ENABLED
00130   virtual void set_id_vfunc(const std::string& id);
00131 #endif //GLIBMM_VFUNCS_ENABLED
00132 
00133 
00134   #ifdef GLIBMM_VFUNCS_ENABLED
00135   virtual std::string get_id_vfunc() const;
00136 #endif //GLIBMM_VFUNCS_ENABLED
00137 
00138   // TODO: parse_custom_node, set_custom_property vfuncs
00139 
00140 
00141 public:
00142 
00143 public:
00144   //C++ methods used to invoke GTK+ virtual functions:
00145 #ifdef GLIBMM_VFUNCS_ENABLED
00146 #endif //GLIBMM_VFUNCS_ENABLED
00147 
00148 protected:
00149   //GTK+ Virtual Functions (override these to change behaviour):
00150 #ifdef GLIBMM_VFUNCS_ENABLED
00151 #endif //GLIBMM_VFUNCS_ENABLED
00152 
00153   //Default Signal Handlers::
00154 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00155 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00156 
00157 
00158 };
00159 
00160 } // namespace Clutter
00161 //vim: ts=2,sw=2
00162 
00163 
00164 namespace Glib
00165 {
00174   Glib::RefPtr<Clutter::Scriptable> wrap(ClutterScriptable* object, bool take_copy = false);
00175 
00176 } // namespace Glib
00177 
00178 
00179 #endif /* _CLUTTERMM_SCRIPTABLE_H */
00180 

Generated on Fri Jun 6 02:12:48 2008 for cluttermm by  doxygen 1.5.5