[ease/libraries: 155/155] [flutter] foreach-enabled Clutter for Vala



commit 03a222dcb96d7eaab65651173fa920dde084b1f7
Author: Nate Stedman <natesm gmail com>
Date:   Tue Jul 27 00:20:38 2010 -0400

    [flutter] foreach-enabled Clutter for Vala
    
    Added "libflutter", which "ease-core" now depends on.
    
    Moved ease-clutter-iterables to libflutter.

 .gitignore                                         |    5 +-
 Makefile.am                                        |    8 ++-
 configure.ac                                       |    4 +-
 ease-core-0.3.pc.in                                |    6 +-
 ease-core/Makefile.am                              |   15 ++++--
 ease-core/ease-core-0.3.vapi                       |   20 +-------
 ease-core/ease-slide-actor.vala                    |    6 +-
 flutter-0.3.pc.in                                  |   11 ++++
 flutter/Makefile.am                                |   51 ++++++++++++++++++++
 .../flutter.vala                                   |   23 ++++++---
 vapi/ease-core-0.3.deps                            |    5 ++
 vapi/flutter-0.3.deps                              |    2 +
 12 files changed, 111 insertions(+), 45 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 55628f6..19107cc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -19,10 +19,9 @@ libease/tmp-introspect*
 ease
 *.h
 *.o
