summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCosimo Cecchi <cosimoc@gnome.org>2012-01-06 12:32:27 +0100
committerCosimo Cecchi <cosimoc@gnome.org>2012-01-09 17:22:46 -0500
commit7289cc044cfaa3eee69396805d4e6dd8644a9483 (patch)
treee27a73a49d418196ad39f0330b26092469dda3fc
parentb09427273f525753b4b792bfdfb333e28c2e0ea9 (diff)
downloadnautilus-7289cc044cfaa3eee69396805d4e6dd8644a9483.tar.gz
slot: cleanup NautilusWindowSlot creation
-rw-r--r--src/nautilus-window-pane.c3
-rw-r--r--src/nautilus-window-slot.c30
-rw-r--r--src/nautilus-window-slot.h2
3 files changed, 24 insertions, 11 deletions
diff --git a/src/nautilus-window-pane.c b/src/nautilus-window-pane.c
index fe06bfca9..11009d5ad 100644
--- a/src/nautilus-window-pane.c
+++ b/src/nautilus-window-pane.c
@@ -1036,8 +1036,7 @@ nautilus_window_pane_open_slot (NautilusWindowPane *pane,
g_assert (NAUTILUS_IS_WINDOW_PANE (pane));
g_assert (NAUTILUS_IS_WINDOW (pane->window));
- slot = (NautilusWindowSlot *) g_object_new (NAUTILUS_TYPE_WINDOW_SLOT, NULL);
- slot->pane = pane;
+ slot = nautilus_window_slot_new (pane);
g_signal_handlers_block_by_func (pane->notebook,
G_CALLBACK (notebook_switch_page_cb),
diff --git a/src/nautilus-window-slot.c b/src/nautilus-window-slot.c
index 2c3b1241b..5c8ee9130 100644
--- a/src/nautilus-window-slot.c
+++ b/src/nautilus-window-slot.c
@@ -37,7 +37,6 @@
#include <eel/eel-string.h>
G_DEFINE_TYPE (NautilusWindowSlot, nautilus_window_slot, G_TYPE_OBJECT);
-#define parent_class nautilus_window_slot_parent_class
enum {
ACTIVE,
@@ -268,18 +267,22 @@ nautilus_window_slot_dispose (GObject *object)
g_free (slot->status_text);
slot->status_text = NULL;
- G_OBJECT_CLASS (parent_class)->dispose (object);
+ G_OBJECT_CLASS (nautilus_window_slot_parent_class)->dispose (object);
}
static void
-nautilus_window_slot_class_init (NautilusWindowSlotClass *class)
+nautilus_window_slot_class_init (NautilusWindowSlotClass *klass)
{
- class->active = real_active;
- class->inactive = real_inactive;
+ GObjectClass *oclass = G_OBJECT_CLASS (klass);
+
+ klass->active = real_active;
+ klass->inactive = real_inactive;
+
+ oclass->dispose = nautilus_window_slot_dispose;
signals[ACTIVE] =
g_signal_new ("active",
- G_TYPE_FROM_CLASS (class),
+ G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (NautilusWindowSlotClass, active),
NULL, NULL,
@@ -288,14 +291,12 @@ nautilus_window_slot_class_init (NautilusWindowSlotClass *class)
signals[INACTIVE] =
g_signal_new ("inactive",
- G_TYPE_FROM_CLASS (class),
+ G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (NautilusWindowSlotClass, inactive),
NULL, NULL,
g_cclosure_marshal_VOID__VOID,
G_TYPE_NONE, 0);
-
- G_OBJECT_CLASS (class)->dispose = nautilus_window_slot_dispose;
}
GFile *
@@ -756,3 +757,14 @@ nautilus_window_slot_should_close_with_mount (NautilusWindowSlot *slot,
return close_with_mount;
}
+
+NautilusWindowSlot *
+nautilus_window_slot_new (NautilusWindowPane *pane)
+{
+ NautilusWindowSlot *slot;
+
+ slot = g_object_new (NAUTILUS_TYPE_WINDOW_SLOT, NULL);
+ slot->pane = pane;
+
+ return slot;
+}
diff --git a/src/nautilus-window-slot.h b/src/nautilus-window-slot.h
index 9831584c6..9d96f15e3 100644
--- a/src/nautilus-window-slot.h
+++ b/src/nautilus-window-slot.h
@@ -123,6 +123,8 @@ struct NautilusWindowSlot {
GType nautilus_window_slot_get_type (void);
+NautilusWindowSlot * nautilus_window_slot_new (NautilusWindowPane *pane);
+
void nautilus_window_slot_update_title (NautilusWindowSlot *slot);
void nautilus_window_slot_update_icon (NautilusWindowSlot *slot);
void nautilus_window_slot_update_query_editor (NautilusWindowSlot *slot);