summaryrefslogtreecommitdiff
path: root/rtgui/include
diff options
context:
space:
mode:
Diffstat (limited to 'rtgui/include')
-rw-r--r--rtgui/include/rtgui/dc.h21
-rw-r--r--rtgui/include/rtgui/dc_hw.h42
2 files changed, 43 insertions, 20 deletions
diff --git a/rtgui/include/rtgui/dc.h b/rtgui/include/rtgui/dc.h
index 955ef2c226..ec7d50f461 100644
--- a/rtgui/include/rtgui/dc.h
+++ b/rtgui/include/rtgui/dc.h
@@ -23,6 +23,7 @@ enum rtgui_dc_type
{
RTGUI_DC_HW,
RTGUI_DC_BUFFER,
+ RTGUI_DC_IMLIB2,
};
/* the abstract device context */
@@ -57,30 +58,10 @@ struct rtgui_dc
rt_bool_t (*fini )(struct rtgui_dc* dc);
};
-/* hardware device context */
-struct rtgui_dc_hw
-{
- struct rtgui_dc parent;
-
- /* widget owner */
- rtgui_widget_t* owner;
-
- /* visible */
- rt_bool_t visible;
-
- /* display driver */
- struct rtgui_graphic_driver* device;
-};
-
/* create a buffer dc */
struct rtgui_dc* rtgui_dc_buffer_create(int width, int height);
rt_uint8_t* rtgui_dc_buffer_get_pixel(struct rtgui_dc* dc);
-/* create a hardware dc */
-struct rtgui_dc* rtgui_dc_hw_create(rtgui_widget_t* owner);
-struct rtgui_dc* rtgui_dc_begin_drawing(rtgui_widget_t* owner);
-void rtgui_dc_end_drawing(struct rtgui_dc* dc);
-
/* destroy a dc */
void rtgui_dc_destory(struct rtgui_dc* dc);
diff --git a/rtgui/include/rtgui/dc_hw.h b/rtgui/include/rtgui/dc_hw.h
new file mode 100644
index 0000000000..870b447aca
--- /dev/null
+++ b/rtgui/include/rtgui/dc_hw.h
@@ -0,0 +1,42 @@
+/*
+ * File : dc_buffer.h
+ * This file is part of RT-Thread RTOS
+ * COPYRIGHT (C) 2006 - 2010, RT-Thread Development Team
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rt-thread.org/license/LICENSE
+ *
+ * Change Logs:
+ * Date Author Notes
+ * 2010-04-10 Bernard first version
+ */
+#ifndef __RTGUI_DC_HW_H__
+#define __RTGUI_DC_HW_H__
+
+#include <rtgui/dc.h>
+
+/* hardware device context */
+struct rtgui_dc_hw
+{
+ struct rtgui_dc parent;
+
+ /* widget owner */
+ rtgui_widget_t* owner;
+
+ /* visible */
+ rt_bool_t visible;
+
+ /* display driver */
+ struct rtgui_graphic_driver* device;
+};
+
+/* create a hardware dc */
+struct rtgui_dc* rtgui_dc_hw_create(rtgui_widget_t* owner);
+struct rtgui_dc* rtgui_dc_begin_drawing(rtgui_widget_t* owner);
+void rtgui_dc_end_drawing(struct rtgui_dc* dc);
+
+/* draw a hline with raw pixel data */
+void rtgui_dc_hw_draw_raw_hline(struct rtgui_dc_hw* dc, rt_uint8_t* raw_ptr, int x1, int x2, int y);
+
+#endif