X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-window-register.c;h=6bb2b7cb2f0e6b7934bb4976621a3f0c723a72b4;hb=8180c5dd1591446174c0753ee960921786113403;hp=dfa46c654cc24c7a6299079f0ac30ad9b61c617f;hpb=4398d3a1a881c6cafaeb0cbd11f56bd51d904c51;p=pspp diff --git a/src/ui/gui/psppire-window-register.c b/src/ui/gui/psppire-window-register.c index dfa46c654c..6bb2b7cb2f 100644 --- a/src/ui/gui/psppire-window-register.c +++ b/src/ui/gui/psppire-window-register.c @@ -1,5 +1,5 @@ /* PSPPIRE - a graphical user interface for PSPP. - Copyright (C) 2008 Free Software Foundation + Copyright (C) 2008 Free Software Foundation This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -82,7 +82,7 @@ psppire_window_register_construct (GType type, GObjectConstructParam *construct_params) { GObject *object; - + if (!the_instance) { object = G_OBJECT_CLASS (parent_class)->constructor (type, @@ -146,13 +146,11 @@ psppire_window_register_insert (PsppireWindowRegister *wr, PsppireWindow *window g_signal_emit (wr, signals[INSERTED], 0, name); } - void psppire_window_register_remove (PsppireWindowRegister *wr, const gchar *name) { - g_signal_emit (wr, signals[REMOVED], 0, name); - g_hash_table_remove (wr->name_table, (gpointer) name); + g_signal_emit (wr, signals[REMOVED], 0, name); } PsppireWindow * @@ -162,28 +160,21 @@ psppire_window_register_lookup (PsppireWindowRegister *wr, const gchar *name) } void -psppire_window_register_foreach (PsppireWindowRegister *wr, GHFunc func, PsppireWindow *win) -{ - g_hash_table_foreach (wr->name_table, func, win); -} - -static void -minimise_window (gpointer key, gpointer value, gpointer data) +psppire_window_register_foreach (PsppireWindowRegister *wr, + GHFunc func, gpointer data) { - gtk_window_iconify (GTK_WINDOW (value)); + g_hash_table_foreach (wr->name_table, func, data); } - -void -psppire_window_register_minimise_all (PsppireWindowRegister *wr) +PsppireWindowRegister * +psppire_window_register_new (void) { - g_hash_table_foreach (wr->name_table, minimise_window, wr); + return g_object_new (psppire_window_register_get_type (), NULL); } - -PsppireWindowRegister * -psppire_window_register_new (void) +gint +psppire_window_register_n_items (PsppireWindowRegister *wr) { - return g_object_new (psppire_window_register_get_type (), NULL); + return g_hash_table_size (wr->name_table); }