X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-window-register.c;h=6345b729145900e68f440aee86e2df1b2e7619cb;hb=d6510c8bb92e55331288bd7066e4697ca3cc9348;hp=2052adcb6d3e503a9f360d20268aa65a3662bc97;hpb=8af88c0b7ea2fe75df7e45497988ed0371006a86;p=pspp diff --git a/src/ui/gui/psppire-window-register.c b/src/ui/gui/psppire-window-register.c index 2052adcb6d..6345b72914 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 @@ -18,9 +18,6 @@ #include "psppire-window-register.h" -static void psppire_window_register_init (PsppireWindowRegister *window_register); -static void psppire_window_register_class_init (PsppireWindowRegisterClass *class); - static void psppire_window_register_finalize (GObject *object); static void psppire_window_register_dispose (GObject *object); @@ -35,34 +32,7 @@ enum { static guint signals [n_SIGNALS]; -GType -psppire_window_register_get_type (void) -{ - static GType window_register_type = 0; - - if (!window_register_type) - { - static const GTypeInfo window_register_info = - { - sizeof (PsppireWindowRegisterClass), - NULL, /* base_init */ - NULL, /* base_finalize */ - (GClassInitFunc) psppire_window_register_class_init, - NULL, /* class_finalize */ - NULL, /* class_data */ - sizeof (PsppireWindowRegister), - 0, - (GInstanceInitFunc) psppire_window_register_init, - }; - - window_register_type = g_type_register_static (G_TYPE_OBJECT, - "PsppireWindowRegister", - &window_register_info, 0); - } - - return window_register_type; -} - +G_DEFINE_TYPE (PsppireWindowRegister, psppire_window_register, G_TYPE_OBJECT) static void psppire_window_register_finalize (GObject *object) @@ -82,7 +52,7 @@ psppire_window_register_construct (GType type, GObjectConstructParam *construct_params) { GObject *object; - + if (!the_instance) { object = G_OBJECT_CLASS (parent_class)->constructor (type, @@ -134,7 +104,6 @@ psppire_window_register_class_init (PsppireWindowRegisterClass *class) static void psppire_window_register_init (PsppireWindowRegister *window_register) { - window_register->dispose_has_run = FALSE; window_register->name_table = g_hash_table_new (g_str_hash, g_str_equal); } @@ -146,13 +115,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 * @@ -168,21 +135,6 @@ psppire_window_register_foreach (PsppireWindowRegister *wr, g_hash_table_foreach (wr->name_table, func, data); } -static void -minimise_window (gpointer key, gpointer value, gpointer data) -{ - gtk_window_iconify (GTK_WINDOW (value)); -} - - -void -psppire_window_register_minimise_all (PsppireWindowRegister *wr) -{ - g_hash_table_foreach (wr->name_table, minimise_window, wr); -} - - - PsppireWindowRegister * psppire_window_register_new (void) {