35 |
/* --- variables --- */ |
/* --- variables --- */ |
36 |
static GObjectClass *parent_class = NULL; |
static GObjectClass *parent_class = NULL; |
37 |
|
|
38 |
enum {VARIABLE_CHANGED, VARIABLE_DELETED, n_SIGNALS}; |
enum {VARIABLE_CHANGED, |
39 |
|
VARIABLE_ADDED, |
40 |
|
VARIABLE_DELETED, |
41 |
|
n_SIGNALS}; |
42 |
|
|
43 |
static guint signal[n_SIGNALS]; |
static guint signal[n_SIGNALS]; |
44 |
|
|
45 |
|
|
96 |
G_TYPE_INT); |
G_TYPE_INT); |
97 |
|
|
98 |
|
|
99 |
|
signal[VARIABLE_ADDED] = |
100 |
|
g_signal_new ("variable_added", |
101 |
|
G_TYPE_FROM_CLASS(class), |
102 |
|
G_SIGNAL_RUN_FIRST, |
103 |
|
0, |
104 |
|
NULL, NULL, |
105 |
|
g_cclosure_marshal_VOID__INT, |
106 |
|
G_TYPE_NONE, |
107 |
|
1, |
108 |
|
G_TYPE_INT); |
109 |
|
|
110 |
signal[VARIABLE_DELETED] = |
signal[VARIABLE_DELETED] = |
111 |
g_signal_new ("variable_deleted", |
g_signal_new ("variable_deleted", |
198 |
/* This is an existing variable? */ |
/* This is an existing variable? */ |
199 |
var = dict_get_var(d->dict, idx); |
var = dict_get_var(d->dict, idx); |
200 |
dict_rename_var(d->dict, var, name); |
dict_rename_var(d->dict, var, name); |
201 |
|
g_signal_emit(d, signal[VARIABLE_CHANGED], 0, idx); |
202 |
} |
} |
203 |
else |
else |
204 |
{ |
{ |
205 |
/* new variable */ |
/* new variable */ |
206 |
dict_create_var(d->dict, name, 8); |
dict_create_var(d->dict, name, 0); |
207 |
|
g_signal_emit(d, signal[VARIABLE_ADDED], 0, idx); |
208 |
} |
} |
|
|
|
|
g_signal_emit(d, signal[VARIABLE_CHANGED], 0, idx); |
|
|
|
|
209 |
} |
} |
210 |
|
|
211 |
|
|