summaryrefslogtreecommitdiff
path: root/endless/eosmainarea.c
diff options
context:
space:
mode:
authorRory MacQueen <rory@rory-VirtualBox.(none)>2013-04-23 14:09:39 -0700
committerP. F. Chimento <philip.chimento@gmail.com>2013-05-16 12:17:09 +0200
commit427f93e0ce3d39b5c7f55d1ea963851cc1209fa5 (patch)
tree6d393295b7afcb4b7da7d06a8903007ac59ee108 /endless/eosmainarea.c
parent2ede46e4c3c4cabf9ea46a660247696f1221823a (diff)
Added add and remove vfuncs
They are required for GtkContainer class [endlessm/eos-sdk#10]
Diffstat (limited to 'endless/eosmainarea.c')
-rw-r--r--endless/eosmainarea.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/endless/eosmainarea.c b/endless/eosmainarea.c
index 1d57bb4..c4f2fdd 100644
--- a/endless/eosmainarea.c
+++ b/endless/eosmainarea.c
@@ -89,6 +89,30 @@ eos_main_size_allocate (GtkWidget *widget,
}
static void
+eos_main_area_add (GtkContainer *container,
+ GtkWidget *widget)
+{
+ EosMainArea *self = EOS_MAIN_AREA (container);
+
+ /* Print out warning message?? */
+
+ eos_main_area_set_content(self, widget);
+}
+
+static void
+eos_main_area_remove (GtkContainer *container,
+ GtkWidget *widget)
+{
+ EosMainArea *self = EOS_MAIN_AREA(container);
+ EosMainAreaPrivate *priv = self->priv;
+
+ if (priv->content == widget)
+ eos_main_area_set_content (self, NULL);
+ else if (priv->toolbox == widget)
+ eos_main_area_set_toolbox (self, NULL);
+}
+
+static void
eos_main_area_forall(GtkContainer *container,
gboolean include_internals,
GtkCallback callback,
@@ -119,6 +143,8 @@ eos_main_area_class_init (EosMainAreaClass *klass)
widget_class->size_allocate = eos_main_size_allocate;
container_class->forall = eos_main_area_forall;
+ container_class->add = eos_main_area_add;
+ container_class->remove = eos_main_area_remove;
}
static void