diff options
| author | Felix Domke <tmbinc@elitedvb.net> | 2006-04-08 00:58:12 +0000 |
|---|---|---|
| committer | Felix Domke <tmbinc@elitedvb.net> | 2006-04-08 00:58:12 +0000 |
| commit | 4f338089f2a72f55f15a0b4b1be3996f8a0fbe97 (patch) | |
| tree | ee3564af8934b29ea093c86b1d6b87d406eece1c /lib/gui/evideo.cpp | |
| parent | 74cddac53983fdd8eebd9639b1e23119dd23edf9 (diff) | |
| download | enigma2-4f338089f2a72f55f15a0b4b1be3996f8a0fbe97.tar.gz enigma2-4f338089f2a72f55f15a0b4b1be3996f8a0fbe97.zip | |
add video widget
Diffstat (limited to 'lib/gui/evideo.cpp')
| -rw-r--r-- | lib/gui/evideo.cpp | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/lib/gui/evideo.cpp b/lib/gui/evideo.cpp new file mode 100644 index 00000000..8151e800 --- /dev/null +++ b/lib/gui/evideo.cpp @@ -0,0 +1,48 @@ +#include <lib/gui/evideo.h> + +eVideoWidget::eVideoWidget(eWidget *parent): eWidget(parent) +{ +} + +int eVideoWidget::event(int event, void *data, void *data2) +{ + switch (event) + { + case evtChangedPosition: + case evtChangedSize: + eDebug("position is now ..."); + updatePosition(); + } + return eWidget::event(event, data, data2); +} + + +void eVideoWidget::updatePosition() +{ + ePoint abspos = getAbsolutePosition(); + eDebug("position is %d %d -> %d %d", abspos.x(), abspos.y(), size().width(), size().height()); + + for (int i=0; i<4; ++i) + { + char *targets[]={"left", "top", "width", "height"}; + char filename[128]; + snprintf(filename, 128, "/proc/stb/vmpeg/%d/dst_%s", 1, targets[i]); + FILE *f = fopen(filename, "w"); + if (!f) + { + eDebug("failed to open %s - %m", filename); + break; + } + int val = 0; + switch (i) + { + case 0: val = abspos.x(); break; + case 1: val = abspos.y(); break; + case 2: val = size().width(); break; + case 3: val = size().height(); break; + } + fprintf(f, "%08x\n", val); + fclose(f); + eDebug("%s %08x", filename, val); + } +} |
