Set window user data using separate function
authorKristian Høgsberg <krh@bitplanet.net>
Fri, 25 Jun 2010 15:19:22 +0000 (11:19 -0400)
committerKristian Høgsberg <krh@bitplanet.net>
Fri, 25 Jun 2010 15:19:22 +0000 (11:19 -0400)
clients/flower.c
clients/gears.c
clients/image.c
clients/terminal.c
clients/view.c
clients/window.c
clients/window.h

index 5b188461b2f7db1959e5f5ad64db595605286698..68c9062e6448121e3a0ea91448a78ee8e3fe775a 100644 (file)
@@ -141,7 +141,8 @@ int main(int argc, char *argv[])
        draw_stuff(s, flower.width, flower.height);
        cairo_surface_flush(s);
 
-       window_set_frame_handler(flower.window, handle_frame, &flower);
+       window_set_user_data(flower.window, &flower);
+       window_set_frame_handler(flower.window, handle_frame);
        window_commit(flower.window, 0);
 
        display_run(d);
index 1697170c67fd997f2c75829e31ee8723815acda6..04da3de599ee3e5bf67b5eb7caf15f1967a60c1a 100644 (file)
@@ -431,10 +431,11 @@ gears_create(struct display *display)
        draw_gears(gears);
        frame_handler(gears->window, 0, 0, gears);
 
-       window_set_resize_handler(gears->window, resize_handler, gears);
-       window_set_keyboard_focus_handler(gears->window, keyboard_focus_handler, gears);
-       window_set_acknowledge_handler(gears->window, acknowledge_handler, gears);
-       window_set_frame_handler(gears->window, frame_handler, gears);
+       window_set_user_data(gears->window, gears);
+       window_set_resize_handler(gears->window, resize_handler);
+       window_set_keyboard_focus_handler(gears->window, keyboard_focus_handler);
+       window_set_acknowledge_handler(gears->window, acknowledge_handler);
+       window_set_frame_handler(gears->window, frame_handler);
 
        return gears;
 }
index 849307124955385f667ad1a8152751eccfcd869d..52621e9cd76c8b316e5ef1e1d829b343af5b632c 100644 (file)
@@ -223,8 +223,9 @@ image_create(struct display *display, uint32_t key, const char *filename)
         * allocation scheme here.  Or maybe just a real toolkit. */
        image->key = key + 100;
 
-       window_set_redraw_handler(image->window, redraw_handler, image);
-       window_set_keyboard_focus_handler(image->window, keyboard_focus_handler, image);
+       window_set_user_data(image->window, image);
+       window_set_redraw_handler(image->window, redraw_handler);
+       window_set_keyboard_focus_handler(image->window, keyboard_focus_handler);
 
        image_draw(image);
 
index df217b6897e72e5923c598b350008343b7977dce..162dfe86a7f99da56c5dfb26b2d51f4ce451f702 100644 (file)
@@ -438,12 +438,12 @@ terminal_create(struct display *display, int fullscreen)
        terminal->margin = 5;
 
        window_set_fullscreen(terminal->window, terminal->fullscreen);
-       window_set_redraw_handler(terminal->window,
-                                 redraw_handler, terminal);
+       window_set_user_data(terminal->window, terminal);
+       window_set_redraw_handler(terminal->window, redraw_handler);
 
-       window_set_key_handler(terminal->window, key_handler, terminal);
+       window_set_key_handler(terminal->window, key_handler);
        window_set_keyboard_focus_handler(terminal->window,
-                                         keyboard_focus_handler, terminal);
+                                         keyboard_focus_handler);
 
        surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 0, 0);
        cr = cairo_create(surface);
index ceaf4ce511e10da39bf07ba26fe66340ec2fabf6..4ef6b6c4632999e3d776ce5127ec8e01858359e7 100644 (file)
@@ -184,10 +184,11 @@ view_create(struct display *display, uint32_t key, const char *filename)
         * allocation scheme here.  Or maybe just a real toolkit. */
        view->key = key + 100;
 
