summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorGravatar waker <wakeroid@gmail.com>2011-06-18 12:55:51 +0200
committerGravatar waker <wakeroid@gmail.com>2011-06-18 12:55:51 +0200
commit4b1a42b0aa915b02dbe0a6ee1de81db4e4981bfe (patch)
tree1b838d3d5cab57a21d1c331cc24420d3c4cbcc36 /plugins
parentfe1790fd889dfacc6e4f4a32bfebe29789d5a9ed (diff)
playlist keyboard focus
Diffstat (limited to 'plugins')
-rw-r--r--plugins/gtkui/callbacks.c3
-rw-r--r--plugins/gtkui/ddbcellrenderertextmultiline.c34
-rw-r--r--plugins/gtkui/ddbcellrenderertextmultiline.h8
-rw-r--r--plugins/gtkui/ddbequalizer.c28
-rw-r--r--plugins/gtkui/ddbequalizer.h4
-rw-r--r--plugins/gtkui/ddblistview.c37
-rw-r--r--plugins/gtkui/ddbseekbar.c8
-rw-r--r--plugins/gtkui/ddbseekbar.h4
-rw-r--r--plugins/gtkui/widgets.c7
-rw-r--r--plugins/gtkui/widgets.h2
10 files changed, 84 insertions, 51 deletions
diff --git a/plugins/gtkui/callbacks.c b/plugins/gtkui/callbacks.c
index 1c905992..9211fac5 100644
--- a/plugins/gtkui/callbacks.c
+++ b/plugins/gtkui/callbacks.c
@@ -357,9 +357,6 @@ on_mainwin_key_press_event (GtkWidget *widget,
deadbeef->conf_set_int ("playlist.current", pl);
}
}
- else {
-// FIXME! ddb_listview_handle_keypress (DDB_LISTVIEW (lookup_widget (mainwin, "playlist")), event->keyval, event->state);
- }
return FALSE;
}
diff --git a/plugins/gtkui/ddbcellrenderertextmultiline.c b/plugins/gtkui/ddbcellrenderertextmultiline.c
index a6e95853..aff449b5 100644
--- a/plugins/gtkui/ddbcellrenderertextmultiline.c
+++ b/plugins/gtkui/ddbcellrenderertextmultiline.c
@@ -1,4 +1,4 @@
-/* ddbcellrenderertextmultiline.c generated by valac 0.10.2, the Vala compiler
+/* ddbcellrenderertextmultiline.c generated by valac, the Vala compiler
* generated from ddbcellrenderertextmultiline.vala, do not modify */
/*
@@ -25,8 +25,8 @@
#include <gtk/gtk.h>
#include <stdlib.h>
#include <string.h>
-#include <gdk/gdk.h>
#include <gdk/gdkkeysyms.h>
+#include <gdk/gdk.h>
#define DDB_TYPE_CELL_EDITABLE_TEXT_VIEW (ddb_cell_editable_text_view_get_type ())
@@ -84,16 +84,16 @@ static gpointer ddb_cell_editable_text_view_parent_class = NULL;
static GtkCellEditableIface* ddb_cell_editable_text_view_gtk_cell_editable_parent_iface = NULL;
static gpointer ddb_cell_renderer_text_multiline_parent_class = NULL;
-GType ddb_cell_editable_text_view_get_type (void) G_GNUC_CONST;
+GType ddb_cell_editable_text_view_get_type (void);
enum {
DDB_CELL_EDITABLE_TEXT_VIEW_DUMMY_PROPERTY
};
static gboolean ddb_cell_editable_text_view_real_key_press_event (GtkWidget* base, GdkEventKey* event);
-static void ddb_cell_editable_text_view_real_start_editing (GtkCellEditable* base, GdkEvent* event);
+void ddb_cell_editable_text_view_start_editing (DdbCellEditableTextView* self, GdkEvent* event);
DdbCellEditableTextView* ddb_cell_editable_text_view_new (void);
DdbCellEditableTextView* ddb_cell_editable_text_view_construct (GType object_type);
static void ddb_cell_editable_text_view_finalize (GObject* obj);
-GType ddb_cell_renderer_text_multiline_get_type (void) G_GNUC_CONST;
+GType ddb_cell_renderer_text_multiline_get_type (void);
#define DDB_CELL_RENDERER_TEXT_MULTILINE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), DDB_TYPE_CELL_RENDERER_TEXT_MULTILINE, DdbCellRendererTextMultilinePrivate))
enum {
DDB_CELL_RENDERER_TEXT_MULTILINE_DUMMY_PROPERTY
@@ -138,9 +138,8 @@ static gboolean ddb_cell_editable_text_view_real_key_press_event (GtkWidget* bas
}
-static void ddb_cell_editable_text_view_real_start_editing (GtkCellEditable* base, GdkEvent* event) {
- DdbCellEditableTextView * self;
- self = (DdbCellEditableTextView*) base;
+void ddb_cell_editable_text_view_start_editing (DdbCellEditableTextView* self, GdkEvent* event) {
+ g_return_if_fail (self != NULL);
g_return_if_fail (event != NULL);
}
@@ -166,7 +165,6 @@ static void ddb_cell_editable_text_view_class_init (DdbCellEditableTextViewClass
static void ddb_cell_editable_text_view_gtk_cell_editable_interface_init (GtkCellEditableIface * iface) {
ddb_cell_editable_text_view_gtk_cell_editable_parent_iface = g_type_interface_peek_parent (iface);
- iface->start_editing = ddb_cell_editable_text_view_real_start_editing;
}
@@ -214,10 +212,10 @@ static void ddb_cell_renderer_text_multiline_gtk_cell_renderer_text_editing_done
buf = _g_object_ref0 (gtk_text_view_get_buffer ((GtkTextView*) entry));
gtk_text_buffer_get_iter_at_offset (buf, &begin, 0);
gtk_text_buffer_get_iter_at_offset (buf, &end, -1);
- new_text = gtk_text_buffer_get_text (buf, &begin, &end, TRUE);
+ new_text = g_strdup (gtk_text_buffer_get_text (buf, &begin, &end, TRUE));
g_signal_emit_by_name ((GtkCellRendererText*) _self_, "edited", entry->tree_path, new_text);
- _g_free0 (new_text);
_g_object_unref0 (buf);
+ _g_free0 (new_text);
}
@@ -242,14 +240,14 @@ static GtkCellEditable* ddb_cell_renderer_text_multiline_real_start_editing (Gtk
GtkListStore* store;
GtkTreeIter iter = {0};
GValue v = {0};
- GValue _tmp1_ = {0};
GValue _tmp2_;
+ GValue _tmp1_ = {0};
gint mult;
DdbCellEditableTextView* _tmp3_;
char* _tmp4_;
GtkTextBuffer* buf;
- char* _tmp5_ = NULL;
char* _tmp6_;
+ char* _tmp5_ = NULL;
gboolean _tmp7_;
self = (DdbCellRendererTextMultiline*) base;
g_return_val_if_fail (event != NULL, NULL);
@@ -273,8 +271,8 @@ static GtkCellEditable* ddb_cell_renderer_text_multiline_real_start_editing (Gtk
self->priv->entry->tree_path = (_tmp4_ = g_strdup (path), _g_free0 (self->priv->entry->tree_path), _tmp4_);
buf = gtk_text_buffer_new (NULL);
if ((_tmp7_ = (_tmp6_ = (g_object_get ((GtkCellRendererText*) self, "text", &_tmp5_, NULL), _tmp5_)) != NULL, _g_free0 (_tmp6_), _tmp7_)) {
- char* _tmp8_ = NULL;
char* _tmp9_;
+ char* _tmp8_ = NULL;
gtk_text_buffer_set_text (buf, _tmp9_ = (g_object_get ((GtkCellRendererText*) self, "text", &_tmp8_, NULL), _tmp8_), -1);
_g_free0 (_tmp9_);
}
@@ -284,11 +282,11 @@ static GtkCellEditable* ddb_cell_renderer_text_multiline_real_start_editing (Gtk
gtk_widget_set_size_request ((GtkWidget*) self->priv->entry, (*cell_area).width, (*cell_area).height);
gtk_widget_show ((GtkWidget*) self->priv->entry);
result = GTK_CELL_EDITABLE (self->priv->entry);
- _g_object_unref0 (buf);
- G_IS_VALUE (&v) ? (g_value_unset (&v), NULL) : NULL;
- _g_object_unref0 (store);
- _g_object_unref0 (tv);
_gtk_tree_path_free0 (p);
+ _g_object_unref0 (tv);
+ _g_object_unref0 (store);
+ G_IS_VALUE (&v) ? (g_value_unset (&v), NULL) : NULL;
+ _g_object_unref0 (buf);
return result;
}
diff --git a/plugins/gtkui/ddbcellrenderertextmultiline.h b/plugins/gtkui/ddbcellrenderertextmultiline.h
index 2fec6b26..55d4a82c 100644
--- a/plugins/gtkui/ddbcellrenderertextmultiline.h
+++ b/plugins/gtkui/ddbcellrenderertextmultiline.h
@@ -1,4 +1,4 @@
-/* ddbcellrenderertextmultiline.h generated by valac 0.10.2, the Vala compiler, do not modify */
+/* ddbcellrenderertextmultiline.h generated by valac, the Vala compiler, do not modify */
#ifndef __DDBCELLRENDERERTEXTMULTILINE_H__
@@ -8,6 +8,7 @@
#include <gtk/gtk.h>
#include <stdlib.h>
#include <string.h>
+#include <gdk/gdk.h>
G_BEGIN_DECLS
@@ -55,10 +56,11 @@ struct _DdbCellRendererTextMultilineClass {
};
-GType ddb_cell_editable_text_view_get_type (void) G_GNUC_CONST;
+GType ddb_cell_editable_text_view_get_type (void);
+void ddb_cell_editable_text_view_start_editing (DdbCellEditableTextView* self, GdkEvent* event);
DdbCellEditableTextView* ddb_cell_editable_text_view_new (void);
DdbCellEditableTextView* ddb_cell_editable_text_view_construct (GType object_type);
-GType ddb_cell_renderer_text_multiline_get_type (void) G_GNUC_CONST;
+GType ddb_cell_renderer_text_multiline_get_type (void);
DdbCellRendererTextMultiline* ddb_cell_renderer_text_multiline_new (void);
DdbCellRendererTextMultiline* ddb_cell_renderer_text_multiline_construct (GType object_type);
diff --git a/plugins/gtkui/ddbequalizer.c b/plugins/gtkui/ddbequalizer.c
index 7cd9ee4f..cf1c10eb 100644
--- a/plugins/gtkui/ddbequalizer.c
+++ b/plugins/gtkui/ddbequalizer.c
@@ -1,4 +1,4 @@
-/* ddbequalizer.c generated by valac 0.10.2, the Vala compiler
+/* ddbequalizer.c generated by valac, the Vala compiler
* generated from ddbequalizer.vala, do not modify */
/*
@@ -45,8 +45,8 @@ typedef struct _DdbEqualizerClass DdbEqualizerClass;
typedef struct _DdbEqualizerPrivate DdbEqualizerPrivate;
#define _gdk_cursor_unref0(var) ((var == NULL) ? NULL : (var = (gdk_cursor_unref (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))
-#define _pango_font_description_free0(var) ((var == NULL) ? NULL : (var = (pango_font_description_free (var), NULL)))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+#define _pango_font_description_free0(var) ((var == NULL) ? NULL : (var = (pango_font_description_free (var), NULL)))
struct _DdbEqualizer {
GtkDrawingArea parent_instance;
@@ -73,7 +73,7 @@ struct _DdbEqualizerPrivate {
static gpointer ddb_equalizer_parent_class = NULL;
-GType ddb_equalizer_get_type (void) G_GNUC_CONST;
+GType ddb_equalizer_get_type (void);
#define DDB_EQUALIZER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), DDB_TYPE_EQUALIZER, DdbEqualizerPrivate))
enum {
DDB_EQUALIZER_DUMMY_PROPERTY
@@ -82,8 +82,8 @@ enum {
#define DDB_EQUALIZER_spot_size 3
static gboolean ddb_equalizer_real_configure_event (GtkWidget* base, GdkEventConfigure* event);
static void ddb_equalizer_real_realize (GtkWidget* base);
-static gboolean ddb_equalizer_real_expose_event (GtkWidget* base, GdkEventExpose* event);
static inline double ddb_equalizer_scale (DdbEqualizer* self, double val);
+static gboolean ddb_equalizer_real_expose_event (GtkWidget* base, GdkEventExpose* event);
static gboolean ddb_equalizer_in_curve_area (DdbEqualizer* self, double x, double y);
static void ddb_equalizer_update_eq_drag (DdbEqualizer* self, double x, double y);
static gboolean ddb_equalizer_real_button_press_event (GtkWidget* base, GdkEventButton* event);
@@ -137,8 +137,8 @@ static gboolean ddb_equalizer_real_expose_event (GtkWidget* base, GdkEventExpose
gint width;
gint height;
GdkDrawable* d;
- GdkGCValues _tmp2_ = {0};
GdkGCValues _tmp3_;
+ GdkGCValues _tmp2_ = {0};
GdkGC* gc;
double step;
gint i = 0;
@@ -154,14 +154,14 @@ static gboolean ddb_equalizer_real_expose_event (GtkWidget* base, GdkEventExpose
char* _tmp10_;
const char* _tmp11_;
char* _tmp12_;
- GdkRectangle _tmp13_ = {0};
GdkRectangle _tmp14_;
+ GdkRectangle _tmp13_ = {0};
gint count;
- GdkRectangle _tmp16_ = {0};
GdkRectangle _tmp17_;
+ GdkRectangle _tmp16_ = {0};
gint bar_w;
- GdkRectangle _tmp22_ = {0};
GdkRectangle _tmp23_;
+ GdkRectangle _tmp22_ = {0};
self = (DdbEqualizer*) base;
fore_bright_color = (gtkui_get_bar_foreground_color (&_tmp0_), _tmp0_);
c1 = fore_bright_color;
@@ -328,8 +328,8 @@ static gboolean ddb_equalizer_real_expose_event (GtkWidget* base, GdkEventExpose
i = 0;
_tmp18_ = TRUE;
while (TRUE) {
- GdkRectangle _tmp19_ = {0};
GdkRectangle _tmp20_;
+ GdkRectangle _tmp19_ = {0};
if (!_tmp18_) {
i++;
}
@@ -363,12 +363,12 @@ static gboolean ddb_equalizer_real_expose_event (GtkWidget* base, GdkEventExpose
gdk_gc_set_line_attributes (gc, 1, GDK_LINE_ON_OFF_DASH, GDK_CAP_NOT_LAST, GDK_JOIN_MITER);
gdk_draw_line (d, gc, self->priv->margin_left + 1, self->priv->mouse_y, width, self->priv->mouse_y);
result = FALSE;
- _g_free0 (tmp);
- _pango_font_description_free0 (fd);
- _g_object_unref0 (ctx);
- _g_object_unref0 (l);
- _g_object_unref0 (gc);
_g_object_unref0 (d);
+ _g_object_unref0 (gc);
+ _g_object_unref0 (l);
+ _g_object_unref0 (ctx);
+ _pango_font_description_free0 (fd);
+ _g_free0 (tmp);
return result;
}
diff --git a/plugins/gtkui/ddbequalizer.h b/plugins/gtkui/ddbequalizer.h
index 2ce2ba5c..b0493d52 100644
--- a/plugins/gtkui/ddbequalizer.h
+++ b/plugins/gtkui/ddbequalizer.h
@@ -1,4 +1,4 @@
-/* ddbequalizer.h generated by valac 0.10.2, the Vala compiler, do not modify */
+/* ddbequalizer.h generated by valac, the Vala compiler, do not modify */
#ifndef __DDBEQUALIZER_H__
@@ -33,7 +33,7 @@ struct _DdbEqualizerClass {
};
-GType ddb_equalizer_get_type (void) G_GNUC_CONST;
+GType ddb_equalizer_get_type (void);
void ddb_equalizer_set_band (DdbEqualizer* self, gint band, double v);
double ddb_equalizer_get_band (DdbEqualizer* self, gint band);
void ddb_equalizer_set_preamp (DdbEqualizer* self, double v);
diff --git a/plugins/gtkui/ddblistview.c b/plugins/gtkui/ddblistview.c
index b6140456..a992b62b 100644
--- a/plugins/gtkui/ddblistview.c
+++ b/plugins/gtkui/ddblistview.c
@@ -265,6 +265,14 @@ ddb_listview_motion_notify_event (GtkWidget *widget,
GdkEventMotion *event,
gpointer user_data);
+gboolean
+ddb_listview_list_key_press_event (GtkWidget *widget, GdkEventKey *event, gpointer user_data);
+
+gboolean
+ddb_listview_list_focus_in_event (GtkWidget *widget, GdkEvent *event, gpointer user_data);
+
+gboolean
+ddb_listview_list_focus_out_event (GtkWidget *widget, GdkEvent *event, gpointer user_data);
static void
ddb_listview_class_init(DdbListviewClass *class)
@@ -351,7 +359,9 @@ ddb_listview_init(DdbListview *listview)
listview->list = gtk_drawing_area_new ();
gtk_widget_show (listview->list);
gtk_box_pack_start (GTK_BOX (vbox), listview->list, TRUE, TRUE, 0);
- gtk_widget_set_events (listview->list, GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK);
+ GTK_WIDGET_SET_FLAGS (listview->list, GTK_CAN_FOCUS);
+ GTK_WIDGET_SET_FLAGS (listview->list, GTK_CAN_DEFAULT);
+ gtk_widget_set_events (listview->list, GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_FOCUS_CHANGE_MASK);
listview->hscrollbar = gtk_hscrollbar_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, 0, 0, 0, 0, 0)));
gtk_widget_show (listview->hscrollbar);
@@ -435,6 +445,10 @@ ddb_listview_init(DdbListview *listview)
g_signal_connect ((gpointer) listview->hscrollbar, "value_changed",
G_CALLBACK (ddb_listview_hscroll_value_changed),
NULL);
+
+ g_signal_connect ((gpointer)listview->list, "key_press_event", G_CALLBACK (ddb_listview_list_key_press_event), NULL);
+ g_signal_connect ((gpointer)listview->list, "focus_in_event", G_CALLBACK (ddb_listview_list_focus_in_event), NULL);
+ g_signal_connect ((gpointer)listview->list, "focus_out_event", G_CALLBACK (ddb_listview_list_focus_out_event), NULL);
}
GtkWidget * ddb_listview_new()
@@ -2563,6 +2577,7 @@ ddb_listview_list_button_press_event (GtkWidget *widget,
GdkEventButton *event,
gpointer user_data)
{
+ gtk_widget_grab_focus (widget);
DdbListview *ps = DDB_LISTVIEW (g_object_get_data (G_OBJECT (widget), "owner"));
if (event->button == 1) {
ddb_listview_list_mouse1_pressed (ps, event->state, event->x, event->y, event->type);
@@ -2969,3 +2984,23 @@ ddb_listview_clear_sort (DdbListview *listview) {
}
gtk_widget_queue_draw (listview->header);
}
+
+gboolean
+ddb_listview_list_key_press_event (GtkWidget *widget, GdkEventKey *event, gpointer user_data) {
+ DdbListview *listview = DDB_LISTVIEW (g_object_get_data (G_OBJECT (widget), "owner"));
+ ddb_listview_handle_keypress (listview, event->keyval, event->state);
+ return FALSE;
+
+}
+
+gboolean
+ddb_listview_list_focus_in_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) {
+ GTK_WIDGET_SET_FLAGS (widget, GTK_HAS_FOCUS);
+ return FALSE;
+}
+
+gboolean
+ddb_listview_list_focus_out_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) {
+ GTK_WIDGET_UNSET_FLAGS (widget, GTK_HAS_FOCUS);
+ return FALSE;
+}
diff --git a/plugins/gtkui/ddbseekbar.c b/plugins/gtkui/ddbseekbar.c
index 1ad285a7..d70ebc05 100644
--- a/plugins/gtkui/ddbseekbar.c
+++ b/plugins/gtkui/ddbseekbar.c
@@ -1,4 +1,4 @@
-/* ddbseekbar.c generated by valac 0.10.2, the Vala compiler
+/* ddbseekbar.c generated by valac, the Vala compiler
* generated from ddbseekbar.vala, do not modify */
/*
@@ -51,7 +51,7 @@ struct _DdbSeekbarClass {
static gpointer ddb_seekbar_parent_class = NULL;
-GType ddb_seekbar_get_type (void) G_GNUC_CONST;
+GType ddb_seekbar_get_type (void);
enum {
DDB_SEEKBAR_DUMMY_PROPERTY
};
@@ -138,8 +138,8 @@ static gboolean ddb_seekbar_real_configure_event (GtkWidget* base, GdkEventConfi
DdbSeekbar* ddb_seekbar_construct (GType object_type) {
- DdbSeekbar * self = NULL;
- self = (DdbSeekbar*) gtk_widget_new (object_type, NULL);
+ DdbSeekbar * self;
+ self = g_object_newv (object_type, 0, NULL);
return self;
}
diff --git a/plugins/gtkui/ddbseekbar.h b/plugins/gtkui/ddbseekbar.h
index c975654e..28c69cd3 100644
--- a/plugins/gtkui/ddbseekbar.h
+++ b/plugins/gtkui/ddbseekbar.h
@@ -1,4 +1,4 @@
-/* ddbseekbar.h generated by valac 0.10.2, the Vala compiler, do not modify */
+/* ddbseekbar.h generated by valac, the Vala compiler, do not modify */
#ifndef __DDBSEEKBAR_H__
@@ -31,7 +31,7 @@ struct _DdbSeekbarClass {
};
-GType ddb_seekbar_get_type (void) G_GNUC_CONST;
+GType ddb_seekbar_get_type (void);
DdbSeekbar* ddb_seekbar_new (void);
DdbSeekbar* ddb_seekbar_construct (GType object_type);
diff --git a/plugins/gtkui/widgets.c b/plugins/gtkui/widgets.c
index 327cfd7f..344d8530 100644
--- a/plugins/gtkui/widgets.c
+++ b/plugins/gtkui/widgets.c
@@ -55,7 +55,7 @@ w_append (ddb_gtkui_widget_t *cont, ddb_gtkui_widget_t *child) {
}
ddb_gtkui_widget_t *
-w_create_hsplitter (void) {
+w_hsplitter_create (void) {
w_splitter_t *w = malloc (sizeof (w_splitter_t));
memset (w, 0, sizeof (w_splitter_t));
w->base.widget = gtk_hpaned_new ();
@@ -282,8 +282,9 @@ w_tabbed_playlist_create (void) {
gtk_container_set_border_width (GTK_CONTAINER (frame), 1);
gtk_container_add (GTK_CONTAINER (frame), list);
- GTK_WIDGET_UNSET_FLAGS (list, GTK_CAN_FOCUS);
- GTK_WIDGET_UNSET_FLAGS (list, GTK_CAN_DEFAULT);
+// GTK_WIDGET_SET_FLAGS (list, GTK_CAN_FOCUS);
+// GTK_WIDGET_SET_FLAGS (list, GTK_CAN_DEFAULT);
+ printf ("can_focus: %d\n", gtk_widget_get_can_focus (list));
main_playlist_init (list);
if (deadbeef->conf_get_int ("gtkui.headers.visible", 1)) {
ddb_listview_show_header (w->list, 1);
diff --git a/plugins/gtkui/widgets.h b/plugins/gtkui/widgets.h
index e4d8c734..17fd2af6 100644
--- a/plugins/gtkui/widgets.h
+++ b/plugins/gtkui/widgets.h
@@ -25,7 +25,7 @@ void
w_append (ddb_gtkui_widget_t *cont, ddb_gtkui_widget_t *child);
ddb_gtkui_widget_t *
-w_create_hsplitter (void);
+w_hsplitter_create (void);
ddb_gtkui_widget_t *
w_create_vsplitter (void);