-src/*.c
-libease/*.c
-libease/*.vapi
 *.lo
+*.vapi
+*.c
 .libs
 
 *.ogv
diff --git a/Makefile.am b/Makefile.am
index 198718a..a7c97f7 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,6 +1,6 @@
 NULL =
 
-SUBDIRS = po data ease-core
+SUBDIRS = po data flutter ease-core
 	
 bin_PROGRAMS = ease
 
@@ -10,11 +10,13 @@ ease_SOURCES = src/main.vala
 # compiler flags
 ease_VALAFLAGS = \
 	--pkg ease-core-0.3 \
+	--pkg flutter-0.3 \
 	$(EASE_PACKAGES) \
-	--vapidir ./ease-core
+	--vapidir vapi
 
 ease_LDADD = \
 	./ease-core/libease-core-0.3.la \
+	./flutter/libflutter-0.3.la \
 	$(EASE_LIBS) \
 	$(NULL)
 	
@@ -22,7 +24,7 @@ INCLUDES = \
 	-include config.h \
 	$(EASE_CFLAGS)
 
-EASE_CFLAGS += -w -I./ease-core/
+EASE_CFLAGS += -w -I./ease-core/ -I./flutter
 
 AM_CPPFLAGS = \
 	$(EASE_CFLAGS) \
diff --git a/configure.ac b/configure.ac
index 11d28af..defa686 100644
--- a/configure.ac
+++ b/configure.ac
@@ -6,7 +6,9 @@ AC_CONFIG_FILES([Makefile
 	  po/Makefile.in
 	  data/Makefile
 	  ease-core/Makefile
-	  ease-core-0.3.pc])
+	  flutter/Makefile
+	  ease-core-0.3.pc
+	  flutter-0.3.pc])
 
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_HEADERS([config.h])
diff --git a/ease-core-0.3.pc.in b/ease-core-0.3.pc.in
index 15582f5..c6034f7 100644
--- a/ease-core-0.3.pc.in
+++ b/ease-core-0.3.pc.in
@@ -3,9 +3,9 @@ exec_prefix= exec_prefix@
 libdir= libdir@
 includedir= includedir@
 
-Name: libease
+Name: libease-core
 Description: Ease backend library
 Requires: gtk+-2.0 clutter-1.0 clutter-gst-1.0 clutter-gtk-0.10 gee-1.0 clutter-gst-1.0 json-glib-1.0 libarchive gmodule-2.0
 Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -lease-0.1
-Cflags: -I${includedir}/ease-0.1 -I${libdir}/ease-0.1/include
+Libs: -L${libdir} -lease-core-0.3
+Cflags: -I${includedir}/ease-core-0.3 -I${libdir}/ease-core-0.3/include
diff --git a/ease-core/Makefile.am b/ease-core/Makefile.am
index da2d68a..88cd63a 100644
--- a/ease-core/Makefile.am
+++ b/ease-core/Makefile.am
@@ -3,7 +3,7 @@ lib_LTLIBRARIES = libease-core-0.3.la
 INCLUDES = \
 	$(EASE_CFLAGS)
 
-EASE_CFLAGS += -w
+EASE_CFLAGS += -w -I../flutter
 
 AM_CPPFLAGS = \
 	$(EASE_CFLAGS) \
@@ -16,7 +16,6 @@ libease_core_0_3_la_SOURCES = \
 	ease-actor.vala \
 	ease-animated-zoom-slider.vala \
 	ease-close-confirm-dialog.vala \
-	ease-clutter-iterables.vala \
 	ease-color.vala \
 	ease-dialogs.vala \
 	ease-document.vala \
@@ -65,26 +64,30 @@ libease_core_0_3_la_SOURCES = \
 # compiler flags
 libease_core_0_3_la_VALAFLAGS = \
 	$(EASE_PACKAGES) \
-	--vapi=ease-core-0.3.vapi \
+	--vapi=../vapi/ease-core-0.3.vapi \
 	--header=libease-core.h \
 	--thread \
 	--library EaseCore-0.3 \
 	--gir=EaseCore-0.3.gir \
+	--vapidir=../flutter \
+	--pkg flutter-0.3 \
 	-g \
 	$(NULL)
 
+libease_core_0_3_la_LIBADD = ../flutter/libflutter-0.3.la
+
 libease_core_0_3_la_CFLAGS = $(EASE_CFLAGS)
 libease_core_0_3_la_LDFLAGS = $(EASE_LDFLAGS)
 
 # build typelib
 
 # header installation
-libease_includedir=$(includedir)/ease-0.3/
+libease_includedir=$(includedir)/ease/
 libease_include_HEADERS = libease-core.h
 
 # vapi installation
 vapidir = $(datadir)/vala/vapi
-vapi_DATA = ease-core-0.3.vapi
+vapi_DATA = ../vapi/ease-core-0.3.vapi ../vapi/ease-core-0.3.deps
 
 # gir installation
 girdir = $(datadir)/gir-1.0
@@ -94,7 +97,7 @@ EXTRA_DIST = EaseCore-0.3.gir
 # remove generated files on `make clean`
 CLEANFILES = \
 	$(subst .vala,.c,$(libease_core_0_3_la_SOURCES)) \
-	ease-core-0.3.vapi \
+	../vapi/ease-core-0.3.vapi \
 	EaseCore-0.3.gir \
 	libease-core.h
 
diff --git a/ease-core/ease-core-0.3.vapi b/ease-core/ease-core-0.3.vapi
index df7237a..642c737 100644
--- a/ease-core/ease-core-0.3.vapi
+++ b/ease-core/ease-core-0.3.vapi
@@ -55,14 +55,6 @@ namespace Ease {
 		public CloseConfirmDialog (string filename, int seconds);
 	}
 	[CCode (cheader_filename = "libease-core.h")]
-	public class ClutterIterableGroup : Clutter.Group, Ease.ClutterIterableContainer {
-		public ClutterIterableGroup ();
-	}
-	[CCode (cheader_filename = "libease-core.h")]
-	public class ClutterIterableStage : Clutter.Stage, Ease.ClutterIterableContainer {
-		public ClutterIterableStage ();
-	}
-	[CCode (cheader_filename = "libease-core.h")]
 	public class Color : GLib.Object {
 		public Color ();
 		public Ease.Color copy ();
@@ -406,7 +398,7 @@ namespace Ease {
 	[CCode (cheader_filename = "libease-core.h")]
 	public class SlideActor : Clutter.Group {
 		public Clutter.CairoTexture background;
-		public Ease.ClutterIterableGroup contents;
+		public Flutter.Group contents;
 		public Ease.ActorContext context;
 		public const int EASE_DROP;
 		public const int EASE_PIVOT;
@@ -604,16 +596,6 @@ namespace Ease {
 		public signal void value_changed ();
 	}
 	[CCode (cheader_filename = "libease-core.h")]
-	public interface ClutterIterableContainer : Clutter.Container {
-		[CCode (ref_function = "ease_clutter_iterable_container_iterator_ref", unref_function = "ease_clutter_iterable_container_iterator_unref", cheader_filename = "libease-core.h")]
-		public class Iterator {
-			public Iterator (Ease.ClutterIterableContainer self);
-			public Clutter.Actor @get ();
-			public bool next ();
-		}
-		public Ease.ClutterIterableContainer.Iterator iterator ();
-	}
-	[CCode (cheader_filename = "libease-core.h")]
 	public interface UndoSource : GLib.Object {
 		protected void forward (Ease.UndoItem action);
 		protected void listen (Ease.UndoSource source);
diff --git a/ease-core/ease-slide-actor.vala b/ease-core/ease-slide-actor.vala
index 4d948d3..92a5f92 100644
--- a/ease-core/ease-slide-actor.vala
+++ b/ease-core/ease-slide-actor.vala
@@ -37,7 +37,7 @@ public class Ease.SlideActor : Clutter.Group
 	/**
 	 * The group for the slide's contents.
 	 */
