Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/grey-land/gtkdot
An integration between Graphviz and Gtk 4
https://github.com/grey-land/gtkdot
diagram graphviz gtk gtk4 vala
Last synced: 14 days ago
JSON representation
An integration between Graphviz and Gtk 4
- Host: GitHub
- URL: https://github.com/grey-land/gtkdot
- Owner: grey-land
- License: gpl-3.0
- Created: 2024-11-07T23:09:54.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2024-11-07T23:16:05.000Z (about 2 months ago)
- Last Synced: 2024-12-09T03:38:19.296Z (14 days ago)
- Topics: diagram, graphviz, gtk, gtk4, vala
- Language: Vala
- Homepage:
- Size: 620 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
# Gtkdot
A Gtk 4 graph library.
Gtkdot is an experimental integration between Graphviz and Gtk. It makes use of graphviz's Cgraph api
to lay out Gtk.Widgets as diagrams and converts graphviz's xdot format in Gtk 'dialect' to render shapes
( used mainly for drawing edges ).The library provides 2 Gtk.Widgets that may be used to draw diagrams and 2 demos showcasing their use.
1. LightGraph
2. SimpleGraph (*experimental*)---
## LightGraph
*LightGraph* is the simplest implementation where all child widgets are considered nodes of the
resulted graph. Edges may be added between widgets, but no interactions is provided with them.![LightGraph Demo](gallery/gtkdot-light-demo_2024-11-06.png)
`gtk-light-demo` is an application showcase LightGraph usage.
---
## SimpleGraph
[ ![SimpleGraph Demo](gallery/gtkdot-simple-demo_selected-node_2024-11-06.png) ](https://sendvid.com/00mozbok)
*SimpleGraph* on the contrary, may contain widgets as either nodes or edges. It provides `SimpleEdge`
widget to handle edges and any other widget is considered a node of the resulted graph. It provides
functionality for **adding**, **removing** **selecting** as well as **showing/hiding** nodes and/or edges.
Additionally custom css may change the widgets styling as usuall.`gtk-simple-demo` is an application showcasing SimpleGraph usage, and there is a [video](https://sendvid.com/00mozbok) demostrating those capabilities.
---
Gtkdot is written in vala and build using meson.