summaryrefslogtreecommitdiff
path: root/plugins/gtkui/gtkui_api.h
diff options
context:
space:
mode:
authorGravatar waker <wakeroid@gmail.com>2011-06-17 23:20:45 +0200
committerGravatar waker <wakeroid@gmail.com>2011-06-17 23:20:45 +0200
commitfe1790fd889dfacc6e4f4a32bfebe29789d5a9ed (patch)
treeb6e23533f7aeeedba4e587487c9611fed4952d6c /plugins/gtkui/gtkui_api.h
parent081386fa03e82ca64aa14a5bd5e8bd3ba8b2ba9a (diff)
initial work to add customizable layout support:
defined data structures, few stubs, many regressions, implemented tabbed playlist widget; now it should be possible to have several playlist viewers visible at the same time; playlist keyboard handling is partially broken
Diffstat (limited to 'plugins/gtkui/gtkui_api.h')
-rw-r--r--plugins/gtkui/gtkui_api.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/plugins/gtkui/gtkui_api.h b/plugins/gtkui/gtkui_api.h
index f20c411e..0857e886 100644
--- a/plugins/gtkui/gtkui_api.h
+++ b/plugins/gtkui/gtkui_api.h
@@ -25,9 +25,22 @@
#ifndef __GTKUI_API_H
#define __GTKUI_API_H
+typedef struct ddb_gtkui_widget_s {
+ const char *type;
+ GtkWidget *widget;
+
+ void (*destroy) (struct ddb_gtkui_widget_s *w);
+ int (*message) (struct ddb_gtkui_widget_s *w, uint32_t id, uintptr_t ctx, uint32_t p1, uint32_t p2);
+ struct ddb_gtkui_widget_s *children;
+ struct ddb_gtkui_widget_s *next; // points to next widget in the same container
+} ddb_gtkui_widget_t;
+
typedef struct {
DB_gui_t gui;
GtkWidget * (*get_mainwin) (void);
+ void (*reg_widget) (const char *type, ddb_gtkui_widget_t *(*create_func) (void));
+ void (*unreg_widget) (const char *type);
+ ddb_gtkui_widget_t * (*get_root_widget) (void);
} ddb_gtkui_t;
#endif