types.h

Go to the documentation of this file.
00001 // -*- c++ -*-
00002 // Generated by gtkmmproc -- DO NOT MODIFY!
00003 #ifndef _CLUTTERMM_TYPES_H
00004 #define _CLUTTERMM_TYPES_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 Lesser General Public
00013  * License as published by the Free Software Foundation; either
00014  * version 2.1 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  * Lesser General Public License for more details.
00020  *
00021  * You should have received a copy of the GNU Lesser 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 <clutter/clutter.h>
00027 
00028 
00029 namespace Clutter
00030 {
00031 
00032 typedef ClutterEvent Event;
00033 typedef ClutterButtonEvent ButtonEvent;
00034 typedef ClutterKeyEvent KeyEvent;
00035 typedef ClutterMotionEvent MotionEvent;
00036 typedef ClutterScrollEvent ScrollEvent;
00037 typedef ClutterCrossingEvent CrossingEvent;
00038 
00039 //TODO: Maybe redefine these, to avoid including a C header in our C++ header:
00040 typedef ClutterUnit Unit;
00041 typedef ClutterFixed Fixed;
00042 typedef ClutterAngle Angle;
00043 
00044 class InitError : public Glib::Error
00045 {
00046 public:
00047   enum Code
00048   {
00049     INIT_SUCCESS = 1,
00050     UNKNOWN = 0,
00051     THREADS = -1,
00052     BACKEND = -2,
00053     INTERNAL = -3
00054   };
00055 
00056   InitError(Code error_code, const Glib::ustring& error_message);
00057   explicit InitError(GError* gobject);
00058   Code code() const;
00059 
00060 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00061 private:
00062 
00063 #ifdef GLIBMM_EXCEPTIONS_ENABLED
00064   static void throw_func(GError* gobject);
00065 #else
00066   //When not using exceptions, we just pass the Exception object around without throwing it:
00067   static std::auto_ptr<Glib::Error> throw_func(GError* gobject);
00068 #endif //GLIBMM_EXCEPTIONS_ENABLED
00069 
00070   friend void wrap_init(); // uses throw_func()
00071 #endif
00072 };
00073 
00074 } // namespace Clutter
00075 
00076 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00077 namespace Glib
00078 {
00079 
00080 template <>
00081 class Value<Clutter::InitError::Code> : public Glib::Value_Enum<Clutter::InitError::Code>
00082 {
00083 public:
00084   static GType value_type() G_GNUC_CONST;
00085 };
00086 
00087 } // namespace Glib
00088 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00089 
00090 
00091 namespace Clutter
00092 {
00093 
00094 
00100 enum RotateDirection
00101 {
00102   ROTATE_CW,
00103   ROTATE_CCW
00104 };
00105 
00106 } // namespace Clutter
00107 
00108 
00109 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00110 namespace Glib
00111 {
00112 
00113 template <>
00114 class Value<Clutter::RotateDirection> : public Glib::Value_Enum<Clutter::RotateDirection>
00115 {
00116 public:
00117   static GType value_type() G_GNUC_CONST;
00118 };
00119 
00120 } // namespace Glib
00121 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00122 
00123 
00124 namespace Clutter
00125 {
00126 
00130 enum RotateAxis
00131 {
00132   X_AXIS,
00133   Y_AXIS,
00134   Z_AXIS
00135 };
00136 
00137 } // namespace Clutter
00138 
00139 
00140 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00141 namespace Glib
00142 {
00143 
00144 template <>
00145 class Value<Clutter::RotateAxis> : public Glib::Value_Enum<Clutter::RotateAxis>
00146 {
00147 public:
00148   static GType value_type() G_GNUC_CONST;
00149 };
00150 
00151 } // namespace Glib
00152 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00153 
00154 
00155 namespace Clutter
00156 {
00157 
00161 enum Gravity
00162 {
00163   GRAVITY_NONE,
00164   GRAVITY_NORTH,
00165   GRAVITY_NORTH_EAST,
00166   GRAVITY_EAST,
00167   GRAVITY_SOUTH_EAST,
00168   GRAVITY_SOUTH,
00169   GRAVITY_SOUTH_WEST,
00170   GRAVITY_WEST,
00171   GRAVITY_NORTH_WEST,
00172   GRAVITY_CENTER
00173 };
00174 
00175 } // namespace Clutter
00176 
00177 
00178 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00179 namespace Glib
00180 {
00181 
00182 template <>
00183 class Value<Clutter::Gravity> : public Glib::Value_Enum<Clutter::Gravity>
00184 {
00185 public:
00186   static GType value_type() G_GNUC_CONST;
00187 };
00188 
00189 } // namespace Glib
00190 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00191 
00192 
00193 namespace Clutter
00194 {
00195 
00199 enum RequestMode
00200 {
00201   REQUEST_HEIGHT_FOR_WIDTH,
00202   REQUEST_WIDTH_FOR_HEIGHT
00203 };
00204 
00205 } // namespace Clutter
00206 
00207 
00208 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00209 namespace Glib
00210 {
00211 
00212 template <>
00213 class Value<Clutter::RequestMode> : public Glib::Value_Enum<Clutter::RequestMode>
00214 {
00215 public:
00216   static GType value_type() G_GNUC_CONST;
00217 };
00218 
00219 } // namespace Glib
00220 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00221 
00222 
00223 namespace Clutter
00224 {
00225 
00226 
00227 class Knot
00228 {
00229   public:
00230 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00231   typedef Knot CppObjectType;
00232   typedef ClutterKnot BaseObjectType;
00233 
00234   static GType get_type() G_GNUC_CONST;
00235 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00236 
00237   Knot();
00238 
00239   explicit Knot(const ClutterKnot* gobject); // always takes a copy
00240 
00242   ClutterKnot*       gobj()       { return &gobject_; }
00243 
00245   const ClutterKnot* gobj() const { return &gobject_; }
00246 
00247 protected:
00248   ClutterKnot gobject_;
00249 
00250 private:
00251   
00252 public:
00253   Knot(int x, int y);
00254 
00255    int get_x() const;
00256    void set_x(int x);
00257    int get_y() const;
00258    void set_y(int y);
00259   void set_xy(int x, int y);
00260 
00261 
00262 };
00263 
00264 class Vertex
00265 {
00266   public:
00267 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00268   typedef Vertex CppObjectType;
00269   typedef ClutterVertex BaseObjectType;
00270 
00271   static GType get_type() G_GNUC_CONST;
00272 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00273 
00274   Vertex();
00275 
00276   explicit Vertex(const ClutterVertex* gobject); // always takes a copy
00277 
00279   ClutterVertex*       gobj()       { return &gobject_; }
00280 
00282   const ClutterVertex* gobj() const { return &gobject_; }
00283 
00284 protected:
00285   ClutterVertex gobject_;
00286 
00287 private:
00288   
00289 public:
00290   Vertex(Unit x, Unit y, Unit z = 0);
00291 
00292    Unit get_x() const;
00293     void set_x(const Unit& value);
00294     Unit get_y() const;
00295     void set_y(const Unit& value);
00296     Unit get_z() const;
00297     void set_z(const Unit& value);
00298  
00299 
00300 };
00301 
00302 class Geometry
00303 {
00304   public:
00305 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00306   typedef Geometry CppObjectType;
00307   typedef ClutterGeometry BaseObjectType;
00308 
00309   static GType get_type() G_GNUC_CONST;
00310 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00311 
00312   Geometry();
00313 
00314   explicit Geometry(const ClutterGeometry* gobject); // always takes a copy
00315 
00317   ClutterGeometry*       gobj()       { return &gobject_; }
00318 
00320   const ClutterGeometry* gobj() const { return &gobject_; }
00321 
00322 protected:
00323   ClutterGeometry gobject_;
00324 
00325 private:
00326   
00327 public:
00328   Geometry(int x, int y, unsigned int width = 0, unsigned int height = 0);
00329 
00330    int get_x() const;
00331    void set_x(int x);
00332    int get_y() const;
00333    void set_y(int y);
00334   void set_xy(int x, int y);
00335 
00336    unsigned int get_width() const;
00337    void set_width(unsigned int width);
00338    unsigned int get_height() const;
00339    void set_height(unsigned int height);
00340   void set_size(unsigned int width, unsigned int height);
00341 
00342 
00343 };
00344 
00345 } // namespace Clutter
00346 
00347 
00348 namespace Clutter
00349 {
00350 
00356 bool operator==(const Knot& lhs, const Knot& rhs);
00357 
00363 bool operator!=(const Knot& lhs, const Knot& rhs);
00364 
00365 
00366 } // namespace Clutter
00367 
00368 
00369 namespace Glib
00370 {
00371 
00376 Clutter::Knot& wrap(ClutterKnot* object);
00377 
00382 const Clutter::Knot& wrap(const ClutterKnot* object);
00383 
00384 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00385 template <>
00386 class Value<Clutter::Knot> : public Glib::Value_Boxed<Clutter::Knot>
00387 {};
00388 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00389 
00390 } // namespace Glib
00391 
00392 
00393 namespace Glib
00394 {
00395 
00400 Clutter::Vertex& wrap(ClutterVertex* object);
00401 
00406 const Clutter::Vertex& wrap(const ClutterVertex* object);
00407 
00408 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00409 template <>
00410 class Value<Clutter::Vertex> : public Glib::Value_Boxed<Clutter::Vertex>
00411 {};
00412 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00413 
00414 } // namespace Glib
00415 
00416 
00417 namespace Glib
00418 {
00419 
00424 Clutter::Geometry& wrap(ClutterGeometry* object);
00425 
00430 const Clutter::Geometry& wrap(const ClutterGeometry* object);
00431 
00432 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00433 template <>
00434 class Value<Clutter::Geometry> : public Glib::Value_Boxed<Clutter::Geometry>
00435 {};
00436 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
00437 
00438 } // namespace Glib
00439 
00440 
00441 #endif /* _CLUTTERMM_TYPES_H */
00442 

Generated on Tue Feb 24 03:40:24 2009 for cluttermm by  doxygen 1.5.8