From 8ba319e9239dc04d7813c7e083f9c905f09c4ad7 Mon Sep 17 00:00:00 2001 From: Martin Preuss Date: Wed, 1 Oct 2025 23:09:17 +0200 Subject: [PATCH] simplify graph usage by putting needed function calls into one function. --- src/lib/aqdiagram/graph/w_graph.c | 20 +++++++++++++++++++- src/lib/aqdiagram/graph/w_graph.h | 3 +++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/src/lib/aqdiagram/graph/w_graph.c b/src/lib/aqdiagram/graph/w_graph.c index 7efe92a..da9fb42 100644 --- a/src/lib/aqdiagram/graph/w_graph.c +++ b/src/lib/aqdiagram/graph/w_graph.c @@ -91,6 +91,24 @@ GWENHYWFAR_CB void _freeData(void *bp, void *p) +void AQDG_GraphWidget_FinishWithGraph(AQDG_OBJECT *o, AQDG_GRAPH *graph) +{ + AQDG_DRAW_CONTEXT *dc; + + dc=AQDG_DrawableWidget_GetDrawContext(o); + + AQDG_GraphWidget_SetupForGraph(o, graph); + + AQDG_Object_ModifyBranchFlagsDown(o, AQDG_OBJECT_FLAGS_RECALC, AQDG_OBJECT_FLAGS_RECALC); + AQDG_Object_ModifyBranchFlagsDown(o, AQDG_OBJECT_FLAGS_LAYOUT, AQDG_OBJECT_FLAGS_LAYOUT); + AQDG_Object_Layout(o); + AQDG_Object_Tree2_CalculateAbsPositions(o); + AQDG_DrawableWidget_Draw(o); + AQDG_Draw_Context_Finish(dc); +} + + + void AQDG_GraphWidget_SetupForGraph(AQDG_OBJECT *o, AQDG_GRAPH *graph) { if (o && graph) { @@ -453,7 +471,7 @@ int AQDG_GraphWidget_CreateFontFromDb(AQDG_OBJECT *o, GWEN_DB_NODE *db, const ch rv=AQDG_Draw_Context_FontCreate(dc, fontName, fontSize, fontSlant, fontWeight); if (rv<0) { - DBG_INFO(0, "here (%d)", rv); + DBG_INFO(AQDG_LOGDOMAIN, "here (%d)", rv); return rv; } diff --git a/src/lib/aqdiagram/graph/w_graph.h b/src/lib/aqdiagram/graph/w_graph.h index cc84535..c9d233b 100644 --- a/src/lib/aqdiagram/graph/w_graph.h +++ b/src/lib/aqdiagram/graph/w_graph.h @@ -83,6 +83,9 @@ enum { AQDG_API AQDG_OBJECT *AQDG_GraphWidget_new(AQDG_OBJECT *parent, uint32_t options, AQDG_DRAW_CONTEXT *drawContext); +AQDG_API void AQDG_GraphWidget_FinishWithGraph(AQDG_OBJECT *o, AQDG_GRAPH *graph); + + AQDG_API void AQDG_GraphWidget_SetupForGraph(AQDG_OBJECT *o, AQDG_GRAPH *graph);