-       window_set_redraw_handler(view->window, redraw_handler, view);
-       window_set_key_handler(view->window, key_handler, view);
+       window_set_user_data(view->window, view);
+       window_set_redraw_handler(view->window, redraw_handler);
+       window_set_key_handler(view->window, key_handler);
        window_set_keyboard_focus_handler(view->window,
-                                         keyboard_focus_handler, view);
+                                         keyboard_focus_handler);
 
        view->document = poppler_document_new_from_file(view->filename,
                                                        NULL, &error);
index 214d0d56fe62bdd414dcae8a9b8c97d05fc1bb3d..cac1eb8d4c74621aa4c3675a2e90e40e6946091d 100644 (file)
@@ -678,52 +678,52 @@ window_set_decoration(struct window *window, int decoration)
        window->decoration = decoration;
 }
 
+void
+window_set_user_data(struct window *window, void *data)
+{
+       window->user_data = data;
+}
+
 void
 window_set_resize_handler(struct window *window,
-                         window_resize_handler_t handler, void *data)
+                         window_resize_handler_t handler)
 {
        window->resize_handler = handler;
-       window->user_data = data;
 }
 
 void
 window_set_redraw_handler(struct window *window,
-                         window_redraw_handler_t handler, void *data)
+                         window_redraw_handler_t handler)
 {
        window->redraw_handler = handler;
-       window->user_data = data;
 }
 
 void
 window_set_key_handler(struct window *window,
-                      window_key_handler_t handler, void *data)
+                      window_key_handler_t handler)
 {
        window->key_handler = handler;
-       window->user_data = data;
 }
 
 void
 window_set_acknowledge_handler(struct window *window,
-                              window_acknowledge_handler_t handler, void *data)
+                              window_acknowledge_handler_t handler)
 {
        window->acknowledge_handler = handler;
-       window->user_data = data;
 }
 
 void
 window_set_frame_handler(struct window *window,
-                        window_frame_handler_t handler, void *data)
+                        window_frame_handler_t handler)
 {
        window->frame_handler = handler;
-       window->user_data = data;
 }
 
 void
 window_set_keyboard_focus_handler(struct window *window,
-                                 window_keyboard_focus_handler_t handler, void *data)
+                                 window_keyboard_focus_handler_t handler)
 {
        window->keyboard_focus_handler = handler;
-       window->user_data = data;
 }
 
 void
index 041d35d4e13ab541ba21c16e129f0efaaa5ac245..7f8df80ff2710935315a75f4f1d61fb40f034b47 100644 (file)
@@ -102,37 +102,40 @@ window_copy_surface(struct window *window,
 void
 window_set_fullscreen(struct window *window, int fullscreen);
 
+void
+window_set_user_data(struct window *window, void *data);
+
 void
 window_set_redraw_handler(struct window *window,
-                         window_redraw_handler_t handler, void *data);
+                         window_redraw_handler_t handler);
 
 void
 window_set_decoration(struct window *window, int decoration);
 
 void
 window_set_resize_handler(struct window *window,
-                         window_resize_handler_t handler, void *data);
+                         window_resize_handler_t handler);
 void
 window_set_frame_handler(struct window *window,
-                        window_frame_handler_t handler, void *data);
+                        window_frame_handler_t handler);
 void
 window_set_acknowledge_handler(struct window *window,
-                              window_acknowledge_handler_t handler, void *data);
+                              window_acknowledge_handler_t handler);
+
 void
 window_set_key_handler(struct window *window,
-                      window_key_handler_t handler, void *data);
+                      window_key_handler_t handler);
 
 void
 window_set_keyboard_focus_handler(struct window *window,
-                                 window_keyboard_focus_handler_t handler,
-                                 void *data);
+                                 window_keyboard_focus_handler_t handler);
 
 void
 window_set_acknowledge_handler(struct window *window,
-                              window_acknowledge_handler_t handler, void *data);
+                              window_acknowledge_handler_t handler);
 
 void
 window_set_frame_handler(struct window *window,
-                        window_frame_handler_t handler, void *data);
+                        window_frame_handler_t handler);
 
 #endif