1 // -*- c++ -*- 2 // Generated by gmmproc 2.40.0 -- DO NOT MODIFY! 3 #ifndef _CLUTTERMM_ACTION_H 4 #define _CLUTTERMM_ACTION_H 5 6 7 #include <glibmm/ustring.h> 8 #include <sigc++/sigc++.h> 9 10 /* Copyright (C) 2010 The cluttermm Development Team 11 * 12 * This library is free software; you can redistribute it and/or 13 * modify it under the terms of the GNU Lesser General Public 14 * License as published by the Free Software Foundation; either 15 * version 2.1 of the License, or (at your option) any later version. 16 * 17 * This library is distributed in the hope that it will be useful, 18 * but WITHOUT ANY WARRANTY; without even the implied warranty of 19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 20 * Lesser General Public License for more details. 21 * 22 * You should have received a copy of the GNU Lesser General Public 23 * License along with this library; if not, write to the Free 24 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 25 */ 26 27 #include <glibmm/object.h> 28 #include <cluttermm/actor-meta.h> 29 30 31 #ifndef DOXYGEN_SHOULD_SKIP_THIS 32 typedef struct _ClutterAction ClutterAction; 33 typedef struct _ClutterActionClass ClutterActionClass; 34 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 35 36 37 namespace Clutter 38 { class Action_Class; } // namespace Clutter 39 namespace Clutter 40 { 41 42 /** This is the base class for all actions. 43 * 44 * It is an abstract class that cannot be instantiated. 45 * 46 * Implementations of Clutter::Action are associated with an actor and can 47 * provide behavioral changes when dealing with user input - for instance 48 * drag and drop capabilities, scrolling, or panning - by using the 49 * various event-related signals provided by Clutter::Actor itself. 50 * 51 * @newin{1,4} 52 */ 53 54 class Action : public ActorMeta 55 { 56 57 #ifndef DOXYGEN_SHOULD_SKIP_THIS 58 59 public: 60 typedef Action CppObjectType; 61 typedef Action_Class CppClassType; 62 typedef ClutterAction BaseObjectType; 63 typedef ClutterActionClass BaseClassType; 64 65 private: friend class Action_Class; 66 static CppClassType action_class_; 67 68 private: 69 // noncopyable 70 Action(const Action&); 71 Action& operator=(const Action&); 72 73 protected: 74 explicit Action(const Glib::ConstructParams& construct_params); 75 explicit Action(ClutterAction* castitem); 76 77 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ 78 79 public: 80 virtual ~Action(); 81 82 /** Get the GType for this class, for use with the underlying GObject type system. 83 */ 84 static GType get_type() G_GNUC_CONST; 85 86 #ifndef DOXYGEN_SHOULD_SKIP_THIS 87 88 89 static GType get_base_type() G_GNUC_CONST; 90 #endif 91 92 ///Provides access to the underlying C GObject. gobj()93 ClutterAction* gobj() { return reinterpret_cast<ClutterAction*>(gobject_); } 94 95 ///Provides access to the underlying C GObject. gobj()96 const ClutterAction* gobj() const { return reinterpret_cast<ClutterAction*>(gobject_); } 97 98 ///Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. 99 ClutterAction* gobj_copy(); 100 101 private: 102 103 104 protected: 105 Action(); 106 107 public: 108 //There is no create() because this is an abstract base class. 109 //_WRAP_CREATE() 110 111 //There are no functions. 112 113 //there are no signals, properties, vfuncs 114 115 116 public: 117 118 public: 119 //C++ methods used to invoke GTK+ virtual functions: 120 121 protected: 122 //GTK+ Virtual Functions (override these to change behaviour): 123 124 //Default Signal Handlers:: 125 126 127 }; 128 129 } // namespace Clutter 130 131 132 namespace Glib 133 { 134 /** A Glib::wrap() method for this object. 135 * 136 * @param object The C instance. 137 * @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref. 138 * @result A C++ instance that wraps this C instance. 139 * 140 * @relates Clutter::Action 141 */ 142 Glib::RefPtr<Clutter::Action> wrap(ClutterAction* object, bool take_copy = false); 143 } 144 145 146 #endif /* _CLUTTERMM_ACTION_H */ 147 148