summaryrefslogtreecommitdiff
path: root/atari/treeview.h
diff options
context:
space:
mode:
authorOle Loots <ole@monochrom.net>2013-09-17 02:10:35 +0200
committerOle Loots <ole@monochrom.net>2013-09-17 02:10:35 +0200
commite4c6acee55139a18d6118999c16d55aa1f36c9e8 (patch)
treef94ac06848c021c5e3b609e5c1bf0729dcef6ea5 /atari/treeview.h
parenteab22c4f32a92586a4390c53e81c909747ee3f7a (diff)
downloadnetsurf-e4c6acee55139a18d6118999c16d55aa1f36c9e8.tar.gz
netsurf-e4c6acee55139a18d6118999c16d55aa1f36c9e8.tar.bz2
Treeview implementation adjusted
(still requires changes at several places in the atari frontent)
Diffstat (limited to 'atari/treeview.h')
-rw-r--r--atari/treeview.h31
1 files changed, 25 insertions, 6 deletions
diff --git a/atari/treeview.h b/atari/treeview.h
index f8e4c4264..a6a59acd2 100644
--- a/atari/treeview.h
+++ b/atari/treeview.h
@@ -19,19 +19,38 @@
#ifndef NSATARI_TREEVIEW_H
#define NSATARI_TREEVIEW_H
+#include "atari/gui.h"
+#include "atari/gemtk/gemtk.h"
+
+#define ATARI_TREEVIEW_WIDGETS (CLOSER | MOVER | SIZER| NAME | FULLER | \
+ SMALLER | VSLIDE | HSLIDE | UPARROW | DNARROW \
+ | LFARROW | RTARROW)
+
+
+struct core_window;
+struct atari_treeview_window;
+typedef struct atari_treeview_window *ATARI_TREEVIEW_PTR;
+
+typedef void (*atari_treeview_keypress_callback)(struct core_window *cw,
+ long ucs4);
+typedef void (*atari_treeview_mouse_action_callback)(struct core_window *cw,
+ browser_mouse_state mouse,
+ int x, int y);
+typedef void (*atari_treeview_draw_callback)(struct core_window *cw, int x,
+ int y, int clip_x, int clip_y,
+ int clip_width, int clip_height,
+ const struct redraw_context *ctx);
+
struct atari_treeview_callbacks {
nserror (*init)(struct core_window *cw,
struct core_window_callback_table * default_callbacks);
void (*fini)(struct core_window *cw);
- void (*draw)(struct core_window *cw);
- void (*keypress)(struct core_window *cw);
- void (*mouse)(struct core_window *cw);
+ atari_treeview_draw_callback draw;
+ atari_treeview_keypress_callback keypress;
+ atari_treeview_mouse_action_callback mouse_action;
gemtk_wm_event_handler_f gemtk_user_func;
};
-struct atari_treeview_callbacks;
-struct atari_treeview_window;
-
struct atari_treeview_window *
atari_treeview_create(GUIWIN *win, struct atari_treeview_callbacks * callbacks,
uint32_t flags);