summaryrefslogtreecommitdiffstats
path: root/src/module.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/module.c')
-rw-r--r--src/module.c21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/module.c b/src/module.c
index 1a76787..acb0a6d 100644
--- a/src/module.c
+++ b/src/module.c
@@ -57,7 +57,7 @@ ganv_module_init(GanvModule* module)
module->widest_input = 0.0;
module->widest_output = 0.0;
module->show_port_labels = FALSE;
- module->must_resize = FALSE;
+ module->must_resize = TRUE;
module->port_size_changed = FALSE;
}
@@ -550,6 +550,25 @@ ganv_module_class_init(GanvModuleClass* class)
node_class->resize = ganv_module_resize;
}
+GanvModule*
+ganv_module_new(GanvCanvas* canvas,
+ const char* first_prop_name, ...)
+{
+ GanvModule* module = GANV_MODULE(
+ g_object_new(ganv_module_get_type(), NULL));
+
+ GnomeCanvasItem* item = GNOME_CANVAS_ITEM(module);
+ va_list args;
+ va_start(args, first_prop_name);
+ gnome_canvas_item_construct(item,
+ gnome_canvas_root(GNOME_CANVAS(canvas)),
+ first_prop_name, args);
+ va_end(args);
+
+ ganv_canvas_add_node(canvas, GANV_NODE(module));
+ return module;
+}
+
void
ganv_module_add_port(GanvModule* module,
GanvPort* port)