Graphviz 12.0.1~dev.20240716.0800
Loading...
Searching...
No Matches
callbacks.c
Go to the documentation of this file.
1/*************************************************************************
2 * Copyright (c) 2011 AT&T Intellectual Property
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * https://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors: Details at https://graphviz.org
9 *************************************************************************/
10
11#define _CRT_SECURE_NO_DEPRECATE 1
12#include "config.h"
13#include <gtk/gtk.h>
14#include "callbacks.h"
15#include "viewport.h"
16#include "selectionfuncs.h"
17
18//Menu Items
19
20void save_as_graph_clicked(GtkWidget * widget, gpointer user_data)
21{
22 (void)widget;
23 (void)user_data;
24
25 GtkWidget *dialog;
26 dialog = gtk_file_chooser_dialog_new("Save File",
27 NULL,
28 GTK_FILE_CHOOSER_ACTION_SAVE,
29 GTK_STOCK_CANCEL,
30 GTK_RESPONSE_CANCEL,
31 GTK_STOCK_SAVE,
32 GTK_RESPONSE_ACCEPT, NULL);
33 gtk_file_chooser_set_do_overwrite_confirmation(GTK_FILE_CHOOSER
34 (dialog), TRUE);
35
36 if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) {
37 char *filename;
38 filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
40 g_free(filename);
41 }
42 gtk_widget_destroy(dialog);
43}
44
45void remove_graph_clicked(GtkWidget * widget, gpointer user_data)
46{
47 (void)widget;
48 (void)user_data;
49
50 g_print("remove graph button fired\n");
51}
52
53static void btn_clicked(GtkWidget * widget, gvk_layout layout)
54{
55 (void)widget;
56 (void)layout;
57}
58
59void btn_dot_clicked(GtkWidget * widget, gpointer user_data)
60{
61 (void)user_data;
62
63 btn_clicked(widget, GVK_DOT);
64}
65
66void btn_neato_clicked(GtkWidget * widget, gpointer user_data)
67{
68 (void)user_data;
69
70 btn_clicked(widget, GVK_NEATO);
71}
72
73void btn_twopi_clicked(GtkWidget * widget, gpointer user_data)
74{
75 (void)user_data;
76
77 btn_clicked(widget, GVK_TWOPI);
78}
79
80void btn_circo_clicked(GtkWidget * widget, gpointer user_data)
81{
82 (void)user_data;
83
84 btn_clicked(widget, GVK_CIRCO);
85}
86
87void btn_fdp_clicked(GtkWidget * widget, gpointer user_data)
88{
89 (void)user_data;
90
91 btn_clicked(widget, GVK_FDP);
92}
93
94/*console output widgets*/
95_BB void on_clearconsolebtn_clicked(GtkWidget * widget, gpointer user_data)
96{
97 (void)widget;
98 (void)user_data;
99
100 gtk_text_buffer_set_text(gtk_text_view_get_buffer
101 ((GtkTextView *)
102 glade_xml_get_widget(xml, "mainconsole")),
103 "", 0);
104}
105
106_BB void on_hideconsolebtn_clicked(GtkWidget * widget, gpointer user_data)
107{
108 (void)widget;
109 (void)user_data;
110
111 gtk_widget_hide(glade_xml_get_widget(xml, "vbox13"));
112}
113
114_BB void on_consoledecbtn_clicked(GtkWidget * widget, gpointer user_data)
115{
116 (void)widget;
117 (void)user_data;
118
119 int w, h;
120 gtk_widget_get_size_request((GtkWidget*)
121 glade_xml_get_widget(xml,
122 "scrolledwindow7"),
123 &w, &h);
124 w -= 5;
125 gtk_widget_set_size_request(((GtkWidget*)
126 glade_xml_get_widget(xml,
127 "scrolledwindow7")),
128 w, 0);
129}
130
131_BB void on_consoleincbtn_clicked(GtkWidget * widget, gpointer user_data)
132{
133 (void)widget;
134 (void)user_data;
135
136 int w, h;
137 gtk_widget_get_size_request((GtkWidget*)
138 glade_xml_get_widget(xml,
139 "scrolledwindow7"),
140 &w, &h);
141 w += 5;
142 gtk_widget_set_size_request(((GtkWidget*)
143 glade_xml_get_widget(xml,
144 "scrolledwindow7")),
145 w, 0);
146}
_BB void on_consoledecbtn_clicked(GtkWidget *widget, gpointer user_data)
Definition callbacks.c:114
void btn_fdp_clicked(GtkWidget *widget, gpointer user_data)
Definition callbacks.c:87
void btn_twopi_clicked(GtkWidget *widget, gpointer user_data)
Definition callbacks.c:73
_BB void on_clearconsolebtn_clicked(GtkWidget *widget, gpointer user_data)
Definition callbacks.c:95
void btn_circo_clicked(GtkWidget *widget, gpointer user_data)
Definition callbacks.c:80
void remove_graph_clicked(GtkWidget *widget, gpointer user_data)
Definition callbacks.c:45
_BB void on_hideconsolebtn_clicked(GtkWidget *widget, gpointer user_data)
Definition callbacks.c:106
void save_as_graph_clicked(GtkWidget *widget, gpointer user_data)
Definition callbacks.c:20
void btn_dot_clicked(GtkWidget *widget, gpointer user_data)
Definition callbacks.c:59
static void btn_clicked(GtkWidget *widget, gvk_layout layout)
Definition callbacks.c:53
void btn_neato_clicked(GtkWidget *widget, gpointer user_data)
Definition callbacks.c:66
_BB void on_consoleincbtn_clicked(GtkWidget *widget, gpointer user_data)
Definition callbacks.c:131
#define _BB
Definition callbacks.h:20
node NULL
Definition grammar.y:149
GladeXML * xml
Definition gui.c:22
static int layout(graph_t *g, layout_info *infop)
Definition layout.c:809
ViewInfo * view
Definition viewport.c:38
gvk_layout
Definition smyrnadefs.h:114
@ GVK_DOT
Definition smyrnadefs.h:115
@ GVK_NEATO
Definition smyrnadefs.h:116
@ GVK_CIRCO
Definition smyrnadefs.h:118
@ GVK_FDP
Definition smyrnadefs.h:119
@ GVK_TWOPI
Definition smyrnadefs.h:117
Agraph_t ** g
Definition smyrnadefs.h:313
int activeGraph
Definition smyrnadefs.h:317
int save_graph_with_file_name(Agraph_t *graph, char *fileName)
Definition viewport.c:463