From: <enl...@li...> - 2004-01-20 10:20:17
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb Log Message: initial import of epbb, you need a powerbook and ppc to use this, but it's using edje/ecore Status: Vendor Tag: epbb Release Tags: start N misc/epbb/.cvsignore N misc/epbb/AUTHORS N misc/epbb/COPYING N misc/epbb/ChangeLog N misc/epbb/Doxyfile N misc/epbb/INSTALL N misc/epbb/Makefile.am N misc/epbb/NEWS N misc/epbb/README N misc/epbb/TODO N misc/epbb/autogen.sh N misc/epbb/configure.in N misc/epbb/gendoc N misc/epbb/data/Makefile.am N misc/epbb/data/fonts/Makefile.am N misc/epbb/data/fonts/Vera.ttf N misc/epbb/data/fonts/VeraBI.ttf N misc/epbb/data/fonts/VeraBd.ttf N misc/epbb/data/fonts/VeraIt.ttf N misc/epbb/data/fonts/VeraMoBI.ttf N misc/epbb/data/fonts/VeraMoBd.ttf N misc/epbb/data/fonts/VeraMoIt.ttf N misc/epbb/data/fonts/VeraMono.ttf N misc/epbb/data/fonts/VeraSe.ttf N misc/epbb/data/fonts/VeraSeBd.ttf N misc/epbb/data/fonts/nationff.ttf N misc/epbb/data/images/background.png N misc/epbb/data/images/battery.png N misc/epbb/data/images/bg.png N misc/epbb/data/images/bg_shadow.png N misc/epbb/data/images/brightness.png N misc/epbb/data/images/mouse.png N misc/epbb/data/images/mute.png N misc/epbb/data/images/noaudio.png N misc/epbb/data/images/progress_empty.png N misc/epbb/data/images/progress_full.png N misc/epbb/data/images/sleep.png N misc/epbb/data/images/tpmode0.png N misc/epbb/data/images/tpmode1.png N misc/epbb/data/images/tpmode2.png N misc/epbb/data/images/tpmode3.png N misc/epbb/data/images/volume.png N misc/epbb/data/themes/Makefile.am N misc/epbb/data/themes/default/default.edc N misc/epbb/data/themes/default/Makefile.am N misc/epbb/data/themes/default/parts/status.edc N misc/epbb/data/themes/default/parts/bg.edc N misc/epbb/data/themes/default/parts/message.edc N misc/epbb/doc/foot.html N misc/epbb/doc/e.css N misc/epbb/doc/head.html N misc/epbb/doc/epbbuttons.doxygen N misc/epbb/doc/images/e_mini.png N misc/epbb/doc/images/hilite.png N misc/epbb/src/.cvsignore N misc/epbb/src/Makefile.am N misc/epbb/src/bin/.cvsignore N misc/epbb/src/bin/.indent.pro N misc/epbb/src/bin/Makefile.am N misc/epbb/src/bin/epbb.c N misc/epbb/src/bin/epbb.h N misc/epbb/src/bin/main.c No conflicts created by this import |
From: <enl...@li...> - 2004-01-20 10:31:01
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb Modified Files: configure.in Log Message: add fonts to the build directories =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/configure.in,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- configure.in 20 Jan 2004 10:19:37 -0000 1.1.1.1 +++ configure.in 20 Jan 2004 10:31:01 -0000 1.2 @@ -123,6 +123,7 @@ src/Makefile src/bin/Makefile data/Makefile +data/fonts/Makefile data/themes/Makefile data/themes/default/Makefile ]) |
From: <enl...@li...> - 2004-01-20 10:32:49
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/src/bin Modified Files: epbb.c main.c Log Message: use variables autofoo tells us about, it builds/installs/runs fine now :) =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/src/bin/epbb.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- epbb.c 20 Jan 2004 10:20:13 -0000 1.1.1.1 +++ epbb.c 20 Jan 2004 10:32:48 -0000 1.2 @@ -8,6 +8,8 @@ #include<string.h> #include<limits.h> #include "epbb.h" +#include "../config.h" + #define DISPLAY_TIMEOUT 1.75 #define UN(ptr) ptr = 0 @@ -24,7 +26,7 @@ result->ee = ee; result->obj = edje_object_add(ecore_evas_get(ee)); - if(edje_object_file_set(result->obj, "../data/epbb.eet", "Epbb")) + if(edje_object_file_set(result->obj, PACKAGE_DATA_DIR"/themes/default.eet", "Epbb")) { /* add our object */ evas_object_move(result->obj, 0, 0); =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/src/bin/main.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- main.c 20 Jan 2004 10:20:13 -0000 1.1.1.1 +++ main.c 20 Jan 2004 10:32:48 -0000 1.2 @@ -5,11 +5,11 @@ #include<Ecore_Evas.h> #include<limits.h> #include"epbb.h" +#include"../config.h" #define UN(ptr) ptr = 0 #define PBBUTTONSD_TIMEOUT 0.25 #define PBBUTTONSD_BATTERY_TIMEOUT 15.0 -#define PACKAGE "epbbuttons" static Epbb *epbb = NULL; @@ -219,7 +219,7 @@ evas = ecore_evas_get(ee); evas_image_cache_set(evas,512 * 1024); evas_font_cache_set(evas, 2 * (1024 * 1024)); - evas_font_path_append(evas, "/usr/share/edje/data/test/fonts"); + evas_font_path_append(evas, PACKAGE_DATA_DIR "/fonts/"); epbb = epbb_new(ee); } |
From: <enl...@li...> - 2004-01-20 11:30:19
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default Modified Files: default.edc Log Message: theme updates =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/data/themes/default/default.edc,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- default.edc 20 Jan 2004 10:20:12 -0000 1.1.1.1 +++ default.edc 20 Jan 2004 11:30:17 -0000 1.2 @@ -11,6 +11,8 @@ image, "mute.png" LOSSY 95; image, "noaudio.png" LOSSY 95; image, "brightness.png" LOSSY 95; + image, "sleep.png" LOSSY 95; + image, "battery.png" LOSSY 95; } collections { @@ -53,6 +55,20 @@ action, STATE_SET "mute" 0.0; target, "mainimage"; } + program { + name, "BatteryWarning"; + signal, "BATTERY_WARNING"; + source, ""; + action, STATE_SET "battery" 0.0; + target, "mainimage"; + } + program { + name, "SleepWarning"; + signal, "SLEEP_WARNING"; + source, ""; + action, STATE_SET "sleep" 0.0; + target, "mainimage"; + } } } } |
From: <enl...@li...> - 2004-01-20 11:30:19
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default/parts Modified Files: bg.edc Log Message: theme updates =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/data/themes/default/parts/bg.edc,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- bg.edc 20 Jan 2004 10:20:12 -0000 1.1.1.1 +++ bg.edc 20 Jan 2004 11:30:18 -0000 1.2 @@ -29,6 +29,8 @@ MIITEM("default", "volume.png") MIITEM("brightness", "brightness.png") -MIITEM("mute", "mute.png") +MIITEM("mute", "noaudio.png") +MIITEM("sleep", "sleep.png") +MIITEM("battery", "battery.png") } |
From: <enl...@li...> - 2004-01-20 17:27:12
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default/parts Modified Files: bg.edc Log Message: updates so window showing/hiding is done by the theme =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/data/themes/default/parts/bg.edc,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- bg.edc 20 Jan 2004 11:30:18 -0000 1.2 +++ bg.edc 20 Jan 2004 17:27:11 -0000 1.3 @@ -18,9 +18,29 @@ } } part { + name, "miclip"; + type, RECT; + mouse_events, 0; + description { + state, "default" 0.0; + visible, 1; + rel1 { relative, 0.0 0.0; offset, 0 0; } + rel2 { relative, 1.0 1.0; offset, 0 0; } + color, 255 255 255 32; + } + description { + state, "visible" 0.0; + visible, 1; + rel1 { relative, 0.0 0.0; offset, 0 0; } + rel2 { relative, 1.0 1.0; offset, 0 0; } + color, 255 255 255 255; + } + } + part { name, "mainimage"; type, IMAGE; mouse_events, 0; + clip_to, "miclip"; #define MIITEM(sname, simage) \ description { state, sname 0.0; visible, 1; \ rel1 { relative, 0.0 0.0; offset, 15 5; } \ |
From: <enl...@li...> - 2004-01-20 17:27:13
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default Modified Files: default.edc Log Message: updates so window showing/hiding is done by the theme =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/data/themes/default/default.edc,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- default.edc 20 Jan 2004 11:30:17 -0000 1.2 +++ default.edc 20 Jan 2004 17:27:11 -0000 1.3 @@ -34,41 +34,31 @@ action, DRAG_VAL_SET 0.0 0.5; target, "Status"; } - program { - name, "VolumeSwitch"; - signal, "VOLUME"; - source, ""; - action, STATE_SET "default" 0.0; - target, "mainimage"; - } - program { - name, "BrightnessSwitch"; - signal, "BRIGHTNESS"; - source, ""; - action, STATE_SET "brightness" 0.0; - target, "mainimage"; - } - program { - name, "MutedSwitch"; - signal, "MUTED"; - source, ""; - action, STATE_SET "mute" 0.0; - target, "mainimage"; - } - program { - name, "BatteryWarning"; - signal, "BATTERY_WARNING"; - source, ""; - action, STATE_SET "battery" 0.0; - target, "mainimage"; - } - program { - name, "SleepWarning"; - signal, "SLEEP_WARNING"; - source, ""; - action, STATE_SET "sleep" 0.0; - target, "mainimage"; - } +#define BASIC_CB(pname, psig, pstate) \ + program { name, pname; signal, psig; source, ""; \ + action, STATE_SET pstate 0.0; target, "mainimage"; } \ + program { name, pname"show"; signal, psig; source, ""; \ + action, SIGNAL_EMIT "window,show" ""; } \ + program { name, "hidewin"pname; signal, psig; source, "" ;\ + after, "hidewin"; } \ + program { name, pname"fadein"; signal, psig; source, ""; \ + action, STATE_SET "visible" 0.0; \ + transition, DECELERATE 0.5; target, "miclip"; } \ + program { name, "fadeout"pname; signal, psig; source, ""; \ + after, "fadeout"; } +BASIC_CB("VolumeSwitch", "VOLUME", "default"); +BASIC_CB("BrightnessSwitch", "BRIGHTNESS", "brightness"); +BASIC_CB("MutedSwitch", "MUTED", "mute"); +BASIC_CB("BatteryWarning", "BATTERY_WARNING", "battery"); +BASIC_CB("SleepWarning", "SLEEP_WARNING", "sleep"); + program { name, "hidewin"; action, ACTION_STOP; + target, "hidewincb"; after, "hidewincb"; } + program { name, "hidewincb"; + action, SIGNAL_EMIT "window,hide" ""; in, 2.0 0.0; } + program { name, "fadeout"; action, ACTION_STOP; \ + target, "fadeout_cb"; after, "fadeout_cb"; } + program { name, "fadeout_cb"; action, STATE_SET "default" 0.0; + target, "miclip"; transition, ACCELERATE 0.5; in, 1.5 0.0; } } } } |
From: <enl...@li...> - 2004-01-20 17:31:52
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/src/bin Modified Files: epbb.c epbb.h main.c Log Message: nuke hardcoded timers for showing/hiding, the theme can do this now with window raise,lower =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/src/bin/epbb.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- epbb.c 20 Jan 2004 10:32:48 -0000 1.2 +++ epbb.c 20 Jan 2004 17:31:51 -0000 1.3 @@ -10,14 +10,25 @@ #include "epbb.h" #include "../config.h" -#define DISPLAY_TIMEOUT 1.75 #define UN(ptr) ptr = 0 +static void +_window_cb(void *data, Evas_Object *o, const char *sig, const char *src) +{ + Epbb *e = NULL; + + if((e = (Epbb*)data)) + { + if(!strcmp(sig, "window,show")) + ecore_evas_show(e->ee); + else if(!strcmp(sig, "window,hide")) + ecore_evas_hide(e->ee); + } +} Epbb* epbb_new(Ecore_Evas *ee) { - int sw, sh; Evas_Coord w, h; Epbb *result = NULL; if((result = malloc(sizeof(Epbb)))) @@ -34,7 +45,8 @@ evas_object_layer_set(result->obj, 0); evas_object_name_set(result->obj, "edje"); evas_object_show(result->obj); - + + edje_object_signal_callback_add(result->obj, "window,*", "", _window_cb, result); /* fix our ecore_evas to do the theme's bidding */ edje_object_size_max_get(result->obj, &w, &h); ecore_evas_size_min_set(ee, (int)w, (int)h); @@ -63,20 +75,6 @@ } } - -static int -display_timer(void *data) -{ - Epbb *e = NULL; - if((e = (Epbb*)data)) - { - ecore_evas_hide(e->ee); - e->timer = NULL; - } - return(0); - UN(data); -} - static void epbb_progress_bar_percent_set(Epbb *e, double percent) { @@ -100,18 +98,23 @@ void epbb_warning_sleep_set(Epbb *e, int val) { -#if 0 - ebits_set_named_bit_state(bg, "Icon", "Clicked"); - char buf[120]; - snprintf(buf, 120, "%d Minutes Left", val/60); - status_set_text(buf); + + edje_object_signal_emit(e->obj, "SLEEP_WARNING", ""); + snprintf(buf, 120, "Sleeping in %d Minutes.", val/60); + epbb_status_text_set(e, buf); + if(!ecore_evas_visibility_get(e->ee)) + ecore_evas_show(e->ee); +} - if(!ecore_evas_visibility_get(e)) - ecore_evas_show(e); - if(timer) ecore_timer_del(timer); - timer = ecore_timer_add(DISPLAY_TIMEOUT * 4, display_timer, NULL); -#endif +void +epbb_warning_battery_set(Epbb *e, int val) +{ + char buf[120]; + + edje_object_signal_emit(e->obj, "BATTERY_WARNING", ""); + snprintf(buf, 120, "%d Minutes Left", val/60); + epbb_status_text_set(e, buf); } void @@ -119,14 +122,10 @@ { char buf[120]; - edje_object_signal_emit(e->obj, "MUTE", ""); + edje_object_signal_emit(e->obj, "MUTED", ""); epbb_progress_bar_percent_set(e, 0.0); snprintf(buf, 120, "%d%%", 0); epbb_status_text_set(e, buf); - if(!ecore_evas_visibility_get(e->ee)) - ecore_evas_show(e->ee); - if(e->timer) ecore_timer_del(e->timer); - e->timer = ecore_timer_add(DISPLAY_TIMEOUT, display_timer, e); } void epbb_volume_set(Epbb *e, int val) @@ -136,10 +135,6 @@ epbb_progress_bar_percent_set(e, (double)val/(double)100); snprintf(buf, 120, "%d%%", val); epbb_status_text_set(e, buf); - if(!ecore_evas_visibility_get(e->ee)) - ecore_evas_show(e->ee); - if(e->timer) ecore_timer_del(e->timer); - e->timer = ecore_timer_add(DISPLAY_TIMEOUT, display_timer, e); } void epbb_brightness_set(Epbb *e, int val) @@ -150,10 +145,6 @@ epbb_progress_bar_percent_set(e, (double)val/(double)15); snprintf(buf, 120, "%0.0f%%", 100 * ((double)val/15.0)); epbb_status_text_set(e, buf); - if(!ecore_evas_visibility_get(e->ee)) - ecore_evas_show(e->ee); - if(e->timer) ecore_timer_del(e->timer); - e->timer = ecore_timer_add(DISPLAY_TIMEOUT, display_timer, e); } void =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/src/bin/epbb.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- epbb.h 20 Jan 2004 10:20:13 -0000 1.1.1.1 +++ epbb.h 20 Jan 2004 17:31:51 -0000 1.2 @@ -20,5 +20,6 @@ void epbb_battery_source_set(Epbb *e, int mins); void epbb_brightness_set(Epbb *e, int val); void epbb_warning_sleep_set(Epbb *e, int val); +void epbb_warning_battery_set(Epbb *e, int val); #endif =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/src/bin/main.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- main.c 20 Jan 2004 10:32:48 -0000 1.2 +++ main.c 20 Jan 2004 17:31:51 -0000 1.3 @@ -59,16 +59,14 @@ static void interp_warning_taglist(struct tagitem *t) { - printf("Received a warning\n"); while(t->tag != TAG_END) { switch(t->tag) { case TAG_CURRENTBWL: - printf("TAG_CURRENTBWL is t->tag\n"); + epbb_warning_battery_set(epbb, (int)t->data); break; case TAG_SLEEPINSECONDS: - printf("TAG_SLEEPINSECONDS is t->tag\nvalue is %d\n", (int)t->data); epbb_warning_sleep_set(epbb, (int)t->data); break; default: @@ -156,7 +154,6 @@ if(ee) { int sw, sh, w, h; - Evas_Object *o = NULL; ecore_evas_geometry_get(ee, NULL, NULL, &w, &h); ecore_x_window_size_get(0, &sw, &sh); @@ -202,10 +199,7 @@ { Ecore_Evas *ee; Evas *evas = NULL; - Evas_Object *o = NULL; - char buf[PATH_MAX]; int w = 300, h = 80; - int sw, sh; ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, w, h); ecore_evas_title_set(ee, PACKAGE); @@ -218,7 +212,7 @@ ecore_evas_callback_hide_set(ee, window_hide_cb); evas = ecore_evas_get(ee); evas_image_cache_set(evas,512 * 1024); - evas_font_cache_set(evas, 2 * (1024 * 1024)); + evas_font_cache_set(evas, 512 * 1024); evas_font_path_append(evas, PACKAGE_DATA_DIR "/fonts/"); epbb = epbb_new(ee); |
From: <enl...@li...> - 2004-01-21 19:17:44
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default/parts Modified Files: bg.edc Log Message: certain events pulse now, and signal namespace updates =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/data/themes/default/parts/bg.edc,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- bg.edc 20 Jan 2004 17:27:11 -0000 1.3 +++ bg.edc 21 Jan 2004 19:17:43 -0000 1.4 @@ -37,20 +37,60 @@ } } part { - name, "mainimage"; - type, IMAGE; + name, "pulseclip"; + type, RECT; mouse_events, 0; - clip_to, "miclip"; + description { + state, "default" 0.0; + visible, 1; + rel1 { relative, 0.0 0.0; offset, 0 0; } + rel2 { relative, 1.0 1.0; offset, 0 0; } + color, 255 255 255 0; + } + description { + state, "visible" 0.0; + visible, 1; + rel1 { relative, 0.0 0.0; offset, 0 0; } + rel2 { relative, 1.0 1.0; offset, 0 0; } + color, 255 255 255 128; + } + } #define MIITEM(sname, simage) \ description { state, sname 0.0; visible, 1; \ rel1 { relative, 0.0 0.0; offset, 15 5; } \ rel2 { relative, 1.0 1.0; offset, -15 -30; } \ image { normal, simage; } } +#define PIITEM(sname, simage) \ + part { name, sname; type, IMAGE; mouse_events, 0; \ + clip_to, "pulseclip"; \ + description { state, "default" 0.0; visible, 0; \ + rel1 { relative, 0.0 0.0; offset, 15 5; } \ + rel2 { relative, 1.0 1.0; offset, -15 -30; } \ + color, 255 255 255 0; image { normal, simage; } } \ + description { state, "pulse1" 0.0; visible, 1; \ + rel1 { relative, 0.0 0.0; offset, 15 5; } \ + rel2 { relative, 1.0 1.0; offset, -15 -30; } \ + color, 255 255 255 128; image { normal, simage; } } \ + description { state, "pulse2" 0.0; visible, 1; align, 0.5 0.5; \ + rel1 { relative, -0.5 -0.5; offset, 15 5; } \ + rel2 { relative, 1.5 1.5; offset, -15 -30; } \ + color, 255 255 255 128; image { normal, simage; } } } -MIITEM("default", "volume.png") -MIITEM("brightness", "brightness.png") -MIITEM("mute", "noaudio.png") -MIITEM("sleep", "sleep.png") -MIITEM("battery", "battery.png") - } + part { + name, "mainimage"; + type, IMAGE; + mouse_events, 0; + clip_to, "miclip"; + MIITEM("default", "volume.png") + MIITEM("volume", "volume.png") + MIITEM("brightness", "brightness.png") + MIITEM("mute", "noaudio.png") + MIITEM("sleep", "sleep.png") + MIITEM("battery1", "battery.png") + MIITEM("battery2", "battery.png") + MIITEM("battery3", "battery.png") + } + PIITEM("volume", "volume.png") + PIITEM("brightness", "brightness.png") + PIITEM("mute", "noaudio.png") |
From: <enl...@li...> - 2004-01-21 19:17:44
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default Modified Files: default.edc Log Message: certain events pulse now, and signal namespace updates =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/data/themes/default/default.edc,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- default.edc 20 Jan 2004 17:27:11 -0000 1.3 +++ default.edc 21 Jan 2004 19:17:43 -0000 1.4 @@ -43,14 +43,62 @@ after, "hidewin"; } \ program { name, pname"fadein"; signal, psig; source, ""; \ action, STATE_SET "visible" 0.0; \ + transition, DECELERATE 0.5; target, "miclip"; target, \ + "pulseclip"; } \ + program { name, "fadeout"pname; signal, psig; source, ""; \ + after, "fadeout"; } \ + program { name, "pulseup"pname; signal, psig; source, "" ;\ + action, STATE_SET "pulse1" 0.0; transition, LINEAR 0.01; \ + target, pstate; after, "pulsedown"pname; } \ + program { name, "pulsedown"pname; signal, psig; source, "" ;\ + action, STATE_SET "pulse2" 0.0; transition, LINEAR 0.5; \ + target, pstate; after, "pulseup"pname; } \ + program { name, pname"killpulsers"; signal, psig; \ + action, ACTION_STOP; target, "pulseup"pname; \ + target, "pulsedown"pname; in, 1.0 0.0;} \ + program { name, pname"hidepulsers"; signal, psig; \ + action, STATE_SET "default" 0.0; target, pstate; \ + in, 1.0 0.0; transition, DECELERATE 0.3; } +#define WARNING_CB(pname, psig, pstate) \ + program { name, pname; signal, psig; source, ""; \ + action, STATE_SET pstate 0.0; target, "mainimage"; } \ + program { name, pname"show"; signal, psig; source, ""; \ + action, SIGNAL_EMIT "window,show" ""; } \ + program { name, "hidewin"pname; signal, psig; source, "" ;\ + after, "hidewinlong"; } \ + program { name, pname"fadein"; signal, psig; source, ""; \ + action, STATE_SET "visible" 0.0; \ transition, DECELERATE 0.5; target, "miclip"; } \ program { name, "fadeout"pname; signal, psig; source, ""; \ - after, "fadeout"; } -BASIC_CB("VolumeSwitch", "VOLUME", "default"); -BASIC_CB("BrightnessSwitch", "BRIGHTNESS", "brightness"); -BASIC_CB("MutedSwitch", "MUTED", "mute"); -BASIC_CB("BatteryWarning", "BATTERY_WARNING", "battery"); -BASIC_CB("SleepWarning", "SLEEP_WARNING", "sleep"); + after, "fadeoutlong"; } +BASIC_CB("VolumeSwitch", "pbb,audio,volume", "volume"); +BASIC_CB("BrightnessSwitch", "pbb,display,brightness", "brightness"); +BASIC_CB("MutedSwitch", "pbb,audio,mute", "mute"); +/* + program { + name, "killpulsers"; + signal, "window,*"; + source, ""; + action, ACTION_STOP; + target, "pulseupVolumeSwitch"; + target, "pulsedownVolumeSwitch"; + target, "pulseupBrightnessSwitch"; + target, "pulsedownMutedSwitch"; + } + program { + name, "hidepulsers"; + signal, "window,*"; + source, ""; + action, STATE_SET "default" 0.0; + target, "volume"; + target, "brightness"; + target, "mute"; + } +*/ +WARNING_CB("BatteryWarningOne", "pbb,warning,battery,1", "battery1"); +WARNING_CB("BatteryWarningTwo", "pbb,warning,battery,2", "battery2"); +WARNING_CB("BatteryWarningThree", "pbb,warning,battery,3", "battery3"); +WARNING_CB("SleepWarning", "pbb,warning,sleep", "sleep"); program { name, "hidewin"; action, ACTION_STOP; target, "hidewincb"; after, "hidewincb"; } program { name, "hidewincb"; @@ -58,7 +106,17 @@ program { name, "fadeout"; action, ACTION_STOP; \ target, "fadeout_cb"; after, "fadeout_cb"; } program { name, "fadeout_cb"; action, STATE_SET "default" 0.0; - target, "miclip"; transition, ACCELERATE 0.5; in, 1.5 0.0; } + target, "miclip"; target, "pulseclip"; \ + transition, ACCELERATE 0.5; in, 1.5 0.0; } + + program { name, "hidewinlong"; action, ACTION_STOP; + target, "hidewinlongcb"; after, "hidewinlongcb"; } + program { name, "hidewinlongcb"; + action, SIGNAL_EMIT "window,hide" ""; in, 5.0 0.0; } + program { name, "fadeoutlong"; action, ACTION_STOP; \ + target, "fadeoutlong_cb"; after, "fadeoutlong_cb"; } + program { name, "fadeoutlong_cb"; action, STATE_SET "default" 0.0; + target, "miclip"; transition, ACCELERATE 1.0; in, 4.0 0.0; } } } } |
From: <enl...@li...> - 2004-01-21 21:49:00
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/src/bin Modified Files: Makefile.am epbb.c epbb.h main.c Log Message: lots of code changes, cleaner namespace for signal emissions, overall it works considerably better. =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/src/bin/Makefile.am,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- Makefile.am 20 Jan 2004 10:20:12 -0000 1.1.1.1 +++ Makefile.am 21 Jan 2004 21:48:59 -0000 1.2 @@ -7,13 +7,13 @@ @edje_cflags@ \ @pbb_cflags@ -bin_PROGRAMS = epbbuttons +bin_PROGRAMS = epbb -epbbuttons_SOURCES = \ +epbb_SOURCES = \ epbb.c epbb.h \ main.c -epbbuttons_LDADD = \ +epbb_LDADD = \ @evas_libs@ \ @ecore_libs@ \ @edje_libs@ \ =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/src/bin/epbb.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- epbb.c 20 Jan 2004 17:31:51 -0000 1.3 +++ epbb.c 21 Jan 2004 21:48:59 -0000 1.4 @@ -1,3 +1,11 @@ +/*************************************************************************** + * Corey Donohoe : http://atmos.org/ + * File: epbb.c + * Date: January 21, 2004 + * + * The edje + ecore glue for epbb. Take different state changes we receive + * from the pbbuttons ipc subsystem and pipe them into our edje + **************************************************************************/ #include<Evas.h> #include<Ecore.h> #include<Ecore_X.h> @@ -6,161 +14,230 @@ #include<stdlib.h> #include<stdio.h> #include<string.h> +#include<sys/types.h> +#include<sys/stat.h> +#include<unistd.h> #include<limits.h> #include "epbb.h" #include "../config.h" #define UN(ptr) ptr = 0 +static void epbb_init(void); + static void -_window_cb(void *data, Evas_Object *o, const char *sig, const char *src) +_window_cb(void *data, Evas_Object * o, const char *sig, const char *src) { - Epbb *e = NULL; + Epbb *e = NULL; - if((e = (Epbb*)data)) - { - if(!strcmp(sig, "window,show")) - ecore_evas_show(e->ee); - else if(!strcmp(sig, "window,hide")) - ecore_evas_hide(e->ee); - } -} - -Epbb* -epbb_new(Ecore_Evas *ee) -{ - Evas_Coord w, h; - Epbb *result = NULL; - if((result = malloc(sizeof(Epbb)))) - { - memset(result, 0, sizeof(Epbb)); - result->ee = ee; - - result->obj = edje_object_add(ecore_evas_get(ee)); - if(edje_object_file_set(result->obj, PACKAGE_DATA_DIR"/themes/default.eet", "Epbb")) - { - /* add our object */ - evas_object_move(result->obj, 0, 0); - evas_object_resize(result->obj, w, h); - evas_object_layer_set(result->obj, 0); - evas_object_name_set(result->obj, "edje"); - evas_object_show(result->obj); - - edje_object_signal_callback_add(result->obj, "window,*", "", _window_cb, result); - /* fix our ecore_evas to do the theme's bidding */ - edje_object_size_max_get(result->obj, &w, &h); - ecore_evas_size_min_set(ee, (int)w, (int)h); - edje_object_size_min_get(result->obj, &w, &h); - ecore_evas_size_min_set(ee, (int)w, (int)h); - ecore_evas_resize(ee, (int)w, (int)h); - } - else - { - evas_object_del(result->obj); - result->obj = NULL; - } - } - return(result); -} - -void -epbb_free(Epbb *e) -{ - if(e) - { - if(e->timer) ecore_timer_del(e->timer); - if(e->obj) evas_object_del(e->obj); - if(e->ee) ecore_evas_free(e->ee); - free(e); - } + if ((e = (Epbb *) data)) + { + if (!strcmp(sig, "window,show")) + ecore_evas_show(e->ee); + else if (!strcmp(sig, "window,hide")) + ecore_evas_hide(e->ee); + } +} + +Epbb * +epbb_new(Ecore_Evas * ee) +{ + Evas_Coord w, h; + char buf[PATH_MAX]; + Epbb *result = NULL; + + if ((result = malloc(sizeof(Epbb)))) + { + memset(result, 0, sizeof(Epbb)); + result->ee = ee; + + epbb_init(); + result->obj = edje_object_add(ecore_evas_get(ee)); + snprintf(buf, PATH_MAX, "%s/.e/apps/epbb/fonts", getenv("HOME")); + evas_font_path_append(ecore_evas_get(ee), buf); + + snprintf(buf, PATH_MAX, "%s/.e/apps/epbb/epbb.eet", getenv("HOME")); + if (!edje_object_file_set(result->obj, buf, "Epbb")) + { + if (!edje_object_file_set + (result->obj, PACKAGE_DATA_DIR "/themes/default.eet", "Epbb")) + { + evas_object_del(result->obj); + result->obj = NULL; + free(result); + return (NULL); + } + } + /* add our object */ + evas_object_move(result->obj, 0, 0); + evas_object_resize(result->obj, w, h); + evas_object_layer_set(result->obj, 0); + evas_object_name_set(result->obj, "edje"); + evas_object_show(result->obj); + + edje_object_signal_callback_add(result->obj, "window,*", "", _window_cb, + result); + /* fix our ecore_evas to do the theme's bidding */ + edje_object_size_max_get(result->obj, &w, &h); + ecore_evas_size_min_set(ee, (int) w, (int) h); + edje_object_size_min_get(result->obj, &w, &h); + ecore_evas_size_min_set(ee, (int) w, (int) h); + ecore_evas_resize(ee, (int) w, (int) h); + } + return (result); +} + +void +epbb_free(Epbb * e) +{ + if (e) + { + if (e->obj) + evas_object_del(e->obj); + if (e->ee) + ecore_evas_free(e->ee); + free(e); + } } static void -epbb_progress_bar_percent_set(Epbb *e, double percent) +epbb_progress_bar_percent_set(Epbb * e, double percent) { - double dragx, dragy; - if(edje_object_part_exists(e->obj, "Status")) - { - edje_object_part_drag_value_get(e->obj, "Status", &dragx, &dragy); - edje_object_part_drag_value_set(e->obj, "Status", percent, dragy); - } + double dragx, dragy; + + if (edje_object_part_exists(e->obj, "Status")) + { + edje_object_part_drag_value_get(e->obj, "Status", &dragx, &dragy); + edje_object_part_drag_value_set(e->obj, "Status", percent, dragy); + } } static void -epbb_status_text_set(Epbb *e, char *buf) +epbb_status_text_set(Epbb * e, char *buf) { - if(edje_object_part_exists(e->obj, "Message")) - { - edje_object_part_text_set(e->obj, "Message", buf); - } + if (edje_object_part_exists(e->obj, "Message")) + { + edje_object_part_text_set(e->obj, "Message", buf); + } } void -epbb_warning_sleep_set(Epbb *e, int val) +epbb_warning_sleep_set(Epbb * e, int val) { - char buf[120]; - - edje_object_signal_emit(e->obj, "SLEEP_WARNING", ""); - snprintf(buf, 120, "Sleeping in %d Minutes.", val/60); - epbb_status_text_set(e, buf); - if(!ecore_evas_visibility_get(e->ee)) - ecore_evas_show(e->ee); + char buf[120]; + + edje_object_signal_emit(e->obj, "pbb,warning,sleep", ""); + snprintf(buf, 120, "Sleeping in %d Minutes.", val / 60); + epbb_status_text_set(e, buf); + if (!ecore_evas_visibility_get(e->ee)) + ecore_evas_show(e->ee); } void -epbb_warning_battery_set(Epbb *e, int val) +epbb_warning_battery_set(Epbb * e, int level) { - char buf[120]; - - edje_object_signal_emit(e->obj, "BATTERY_WARNING", ""); - snprintf(buf, 120, "%d Minutes Left", val/60); - epbb_status_text_set(e, buf); + switch (level) + { + case 1: + edje_object_signal_emit(e->obj, "pbb,warning,battery,1", ""); + break; + case 2: + edje_object_signal_emit(e->obj, "pbb,warning,battery,2", ""); + break; + case 3: + edje_object_signal_emit(e->obj, "pbb,warning,battery,3", ""); + break; + default: + break; + } } void -epbb_mute_set(Epbb *e) +epbb_mute_set(Epbb * e) { - char buf[120]; - - edje_object_signal_emit(e->obj, "MUTED", ""); - epbb_progress_bar_percent_set(e, 0.0); - snprintf(buf, 120, "%d%%", 0); - epbb_status_text_set(e, buf); + char buf[120]; + + edje_object_signal_emit(e->obj, "pbb,audio,mute", ""); + epbb_progress_bar_percent_set(e, 0.0); + snprintf(buf, 120, "%d%%", 0); + epbb_status_text_set(e, buf); } + void -epbb_volume_set(Epbb *e, int val) +epbb_volume_set(Epbb * e, double val) { - char buf[120]; - edje_object_signal_emit(e->obj, "VOLUME", ""); - epbb_progress_bar_percent_set(e, (double)val/(double)100); - snprintf(buf, 120, "%d%%", val); - epbb_status_text_set(e, buf); + char buf[120]; + + edje_object_signal_emit(e->obj, "pbb,audio,volume", ""); + epbb_progress_bar_percent_set(e, val); + snprintf(buf, 120, "%0.0f%%", val * 100); + epbb_status_text_set(e, buf); } + void -epbb_brightness_set(Epbb *e, int val) +epbb_brightness_set(Epbb * e, double val) { - char buf[120]; - - edje_object_signal_emit(e->obj, "BRIGHTNESS", ""); - epbb_progress_bar_percent_set(e, (double)val/(double)15); - snprintf(buf, 120, "%0.0f%%", 100 * ((double)val/15.0)); - epbb_status_text_set(e, buf); + char buf[120]; + + edje_object_signal_emit(e->obj, "pbb,display,brightness", ""); + epbb_progress_bar_percent_set(e, val); + snprintf(buf, 120, "%0.0f%%", 100 * (double) val); + epbb_status_text_set(e, buf); } void -epbb_battery_remaining_set(Epbb *e, int mins) +epbb_battery_remaining_set(Epbb * e, int seconds) { + char buf[120]; + + if (e) + { + if (!e->charging) + { + snprintf(buf, 120, "%d Minutes Remaining", seconds / 60); + } + else + { + snprintf(buf, 120, "Charging..."); + } + edje_object_signal_emit(e->obj, "pbb,battery,changed", ""); + epbb_status_text_set(e, buf); #if 0 - UN(mins); + fprintf(stderr, "%s\n", buf); #endif + } } void -epbb_battery_source_set(Epbb *e, int val) +epbb_battery_source_set(Epbb * e, int val) { -#if 0 - static int battery_state = 0; - if(val == battery_state) return; - //set_battery_state(val); -#endif + if (e) + { + if (e->charging != val) + { + if (val) + edje_object_signal_emit(e->obj, "pbb,ac,on", ""); + else + edje_object_signal_emit(e->obj, "pbb,ac,off", ""); + e->charging = val; + } + } +} + +static void +epbb_init(void) +{ + int i, count; + char buf[PATH_MAX]; + struct stat status; + char *dirs[] = { ".e", ".e/apps", ".e/apps/epbb", ".e/apps/epbb/fonts" }; + count = sizeof(dirs) / sizeof(char *); + + for (i = 0; i < count; i++) + { + snprintf(buf, PATH_MAX, "%s/%s", getenv("HOME"), dirs[i]); + if (!stat(buf, &status)) + continue; + mkdir(buf, S_IRUSR | S_IWUSR | S_IXUSR); + } } =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/src/bin/epbb.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- epbb.h 20 Jan 2004 17:31:51 -0000 1.2 +++ epbb.h 21 Jan 2004 21:48:59 -0000 1.3 @@ -1,25 +1,34 @@ +/*************************************************************************** + * Corey Donohoe : http://atmos.org/ + * File: epbb.h + * Date: January 21, 2004 + * + * The edje + ecore glue for epbb. Take different state changes we receive + * from the pbbuttons ipc subsystem and pipe them into our edje + **************************************************************************/ #ifndef EPBB_H #define EPBB_H -struct _Epbb { - Ecore_Evas *ee; - Evas_Object *obj; - Ecore_Timer *timer; +struct _Epbb +{ + Ecore_Evas *ee; + Evas_Object *obj; + int charging; }; typedef struct _Epbb Epbb; /* instantiate and free */ -Epbb* epbb_new(Ecore_Evas *ee); -void epbb_free(Epbb *e); +Epbb *epbb_new(Ecore_Evas * ee); +void epbb_free(Epbb * e); /* callback functions */ -void epbb_mute_set(Epbb *e); -void epbb_volume_set(Epbb *e, int val); -void epbb_battery_remaining_set(Epbb *e, int mins); -void epbb_battery_source_set(Epbb *e, int mins); -void epbb_brightness_set(Epbb *e, int val); -void epbb_warning_sleep_set(Epbb *e, int val); -void epbb_warning_battery_set(Epbb *e, int val); +void epbb_mute_set(Epbb * e); +void epbb_volume_set(Epbb * e, double val); +void epbb_battery_remaining_set(Epbb * e, int mins); +void epbb_battery_source_set(Epbb * e, int mins); +void epbb_brightness_set(Epbb * e, double val); +void epbb_warning_sleep_set(Epbb * e, int val); +void epbb_warning_battery_set(Epbb * e, int level); #endif =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/src/bin/main.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- main.c 20 Jan 2004 17:31:51 -0000 1.3 +++ main.c 21 Jan 2004 21:48:59 -0000 1.4 @@ -1,12 +1,31 @@ +/*************************************************************************** + * Corey Donohoe : http://atmos.org/ + * File: main.c + * Date: January 21, 2004 + * + * The ecore + libpbb glue for epbb. This app is VERY simple, and works + * like the following. + * 1. Establish a connection to pbbuttons + * 2. Initialize ecore/edje/etc + * 3. Create an Ecore_Evas + * 4. Setup a battery monitoring timer + * 5. Setup a client listener callback + * 6. Add the edje theme to the ecore_evas + * 7. Wait for events and pipe them through to edje when they arrive + **************************************************************************/ #include<stdio.h> #include<pbb.h> #include<Ecore.h> #include<Ecore_X.h> #include<Ecore_Evas.h> +#include<Edje.h> #include<limits.h> #include"epbb.h" #include"../config.h" +#define VOLUME_MAX 100 +#define BACKLIGHT_MAX 15 + #define UN(ptr) ptr = 0 #define PBBUTTONSD_TIMEOUT 0.25 #define PBBUTTONSD_BATTERY_TIMEOUT 15.0 @@ -16,209 +35,217 @@ static int app_exit_cb(void *data, int ev_type, void *ev) { - Ecore_Event_Signal_Exit *e = NULL; + Ecore_Event_Signal_Exit *e = NULL; - e = ev; - ipc_exit(); - ecore_main_loop_quit(); - return(0); - UN(ev_type); - UN(data); + e = ev; + ipc_exit(); + ecore_main_loop_quit(); + return (0); + UN(ev_type); + UN(data); } static void interp_changed_taglist(struct tagitem *t) { - while(t->tag != TAG_END) - { - switch(t->tag) - { - case TAG_BRIGHTNESS: - epbb_brightness_set(epbb, (int)t->data); - break; - case TAG_VOLUME: - epbb_volume_set(epbb, (int)t->data); - break; - case TAG_MUTE: - epbb_mute_set(epbb); - break; - case TAG_TIMEREMAINING: - epbb_battery_remaining_set(epbb, (int)t->data/60); - break; - case TAG_POWERSOURCE: - epbb_battery_source_set(epbb, (int)t->data); - break; - default: - printf("%d is t->tag\n", (int)t->tag); - break; - } - t++; - } + while (t->tag != TAG_END) + { + switch (t->tag) + { + case TAG_BRIGHTNESS: + epbb_brightness_set(epbb, (double) t->data / BACKLIGHT_MAX); + break; + case TAG_VOLUME: + epbb_volume_set(epbb, (double) t->data / VOLUME_MAX); + break; + case TAG_MUTE: + epbb_mute_set(epbb); + break; + case TAG_POWERSOURCE: + epbb_battery_source_set(epbb, (int) t->data); + break; + case TAG_TIMEREMAINING: + epbb_battery_remaining_set(epbb, (int) t->data); + break; + default: + printf("%0.4f is changed t->tag\n", (double) t->tag); + break; + } + t++; + } } static void interp_warning_taglist(struct tagitem *t) { - while(t->tag != TAG_END) - { - switch(t->tag) - { - case TAG_CURRENTBWL: - epbb_warning_battery_set(epbb, (int)t->data); - break; - case TAG_SLEEPINSECONDS: - epbb_warning_sleep_set(epbb, (int)t->data); - break; - default: - printf("%d is t->tag\n", (int)t->tag); - break; - } - t++; - } + while (t->tag != TAG_END) + { + switch (t->tag) + { + case TAG_CURRENTBWL: + epbb_warning_battery_set(epbb, (int) t->data); + break; + case TAG_SLEEPINSECONDS: + epbb_warning_sleep_set(epbb, (int) t->data); + break; + case TAG_TIMEREMAINING: + /* + epbb_battery_remaining_set(epbb, (int) t->data); */ + break; + default: + printf("%0.4f is warning t->tag\n", (double) t->tag); + break; + } + t++; + } } static int pbbuttonsd_battery_check(void *data) { - struct tagitem tagrequest[2]; - taglist_init(tagrequest); - taglist_add(tagrequest, TAG_TIMEREMAINING, 0); - taglist_add(tagrequest, TAG_POWERSOURCE, 0); - ipc_send(0, READVALUE, tagrequest); - return(1); - UN(data); + struct tagitem tagrequest[2]; + + taglist_init(tagrequest); + taglist_add(tagrequest, TAG_TIMEREMAINING, 0); + taglist_add(tagrequest, TAG_POWERSOURCE, 0); + ipc_send(0, READVALUE, tagrequest); + return (1); + UN(data); } static int pbbuttonsd_timeout(void *data) { - char *msgbuffer[100]; - struct pbbmessage *m = (struct pbbmessage*)msgbuffer; - - if((ipc_receive(msgbuffer, sizeof(msgbuffer))) == 0) - { - switch(m->action) - { - case REGFAILED: - printf("Can't register client at server\n"); - break; - case CLIENTEXIT: - exit(1); - break; - case CHANGEVALUE: - interp_changed_taglist(m->taglist); - break; - case WARNING: - interp_warning_taglist(m->taglist); - break; - default: - printf("Received %d action\n", (int)m->action); - break; - } - } - return(1); - data = NULL; -} - -static void -window_delete_cb(Ecore_Evas *ee) -{ - ecore_main_loop_quit(); - return; - UN(ee); -} - -/** - * window_resize_cb - when we resize the window we always wanna reposition - * it. - * @ee - the ecore evas we're resizing - */ -static void -window_resize_cb(Ecore_Evas *ee) -{ - if(ee) - { - int w, h; - Evas_Object *o = NULL; - ecore_evas_geometry_get(ee, NULL, NULL, &w, &h); - if((o = evas_object_name_find(ecore_evas_get(ee), "edje"))) - { - evas_object_resize(o, w, h); - } - } -} - -static void -window_show_cb(Ecore_Evas *ee) -{ - if(ee) - { - int sw, sh, w, h; - - ecore_evas_geometry_get(ee, NULL, NULL, &w, &h); - ecore_x_window_size_get(0, &sw, &sh); - ecore_evas_move(ee, (sw - w)/2,(sh - h)/2); - } - return; - UN(ee); + char *msgbuffer[100]; + struct pbbmessage *m = (struct pbbmessage *) msgbuffer; + + if ((ipc_receive(msgbuffer, sizeof(msgbuffer))) == 0) + { + switch (m->action) + { + case REGFAILED: + printf("Can't register client at server\n"); + break; + case CLIENTEXIT: + ecore_main_loop_quit(); + return (0); + break; + case CHANGEVALUE: + interp_changed_taglist(m->taglist); + break; + case CHANGEERROR: + fprintf(stderr, "ERROR: CHANGEERROR\n"); + break; + case WARNING: + interp_warning_taglist(m->taglist); + break; + default: + printf("Received %d action\n", (int) m->action); + break; + } + } + return (1); + data = NULL; +} + +static void +window_delete_cb(Ecore_Evas * ee) +{ + ecore_main_loop_quit(); + return; + UN(ee); +} + +static void +window_resize_cb(Ecore_Evas * ee) +{ + if (ee) + { + int w, h; + Evas_Object *o = NULL; + + ecore_evas_geometry_get(ee, NULL, NULL, &w, &h); + if ((o = evas_object_name_find(ecore_evas_get(ee), "edje"))) + { + evas_object_resize(o, w, h); + } + } +} + +static void +window_show_cb(Ecore_Evas * ee) +{ + if (ee) + { + int sw, sh, w, h; + + ecore_evas_geometry_get(ee, NULL, NULL, &w, &h); + ecore_x_window_size_get(0, &sw, &sh); + ecore_evas_move(ee, (sw - w) / 2, (sh - h) / 2); + } + return; + UN(ee); } static void -window_hide_cb(Ecore_Evas *ee) +window_hide_cb(Ecore_Evas * ee) { - return; - UN(ee); + return; + UN(ee); } int main(int argc, const char *argv[]) { - int rc = -1; - if((rc = ipc_init(LIBMODE_CLIENT, 1)) != 0) - { - switch(rc) - { - case E_NOSERVER: - printf("Server message port not found\n"); - break; - case E_REGISTER: - printf("Client list full.\n"); - break; - default: - break; - } - } - ecore_init(); - ecore_app_args_set(argc, (const char **)argv); - ecore_event_handler_add(ECORE_EVENT_SIGNAL_EXIT, app_exit_cb, NULL); - ecore_timer_add(PBBUTTONSD_TIMEOUT, pbbuttonsd_timeout, NULL); - /* - ecore_timer_add(PBBUTTONSD_BATTERY_TIMEOUT, pbbuttonsd_battery_check, NULL); - */ - if(ecore_evas_init()) - { - Ecore_Evas *ee; - Evas *evas = NULL; - int w = 300, h = 80; - - ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, w, h); - ecore_evas_title_set(ee, PACKAGE); - ecore_evas_name_class_set(ee, PACKAGE, "status"); - ecore_evas_borderless_set(ee, 1); - ecore_evas_shaped_set(ee, 1); - ecore_evas_callback_delete_request_set(ee, window_delete_cb); - ecore_evas_callback_resize_set(ee, window_resize_cb); - ecore_evas_callback_show_set(ee, window_show_cb); - ecore_evas_callback_hide_set(ee, window_hide_cb); - evas = ecore_evas_get(ee); - evas_image_cache_set(evas,512 * 1024); - evas_font_cache_set(evas, 512 * 1024); - evas_font_path_append(evas, PACKAGE_DATA_DIR "/fonts/"); - - epbb = epbb_new(ee); - } - ecore_main_loop_begin(); - ecore_evas_shutdown(); - ecore_shutdown(); - return(0); + int rc = -1; + + if ((rc = ipc_init(LIBMODE_CLIENT, 1)) != 0) + { + switch (rc) + { + case E_NOSERVER: + printf("Server message port not found\n"); + break; + case E_REGISTER: + printf("Client list full.\n"); + break; + default: + break; + } + } + ecore_init(); + ecore_app_args_set(argc, (const char **) argv); + ecore_event_handler_add(ECORE_EVENT_SIGNAL_EXIT, app_exit_cb, NULL); + ecore_timer_add(PBBUTTONSD_TIMEOUT, pbbuttonsd_timeout, NULL); + ecore_timer_add(PBBUTTONSD_BATTERY_TIMEOUT, pbbuttonsd_battery_check, + NULL); + edje_init(); + if (ecore_evas_init()) + { + Ecore_Evas *ee; + Evas *evas = NULL; + int w = 300, h = 80; + + ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, w, h); + ecore_evas_title_set(ee, PACKAGE); + ecore_evas_name_class_set(ee, PACKAGE, "status"); + ecore_evas_borderless_set(ee, 1); + ecore_evas_shaped_set(ee, 1); + ecore_evas_callback_delete_request_set(ee, window_delete_cb); + ecore_evas_callback_resize_set(ee, window_resize_cb); + ecore_evas_callback_show_set(ee, window_show_cb); + ecore_evas_callback_hide_set(ee, window_hide_cb); + evas = ecore_evas_get(ee); + evas_image_cache_set(evas, 512 * 1024); + evas_font_cache_set(evas, 512 * 1024); + evas_font_path_append(evas, PACKAGE_DATA_DIR "/fonts/"); + + epbb = epbb_new(ee); + } + ecore_main_loop_begin(); + epbb_free(epbb); + edje_shutdown(); + ecore_evas_shutdown(); + ecore_shutdown(); + return (0); } |
From: <enl...@li...> - 2004-01-21 23:19:13
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/doc Modified Files: head.html epbbuttons.doxygen Log Message: update docs to explain what edje signals are available etc. It's quite simple to theme for. :) http://www.atmos.org/docs/epbb/index.html =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/doc/head.html,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- head.html 20 Jan 2004 10:20:12 -0000 1.1.1.1 +++ head.html 21 Jan 2004 23:19:12 -0000 1.2 @@ -12,7 +12,7 @@ <table border=0 align=center><tr> <td width=16><img src=e_mini.png width=16 height=16 alt=E></td> <td width=100% align=center> -E : N : T : I : C : E +E : P : B : B </td> <td width=16><img src=e_mini.png width=16 height=16 alt=E></td> </tr></table> =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/doc/epbbuttons.doxygen,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- epbbuttons.doxygen 20 Jan 2004 10:20:12 -0000 1.1.1.1 +++ epbbuttons.doxygen 21 Jan 2004 23:19:12 -0000 1.2 @@ -6,78 +6,176 @@ /** -@mainpage Entice Developers and Themers Documentation +@mainpage Epbb Users and Themers Documentation @image html epbb.png @version 0.0.5 @author Corey Donohoe <at...@at...> @date 2004 - - - - - - - +<OL> +<LI><A HREF="index.html#intro">What is Epbb?</A></LI> +<LI><A HREF="index.html#requirements">What do I need to run Epbb?</A></LI> +<LI><A HREF="index.html#edje">What signals are available to edje?</A></LI> +<LI><A HREF="index.html#themes">How do I install a theme I downloaded?</A></LI> +</OL> @section intro What is Epbb -TODO +Epbb is a client for <A +HREF="http://www.cymes.de/members/joker/projects/pbbuttons/pbbuttons.html">pbbuttonsd</A> +by Matthias Grimm. It provides a wonderful mechanism for communicating with +<A HREF="http://www.apple.com">Apple</A> specific hardware under Linux PPC. +The goal of epbb was to create a very basic client that piped messages from +pbbuttons to edje. This in turn allows for the appearance to change without +ever having to recompile the application. If you're new to edje or haven't +even heard of edje before checkout <A +HREF="http://www.cuddletech.com/edje/">benr's Edje page</A>. If you write +any themes for this application please contact me. :) -@section requirements What does Entice require? +@section requirements What does Epbb require? -Entice relies on a lot of libraries most notably +Epbb relies on a few libraries most notably + - Imlib2 (library) - Eet (library) + - Imlib2 Eet loader (library) - Evas (library) - Ecore (library) - Edje (library) + - libpbb (library) The following instructions assume you've checked out the e17 directory -from cvs. You'll notice most of these directories have a script called -conf-e-x11.sh which contain the long list of configure opts listed -below. If you're on a BSD substitute gmake for make. +from enligtenment cvs. @verbatim -1. You need Eet from cvs +1. You need Imlib2 > 1.1.0 (only if you want to compile themes) + cd e17/libs/imlib2 + ./autogen.sh + make + sudo make install + cd .. + +2. You need Eet from cvs - cd eet + cd e17/libs/eet ./autogen.sh make sudo make install cd .. -2. You need Evas from cvs +3. You need the Imlib2 loader for Eet from cvs - cd evas + cd e17/libs/imlib2_loaders + ./autogen.sh + make + sudo make install + cd .. + +4. You need Evas from cvs + + cd e17/libs/evas ./autogen.sh make sudo make install cd .. -3. You need Ecore from cvs +5. You need Ecore from cvs - cd ecore + cd e17/libs/ecore ./autogen.sh make sudo make install cd .. -4. You need Edje from cvs +6. You need Edje from cvs - cd edje + cd e17/libs/edje ./autogen.sh make sudo make install cd .. +7. You need pbbuttons from http://www.cymes.de/members/joker/projects/pbbuttons/pbbuttons.html + + Fetch the latest source tarball from the Pbbuttons website + tar zxvf pbbuttonsd-0.5.x.tar.gz + cd pbbuttonsd-0.5.x + ./configure + make + sudo make install + cd .. + Read the pbbuttonsd documentation, it's very useful and complete. @endverbatim +@section edje What signals are available to Edje? +<UL> Signals Understood by Epbb when your edje emits them. +<LI><B>window,show</B>: Show the epbb window +<LI><B>window,hide</B>: Hide the epbb window +</UL> + +<UL> Signals Epbb emits to your Edje +<LI><B>pbb,warning,sleep</B>: Pbbuttons emitted a signal telling us the +machine is going to sleep. +<LI><B>pbb,warning,battery,1</B>: Pbbuttons emitted a signal telling us that +battery warn level one has been reached. +<LI><B>pbb,warning,battery,2</B>: Pbbuttons emitted a signal telling us that +battery warn level two has been reached. +<LI><B>pbb,warning,battery,3</B>: Pbbuttons emitted a signal telling us that +battery warn level last has been reached. +<LI><B>pbb,audio,mute</B>: Pbbuttons emitted a signal telling us that +the speakers have been muted. +<LI><B>pbb,audio,volume</B>: Pbbuttons emitted a signal telling us that +the speaker volume has changed. +<LI><B>pbb,display,brightness</B>: Pbbuttons emitted a signal telling us that +the brightness of the screen has changed. +<LI><B>pbb,battery,changed</B>: Pbbuttons emitted a signal telling us that +the status of the battery has changed. +<LI><B>pbb,ac,on</B>: Pbbuttons emitted a signal telling us that +the ac adapter has been plugged in. +<LI><B>pbb,ac,off</B>: Pbbuttons emitted a signal telling us that +the ac adapter has been plugged in. +</UL> + +A basic Epbb edje will do the following. +<OL> +<LI>setup Edje programs to trap the signals epbb emits +<LI>show the window(window,show) after changing the look to match the signal +<LI>timeout after a short period and emit window,hide +<LI>wait for more signals +</OL> +Keep in mind that you might get a whole bunch of events at once, and you'll +have to be smart with using your timers. Remember that ACTION_STOP is your +friend. +@section themes How do I install a theme I downloaded ? + +The first time you run epbb it creates a directory structure to store user +specific data. +@verbatim +~/.e/ +~/.e/apps/ +~/.e/apps/epbb/ +~/.e/apps/epbb/fonts +@endverbatim. + +If you downloaded a theme called winter.eet you should simply copy it to +your user theme directory and name it 'epbb.eet'. +@verbatim +$ cp winter.eet ~/.e/apps/epbb/epbb.eet +@endverbatim +You should then exit epbb, and start it again. If the theme is malformed +it will fall back to the default, but you'll probably be using your new +winter theme. If the theme you downloaded supplies fonts for status +messages, the fonts +should be copied to the user font directory. +@verbatim +$ cp *.ttf ~/.e/apps/epbb/fonts/ +@endverbatim +That's about it for user themes. If you write one, let me know. :) @todo Theme edc walkthrough |
From: <enl...@li...> - 2004-01-26 21:16:37
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default/programs Log Message: Directory /cvsroot/enlightenment/misc/epbb/data/themes/default/programs added to the repository |
From: <enl...@li...> - 2004-01-26 21:18:28
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default/programs Added Files: basic_programs.edc warning_programs.edc Log Message: chopped up the theme a bit, and made the pulsing less annoying |
From: <enl...@li...> - 2004-01-26 21:18:50
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default Modified Files: default.edc Log Message: chopped up the theme a bit, and made the pulsing less annoying =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/data/themes/default/default.edc,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- default.edc 21 Jan 2004 19:17:43 -0000 1.4 +++ default.edc 26 Jan 2004 21:17:14 -0000 1.5 @@ -34,89 +34,8 @@ action, DRAG_VAL_SET 0.0 0.5; target, "Status"; } -#define BASIC_CB(pname, psig, pstate) \ - program { name, pname; signal, psig; source, ""; \ - action, STATE_SET pstate 0.0; target, "mainimage"; } \ - program { name, pname"show"; signal, psig; source, ""; \ - action, SIGNAL_EMIT "window,show" ""; } \ - program { name, "hidewin"pname; signal, psig; source, "" ;\ - after, "hidewin"; } \ - program { name, pname"fadein"; signal, psig; source, ""; \ - action, STATE_SET "visible" 0.0; \ - transition, DECELERATE 0.5; target, "miclip"; target, \ - "pulseclip"; } \ - program { name, "fadeout"pname; signal, psig; source, ""; \ - after, "fadeout"; } \ - program { name, "pulseup"pname; signal, psig; source, "" ;\ - action, STATE_SET "pulse1" 0.0; transition, LINEAR 0.01; \ - target, pstate; after, "pulsedown"pname; } \ - program { name, "pulsedown"pname; signal, psig; source, "" ;\ - action, STATE_SET "pulse2" 0.0; transition, LINEAR 0.5; \ - target, pstate; after, "pulseup"pname; } \ - program { name, pname"killpulsers"; signal, psig; \ - action, ACTION_STOP; target, "pulseup"pname; \ - target, "pulsedown"pname; in, 1.0 0.0;} \ - program { name, pname"hidepulsers"; signal, psig; \ - action, STATE_SET "default" 0.0; target, pstate; \ - in, 1.0 0.0; transition, DECELERATE 0.3; } -#define WARNING_CB(pname, psig, pstate) \ - program { name, pname; signal, psig; source, ""; \ - action, STATE_SET pstate 0.0; target, "mainimage"; } \ - program { name, pname"show"; signal, psig; source, ""; \ - action, SIGNAL_EMIT "window,show" ""; } \ - program { name, "hidewin"pname; signal, psig; source, "" ;\ - after, "hidewinlong"; } \ - program { name, pname"fadein"; signal, psig; source, ""; \ - action, STATE_SET "visible" 0.0; \ - transition, DECELERATE 0.5; target, "miclip"; } \ - program { name, "fadeout"pname; signal, psig; source, ""; \ - after, "fadeoutlong"; } -BASIC_CB("VolumeSwitch", "pbb,audio,volume", "volume"); -BASIC_CB("BrightnessSwitch", "pbb,display,brightness", "brightness"); -BASIC_CB("MutedSwitch", "pbb,audio,mute", "mute"); -/* - program { - name, "killpulsers"; - signal, "window,*"; - source, ""; - action, ACTION_STOP; - target, "pulseupVolumeSwitch"; - target, "pulsedownVolumeSwitch"; - target, "pulseupBrightnessSwitch"; - target, "pulsedownMutedSwitch"; - } - program { - name, "hidepulsers"; - signal, "window,*"; - source, ""; - action, STATE_SET "default" 0.0; - target, "volume"; - target, "brightness"; - target, "mute"; - } -*/ -WARNING_CB("BatteryWarningOne", "pbb,warning,battery,1", "battery1"); -WARNING_CB("BatteryWarningTwo", "pbb,warning,battery,2", "battery2"); -WARNING_CB("BatteryWarningThree", "pbb,warning,battery,3", "battery3"); -WARNING_CB("SleepWarning", "pbb,warning,sleep", "sleep"); - program { name, "hidewin"; action, ACTION_STOP; - target, "hidewincb"; after, "hidewincb"; } - program { name, "hidewincb"; - action, SIGNAL_EMIT "window,hide" ""; in, 2.0 0.0; } - program { name, "fadeout"; action, ACTION_STOP; \ - target, "fadeout_cb"; after, "fadeout_cb"; } - program { name, "fadeout_cb"; action, STATE_SET "default" 0.0; - target, "miclip"; target, "pulseclip"; \ - transition, ACCELERATE 0.5; in, 1.5 0.0; } - - program { name, "hidewinlong"; action, ACTION_STOP; - target, "hidewinlongcb"; after, "hidewinlongcb"; } - program { name, "hidewinlongcb"; - action, SIGNAL_EMIT "window,hide" ""; in, 5.0 0.0; } - program { name, "fadeoutlong"; action, ACTION_STOP; \ - target, "fadeoutlong_cb"; after, "fadeoutlong_cb"; } - program { name, "fadeoutlong_cb"; action, STATE_SET "default" 0.0; - target, "miclip"; transition, ACCELERATE 1.0; in, 4.0 0.0; } +#include "programs/basic_programs.edc" +#include "programs/warning_programs.edc" } } } |
From: <enl...@li...> - 2004-01-26 21:19:03
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default/parts Modified Files: bg.edc Log Message: chopped up the theme a bit, and made the pulsing less annoying =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/data/themes/default/parts/bg.edc,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- bg.edc 21 Jan 2004 19:17:43 -0000 1.4 +++ bg.edc 26 Jan 2004 21:17:25 -0000 1.5 @@ -72,8 +72,8 @@ rel2 { relative, 1.0 1.0; offset, -15 -30; } \ color, 255 255 255 128; image { normal, simage; } } \ description { state, "pulse2" 0.0; visible, 1; align, 0.5 0.5; \ - rel1 { relative, -0.5 -0.5; offset, 15 5; } \ - rel2 { relative, 1.5 1.5; offset, -15 -30; } \ + rel1 { relative, 0.0 0.0; offset, -15 -30; } \ + rel2 { relative, 1.0 1.0; offset, 15 -5; } \ color, 255 255 255 128; image { normal, simage; } } } part { @@ -84,7 +84,7 @@ MIITEM("default", "volume.png") MIITEM("volume", "volume.png") MIITEM("brightness", "brightness.png") - MIITEM("mute", "noaudio.png") + MIITEM("mute", "mute.png") MIITEM("sleep", "sleep.png") MIITEM("battery1", "battery.png") MIITEM("battery2", "battery.png") @@ -92,5 +92,5 @@ } PIITEM("volume", "volume.png") PIITEM("brightness", "brightness.png") - PIITEM("mute", "noaudio.png") + PIITEM("mute", "mute.png") |
From: <enl...@li...> - 2004-01-26 22:46:34
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default Modified Files: Makefile.am default.edc Log Message: use font embedding in edje add debug buttons for testing =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/data/themes/default/Makefile.am,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- Makefile.am 20 Jan 2004 10:20:12 -0000 1.1.1.1 +++ Makefile.am 26 Jan 2004 22:44:59 -0000 1.2 @@ -1,6 +1,6 @@ DB = default.eet CC = edje_cc -INCLUDES = -v -id ../../images +INCLUDES = -v -id ../../images -fd ../../fonts CLEANFILES = $(DB) =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/data/themes/default/default.edc,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- default.edc 26 Jan 2004 21:17:14 -0000 1.5 +++ default.edc 26 Jan 2004 22:45:00 -0000 1.6 @@ -2,6 +2,10 @@ * Epbb.edc - default theme for epbbuttons * by atmos *========================================================================*/ +#define DEBUG 1 +fonts { + font, "Vera.ttf" "Edje.Vera"; +} images { image, "background.png" LOSSY 95; image, "bg_shadow.png" LOSSY 95; @@ -13,18 +17,27 @@ image, "brightness.png" LOSSY 95; image, "sleep.png" LOSSY 95; image, "battery.png" LOSSY 95; + image, "metalsphere.png" LOSSY 95; } collections { group { name, "Epbb"; +#if DEBUG + min, 500 500; + max, 500 500; +#else min, 140 140; max, 140 140; +#endif parts { #include "parts/bg.edc" #include "parts/status.edc" #include "parts/message.edc" +#if DEBUG +#include "parts/debug.edc" +#endif } programs { program { @@ -36,6 +49,9 @@ } #include "programs/basic_programs.edc" #include "programs/warning_programs.edc" +#if DEBUG +#include "programs/debug_programs.edc" +#endif } } } |
From: <enl...@li...> - 2004-01-26 22:46:34
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default/parts Modified Files: message.edc Added Files: debug.edc Log Message: use font embedding in edje add debug buttons for testing =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/data/themes/default/parts/message.edc,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- message.edc 20 Jan 2004 10:20:12 -0000 1.1.1.1 +++ message.edc 26 Jan 2004 22:45:00 -0000 1.2 @@ -54,8 +54,8 @@ color2, 0 0 0 255; color3, 100 100 100 128; text { - text, "Fuck You"; - font, "Vera"; + text, ""; + font, "Edje.Vera"; size, 16; fit, 0 0; align, 0.0 0.5; |
From: <enl...@li...> - 2004-01-26 22:46:01
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default/programs Added Files: debug_programs.edc Log Message: use font embedding in edje add debug buttons for testing |
From: <enl...@li...> - 2004-01-26 23:11:29
|
Enlightenment CVS committal Author : atmosphere Project : misc Module : epbb Dir : misc/epbb/data/themes/default Modified Files: default.edc Log Message: shouldn't have left debugging on =================================================================== RCS file: /cvsroot/enlightenment/misc/epbb/data/themes/default/default.edc,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- default.edc 26 Jan 2004 22:45:00 -0000 1.6 +++ default.edc 26 Jan 2004 23:10:15 -0000 1.7 @@ -2,7 +2,7 @@ * Epbb.edc - default theme for epbbuttons * by atmos *========================================================================*/ -#define DEBUG 1 +#define DEBUG 0 fonts { font, "Vera.ttf" "Edje.Vera"; } |