summaryrefslogtreecommitdiffstats
path: root/src/ganv_test.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ganv_test.c')
-rw-r--r--src/ganv_test.c39
1 files changed, 37 insertions, 2 deletions
diff --git a/src/ganv_test.c b/src/ganv_test.c
index a1fba2a..fce3ede 100644
--- a/src/ganv_test.c
+++ b/src/ganv_test.c
@@ -18,12 +18,23 @@
#include "ganv/ganv.h"
static void
-on_window_destroy(GtkWidget* widget,
- gpointer data)
+on_window_destroy(GtkWidget* widget, gpointer data)
{
gtk_main_quit();
}
+static void
+on_connect(GanvCanvas* canvas, GanvNode* tail, GanvNode* head, void* data)
+{
+ ganv_edge_new(canvas, tail, head, "color", 0xFFFFFFFF, NULL);
+}
+
+static void
+on_disconnect(GanvCanvas* canvas, GanvNode* tail, GanvNode* head, void* data)
+{
+ ganv_canvas_remove_edge_between(canvas, tail, head);
+}
+
int
main(int argc, char** argv)
{
@@ -44,6 +55,10 @@ main(int argc, char** argv)
"label", "test",
NULL);
+ GanvPort* port = ganv_port_new(module, FALSE,
+ "label", "Signal",
+ NULL);
+
GanvPort* cport = ganv_port_new(module, TRUE,
"label", "Control",
NULL);
@@ -61,6 +76,26 @@ main(int argc, char** argv)
ganv_item_show(GANV_ITEM(module));
ganv_item_raise_to_top(GANV_ITEM(module));
+ GanvModule* module2 = ganv_module_new(canvas,
+ "x", 200.0,
+ "y", 10.0,
+ "draggable", TRUE,
+ "label", "test2",
+ NULL);
+
+ GanvPort* port2 = ganv_port_new(module2, TRUE,
+ "label", "Signal",
+ NULL);
+
+ g_signal_connect(canvas, "connect",
+ G_CALLBACK(on_connect), canvas);
+
+ g_signal_connect(canvas, "disconnect",
+ G_CALLBACK(on_disconnect), canvas);
+
+ ganv_item_show(GANV_ITEM(module2));
+ ganv_item_raise_to_top(GANV_ITEM(module2));
+
gtk_widget_show_all(GTK_WIDGET(win));
gtk_window_present(win);
gtk_main();