Graphviz 13.0.0~dev.20241220.2304
|
#include "config.h"
#include <string.h>
#include <stdbool.h>
#include <stdlib.h>
#include <math.h>
#include <gvc/gvplugin_layout.h>
#include <gvc/gvcint.h>
#include <gvc/gvcproc.h>
#include <common/utils.h>
#include <util/gv_fopen.h>
Go to the source code of this file.
Macros | |
#define | PANFACTOR 10 |
#define | ZOOMFACTOR 1.1 |
#define | EPSILON .0001 |
#define | CLOSEENOUGH 1 |
Functions | |
void | emit_graph (GVJ_t *job, graph_t *g) |
int | gvLayout (GVC_t *gvc, graph_t *g, const char *engine) |
int | gvRenderFilename (GVC_t *gvc, graph_t *g, const char *format, const char *filename) |
void | graph_cleanup (graph_t *g) |
static void | gv_graph_state (GVJ_t *job, graph_t *g) |
static void | gv_node_state (GVJ_t *job, node_t *n) |
static void | gv_edge_state (GVJ_t *job, edge_t *e) |
static void | gvevent_refresh (GVJ_t *job) |
static graph_t * | gvevent_find_cluster (graph_t *g, boxf b) |
static void * | gvevent_find_obj (graph_t *g, boxf b) |
static void | gvevent_leave_obj (GVJ_t *job) |
static void | gvevent_enter_obj (GVJ_t *job) |
static pointf | pointer2graph (GVJ_t *job, pointf pointer) |
static void | gvevent_find_current_obj (GVJ_t *job, pointf pointer) |
static void | gvevent_select_current_obj (GVJ_t *job) |
static void | gvevent_button_press (GVJ_t *job, int button, pointf pointer) |
static void | gvevent_button_release (GVJ_t *job, int button, pointf pointer) |
static void | gvevent_motion (GVJ_t *job, pointf pointer) |
static int | quit_cb (GVJ_t *job) |
static int | left_cb (GVJ_t *job) |
static int | right_cb (GVJ_t *job) |
static int | up_cb (GVJ_t *job) |
static int | down_cb (GVJ_t *job) |
static int | zoom_in_cb (GVJ_t *job) |
static int | zoom_out_cb (GVJ_t *job) |
static int | toggle_fit_cb (GVJ_t *job) |
static void | gvevent_read (GVJ_t *job, const char *filename, const char *layout) |
static void | gvevent_layout (GVJ_t *job, const char *layout) |
static void | gvevent_render (GVJ_t *job, const char *format, const char *filename) |
Variables | |
static char * | s_tooltip = "tooltip" |
static char * | s_href = "href" |
static char * | s_URL = "URL" |
gvevent_key_binding_t | gvevent_key_binding [] |
const size_t | gvevent_key_binding_size |
gvdevice_callbacks_t | gvdevice_callbacks |
|
static |
Definition at line 400 of file gvevent.c.
References GVJ_s::fit_mode, GVJ_s::focus, GVJ_s::needs_refresh, PANFACTOR, pointf_s::y, and GVJ_s::zoom.
Definition at line 3371 of file emit.c.
References agattr(), agfstnode(), agnxtnode(), AGRAPH, GVJ_s::devscale, GVJ_s::dpi, emit_begin_graph(), emit_colors(), EMIT_COLORS, emit_end_graph(), emit_page(), firstlayer(), firstpage(), flags, GVJ_s::flags, gvrender_begin_layer(), gvrender_comment(), gvrender_end_layer(), GVRENDER_Y_GOES_DOWN, GVJ_s::height, late_string(), GVJ_s::layerNum, ND_state, nextlayer(), nextpage(), numPhysicalLayers(), POINTS_PER_INCH, GVJ_s::rotation, GVJ_s::scale, validlayer(), validpage(), GVJ_s::view, GVJ_s::width, pointf_s::x, pointf_s::y, Y_invert, and GVJ_s::zoom.
Referenced by gvevent_refresh(), and gvRenderJobs().
|
extern |
Definition at line 790 of file input.c.
Referenced by gvevent_read().
Definition at line 55 of file gvevent.c.
References agfindedgeattr, aghead, agraphof(), agxget(), s_href, s_URL, GVJ_s::selected_href, and strdup_and_subst_obj().
Referenced by gvevent_select_current_obj().
Definition at line 37 of file gvevent.c.
References agfindgraphattr, agxget(), s_href, s_URL, GVJ_s::selected_href, and strdup_and_subst_obj().
Referenced by gvevent_refresh(), and gvevent_select_current_obj().
Definition at line 46 of file gvevent.c.
References agfindnodeattr, agraphof(), agxget(), s_href, s_URL, GVJ_s::selected_href, and strdup_and_subst_obj().
Referenced by gvevent_select_current_obj().
Definition at line 266 of file gvevent.c.
References GVJ_s::button, GVJ_s::click, GVJ_s::devscale, GVJ_s::fit_mode, GVJ_s::focus, gvevent_find_current_obj(), gvevent_select_current_obj(), GVJ_s::height, GVJ_s::needs_refresh, GVJ_s::oldpointer, GVJ_s::rotation, GVJ_s::width, pointf_s::x, pointf_s::y, GVJ_s::zoom, and ZOOMFACTOR.
Definition at line 327 of file gvevent.c.
References GVJ_s::button, and GVJ_s::click.
|
static |
Definition at line 139 of file gvevent.c.
References GVJ_s::active_tooltip, AGEDGE, agfindedgeattr, agfindgraphattr, agfindnodeattr, aghead, AGNODE, agobjkind(), AGRAPH, agraphof(), agxget(), GVJ_s::current_obj, ED_gui_state, free(), GD_gui_state, GUI_STATE_ACTIVE, ND_gui_state, NULL, s_tooltip, and strdup_and_subst_obj().
Referenced by gvevent_find_current_obj().
Definition at line 78 of file gvevent.c.
References B2BF, GD_bb, GD_clust, GD_n_cluster, gvevent_find_cluster(), NULL, and OVERLAP.
Referenced by gvevent_find_cluster(), and gvevent_find_obj().
Definition at line 196 of file gvevent.c.
References CLOSEENOUGH, GVJ_s::current_obj, GVC_s::g, GVJ_s::gvc, gvevent_enter_obj(), gvevent_find_obj(), gvevent_leave_obj(), boxf::LL, GVJ_s::needs_refresh, pointer2graph(), boxf::UR, pointf_s::x, pointf_s::y, and GVJ_s::zoom.
Referenced by gvevent_button_press(), and gvevent_motion().
Definition at line 95 of file gvevent.c.
References agfstnode(), agfstout(), aglstnode(), agnxtnode(), agnxtout(), agprvnode(), gvevent_find_cluster(), overlap_edge(), and overlap_node().
Referenced by gvevent_find_current_obj().
|
static |
Definition at line 489 of file gvevent.c.
References GVC_s::g, GVJ_s::gvc, gvLayout(), and layout().
|
static |
Definition at line 119 of file gvevent.c.
References GVJ_s::active_tooltip, AGEDGE, AGNODE, agobjkind(), AGRAPH, GVJ_s::current_obj, ED_gui_state, GD_gui_state, GUI_STATE_ACTIVE, ND_gui_state, and NULL.
Referenced by gvevent_find_current_obj().
Definition at line 336 of file gvevent.c.
References GVJ_s::button, GVJ_s::devscale, dx, dy, EPSILON, GVJ_s::focus, gvevent_find_current_obj(), GVJ_s::needs_refresh, GVJ_s::oldpointer, GVJ_s::rotation, pointf_s::x, pointf_s::y, and GVJ_s::zoom.
|
static |
Definition at line 447 of file gvevent.c.
References agclose(), AGEDGE, aginit(), AGNODE, AGRAPH, agread(), gvlayout_engine_s::cleanup, GVJ_s::current_obj, gvplugin_active_layout_s::engine, GVC_s::g, GD_gvc, graph_cleanup(), gv_fopen(), GVJ_s::gvc, gvc, gvLayout(), layout(), GVC_s::layout, GVJ_s::needs_refresh, NULL, and GVJ_s::selected_obj.
|
static |
Definition at line 64 of file gvevent.c.
References emit_graph(), GVC_s::g, GD_gui_state, GUI_STATE_SELECTED, gv_graph_state(), GVJ_s::gvc, GVJ_s::has_been_rendered, and GVJ_s::selected_obj.
|
static |
Definition at line 494 of file gvevent.c.
References GVC_s::active_jobs, format, GVC_s::g, GVJ_s::gvc, gvRenderFilename(), GVC_s::job, GVC_s::jobs, and NULL.
|
static |
Definition at line 222 of file gvevent.c.
References AGEDGE, AGNODE, agobjkind(), AGRAPH, GVJ_s::current_obj, ED_gui_state, free(), GD_gui_state, GUI_STATE_SELECTED, GUI_STATE_VISITED, gv_edge_state(), gv_graph_state(), gv_node_state(), ND_gui_state, NULL, GVJ_s::selected_href, and GVJ_s::selected_obj.
Referenced by gvevent_button_press().
|
static |
Definition at line 376 of file gvevent.c.
References GVJ_s::fit_mode, GVJ_s::focus, GVJ_s::needs_refresh, PANFACTOR, pointf_s::x, and GVJ_s::zoom.
Definition at line 177 of file gvevent.c.
References GVJ_s::devscale, GVJ_s::rotation, GVJ_s::translation, pointf_s::x, pointf_s::y, and GVJ_s::zoom.
Referenced by gvevent_find_current_obj().
|
static |
Definition at line 384 of file gvevent.c.
References GVJ_s::fit_mode, GVJ_s::focus, GVJ_s::needs_refresh, PANFACTOR, pointf_s::x, and GVJ_s::zoom.
|
static |
Definition at line 424 of file gvevent.c.
References GVJ_s::fit_mode, GVJ_s::focus, GVJ_s::height, MIN, GVJ_s::needs_refresh, GVJ_s::width, pointf_s::x, pointf_s::y, and GVJ_s::zoom.
|
static |
Definition at line 392 of file gvevent.c.
References GVJ_s::fit_mode, GVJ_s::focus, GVJ_s::needs_refresh, PANFACTOR, pointf_s::y, and GVJ_s::zoom.
|
static |
Definition at line 408 of file gvevent.c.
References GVJ_s::fit_mode, GVJ_s::needs_refresh, GVJ_s::zoom, and ZOOMFACTOR.
|
static |
Definition at line 416 of file gvevent.c.
References GVJ_s::fit_mode, GVJ_s::needs_refresh, GVJ_s::zoom, and ZOOMFACTOR.
gvdevice_callbacks_t gvdevice_callbacks |
Definition at line 541 of file gvevent.c.
Referenced by gvRenderJobs().
gvevent_key_binding_t gvevent_key_binding[] |
Definition at line 521 of file gvevent.c.
Referenced by gvRenderJobs().
const size_t gvevent_key_binding_size |
|
static |
Definition at line 34 of file gvevent.c.
Referenced by gv_edge_state(), gv_graph_state(), and gv_node_state().
|
static |
Definition at line 33 of file gvevent.c.
Referenced by gvevent_enter_obj().
|
static |
Definition at line 35 of file gvevent.c.
Referenced by gv_edge_state(), gv_graph_state(), and gv_node_state().