-	public ClutterIterableGroup contents;
+	public Flutter.Group contents;
 
 	/**
 	 * The context of the actor (presentation, etc.)
@@ -184,7 +184,7 @@ public class Ease.SlideActor : Clutter.Group
 		set_background();
 		add_actor(background);
 
-		contents = new ClutterIterableGroup();
+		contents = new Flutter.Group();
 
 		foreach (var e in slide.elements)
 		{
@@ -213,7 +213,7 @@ public class Ease.SlideActor : Clutter.Group
 		background = new Clutter.CairoTexture(document.width, document.height);
 		
 		// create a blank contents actor
-		contents = new ClutterIterableGroup();
+		contents = new Flutter.Group();
 		
 		// set the background size
 		background.width = width_px;
diff --git a/flutter-0.3.pc.in b/flutter-0.3.pc.in
new file mode 100644
index 0000000..507b56d
--- /dev/null
+++ b/flutter-0.3.pc.in
@@ -0,0 +1,11 @@
+prefix= prefix@
+exec_prefix= exec_prefix@
+libdir= libdir@
+includedir= includedir@
+
+Name: libflutter
+Description: Foreach-enabled Clutter for Vala
+Requires: clutter-1.0
+Version: @PACKAGE_VERSION@
+Libs: -L${libdir} -lflutter-0.3
+Cflags: -I${includedir}/flutter-0.3 -I${libdir}/flutter-0.3/include
diff --git a/flutter/Makefile.am b/flutter/Makefile.am
new file mode 100644
index 0000000..19c6ea1
--- /dev/null
+++ b/flutter/Makefile.am
@@ -0,0 +1,51 @@
+lib_LTLIBRARIES = libflutter-0.3.la
+
+INCLUDES = \
+	$(EASE_CFLAGS)
+
+EASE_CFLAGS += -w
+
+AM_CPPFLAGS = \
+	$(EASE_CFLAGS) \
+	-include $(CONFIG_HEADER) \
+	$(NULL)
+
+# source files
+libflutter_0_3_la_SOURCES = flutter.vala
+
+# compiler flags
+libflutter_0_3_la_VALAFLAGS = \
+	--pkg clutter-1.0 \
+	--vapi=../vapi/flutter-0.3.vapi \
+	--header=flutter.h \
+	--thread \
+	--library Flutter-0.3 \
+	--gir=Flutter-0.3.gir \
+	-g \
+	$(NULL)
+
+libflutter_0_3_la_CFLAGS = $(EASE_CFLAGS)
+libflutter_0_3_la_LDFLAGS = $(EASE_LDFLAGS)
+
+# build typelib
+
+# header installation
+flutter_includedir=$(includedir)/flutter/
+flutter_include_HEADERS = flutter.h
+
+# vapi installation
+vapidir = $(datadir)/vala/vapi
+vapi_DATA = ../vapi/flutter-0.3.vapi ../vapi/flutter-0.3.deps
+
+# gir installation
+girdir = $(datadir)/gir-1.0
+gir_DATA = Flutter-0.3.gir
+EXTRA_DIST = Flutter-0.3.gir
+
+# remove generated files on `make clean`
+CLEANFILES = \
+	$(subst .vala,.c,$(flutter_0_3_la_SOURCES)) \
+	../vapi/flutter-0.3.vapi \
+	Flutter-0.3.gir \
+	flutter.h
+
diff --git a/ease-core/ease-clutter-iterables.vala b/flutter/flutter.vala
similarity index 71%
rename from ease-core/ease-clutter-iterables.vala
rename to flutter/flutter.vala
index e02de15..6a85eda 100644
--- a/ease-core/ease-clutter-iterables.vala
+++ b/flutter/flutter.vala
@@ -1,4 +1,4 @@
-/*  Ease, a GTK presentation application
+/*  Flutter: Foreach-enabled Clutter containers for Vala
     Copyright (C) 2010 Nate Stedman
 
     This program is free software: you can redistribute it and/or modify
@@ -18,7 +18,7 @@
 /**
  * Clutter container mixin, iterable with foreach()
  */
-public interface Ease.ClutterIterableContainer : Clutter.Container
+public interface Flutter.Container : Clutter.Container
 {
 	public Iterator iterator()
 	{
@@ -29,7 +29,7 @@ public interface Ease.ClutterIterableContainer : Clutter.Container
 	{
 		private unowned List<Clutter.Actor>* itr;
 		
-		public Iterator(ClutterIterableContainer self)
+		public Iterator(Container self)
 		{
 			itr = self.get_children();
 		}
@@ -49,15 +49,24 @@ public interface Ease.ClutterIterableContainer : Clutter.Container
 }
 
 /**
- * ClutterGroup with { link ClutterIterableContainer} mixin.
+ * ClutterGroup with { link Container} mixin.
  */
-public class Ease.ClutterIterableGroup : Clutter.Group, ClutterIterableContainer
+public class Flutter.Group : Clutter.Group, Container
 {
 }
 
 /**
- * ClutterStage with { link ClutterIterableContainer} mixin.
+ * ClutterStage with { link Container} mixin.
  */
-public class Ease.ClutterIterableStage : Clutter.Stage, ClutterIterableContainer
+public class Flutter.Stage : Clutter.Stage, Container
 {
 }
+
+/**
+ * ClutterBox with { link Container} mixin.
+ */
+public class Flutter.Box : Clutter.Box, Container
+{
+}
+
+
diff --git a/vapi/ease-core-0.3.deps b/vapi/ease-core-0.3.deps
new file mode 100644
index 0000000..c7dcf66
--- /dev/null
+++ b/vapi/ease-core-0.3.deps
@@ -0,0 +1,5 @@
+flutter-0.3
+clutter-gtk-0.10
+gee-1.0
+json-glib-1.0
+libarchive
diff --git a/vapi/flutter-0.3.deps b/vapi/flutter-0.3.deps
new file mode 100644
index 0000000..87047e6
--- /dev/null
+++ b/vapi/flutter-0.3.deps
@@ -0,0 +1,2 @@
+clutter-1.0
+



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]