backend.h
Go to the documentation of this file.00001
00002
00003 #ifndef _CLUTTERMM_BACKEND_H
00004 #define _CLUTTERMM_BACKEND_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 <cairomm/fontoptions.h>
00028
00029
00030 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00031 typedef struct _ClutterBackend ClutterBackend;
00032 typedef struct _ClutterBackendClass ClutterBackendClass;
00033 #endif
00034
00035
00036 namespace Clutter
00037 { class Backend_Class; }
00038 namespace Clutter
00039 {
00040
00041
00042 class Backend :
00043 public Glib::Object
00044 {
00045
00046 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00047
00048 public:
00049 typedef Backend CppObjectType;
00050 typedef Backend_Class CppClassType;
00051 typedef ClutterBackend BaseObjectType;
00052 typedef ClutterBackendClass BaseClassType;
00053
00054 private: friend class Backend_Class;
00055 static CppClassType backend_class_;
00056
00057 private:
00058
00059 Backend(const Backend&);
00060 Backend& operator=(const Backend&);
00061
00062 protected:
00063 explicit Backend(const Glib::ConstructParams& construct_params);
00064 explicit Backend(ClutterBackend* castitem);
00065
00066 #endif
00067
00068 public:
00069 virtual ~Backend();
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 ClutterBackend* gobj() { return reinterpret_cast<ClutterBackend*>(gobject_); }
00078
00080 const ClutterBackend* gobj() const { return reinterpret_cast<ClutterBackend*>(gobject_); }
00081
00083 ClutterBackend* gobj_copy();
00084
00085 private:
00086
00087
00088 protected:
00089 Backend();
00090
00091 public:
00092
00101 static Glib::RefPtr<Backend> get_default();
00102
00103
00111 double get_resolution() const;
00112
00124 void set_resolution(double dpi);
00125
00126
00133 guint get_double_click_time() const;
00134
00141 void set_double_click_time(guint msec);
00142
00143
00149 guint get_double_click_distance() const;
00150
00156 void set_double_click_distance(guint distance);
00157
00158
00166 ::Cairo::FontOptions get_font_options() const;
00167
00181 void set_font_options(const ::Cairo::FontOptions& options);
00182
00183
00191 Glib::ustring get_font_name() const;
00192
00201 void set_font_name(const Glib::ustring& font_name);
00202
00203
00209 Glib::SignalProxy0< void > signal_font_changed();
00210
00211
00217 Glib::SignalProxy0< void > signal_resolution_changed();
00218
00219
00220 public:
00221
00222 public:
00223
00224 #ifdef GLIBMM_VFUNCS_ENABLED
00225 #endif //GLIBMM_VFUNCS_ENABLED
00226
00227 protected:
00228
00229 #ifdef GLIBMM_VFUNCS_ENABLED
00230 #endif //GLIBMM_VFUNCS_ENABLED
00231
00232
00233 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00234 virtual void on_font_changed();
00235 virtual void on_resolution_changed();
00236 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00237
00238
00239 };
00240
00241 }
00242
00243
00244
00245
00246 namespace Glib
00247 {
00256 Glib::RefPtr<Clutter::Backend> wrap(ClutterBackend* object, bool take_copy = false);
00257 }
00258
00259
00260 #endif
00261