2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
+ Bug 1212 - Allow only a single include file for Clutter
+
+ * clutter/*.h: Only allow including clutter.h in third
+ party code.
+
+ * clutter/cogl/cogl-color.h:
+ * clutter/cogl/cogl-fixed.h:
+ * clutter/cogl/cogl.h.in: Only allow including cogl.h in
+ third party code.
+
+ * clutter/cogl/common/Makefile.am:
+ * clutter/cogl/gl/Makefile.am:
+ * clutter/cogl/gles/Makefile.am:
+ * clutter/eglnative/Makefile.am:
+ * clutter/eglx/Makefile.am:
+ * clutter/fruity/Makefile.am:
+ * clutter/glx/Makefile.am:
+ * clutter/glx/clutter-glx.h:
+ * clutter/osx/Makefile.am:
+ * clutter/pango/Makefile.am:
+ * clutter/sdl/Makefile.am:
+ * clutter/win32/Makefile.am:
+ * clutter/x11/Makefile.am: Fix build environment.
+
+ * clutter/x11/clutter-x11-texture-pixmap.h:
+ * clutter/x11/clutter-x11.h: Fix inclusion rules.
+
+ * tests/test-pixmap.c: Fix inclusion of GdkPixbuf header.
+
+ * README: Update release notes.
+
+2008-10-30 Emmanuele Bassi <ebassi@linux.intel.com>
+
Bug 1211 - Drop ClutterFeatureFlags usage from COGL
* clutter/cogl/cogl.h.in:
Release Notes for Clutter 1.0
-------------------------------
+* Both Clutter and COGL only allow including <clutter/clutter.h>
+ and <cogl/cogl.h> directly, respectively. This allows avoiding
+ breaking API every time a type definition is moved across
+ headers, and improves the reliability of third party code against
+ internal refactorings.
+
* COGL has an internal Color type, used to store a color definition
that can be efficiently used with the least amount of conversions
by both the GL and GLES implementations. The COGL API has been
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_ACTOR_H
-#define _HAVE_CLUTTER_ACTOR_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_ACTOR_H__
+#define __CLUTTER_ACTOR_H__
/* clutter-actor.h */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_ALPHA_H__
#define __CLUTTER_ALPHA_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_BACKEND_H__
#define __CLUTTER_BACKEND_H__
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_BEHAVIOUR_BSPLINE_H__
#define __CLUTTER_BEHAVIOUR_BSPLINE_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_BEHAVIOUR_DEPTH__
#define __CLUTTER_BEHAVIOUR_DEPTH__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_BEHAVIOUR_ELLIPSE_H__
#define __CLUTTER_BEHAVIOUR_ELLIPSE_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_BEHAVIOUR_OPACITY_H__
#define __CLUTTER_BEHAVIOUR_OPACITY_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_BEHAVIOUR_PATH_H__
#define __CLUTTER_BEHAVIOUR_PATH_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_BEHAVIOUR_ROTATE_H__
#define __CLUTTER_BEHAVIOUR_ROTATE_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_BEHAVIOUR_SCALE_H__
#define __CLUTTER_BEHAVIOUR_SCALE_H__
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_BEHAVIOUR_H
-#define _HAVE_CLUTTER_BEHAVIOUR_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_BEHAVIOUR_H__
+#define __CLUTTER_BEHAVIOUR_H__
#include <glib-object.h>
#include <clutter/clutter-alpha.h>
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_CHILD_META_H__
#define __CLUTTER_CHILD_META_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_CLONE_TEXTURE_H
-#define _HAVE_CLUTTER_CLONE_TEXTURE_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_CLONE_TEXTURE_H__
+#define __CLUTTER_CLONE_TEXTURE_H__
#include <clutter/clutter-actor.h>
#include <clutter/clutter-texture.h>
G_BEGIN_DECLS
-#define CLUTTER_TYPE_CLONE_TEXTURE (clutter_clone_texture_get_type ())
-
-#define CLUTTER_CLONE_TEXTURE(obj) \
- (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
- CLUTTER_TYPE_CLONE_TEXTURE, ClutterCloneTexture))
-
-#define CLUTTER_CLONE_TEXTURE_CLASS(klass) \
- (G_TYPE_CHECK_CLASS_CAST ((klass), \
- CLUTTER_TYPE_CLONE_TEXTURE, ClutterCloneTextureClass))
-
-#define CLUTTER_IS_CLONE_TEXTURE(obj) \
- (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
- CLUTTER_TYPE_CLONE_TEXTURE))
-
-#define CLUTTER_IS_CLONE_TEXTURE_CLASS(klass) \
- (G_TYPE_CHECK_CLASS_TYPE ((klass), \
- CLUTTER_TYPE_CLONE_TEXTURE))
-
-#define CLUTTER_CLONE_TEXTURE_GET_CLASS(obj) \
- (G_TYPE_INSTANCE_GET_CLASS ((obj), \
- CLUTTER_TYPE_CLONE_TEXTURE, ClutterCloneTextureClass))
+#define CLUTTER_TYPE_CLONE_TEXTURE (clutter_clone_texture_get_type ())
+#define CLUTTER_CLONE_TEXTURE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CLUTTER_TYPE_CLONE_TEXTURE, ClutterCloneTexture))
+#define CLUTTER_CLONE_TEXTURE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CLUTTER_TYPE_CLONE_TEXTURE, ClutterCloneTextureClass))
+#define CLUTTER_IS_CLONE_TEXTURE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CLUTTER_TYPE_CLONE_TEXTURE))
+#define CLUTTER_IS_CLONE_TEXTURE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_CLONE_TEXTURE))
+#define CLUTTER_CLONE_TEXTURE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_CLONE_TEXTURE, ClutterCloneTextureClass))
typedef struct _ClutterCloneTexture ClutterCloneTexture;
typedef struct _ClutterCloneTexturePrivate ClutterCloneTexturePrivate;
struct _ClutterCloneTexture
{
+ /*< private >*/
ClutterActor parent;
-
- /*< priv >*/
+
ClutterCloneTexturePrivate *priv;
};
struct _ClutterCloneTextureClass
{
+ /*< private >*/
ClutterActorClass parent_class;
/* padding for future expansion */
G_END_DECLS
-#endif
+#endif /* __CLUTTER_CLONE_TEXTURE_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_COLOR_H
-#define _HAVE_CLUTTER_COLOR_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_COLOR_H__
+#define __CLUTTER_COLOR_H__
#include <glib-object.h>
#include <clutter/clutter-fixed.h>
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
* ClutterContainer: Generic actor container interface.
* Author: Emmanuele Bassi <ebassi@openedhand.com>
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_CONTAINER_H__
#define __CLUTTER_CONTAINER_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _CLUTTER_EFFECT
-#define _CLUTTER_EFFECT
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_EFFECT_H__
+#define __CLUTTER_EFFECT_H__
#include <glib-object.h>
#include <clutter/clutter-actor.h>
G_END_DECLS
-#endif /* _CLUTTER_EFFECT */
+#endif /* __CLUTTER_EFFECT_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_ENTRY_H
-#define _HAVE_CLUTTER_ENTRY_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_ENTRY_H__
+#define __CLUTTER_ENTRY_H__
#include <clutter/clutter-actor.h>
#include <clutter/clutter-color.h>
G_END_DECLS
-#endif /* _HAVE_CLUTTER_ENTRY_H */
+#endif /* __CLUTTER_ENTRY_H__ */
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_EVENT_H
-#define _HAVE_CLUTTER_EVENT_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_EVENT_H__
+#define __CLUTTER_EVENT_H__
#include <glib-object.h>
#include <clutter/clutter-types.h>
G_END_DECLS
-#endif
+#endif /* __CLUTTER_EVENT_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
/**
* SECTION:clutter-main
* @short_description: Various 'global' clutter functions.
* functions for mainloops, events and threads
*/
-#ifndef _HAVE_CLUTTER_FEATURE_H
-#define _HAVE_CLUTTER_FEATURE_H
+#ifndef __CLUTTER_FEATURE_H__
+#define __CLUTTER_FEATURE_H__
#include <glib.h>
G_END_DECLS
-#endif
-
+#endif /* __CLUTTER_FEATURE_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_FIXED_H
-#define _HAVE_CLUTTER_FIXED_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_FIXED_H__
+#define __CLUTTER_FIXED_H__
#include <glib-object.h>
-#include <cogl/cogl-fixed.h>
+#include <cogl/cogl.h>
G_BEGIN_DECLS
G_END_DECLS
-#endif /* _HAVE_CLUTTER_FIXED_H */
+#endif /* __CLUTTER_FIXED_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _CLUTTER_FRAME_SOURCE_H
-#define _CLUTTER_FRAME_SOURCE_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_FRAME_SOURCE_H__
+#define __CLUTTER_FRAME_SOURCE_H__
#include <glib.h>
G_END_DECLS
-#endif /* _CLUTTER_FRAME_SOURCE_H */
+#endif /* __CLUTTER_FRAME_SOURCE_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_GROUP_H__
#define __CLUTTER_GROUP_H__
gint clutter_group_get_n_children (ClutterGroup *self);
void clutter_group_remove_all (ClutterGroup *group);
+/* for Mr. Mallum */
#define clutter_group_add(group,actor) G_STMT_START { \
if (CLUTTER_IS_GROUP ((group)) && CLUTTER_IS_ACTOR ((actor))) \
{ \
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
* ClutterIDPool: pool of reusable integer ids associated with pointers.
*
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_LABEL_H
-#define _HAVE_CLUTTER_LABEL_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_LABEL_H__
+#define __CLUTTER_LABEL_H__
#include <clutter/clutter-actor.h>
#include <clutter/clutter-color.h>
G_END_DECLS
-#endif /* _HAVE_CLUTTER_LABEL_H */
+#endif /* __CLUTTER_LABEL_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
* NB: Inspiration for column storage taken from GtkListStore
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_LIST_MODEL_H__
#define __CLUTTER_LIST_MODEL_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_MAIN_H
-#define _HAVE_CLUTTER_MAIN_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_MAIN_H__
+#define __CLUTTER_MAIN_H__
#include <clutter/clutter-actor.h>
#include <clutter/clutter-stage.h>
G_END_DECLS
-#endif /* _HAVE_CLUTTER_MAIN_H */
+#endif /* _CLUTTER_MAIN_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_MEDIA_H
-#define _HAVE_CLUTTER_MEDIA_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_MEDIA_H__
+#define __CLUTTER_MEDIA_H__
#include <glib-object.h>
G_BEGIN_DECLS
-#define CLUTTER_TYPE_MEDIA clutter_media_get_type()
-
-#define CLUTTER_MEDIA(obj) \
- (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
- CLUTTER_TYPE_MEDIA, ClutterMedia))
-
-#define CLUTTER_IS_MEDIA(obj) \
- (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
- CLUTTER_TYPE_MEDIA))
+#define CLUTTER_TYPE_MEDIA (clutter_media_get_type ())
+#define CLUTTER_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CLUTTER_TYPE_MEDIA, ClutterMedia))
+#define CLUTTER_IS_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CLUTTER_TYPE_MEDIA))
+#define CLUTTER_MEDIA_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), CLUTTER_TYPE_MEDIA, ClutterMediaInterface))
-#define CLUTTER_MEDIA_GET_INTERFACE(obj) \
- (G_TYPE_INSTANCE_GET_INTERFACE ((obj), \
- CLUTTER_TYPE_MEDIA, ClutterMediaInterface))
-
-typedef struct _ClutterMedia ClutterMedia;
+typedef struct _ClutterMedia ClutterMedia; /* dummy typedef */
typedef struct _ClutterMediaInterface ClutterMediaInterface;
struct _ClutterMediaInterface
{
+ /*< private >*/
GTypeInterface base_iface;
+
+ /*< public >*/
void (*set_uri) (ClutterMedia *media,
const char *uri);
const char *(*get_uri) (ClutterMedia *media);
};
-GType clutter_media_get_type (void);
+GType clutter_media_get_type (void) G_GNUC_CONST;
void
clutter_media_set_uri (ClutterMedia *media,
G_END_DECLS
-#endif
+#endif /* __CLUTTER_MEDIA_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_MODEL_H__
#define __CLUTTER_MODEL_H__
-#include <glib.h>
#include <glib-object.h>
G_BEGIN_DECLS
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_RECTANGLE_H
-#define _HAVE_CLUTTER_RECTANGLE_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_RECTANGLE_H__
+#define __CLUTTER_RECTANGLE_H__
#include <glib-object.h>
#include <clutter/clutter-actor.h>
G_BEGIN_DECLS
-#define CLUTTER_TYPE_RECTANGLE clutter_rectangle_get_type()
-
-#define CLUTTER_RECTANGLE(obj) \
- (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
- CLUTTER_TYPE_RECTANGLE, ClutterRectangle))
-
-#define CLUTTER_RECTANGLE_CLASS(klass) \
- (G_TYPE_CHECK_CLASS_CAST ((klass), \
- CLUTTER_TYPE_RECTANGLE, ClutterRectangleClass))
-
-#define CLUTTER_IS_RECTANGLE(obj) \
- (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
- CLUTTER_TYPE_RECTANGLE))
-
-#define CLUTTER_IS_RECTANGLE_CLASS(klass) \
- (G_TYPE_CHECK_CLASS_TYPE ((klass), \
- CLUTTER_TYPE_RECTANGLE))
-
-#define CLUTTER_RECTANGLE_GET_CLASS(obj) \
- (G_TYPE_INSTANCE_GET_CLASS ((obj), \
- CLUTTER_TYPE_RECTANGLE, ClutterRectangleClass))
+#define CLUTTER_TYPE_RECTANGLE (clutter_rectangle_get_type())
+#define CLUTTER_RECTANGLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CLUTTER_TYPE_RECTANGLE, ClutterRectangle))
+#define CLUTTER_RECTANGLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CLUTTER_TYPE_RECTANGLE, ClutterRectangleClass))
+#define CLUTTER_IS_RECTANGLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CLUTTER_TYPE_RECTANGLE))
+#define CLUTTER_IS_RECTANGLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_RECTANGLE))
+#define CLUTTER_RECTANGLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_RECTANGLE, ClutterRectangleClass))
typedef struct _ClutterRectangle ClutterRectangle;
typedef struct _ClutterRectangleClass ClutterRectangleClass;
struct _ClutterRectangle
{
+ /*< private >*/
ClutterActor parent;
- /*< private >*/
ClutterRectanglePrivate *priv;
};
struct _ClutterRectangleClass
{
+ /*< private >*/
ClutterActorClass parent_class;
/* padding for future expansion */
G_END_DECLS
-#endif
+#endif /* __CLUTTER_RECTANGLE_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_SCORE_H__
#define __CLUTTER_SCORE_H__
#include <glib-object.h>
#include <gmodule.h>
+#ifdef USE_GDKPIXBUF
+#include <gdk-pixbuf/gdk-pixbuf.h>
+#endif
+
#include "clutter-actor.h"
#include "clutter-alpha.h"
#include "clutter-behaviour.h"
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_SCRIPT_H__
#define __CLUTTER_SCRIPT_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_SCRIPTABLE_H__
#define __CLUTTER_SCRIPTABLE_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
#ifndef __CLUTTER_SHADER_H__
#define __CLUTTER_SHADER_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_STAGE_MANAGER_H__
#define __CLUTTER_STAGE_MANAGER_H__
-#include <glib.h>
#include <glib-object.h>
#include <clutter/clutter-stage.h>
struct _ClutterStageManagerClass
{
+ /*< private >*/
GObjectClass parent_class;
void (* stage_added) (ClutterStageManager *stage_manager,
#define __CLUTTER_STAGE_WINDOW_H__
#include <clutter/clutter-actor.h>
-#ifdef USE_GDKPIXBUF
-#include <gdk-pixbuf/gdk-pixbuf.h>
-#endif
G_BEGIN_DECLS
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_STAGE_H__
#define __CLUTTER_STAGE_H__
#include <clutter/clutter-color.h>
#include <clutter/clutter-event.h>
-#ifdef USE_GDKPIXBUF
-#include <gdk-pixbuf/gdk-pixbuf.h>
-#endif
-
G_BEGIN_DECLS
#define CLUTTER_TYPE_PERSPECTIVE (clutter_perspective_get_type ())
/**
* CLUTTER_STAGE_WIDTH:
*
- * Macro that evaluates to the current stage width
+ * Macro that evaluates to the width of the default stage
*
* Since: 0.2
*/
/**
* CLUTTER_STAGE_HEIGHT:
*
- * Macro that evaluates to the current stage height
+ * Macro that evaluates to the height of the default stage
*
* Since: 0.2
*/
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_TEXTURE_H
-#define _HAVE_CLUTTER_TEXTURE_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_TEXTURE_H__
+#define __CLUTTER_TEXTURE_H__
#include <clutter/clutter-actor.h>
#include <cogl/cogl.h>
G_END_DECLS
-#endif /* _HAVE_CLUTTER_TEXTURE_H */
+#endif /* __CLUTTER_TEXTURE_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_TIMELINE_H
-#define _HAVE_CLUTTER_TIMELINE_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_TIMELINE_H__
+#define __CLUTTER_TIMELINE_H__
#include <glib-object.h>
#include <clutter/clutter-fixed.h>
G_END_DECLS
-#endif /* _HAVE_CLUTTER_TIMELINE_H */
+#endif /* _CLUTTER_TIMELINE_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
* ClutterTimeoutPool: pool of timeout functions using the same slice of
* the GLib main loop
* Based on similar code by Tristan van Berkom
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_TIMEOUT_POOL_H__
#define __CLUTTER_TIMEOUT_POOL_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
#ifndef __CLUTTER_TYPES_H__
#define __CLUTTER_TYPES_H__
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_UNITS_H
-#define _HAVE_CLUTTER_UNITS_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly.h"
+#endif
+
+#ifndef __CLUTTER_UNITS_H__
+#define __CLUTTER_UNITS_H__
#include <glib-object.h>
#include <clutter/clutter-fixed.h>
G_END_DECLS
-#endif /* _HAVE_CLUTTER_UNITS_H */
+#endif /* __CLUTTER_UNITS_H__ */
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _HAVE_CLUTTER_UTIL_H
-#define _HAVE_CLUTTER_UTIL_H
+#if !defined(__CLUTTER_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <clutter/clutter.h> can be included directly."
+#endif
+
+#ifndef __CLUTTER_UTIL_H__
+#define __CLUTTER_UTIL_H__
#include <glib.h>
* Boston, MA 02111-1307, USA.
*/
-#ifndef _HAVE_CLUTTER_H
-#define _HAVE_CLUTTER_H
+#ifndef __CLUTTER_H__
+#define __CLUTTER_H__
+
+#define __CLUTTER_H_INSIDE__
#include "clutter-actor.h"
#include "clutter-alpha.h"
#include "clutter-enum-types.h"
-#endif
+#undef __CLUTTER_H_INSIDE__
+
+#endif /* __CLUTTER_H__ */
+#if !defined(__COGL_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <cogl/cogl.h> can be included directly."
+#endif
+
#ifndef __COGL_COLOR_H__
#define __COGL_COLOR_H__
+#if !defined(__COGL_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
+#error "Only <cogl/cogl.h> can be included directly."
+#endif
+
#ifndef __COGL_FIXED_H__
#define __COGL_FIXED_H__
#ifndef __COGL_H__
#define __COGL_H__
+#define __COGL_H_INSIDE__
+
#include <glib.h>
#include <cogl/cogl-defines-@CLUTTER_COGL@.h>
G_END_DECLS
+#undef __COGL_H_INSIDE__
+
#endif /* __COGL_H__ */
-I$(top_srcdir)/clutter/cogl/$(CLUTTER_COGL) \
-I$(top_builddir)/clutter \
-I$(top_builddir)/clutter/cogl \
+ -DCLUTTER_COMPILATION \
$(CLUTTER_CFLAGS) \
$(CLUTTER_DEBUG_CFLAGS) \
$(GCC_FLAGS)
-I$(top_srcdir)/clutter/cogl/$(CLUTTER_COGL) \
-I$(top_builddir)/clutter \
-I$(top_builddir)/clutter/cogl \
+ -DCLUTTER_COMPILATION \
$(CLUTTER_CFLAGS) \
$(CLUTTER_DEBUG_CFLAGS) \
$(GCC_FLAGS)
-I$(top_srcdir)/clutter/cogl/$(CLUTTER_COGL) \
-I$(top_builddir)/clutter \
-I$(top_builddir)/clutter/cogl \
+ -DCLUTTER_COMPILATION \
$(CLUTTER_CFLAGS) \
$(CLUTTER_DEBUG_CFLAGS) \
$(GCC_FLAGS)
INCLUDES = \
-DG_LOG_DOMAIN=\"ClutterEGL\" \
+ -DCLUTTER_COMPILATION \
-I$(top_srcdir) \
$(CLUTTER_CFLAGS) \
$(CLUTTER_DEBUG_CFLAGS) \
INCLUDES = \
-DG_LOG_DOMAIN=\"ClutterEGL\" \
+ -DCLUTTER_COMPILATION \
-I$(top_srcdir) \
-I$(top_srcdir)/clutter \
-I$(top_srcdir)/clutter/x11 \
INCLUDES = \
-DG_LOG_DOMAIN=\"ClutterFruity\" \
+ -DCLUTTER_COMPILATION \
-I$(top_srcdir) \
-I$(top_srcdir)/clutter \
$(CLUTTER_CFLAGS) \
-I$(top_srcdir)/clutter \
-I$(top_srcdir)/clutter/x11 \
-I$(top_builddir)/clutter \
+ -DCLUTTER_COMPILATION \
$(CLUTTER_CFLAGS) \
$(CLUTTER_DEBUG_CFLAGS) \
$(GCC_FLAGS)
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/Xatom.h>
-#include <clutter/clutter-stage.h>
+#include <clutter/clutter.h>
#include <clutter/glx/clutter-glx-texture-pixmap.h>
G_BEGIN_DECLS
INCLUDES = \
-DG_LOG_DOMAIN=\"ClutterOSX\" \
+ -DCLUTTER_COMPILATION \
-I$(top_srcdir) \
-I$(top_srcdir)/clutter \
-I$(top_builddir)/clutter \
INCLUDES = \
@GCC_FLAGS@ @CLUTTER_CFLAGS@ \
$(CLUTTER_DEBUG_CFLAGS) \
+ -DCLUTTER_COMPILATION \
-I$(top_srcdir) \
-I$(top_srcdir)/clutter \
-I$(top_builddir)/clutter
INCLUDES = \
-DG_LOG_DOMAIN=\"ClutterSDL\" \
+ -DCLUTTER_COMPILATION \
-I$(top_srcdir) \
-I$(top_srcdir)/clutter/ \
-I$(top_builddir)/clutter/ \
INCLUDES = \
-DG_LOG_DOMAIN=\"ClutterWin32\" \
+ -DCLUTTER_COMPILATION \
-I$(top_srcdir) \
-I$(top_srcdir)/clutter \
-I$(top_builddir)/clutter \
INCLUDES = \
- -DG_LOG_DOMAIN=\"ClutterX11\" \
- -I$(top_srcdir) \
+ -DG_LOG_DOMAIN=\"ClutterX11\" \
+ -DCLUTTER_COMPILATION \
+ -I$(top_srcdir) \
-I$(top_srcdir)/clutter \
-I$(top_builddir)/clutter \
- $(CLUTTER_CFLAGS) \
- $(CLUTTER_DEBUG_CFLAGS) \
+ $(CLUTTER_CFLAGS) \
+ $(CLUTTER_DEBUG_CFLAGS) \
$(GCC_FLAGS)
LDADD = $(CLUTTER_LIBS)
#include <glib.h>
#include <glib-object.h>
-
-
-#include <clutter/clutter-texture.h>
+#include <clutter/clutter.h>
#include <X11/Xlib.h>
G_BEGIN_DECLS
#include <X11/Xlib.h>
#include <X11/Xatom.h>
#include <X11/Xutil.h>
-#include <clutter/clutter-stage.h>
+#include <clutter/clutter.h>
#include <clutter/x11/clutter-x11-enum-types.h>
#include <clutter/x11/clutter-x11-texture-pixmap.h>
#define IMAGE "redhand.png"
# ifdef USE_GDKPIXBUF
+# include <gdk-pixbuf/gdk-pixbuf.h>
+
static gboolean disable_x11 = FALSE;
static gboolean disable_glx = FALSE;