script.h
Go to the documentation of this file.00001
00002
00003 #ifndef _CLUTTERMM_SCRIPT_H
00004 #define _CLUTTERMM_SCRIPT_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/object.h>
00027 #include <cluttermm/timeline.h>
00028 #include <clutter/clutter.h>
00029
00030
00031 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00032 typedef struct _ClutterScript ClutterScript;
00033 typedef struct _ClutterScriptClass ClutterScriptClass;
00034 #endif
00035
00036
00037 namespace Clutter
00038 { class Script_Class; }
00039 namespace Clutter
00040 {
00041
00042
00043 class Script : public Glib::Object
00044 {
00045
00046 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00047
00048 public:
00049 typedef Script CppObjectType;
00050 typedef Script_Class CppClassType;
00051 typedef ClutterScript BaseObjectType;
00052 typedef ClutterScriptClass BaseClassType;
00053
00054 private: friend class Script_Class;
00055 static CppClassType script_class_;
00056
00057 private:
00058
00059 Script(const Script&);
00060 Script& operator=(const Script&);
00061
00062 protected:
00063 explicit Script(const Glib::ConstructParams& construct_params);
00064 explicit Script(ClutterScript* castitem);
00065
00066 #endif
00067
00068 public:
00069 virtual ~Script();
00070
00071 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00072 static GType get_type() G_GNUC_CONST;
00073 static GType get_base_type() G_GNUC_CONST;
00074 #endif
00075
00077 ClutterScript* gobj() { return reinterpret_cast<ClutterScript*>(gobject_); }
00078
00080 const ClutterScript* gobj() const { return reinterpret_cast<ClutterScript*>(gobject_); }
00081
00083 ClutterScript* gobj_copy();
00084
00085 private:
00086
00087
00088 protected:
00089 Script();
00090
00091 public:
00092
00093 static Glib::RefPtr<Script> create();
00094
00095
00096
00097
00098
00111 #ifdef GLIBMM_EXCEPTIONS_ENABLED
00112 guint load_from_data(const Glib::ustring& data);
00113 #else
00114 guint load_from_data(const Glib::ustring& data, std::auto_ptr<Glib::Error>& error);
00115 #endif
00116
00126 #ifdef GLIBMM_EXCEPTIONS_ENABLED
00127 guint load_from_file(const std::string& filename);
00128 #else
00129 guint load_from_file(const std::string& filename, std::auto_ptr<Glib::Error>& error);
00130 #endif //GLIBMM_EXCEPTIONS_ENABLED
00131
00132
00133 void add_search_paths(const Glib::ArrayHandle<Glib::ustring>& paths);
00134
00143 Glib::ustring lookup_filename(const Glib::ustring& filename);
00144
00153 Glib::RefPtr<Glib::Object> get_object(const Glib::ustring& name);
00154
00163 Glib::RefPtr<const Glib::Object> get_object(const Glib::ustring& name) const;
00164
00165
00166
00167
00173 void unmerge_object(guint merge_id);
00174
00180 void ensure_objects();
00181
00182
00183
00184
00185
00186
00187
00196 static std::string get_script_id(const Glib::RefPtr<const Glib::Object>& object);
00197
00198 #ifdef GLIBMM_PROPERTIES_ENABLED
00199
00205 Glib::PropertyProxy_ReadOnly<std::string> property_filename() const;
00206 #endif //#GLIBMM_PROPERTIES_ENABLED
00207
00208
00209 #ifdef GLIBMM_PROPERTIES_ENABLED
00210
00216 Glib::PropertyProxy_ReadOnly<bool> property_filename_set() const;
00217 #endif //#GLIBMM_PROPERTIES_ENABLED
00218
00219
00220 protected:
00221
00222
00223
00224
00225 virtual GType get_type_from_name_vfunc(const Glib::ustring& type_name);
00226
00227
00228 public:
00229
00230 public:
00231
00232 #ifdef GLIBMM_VFUNCS_ENABLED
00233 #endif //GLIBMM_VFUNCS_ENABLED
00234
00235 protected:
00236
00237 #ifdef GLIBMM_VFUNCS_ENABLED
00238 #endif //GLIBMM_VFUNCS_ENABLED
00239
00240
00241 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00242 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00243
00244
00245 };
00246
00247 }
00248
00249
00250 namespace Glib
00251 {
00260 Glib::RefPtr<Clutter::Script> wrap(ClutterScript* object, bool take_copy = false);
00261 }
00262
00263
00264 #endif
00265