diff options
author | waker <wakeroid@gmail.com> | 2011-03-10 12:05:31 +0100 |
---|---|---|
committer | waker <wakeroid@gmail.com> | 2011-03-10 12:05:31 +0100 |
commit | 6a06471b33a6825e0311d27520b66e32271a630c (patch) | |
tree | 4960cc9fcabe97103275c4443864cdb2b2a069e1 /plugins/gtkui/search.c | |
parent | 4593c75d53f43af914bbfb313dbe394abc0b7abf (diff) |
added reusable window geometry save/restore functions
Diffstat (limited to 'plugins/gtkui/search.c')
-rw-r--r-- | plugins/gtkui/search.c | 64 |
1 files changed, 5 insertions, 59 deletions
diff --git a/plugins/gtkui/search.c b/plugins/gtkui/search.c index e6076722..d14c5a46 100644 --- a/plugins/gtkui/search.c +++ b/plugins/gtkui/search.c @@ -38,6 +38,8 @@ #include "gtkui.h" +#include "wingeom.h" + #define min(x,y) ((x)<(y)?(x):(y)) #define max(x,y) ((x)>(y)?(x):(y)) @@ -49,27 +51,8 @@ extern GtkWidget *searchwin; extern GtkWidget *mainwin; void -search_restore_attrs (void) { - int x = deadbeef->conf_get_int ("searchwin.geometry.x", -1); - int y = deadbeef->conf_get_int ("searchwin.geometry.y", -1); - int w = deadbeef->conf_get_int ("searchwin.geometry.w", 450); - int h = deadbeef->conf_get_int ("searchwin.geometry.h", 150); - gtk_widget_show (searchwin); - if (x != -1 && y != -1) { - gtk_window_move (GTK_WINDOW (searchwin), x, y); - gtk_window_resize (GTK_WINDOW (searchwin), w, h); - if (deadbeef->conf_get_int ("searchwin.geometry.maximized", 0)) { - gtk_window_maximize (GTK_WINDOW (searchwin)); - } - gtk_window_present (GTK_WINDOW (searchwin)); - } - else { - gtk_window_resize (GTK_WINDOW (searchwin), w, h); - } -} - -void search_start (void) { + wingeom_restore (searchwin, "searchwin", -1, -1, 450, 150, 0); gtk_entry_set_text (GTK_ENTRY (lookup_widget (searchwin, "searchentry")), ""); gtk_widget_show (searchwin); gtk_window_present (GTK_WINDOW (searchwin)); @@ -198,21 +181,7 @@ on_searchwin_configure_event (GtkWidget *widget, GdkEventConfigure *event, gpointer user_data) { -#if GTK_CHECK_VERSION(2,2,0) - GdkWindowState window_state = gdk_window_get_state (GDK_WINDOW (widget->window)); -#else - GdkWindowState window_state = gdk_window_get_state (G_OBJECT (widget)); -#endif - if (!(window_state & GDK_WINDOW_STATE_MAXIMIZED) && gtk_widget_get_visible (widget)) { - int x, y; - int w, h; - gtk_window_get_position (GTK_WINDOW (widget), &x, &y); - gtk_window_get_size (GTK_WINDOW (widget), &w, &h); - deadbeef->conf_set_int ("searchwin.geometry.x", x); - deadbeef->conf_set_int ("searchwin.geometry.y", y); - deadbeef->conf_set_int ("searchwin.geometry.w", w); - deadbeef->conf_set_int ("searchwin.geometry.h", h); - } + wingeom_save (widget, "searchwin"); return FALSE; } @@ -221,30 +190,7 @@ on_searchwin_window_state_event (GtkWidget *widget, GdkEventWindowState *event, gpointer user_data) { - if (!gtk_widget_get_visible (widget)) { - return FALSE; - } - // based on pidgin maximization handler -#if GTK_CHECK_VERSION(2,2,0) - if (event->changed_mask & GDK_WINDOW_STATE_MAXIMIZED) { - if (event->new_window_state & GDK_WINDOW_STATE_MAXIMIZED) { - deadbeef->conf_set_int ("searchwin.geometry.maximized", 1); - } - else { - deadbeef->conf_set_int ("searchwin.geometry.maximized", 0); - } - } -#else - GdkWindowState new_window_state = gdk_window_get_state(G_OBJECT(widget)); - - if () - if (new_window_state & GDK_WINDOW_STATE_MAXIMIZED) { - deadbeef->conf_set_int ("searchwin.geometry.maximized", 1); - } - else { - deadbeef->conf_set_int ("searchwin.geometry.maximized", 0); - } -#endif + wingeom_save_max (event, widget, "searchwin"); return FALSE; } |