From 2c9cbe32f30141dac393b4e17ba07443423713e3 Mon Sep 17 00:00:00 2001 From: Cedric BAIL Date: Thu, 30 Jun 2011 17:18:13 +0000 Subject: [PATCH] elementary: add higger level elm_video object. SVN revision: 60877 --- legacy/elementary/configure.ac | 14 ++++- legacy/elementary/data/themes/default.edc | 63 +++++++++++++++++++++++ legacy/elementary/src/lib/Elementary.h.in | 21 +++++++- legacy/elementary/src/lib/Makefile.am | 3 ++ 4 files changed, 99 insertions(+), 2 deletions(-) diff --git a/legacy/elementary/configure.ac b/legacy/elementary/configure.ac index 6ea6a99091..8355255591 100644 --- a/legacy/elementary/configure.ac +++ b/legacy/elementary/configure.ac @@ -229,6 +229,17 @@ PKG_CHECK_MODULES([EIO], AM_CONDITIONAL([HAVE_EIO], [test "x${have_eio}" = "xyes"]) +PKG_CHECK_MODULES([EMOTION], + [emotion], + [ + have_emotion="yes" + AC_DEFINE(HAVE_EMOTION, 1, [Use Emotion for asynchronous file access]) + requirement_elm="emotion ${requirement_elm}" + ], + [have_emotion="no"]) + +AM_CONDITIONAL([HAVE_EMOTION], [test "x${have_emotion}" = "xyes"]) + requirement_elm="edje >= 1.0.0 ecore-file >= 1.0.0 ecore-evas >= 1.0.0 ecore >= 1.0.0 evas >= 1.0.0 eet >= 1.4.0 eina >= 1.0.0 ${requirement_elm}" have_elementary_x="no" @@ -605,7 +616,8 @@ echo " EWeather...............: ${have_elementary_eweather}" echo " EMap...................: ${have_elementary_emap}" echo " Ethumb.................: ${have_elementary_ethumb}" echo " Quick Launch...........: ${have_fork}" -echo " eio....................: ${have_eio}" +echo " EIO....................: ${have_eio}" +echo " Emotion................: ${have_emotion}" echo echo " eet......................: ${eet_eet}" echo " edje_cc..................: ${edje_cc}" diff --git a/legacy/elementary/data/themes/default.edc b/legacy/elementary/data/themes/default.edc index e2f5471357..ff45ea2ca3 100644 --- a/legacy/elementary/data/themes/default.edc +++ b/legacy/elementary/data/themes/default.edc @@ -36504,4 +36504,67 @@ collections { } } } + + group { + name: "elm/video/base/default"; + + parts { + part { + name: "clipper"; + type: RECT; + + description { + color: 255 255 255 255; + } + description { + state: darker 0.0; + color: 128 128 128 255; + } + } + part { + name: "elm.swallow.video"; + type: SWALLOW; + + clip_to: "clipper"; + mouse_events: 0; + + description { + aspect_preference: BOTH; + aspect: 1 1; + } + } + } + + programs { + program { + signal: "elm,video,load"; + source: "elm"; + + action: STATE_SET darker 0.0; + target: clipper; + } + program { + signal: "elm,video,play"; + source: "elm"; + + action: STATE_SET default 0.0; + target: clipper; + } + program { + signal: "elm,video,end"; + source: "elm"; + + action: STATE_SET darker 0.0; + target: clipper; + transition: LINEAR 0.5; + } + program { + signal: "elm,video,pause"; + source: "elm"; + + action: STATE_SET darker 0.0; + target: clipper; + } + } + } } diff --git a/legacy/elementary/src/lib/Elementary.h.in b/legacy/elementary/src/lib/Elementary.h.in index d108b7969c..a82e433114 100644 --- a/legacy/elementary/src/lib/Elementary.h.in +++ b/legacy/elementary/src/lib/Elementary.h.in @@ -6398,7 +6398,26 @@ extern "C" { EAPI Evas_Object *elm_genscroller_add(Evas_Object *parent); EAPI void elm_genscroller_world_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h); - + + EAPI Evas_Object *elm_video_add(Evas_Object *parent); + EAPI void elm_video_file_set(Evas_Object *video, const char *filename); + EAPI void elm_video_uri_set(Evas_Object *video, const char *uri); + EAPI Evas_Object *elm_video_emotion_get(Evas_Object *video); + EAPI void elm_video_play(Evas_Object *video); + EAPI void elm_video_pause(Evas_Object *video); + EAPI void elm_video_stop(Evas_Object *video); + EAPI Eina_Bool elm_video_is_playing(Evas_Object *video); + EAPI Eina_Bool elm_video_audio_mute_get(Evas_Object *video); + EAPI void elm_video_audio_mute_set(Evas_Object *video, Eina_Bool mute); + EAPI double elm_video_audio_level_get(Evas_Object *video); + EAPI void elm_video_audio_level_set(Evas_Object *video, double volume); + EAPI double elm_video_play_position_get(Evas_Object *video); + EAPI void elm_video_play_position_set(Evas_Object *video, double position); + EAPI double elm_video_play_length_get(Evas_Object *video); + EAPI void elm_video_remember_position_set(Evas_Object *video, Eina_Bool remember); + EAPI Eina_Bool elm_video_remember_position_get(Evas_Object *video); + EAPI const char *elm_video_title_get(Evas_Object *video); + #ifdef __cplusplus } #endif diff --git a/legacy/elementary/src/lib/Makefile.am b/legacy/elementary/src/lib/Makefile.am index 8781fc6ae3..0f8699984b 100644 --- a/legacy/elementary/src/lib/Makefile.am +++ b/legacy/elementary/src/lib/Makefile.am @@ -24,6 +24,7 @@ AM_CPPFLAGS = \ @ELEMENTARY_EMAP_CFLAGS@ \ @EVIL_CFLAGS@ \ @EIO_CFLAGS@ \ +@EMOTION_CFLAGS@ \ @EFL_PTHREAD_CFLAGS@ if ELEMENTARY_WINDOWS_BUILD @@ -107,6 +108,7 @@ elm_toggle.c \ elm_toolbar.c \ elm_transit.c \ elm_util.c \ +elm_video.c \ elm_widget.c \ elm_win.c \ els_box.c \ @@ -136,6 +138,7 @@ libelementary_la_LIBADD = \ @ELEMENTARY_EMAP_LIBS@ \ @EVIL_LIBS@ \ @EIO_LIBS@ \ +@EMOTION_LIBS@ \ @EFL_PTHREAD_LIBS@ libelementary_la_LDFLAGS = \ -no-undefined @lt_enable_auto_import@ \