summaryrefslogtreecommitdiffstats
path: root/src/target/ui-experiment/display.h
diff options
context:
space:
mode:
authorIngo Albrecht <prom@berlin.ccc.de>2010-09-01 21:24:34 +0200
committerIngo Albrecht <prom@berlin.ccc.de>2010-09-01 21:24:34 +0200
commitdcc3a41036f374a48b2b1791575e11e5e3f09d02 (patch)
tree2261d8ce1395d2cab815f91de96a92b809843186 /src/target/ui-experiment/display.h
parent1198f35283b5fb026249c6881c01038d2a486613 (diff)
ui: Some experimental code snippets i cobbled together several months ago.
Diffstat (limited to 'src/target/ui-experiment/display.h')
-rw-r--r--src/target/ui-experiment/display.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/target/ui-experiment/display.h b/src/target/ui-experiment/display.h
new file mode 100644
index 00000000..55913700
--- /dev/null
+++ b/src/target/ui-experiment/display.h
@@ -0,0 +1,46 @@
+
+#ifndef _UI_DISPLAY_H
+#define _UI_DISPLAY_H
+
+#include <ui/pixel.h>
+#include <ui/image.h>
+
+/**
+ * Displays - physical display devices
+ *
+ * This layer is introduced tentatively, expecting use
+ * of OSMOCOM on multi-display phones, most likely
+ * with a main screen and a cover screen.
+ *
+ */
+struct display {
+ const char *name;
+
+ pxtype_t pixeltype;
+ pxsize_t width;
+ pxsize_t height;
+
+ /* We always operate on an in-memory frame buffer that
+ * can be put on display using damage functions provided
+ * by the image class.
+ */
+ struct image *fbuf;
+
+ /*
+ * We display a top-level widget.
+ */
+ struct widget *widget;
+
+ /*
+ * We hold a graphics context, configured for the target
+ * pixel format.
+ */
+ struct graphics *graphics;
+
+
+ void (*draw) (struct display *display);
+
+ void *priv;
+};
+
+#endif