Enlightenment CVS committal
Author : dj2
Project : e17
Module : libs/ewl
Dir : e17/libs/ewl/src/lib
Modified Files:
Ewl.h.in Makefile.am ewl_media.c ewl_media.h
Log Message:
- Ewl_Media widget will always be available at runtime now. It will
conditionally compile in the emotion code if it is available.
To determine if ewl_media has support for emotion you can check
ewl_media_is_available(). This will return TRUE if the media support is
available, FALSE otherwise. Also, ewl_media_new() will return NULL if
emotion isn't available.
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/lib/Ewl.h.in,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -3 -r1.32 -r1.33
--- Ewl.h.in 18 Feb 2006 06:28:30 -0000 1.32
+++ Ewl.h.in 22 Feb 2006 17:39:13 -0000 1.33
@@ -327,7 +327,7 @@
#include <ewl_datepicker.h>
#include <ewl_icon.h>
#include <ewl_iconbox.h>
[EMAIL PROTECTED]@
+#include <ewl_media.h>
#include <ewl_notebook.h>
#include <ewl_progressbar.h>
#include <ewl_paned.h>
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/lib/Makefile.am,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -3 -r1.22 -r1.23
--- Makefile.am 6 Feb 2006 03:40:26 -0000 1.22
+++ Makefile.am 22 Feb 2006 17:39:14 -0000 1.23
@@ -44,6 +44,7 @@
ewl_image.h \
ewl_imenu.h \
ewl_macros.h \
+ ewl_media.h \
ewl_menu.h \
ewl_menubar.h \
ewl_menu_base.h \
@@ -73,12 +74,7 @@
ewl_theme.h \
ewl_view.h \
ewl_widget.h \
- ewl_window.h
-
-if BUILD_EMOTION_SUPPORT
-EWLEMOTIONHEADERS= \
- ewl_media.h
-endif
+ ewl_window.h
EWLSOURCES= \
ewl_attach.c \
@@ -110,6 +106,7 @@
ewl_icon.c \
ewl_iconbox.c \
ewl_image.c \
+ ewl_media.c \
ewl_imenu.c \
ewl_menu.c \
ewl_menubar.c \
@@ -144,18 +141,11 @@
ewl_private.h \
$(EWLHEADERS)
-if BUILD_EMOTION_SUPPORT
-EWLEMOTIONSOURCES= \
- ewl_media.c \
- $(EWLEMOTIONHEADERS)
-endif
-
libewl_la_SOURCES = \
- $(EWLSOURCES) \
- $(EWLEMOTIONSOURCES)
+ $(EWLSOURCES)
installed_headersdir = $(prefix)/include/ewl
-installed_headers_DATA = $(EWLHEADERS) $(EWLEMOTIONHEADERS)
+installed_headers_DATA = $(EWLHEADERS)
libewl_la_LIBADD = @EDJE_LIBS@ @ECORE_LIBS@ @EVAS_LIBS@ @EMOTION_LIBS@ -lm
libewl_la_LDFLAGS = -version-info 0:0:0
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/lib/ewl_media.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -3 -r1.10 -r1.11
--- ewl_media.c 12 Jan 2006 18:21:18 -0000 1.10
+++ ewl_media.c 22 Feb 2006 17:39:14 -0000 1.11
@@ -14,10 +14,11 @@
Ewl_Widget *
ewl_media_new(void)
{
- Ewl_Media *m;
+ Ewl_Media *m = NULL;
DENTER_FUNCTION(DLEVEL_STABLE);
+#ifdef BUILD_EMOTION_SUPPORT
m = NEW(Ewl_Media, 1);
if (!m)
DRETURN_PTR(NULL, DLEVEL_STABLE);
@@ -26,6 +27,7 @@
ewl_widget_destroy(EWL_WIDGET(m));
DRETURN_PTR(NULL, DLEVEL_STABLE);
}
+#endif
DRETURN_PTR(EWL_WIDGET(m), DLEVEL_STABLE);
}
@@ -63,6 +65,18 @@
DRETURN_INT(TRUE, DLEVEL_STABLE);
}
+unsigned int
+ewl_media_is_available(void)
+{
+ DENTER_FUNCTION(DLEVEL_STABLE);
+
+#ifdef BUILD_EMOTION_SUPPORT
+ DRETURN_INT(TRUE, DLEVEL_STABLE);
+#else
+ DRETURN_INT(FALSE, DLEVEL_STABLE);
+#endif
+}
+
/**
* @param m: the media area widget to set the module
* @param module: the module to set in the media widget @a m
@@ -82,6 +96,7 @@
m->module = module;
+#ifdef BUILD_EMOTION_SUPPORT
/*
* Initialize emotion
*/
@@ -101,6 +116,7 @@
break;
}
}
+#endif
DRETURN_INT(ret, DLEVEL_STABLE);
}
@@ -139,6 +155,7 @@
IF_FREE(m->media);
m->media = strdup(media);
+#ifdef BUILD_EMOTION_SUPPORT
/*
* Update the emotion to the new file
*/
@@ -146,6 +163,7 @@
emotion_object_file_set(m->video, m->media);
ewl_media_size_update(m);
}
+#endif
DLEAVE_FUNCTION(DLEVEL_STABLE);
}
@@ -179,8 +197,10 @@
DCHECK_PARAM_PTR_RET("m", m, 0);
DCHECK_TYPE_RET("m", m, EWL_MEDIA_TYPE, 0);
+#ifdef BUILD_EMOTION_SUPPORT
if (m->video)
length = emotion_object_play_length_get(m->video);
+#endif
DRETURN_INT(length, DLEVEL_STABLE);
}
@@ -227,11 +247,13 @@
ewl_media_play_set(Ewl_Media *m, int p)
{
DENTER_FUNCTION(DLEVEL_STABLE)
- DCHECK_PARAM_PTR("m", m);
+ DCHECK_PARAM_PTR("m", m);
DCHECK_TYPE("m", m, EWL_MEDIA_TYPE);
+#ifdef BUILD_EMOTION_SUPPORT
if (m->video)
emotion_object_play_set(m->video, p);
+#endif
DLEAVE_FUNCTION(DLEVEL_STABLE);
}
@@ -247,11 +269,13 @@
int seekable = 0;
DENTER_FUNCTION(DLEVEL_STABLE)
- DCHECK_PARAM_PTR_RET("m", m, 0);
+ DCHECK_PARAM_PTR_RET("m", m, 0);
DCHECK_TYPE_RET("m", m, EWL_MEDIA_TYPE, 0);
+#ifdef BUILD_EMOTION_SUPPORT
if (m->video && !m->block_seek)
seekable = emotion_object_seekable_get(m->video);
+#endif
DRETURN_INT(seekable, DLEVEL_STABLE);
}
@@ -267,11 +291,13 @@
double p = 0.0;
DENTER_FUNCTION(DLEVEL_STABLE)
- DCHECK_PARAM_PTR_RET("m", m, 0);
+ DCHECK_PARAM_PTR_RET("m", m, 0);
DCHECK_TYPE_RET("m", m, EWL_MEDIA_TYPE, 0);
+#ifdef BUILD_EMOTION_SUPPORT
if (m->video)
p = emotion_object_position_get(m->video);
+#endif
DRETURN_FLOAT(p, DLEVEL_STABLE);
}
@@ -317,14 +343,16 @@
ewl_media_position_set(Ewl_Media *m, double p)
{
DENTER_FUNCTION(DLEVEL_STABLE)
- DCHECK_PARAM_PTR("m", m);
+ DCHECK_PARAM_PTR("m", m);
DCHECK_TYPE("m", m, EWL_MEDIA_TYPE);
+#ifdef BUILD_EMOTION_SUPPORT
if (m->video && ewl_media_seekable_get(m)) {
m->block_seek = 1;
emotion_object_position_set(m->video, p);
m->block_seek = 0;
}
+#endif
DLEAVE_FUNCTION(DLEVEL_STABLE);
}
@@ -340,11 +368,13 @@
int mute = 0;
DENTER_FUNCTION(DLEVEL_STABLE)
- DCHECK_PARAM_PTR_RET("m", m, 0);
+ DCHECK_PARAM_PTR_RET("m", m, 0);
DCHECK_TYPE("m", m, EWL_MEDIA_TYPE);
+#ifdef BUILD_EMOTION_SUPPORT
if (m->video)
mute = emotion_object_audio_mute_get(m->video);
+#endif
DRETURN_INT(mute, DLEVEL_STABLE);
}
@@ -359,11 +389,13 @@
ewl_media_audio_mute_set(Ewl_Media *m, int mute)
{
DENTER_FUNCTION(DLEVEL_STABLE)
- DCHECK_PARAM_PTR("m", m);
+ DCHECK_PARAM_PTR("m", m);
DCHECK_TYPE("m", m, EWL_MEDIA_TYPE);
+#ifdef BUILD_EMOTION_SUPPORT
if (m->video)
emotion_object_audio_mute_set(m->video, mute);
+#endif
DLEAVE_FUNCTION(DLEVEL_STABLE);
}
@@ -379,11 +411,13 @@
double v = 0.0;
DENTER_FUNCTION(DLEVEL_STABLE)
- DCHECK_PARAM_PTR_RET("m", m, 0);
+ DCHECK_PARAM_PTR_RET("m", m, 0);
DCHECK_TYPE_RET("m", m, EWL_MEDIA_TYPE, 0.0);
+#ifdef BUILD_EMOTION_SUPPORT
if (m->video)
emotion_object_audio_volume_get(m->video);
+#endif
DRETURN_FLOAT(v, DLEVEL_STABLE);
}
@@ -398,11 +432,13 @@
ewl_media_audio_volume_set(Ewl_Media *m, double v)
{
DENTER_FUNCTION(DLEVEL_STABLE)
- DCHECK_PARAM_PTR("m", m);
+ DCHECK_PARAM_PTR("m", m);
DCHECK_TYPE("m", m, EWL_MEDIA_TYPE);
+#ifdef BUILD_EMOTION_SUPPORT
if (m->video)
emotion_object_audio_volume_set(m->video, v);
+#endif
DLEAVE_FUNCTION(DLEVEL_STABLE);
}
@@ -425,6 +461,7 @@
*/
emb = ewl_embed_widget_find(w);
+#ifdef BUILD_EMOTION_SUPPORT
/*
* Create the emotion
*/
@@ -433,6 +470,7 @@
emotion_object_file_set(m->video, m->media);
ewl_media_size_update(m);
}
+#endif
if (w->fx_clip_box)
evas_object_clip_set(m->video, w->fx_clip_box);
@@ -498,7 +536,9 @@
DCHECK_PARAM_PTR("m", m);
DCHECK_TYPE("m", m, EWL_MEDIA_TYPE);
+#ifdef BUILD_EMOTION_SUPPORT
emotion_object_size_get(m->video, &width, &height);
+#endif
if (width && height)
ewl_object_preferred_inner_size_set(EWL_OBJECT(m), width,
height);
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/lib/ewl_media.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -3 -r1.8 -r1.9
--- ewl_media.h 17 Feb 2006 06:43:33 -0000 1.8
+++ ewl_media.h 22 Feb 2006 17:39:14 -0000 1.9
@@ -1,7 +1,9 @@
#ifndef EWL_MEDIA_H
#define EWL_MEDIA_H
+#ifdef BUILD_EMOTION_SUPPORT
#include <Emotion.h>
+#endif
/**
* @defgroup Ewl_Media Ewl_Media: A Multi media widget
@@ -44,6 +46,8 @@
Ewl_Widget *ewl_media_new(void);
int ewl_media_init(Ewl_Media *m);
+unsigned int ewl_media_is_available(void);
+
int ewl_media_module_set(Ewl_Media *m,
Ewl_Media_Module_Type module);
Ewl_Media_Module_Type ewl_media_module_get(Ewl_Media *m);
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
_______________________________________________
enlightenment-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs