1 #include "keysig.h"
2 #include "command/commandfuncs.h"
3 #include "command/object.h"
4 #include "core/utils.h"
5
6 /**
7 * Create a new keysignature object
8 *
9 * @param number number of keysignature
10 * @param isminor signifies if the key sig should be minor
11 * @param mode description of the keys mode
12 * @return the key signature
13 */
14 DenemoObject *
dnm_newkeyobj(gint number,gint isminor,gint mode)15 dnm_newkeyobj (gint number, gint isminor, gint mode)
16 {
17 DenemoObject *ret;
18 keysig *key_sig = (keysig *) g_malloc (sizeof (keysig));
19 ret = (DenemoObject *) g_malloc0 (sizeof (DenemoObject));
20 ret->type = KEYSIG;
21 ret->isinvisible = FALSE;
22 g_debug ("Number %d \t IsMinor %d \t Mode %d\n", number, isminor, mode);
23
24 key_sig->mode = mode;
25 key_sig->number = number;
26 key_sig->isminor = isminor;
27
28 if (isminor == 2)
29 set_modeaccs (key_sig->accs, number, mode);
30 else
31 initkeyaccs (key_sig->accs, number);
32
33 ret->object = key_sig;
34 set_basic_numticks (ret);
35 setpixelmin (ret);
36 return ret;
37 }
38
39 void
keysig_new_maj(gint number)40 keysig_new_maj(gint number){
41 object_insert (Denemo.project, dnm_newkeyobj (number, 1, 0));
42 }
43
44 void
keysig_new_cmaj(GtkAction * action,DenemoScriptParam * param)45 keysig_new_cmaj (GtkAction* action, DenemoScriptParam *param)
46 {
47 keysig_new_maj(0);
48 }
49
50 void
keysig_new_gmaj(GtkAction * action,DenemoScriptParam * param)51 keysig_new_gmaj (GtkAction* action, DenemoScriptParam *param)
52 {
53 keysig_new_maj(1);
54 }
55
56 void
keysig_new_dmaj(GtkAction * action,DenemoScriptParam * param)57 keysig_new_dmaj (GtkAction* action, DenemoScriptParam *param)
58 {
59 keysig_new_maj(2);
60 }
61
62 void
keysig_new_amaj(GtkAction * action,DenemoScriptParam * param)63 keysig_new_amaj (GtkAction* action, DenemoScriptParam *param)
64 {
65 keysig_new_maj(3);
66 }
67
68 void
keysig_new_emaj(GtkAction * action,DenemoScriptParam * param)69 keysig_new_emaj (GtkAction* action, DenemoScriptParam *param)
70 {
71 keysig_new_maj(4);
72 }
73
74 void
keysig_new_bmaj(GtkAction * action,DenemoScriptParam * param)75 keysig_new_bmaj (GtkAction* action, DenemoScriptParam *param)
76 {
77 keysig_new_maj(5);
78 }
79
80 void
keysig_new_fsharpmaj(GtkAction * action,DenemoScriptParam * param)81 keysig_new_fsharpmaj (GtkAction* action, DenemoScriptParam *param)
82 {
83 keysig_new_maj(6);
84 }
85
86 void
keysig_new_csharpmaj(GtkAction * action,DenemoScriptParam * param)87 keysig_new_csharpmaj (GtkAction* action, DenemoScriptParam *param)
88 {
89 keysig_new_maj(7);
90 }
91
92 void
keysig_new_fmaj(GtkAction * action,DenemoScriptParam * param)93 keysig_new_fmaj (GtkAction* action, DenemoScriptParam *param)
94 {
95 keysig_new_maj(-1);
96 }
97
98 void
keysig_new_bflatmaj(GtkAction * action,DenemoScriptParam * param)99 keysig_new_bflatmaj (GtkAction* action, DenemoScriptParam *param)
100 {
101 keysig_new_maj(-2);
102 }
103
104 void
keysig_new_eflatmaj(GtkAction * action,DenemoScriptParam * param)105 keysig_new_eflatmaj (GtkAction* action, DenemoScriptParam *param)
106 {
107 keysig_new_maj(-3);
108 }
109
110 void
keysig_new_aflatmaj(GtkAction * action,DenemoScriptParam * param)111 keysig_new_aflatmaj (GtkAction* action, DenemoScriptParam *param)
112 {
113 keysig_new_maj(-4);
114 }
115
116 void
keysig_new_dflatmaj(GtkAction * action,DenemoScriptParam * param)117 keysig_new_dflatmaj (GtkAction* action, DenemoScriptParam *param)
118 {
119 keysig_new_maj(-5);
120 }
121
122 void
keysig_new_gflatmaj(GtkAction * action,DenemoScriptParam * param)123 keysig_new_gflatmaj (GtkAction* action, DenemoScriptParam *param)
124 {
125 keysig_new_maj(-6);
126 }
127
128 void
keysig_new_cflatmaj(GtkAction * action,DenemoScriptParam * param)129 keysig_new_cflatmaj (GtkAction* action, DenemoScriptParam *param)
130 {
131 keysig_new_maj(-7);
132 }
133
134 void
keysig_new_min(gint number)135 keysig_new_min(gint number)
136 {
137 object_insert (Denemo.project, dnm_newkeyobj (number, 0, 0));
138 }
139
140 void
keysig_new_amin(GtkAction * action,DenemoScriptParam * param)141 keysig_new_amin (GtkAction* action, DenemoScriptParam *param)
142 {
143 keysig_new_min (0);
144 }
145
146 void
keysig_new_emin(GtkAction * action,DenemoScriptParam * param)147 keysig_new_emin (GtkAction* action, DenemoScriptParam *param)
148 {
149 keysig_new_min (1);
150 }
151
152 void
keysig_new_bmin(GtkAction * action,DenemoScriptParam * param)153 keysig_new_bmin (GtkAction* action, DenemoScriptParam *param)
154 {
155 keysig_new_min (2);
156 }
157
158 void
keysig_new_fsharpmin(GtkAction * action,DenemoScriptParam * param)159 keysig_new_fsharpmin (GtkAction* action, DenemoScriptParam *param)
160 {
161 keysig_new_min (3);
162 }
163
164 void
keysig_new_csharpmin(GtkAction * action,DenemoScriptParam * param)165 keysig_new_csharpmin (GtkAction* action, DenemoScriptParam *param)
166 {
167 keysig_new_min (4);
168 }
169
170 void
keysig_new_gsharpmin(GtkAction * action,DenemoScriptParam * param)171 keysig_new_gsharpmin (GtkAction* action, DenemoScriptParam *param)
172 {
173 keysig_new_min (5);
174 }
175
176 void
keysig_new_dsharpmin(GtkAction * action,DenemoScriptParam * param)177 keysig_new_dsharpmin (GtkAction* action, DenemoScriptParam *param)
178 {
179 keysig_new_min (6);
180 }
181
182 void
keysig_new_asharpmin(GtkAction * action,DenemoScriptParam * param)183 keysig_new_asharpmin (GtkAction* action, DenemoScriptParam *param)
184 {
185 keysig_new_min (7);
186 }
187
188 void
keysig_new_dmin(GtkAction * action,DenemoScriptParam * param)189 keysig_new_dmin (GtkAction* action, DenemoScriptParam *param)
190 {
191 keysig_new_min (-1);
192 }
193
194 void
keysig_new_gmin(GtkAction * action,DenemoScriptParam * param)195 keysig_new_gmin (GtkAction* action, DenemoScriptParam *param)
196 {
197 keysig_new_min (-2);
198 }
199
200 void
keysig_new_cmin(GtkAction * action,DenemoScriptParam * param)201 keysig_new_cmin (GtkAction* action, DenemoScriptParam *param)
202 {
203 keysig_new_min (-3);
204 }
205
206 void
keysig_new_fmin(GtkAction * action,DenemoScriptParam * param)207 keysig_new_fmin (GtkAction* action, DenemoScriptParam *param)
208 {
209 keysig_new_min (-4);
210 }
211
212 void
keysig_new_bflatmin(GtkAction * action,DenemoScriptParam * param)213 keysig_new_bflatmin (GtkAction* action, DenemoScriptParam *param)
214 {
215 keysig_new_min (-5);
216 }
217
218 void
keysig_new_eflatmin(GtkAction * action,DenemoScriptParam * param)219 keysig_new_eflatmin (GtkAction* action, DenemoScriptParam *param)
220 {
221 keysig_new_min (-6);
222 }
223
224 void
keysig_new_aflatmin(GtkAction * action,DenemoScriptParam * param)225 keysig_new_aflatmin (GtkAction* action, DenemoScriptParam *param)
226 {
227 keysig_new_min (-7);
228 }
229
230
231 //Functions to set the initial key signature
232 void
keysig_set_maj(gint number)233 keysig_set_maj(gint number)
234 {
235 DenemoStaff *curstaff = (DenemoStaff *) Denemo.project->movement->currentstaff->data;
236 dnm_setinitialkeysig (curstaff, number, 1);
237 }
238
239 void
keysig_set_cmaj(GtkAction * action,DenemoScriptParam * param)240 keysig_set_cmaj (GtkAction* action, DenemoScriptParam *param)
241 {
242 keysig_set_maj (0);
243 }
244
245 void
keysig_set_gmaj(GtkAction * action,DenemoScriptParam * param)246 keysig_set_gmaj (GtkAction* action, DenemoScriptParam *param)
247 {
248 keysig_set_maj (1);
249 }
250
251 void
keysig_set_dmaj(GtkAction * action,DenemoScriptParam * param)252 keysig_set_dmaj (GtkAction* action, DenemoScriptParam *param)
253 {
254 keysig_set_maj (2);
255 }
256
257 void
keysig_set_amaj(GtkAction * action,DenemoScriptParam * param)258 keysig_set_amaj (GtkAction* action, DenemoScriptParam *param)
259 {
260 keysig_set_maj (3);
261 }
262
263 void
keysig_set_emaj(GtkAction * action,DenemoScriptParam * param)264 keysig_set_emaj (GtkAction* action, DenemoScriptParam *param)
265 {
266 keysig_set_maj (4);
267 }
268
269 void
keysig_set_bmaj(GtkAction * action,DenemoScriptParam * param)270 keysig_set_bmaj (GtkAction* action, DenemoScriptParam *param)
271 {
272 keysig_set_maj (5);
273 }
274
275 void
keysig_set_fsharpmaj(GtkAction * action,DenemoScriptParam * param)276 keysig_set_fsharpmaj (GtkAction* action, DenemoScriptParam *param)
277 {
278 keysig_set_maj (6);
279 }
280
281 void
keysig_set_csharpmaj(GtkAction * action,DenemoScriptParam * param)282 keysig_set_csharpmaj (GtkAction* action, DenemoScriptParam *param)
283 {
284 keysig_set_maj (7);
285 }
286
287 void
keysig_set_fmaj(GtkAction * action,DenemoScriptParam * param)288 keysig_set_fmaj (GtkAction* action, DenemoScriptParam *param)
289 {
290 keysig_set_maj (-1);
291 }
292
293 void
keysig_set_bflatmaj(GtkAction * action,DenemoScriptParam * param)294 keysig_set_bflatmaj (GtkAction* action, DenemoScriptParam *param)
295 {
296 keysig_set_maj (-2);
297 }
298
299 void
keysig_set_eflatmaj(GtkAction * action,DenemoScriptParam * param)300 keysig_set_eflatmaj (GtkAction* action, DenemoScriptParam *param)
301 {
302 keysig_set_maj (-3);
303 }
304
305 void
keysig_set_aflatmaj(GtkAction * action,DenemoScriptParam * param)306 keysig_set_aflatmaj (GtkAction* action, DenemoScriptParam *param)
307 {
308 keysig_set_maj (-4);
309 }
310
311 void
keysig_set_dflatmaj(GtkAction * action,DenemoScriptParam * param)312 keysig_set_dflatmaj (GtkAction* action, DenemoScriptParam *param)
313 {
314 keysig_set_maj (-5);
315 }
316
317 void
keysig_set_gflatmaj(GtkAction * action,DenemoScriptParam * param)318 keysig_set_gflatmaj (GtkAction* action, DenemoScriptParam *param)
319 {
320 keysig_set_maj (-6);
321 }
322
323 void
keysig_set_cflatmaj(GtkAction * action,DenemoScriptParam * param)324 keysig_set_cflatmaj (GtkAction* action, DenemoScriptParam *param)
325 {
326 keysig_set_maj (-7);
327 }
328
329 void
keysig_set_min(gint number)330 keysig_set_min(gint number)
331 {
332 DenemoStaff *curstaff = (DenemoStaff *) Denemo.project->movement->currentstaff->data;
333 dnm_setinitialkeysig (curstaff, number, 0);
334 }
335
336 void
keysig_set_amin(GtkAction * action,DenemoScriptParam * param)337 keysig_set_amin (GtkAction* action, DenemoScriptParam *param)
338 {
339 keysig_set_min (0);
340 }
341
342 void
keysig_set_emin(GtkAction * action,DenemoScriptParam * param)343 keysig_set_emin (GtkAction* action, DenemoScriptParam *param)
344 {
345 keysig_set_min (1);
346 }
347
348 void
keysig_set_bmin(GtkAction * action,DenemoScriptParam * param)349 keysig_set_bmin (GtkAction* action, DenemoScriptParam *param)
350 {
351 keysig_set_min (2);
352 }
353
354 void
keysig_set_fsharpmin(GtkAction * action,DenemoScriptParam * param)355 keysig_set_fsharpmin (GtkAction* action, DenemoScriptParam *param)
356 {
357 keysig_set_min (3);
358 }
359
360 void
keysig_set_csharpmin(GtkAction * action,DenemoScriptParam * param)361 keysig_set_csharpmin (GtkAction* action, DenemoScriptParam *param)
362 {
363 keysig_set_min (4);
364 }
365
366 void
keysig_set_gsharpmin(GtkAction * action,DenemoScriptParam * param)367 keysig_set_gsharpmin (GtkAction* action, DenemoScriptParam *param)
368 {
369 keysig_set_min (5);
370 }
371
372 void
keysig_set_dsharpmin(GtkAction * action,DenemoScriptParam * param)373 keysig_set_dsharpmin (GtkAction* action, DenemoScriptParam *param)
374 {
375 keysig_set_min (6);
376 }
377
378 void
keysig_set_asharpmin(GtkAction * action,DenemoScriptParam * param)379 keysig_set_asharpmin (GtkAction* action, DenemoScriptParam *param)
380 {
381 keysig_set_min (7);
382 }
383
384 void
keysig_set_dmin(GtkAction * action,DenemoScriptParam * param)385 keysig_set_dmin (GtkAction* action, DenemoScriptParam *param)
386 {
387 keysig_set_min (-1);
388 }
389
390 void
keysig_set_gmin(GtkAction * action,DenemoScriptParam * param)391 keysig_set_gmin (GtkAction* action, DenemoScriptParam *param)
392 {
393 keysig_set_min (-2);
394 }
395
396 void
keysig_set_cmin(GtkAction * action,DenemoScriptParam * param)397 keysig_set_cmin (GtkAction* action, DenemoScriptParam *param)
398 {
399 keysig_set_min (-3);
400 }
401
402 void
keysig_set_fmin(GtkAction * action,DenemoScriptParam * param)403 keysig_set_fmin (GtkAction* action, DenemoScriptParam *param)
404 {
405 keysig_set_min (-4);
406 }
407
408 void
keysig_set_bflatmin(GtkAction * action,DenemoScriptParam * param)409 keysig_set_bflatmin (GtkAction* action, DenemoScriptParam *param)
410 {
411 keysig_set_min (-5);
412 }
413
414 void
keysig_set_eflatmin(GtkAction * action,DenemoScriptParam * param)415 keysig_set_eflatmin (GtkAction* action, DenemoScriptParam *param)
416 {
417 keysig_set_min (-6);
418 }
419
420 void
keysig_set_aflatmin(GtkAction * action,DenemoScriptParam * param)421 keysig_set_aflatmin (GtkAction* action, DenemoScriptParam *param)
422 {
423 keysig_set_min (-7);
424 }
425
426