00001
00002
00003 #ifndef _CLUTTERMM_SCRIPTABLE_H
00004 #define _CLUTTERMM_SCRIPTABLE_H
00005
00006
00007 #include <glibmm.h>
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
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
00035
00036
00037 namespace Clutter
00038 { class Scriptable_Class; }
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
00059 Scriptable(const Scriptable&);
00060 Scriptable& operator=(const Scriptable&);
00061
00062 protected:
00063 Scriptable();
00064
00071 explicit Scriptable(const Glib::Interface_Class& interface_class);
00072
00073 public:
00074
00075
00076
00077 explicit Scriptable(ClutterScriptable* castitem);
00078
00079 protected:
00080 #endif
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
00124
00125
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
00139
00140
00141 public:
00142
00143 public:
00144
00145 #ifdef GLIBMM_VFUNCS_ENABLED
00146 #endif //GLIBMM_VFUNCS_ENABLED
00147
00148 protected:
00149
00150 #ifdef GLIBMM_VFUNCS_ENABLED
00151 #endif //GLIBMM_VFUNCS_ENABLED
00152
00153
00154 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00155 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00156
00157
00158 };
00159
00160 }
00161
00162
00163
00164 namespace Glib
00165 {
00174 Glib::RefPtr<Clutter::Scriptable> wrap(ClutterScriptable* object, bool take_copy = false);
00175
00176 }
00177
00178
00179 #endif
00180