EffUI.fl (73198B)
1 # data file for the Fltk User Interface Designer (fluid) 2 version 1.0302 3 header_name {.h} 4 code_name {.cc} 5 decl {//Copyright (c) 2002-2005 Nasca Octavian Paul} {private local 6 } 7 8 decl {//License: GNU GPL version 2 or later} {private local 9 } 10 11 decl {\#include <stdlib.h>} {public local 12 } 13 14 decl {\#include <stdio.h>} {public local 15 } 16 17 decl {\#include <string.h>} {public local 18 } 19 20 decl {\#include "../globals.h"} {public local 21 } 22 23 decl {\#include "Fl_Osc_Dial.H"} {public local 24 } 25 26 decl {\#include "Fl_Osc_Check.H"} {public local 27 } 28 29 decl {\#include "Fl_EQGraph.H"} {public local 30 } 31 32 decl {\#include "Fl_Osc_Pane.H"} {public local 33 } 34 35 decl {\#include "EnvelopeUI.h"} {public local 36 } 37 38 decl {\#include "FilterUI.h"} {public local 39 } 40 41 decl {\#include "../Misc/Util.h"} {public local 42 } 43 44 decl {\#include "../Effects/EffectMgr.h"} {public local 45 } 46 47 decl {\#include "../Effects/Phaser.h" /* for macros only, TODO */} {public local 48 } 49 50 decl {\#include "../Effects/Alienwah.h" /* for macros only, TODO */ } {public local 51 } 52 53 decl {\#include "PresetsUI.h"} {public local 54 } 55 56 decl {\#include "common.H"} {public local 57 } 58 59 decl {using namespace zyn;} {public local 60 } 61 62 class EffUI {open : {public Fl_Osc_Group,public PresetsUI_} 63 } { 64 Function {EffUI(int x,int y, int w, int h, const char *label=0):Fl_Osc_Group(x,y,w,h,label)} {} { 65 code {filterwindow=NULL;} {} 66 } 67 Function {~EffUI()} {} { 68 code {effnullwindow->hide();//delete (effnullwindow); 69 effreverbwindow->hide();//delete (effreverbwindow); 70 effechowindow->hide();//delete (effechowindow); 71 effchoruswindow->hide();//delete (effchoruswindow); 72 effphaserwindow->hide();//delete (effphaserwindow); 73 effalienwahwindow->hide();//delete (effalienwahwindow); 74 effdistortionwindow->hide();//delete (effdistortionwindow); 75 effeqwindow->hide();//delete (effeqwindow); 76 effdynamicfilterwindow->hide();//delete (effdynamicfilterwindow); 77 effsympatheticwindow->hide();//delete (effsympatheticwindow); 78 79 if (filterwindow!=NULL){ 80 filterwindow->hide(); 81 delete(filterwindow); 82 };} {} 83 } 84 Function {make_null_window()} {} { 85 Fl_Window effnullwindow { 86 xywh {621 881 380 100} type Double box UP_BOX color 221 labelfont 1 labelsize 19 87 code0 {set_module_parameters(o);} 88 class Fl_Group visible 89 } {} 90 } 91 Function {make_reverb_window()} {} { 92 Fl_Window effreverbwindow { 93 xywh {386 705 380 100} type Double box UP_BOX color 221 labelfont 1 labelsize 19 94 code0 {set_module_parameters(o);} 95 class Fl_Group visible 96 } { 97 Fl_Choice revp { 98 label Preset 99 xywh {10 15 90 15} box UP_BOX down_box BORDER_BOX color 14 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 100 code0 {o->init("preset");} 101 class Fl_Osc_Choice 102 } { 103 MenuItem {} { 104 label {Cathedral 1} 105 xywh {10 10 100 20} labelfont 1 labelsize 10 106 } 107 MenuItem {} { 108 label {Cathedral 2} 109 xywh {20 20 100 20} labelfont 1 labelsize 10 110 } 111 MenuItem {} { 112 label {Cathedral 3} 113 xywh {30 30 100 20} labelfont 1 labelsize 10 114 } 115 MenuItem {} { 116 label {Hall 1} 117 xywh {40 40 100 20} labelfont 1 labelsize 10 118 } 119 MenuItem {} { 120 label {Hall 2} 121 xywh {50 50 100 20} labelfont 1 labelsize 10 122 } 123 MenuItem {} { 124 label {Room 1} 125 xywh {60 60 100 20} labelfont 1 labelsize 10 126 } 127 MenuItem {} { 128 label {Room 2} 129 xywh {70 70 100 20} labelfont 1 labelsize 10 130 } 131 MenuItem {} { 132 label Basement 133 xywh {80 80 100 20} labelfont 1 labelsize 10 134 } 135 MenuItem {} { 136 label Tunnel 137 xywh {90 90 100 20} labelfont 1 labelsize 10 138 } 139 MenuItem {} { 140 label {Echoed 1} 141 xywh {100 100 100 20} labelfont 1 labelsize 10 142 } 143 MenuItem {} { 144 label {Echoed 2} 145 xywh {110 110 100 20} labelfont 1 labelsize 10 146 } 147 MenuItem {} { 148 label {Very Long 1} 149 xywh {120 120 100 20} labelfont 1 labelsize 10 150 } 151 MenuItem {} { 152 label {Very Long 2} 153 xywh {130 130 100 20} labelfont 1 labelsize 10 154 } 155 } 156 Fl_Choice revp10 { 157 label Type 158 callback {if(o->value()==2) revp12->activate(); 159 else revp12->deactivate();} 160 xywh {110 15 85 15} box UP_BOX down_box BORDER_BOX color 14 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 161 code0 {o->init("parameter10");} 162 class Fl_Osc_Choice 163 } { 164 MenuItem {} { 165 label Random 166 xywh {20 20 100 20} labelfont 1 labelsize 10 167 } 168 MenuItem {} { 169 label Freeverb 170 xywh {30 30 100 20} labelfont 1 labelsize 10 171 } 172 MenuItem {} { 173 label Bandwidth 174 xywh {40 40 100 20} labelfont 1 labelsize 10 175 } 176 } 177 Fl_Dial revp0 { 178 label Vol 179 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 180 code0 {o->init("parameter0");} 181 class Fl_Osc_Dial 182 } 183 Fl_Dial revp1 { 184 label Pan 185 xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 186 code0 {o->init("parameter1");} 187 class Fl_Osc_Dial 188 } 189 Fl_Dial revp2 { 190 label Time 191 tooltip {Duration of Effect} xywh {80 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 192 code0 {o->init("parameter2");} 193 class Fl_Osc_Dial 194 } 195 Fl_Dial revp3 { 196 label {I.del} 197 tooltip {Initial Delay} xywh {120 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 198 code0 {o->init("parameter3");} 199 class Fl_Osc_Dial 200 } 201 Fl_Dial revp4 { 202 label {I.delfb} 203 tooltip {Initial Delay Feedback} xywh {155 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 204 code0 {o->init("parameter4");} 205 class Fl_Osc_Dial 206 } 207 Fl_Dial revp12 { 208 label bw 209 xywh {200 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 deactivate 210 code0 {o->init("parameter12");} 211 class Fl_Osc_Dial 212 } 213 Fl_Dial revp6 { 214 label {E/R} 215 xywh {235 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 deactivate 216 code0 {o->init("parameter6");} 217 class Fl_Osc_Dial 218 } 219 Fl_Dial revp7 { 220 label LPF 221 tooltip {Low Pass Filter} xywh {270 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 222 code0 {o->init("parameter7");} 223 class Fl_Osc_Dial 224 } 225 Fl_Dial revp8 { 226 label HPF 227 tooltip {High Pass Filter} xywh {305 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 228 code0 {o->init("parameter8");} 229 class Fl_Osc_Dial 230 } 231 Fl_Dial revp9 { 232 label Damp 233 tooltip Dampening xywh {340 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 minimum 64 maximum 127 step 1 234 code0 {o->init("parameter9");} 235 class Fl_Osc_Dial 236 } 237 Fl_Dial revp11 { 238 label {R.S.} 239 tooltip RoomSize xywh {200 10 25 25} box ROUND_UP_BOX labelfont 1 labelsize 8 align 8 minimum 1 maximum 127 step 1 240 code0 {o->init("parameter11");} 241 class Fl_Osc_Dial 242 } 243 } 244 } 245 Function {make_echo_window()} {} { 246 Fl_Window effechowindow { 247 xywh {897 680 380 100} type Double box UP_BOX color 221 labelfont 1 labelsize 19 248 code0 {set_module_parameters(o);} 249 class Fl_Group visible 250 } { 251 Fl_Choice echop { 252 label Preset 253 xywh {11 15 95 15} box UP_BOX down_box BORDER_BOX color 14 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 254 code0 {o->init("preset");} 255 class Fl_Osc_Choice 256 } { 257 MenuItem {} { 258 label {Echo 1} 259 xywh {20 20 100 20} labelfont 1 labelsize 10 260 } 261 MenuItem {} { 262 label {Echo 2} 263 xywh {30 30 100 20} labelfont 1 labelsize 10 264 } 265 MenuItem {} { 266 label {Echo 3} 267 xywh {40 40 100 20} labelfont 1 labelsize 10 268 } 269 MenuItem {} { 270 label {Simple Echo} 271 xywh {50 50 100 20} labelfont 1 labelsize 10 272 } 273 MenuItem {} { 274 label Canyon 275 xywh {60 60 100 20} labelfont 1 labelsize 10 276 } 277 MenuItem {} { 278 label {Panning Echo 1} 279 xywh {70 70 100 20} labelfont 1 labelsize 10 280 } 281 MenuItem {} { 282 label {Panning Echo 2} 283 xywh {80 80 100 20} labelfont 1 labelsize 10 284 } 285 MenuItem {} { 286 label {Panning Echo 3} 287 xywh {90 90 100 20} labelfont 1 labelsize 10 288 } 289 MenuItem {} { 290 label {Feedback Echo} 291 xywh {100 100 100 20} labelfont 1 labelsize 10 292 } 293 } 294 Fl_Dial echop0 { 295 label Vol 296 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 297 code0 {o->init("parameter0");} 298 class Fl_Osc_Dial 299 } 300 Fl_Dial echop1 { 301 label Pan 302 xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 303 code0 {o->init("parameter1");} 304 class Fl_Osc_Dial 305 } 306 Fl_Dial echop2 { 307 label Delay 308 xywh {80 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 309 code0 {o->init("parameter2");} 310 class Fl_Osc_Dial 311 } 312 Fl_Dial echop3 { 313 label {LRdl.} 314 tooltip {Delay Between L/R} xywh {120 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 315 code0 {o->init("parameter3");} 316 class Fl_Osc_Dial 317 } 318 Fl_Dial echop4 { 319 label {LRc.} 320 tooltip {L/R Crossover} xywh {155 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 321 code0 {o->init("parameter4");} 322 class Fl_Osc_Dial 323 } 324 Fl_Dial echop5 { 325 label {Fb.} 326 tooltip Feedback xywh {195 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 327 code0 {o->init("parameter5");} 328 class Fl_Osc_Dial 329 } 330 Fl_Dial echop6 { 331 label Damp 332 tooltip Dampening xywh {235 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 333 code0 {o->init("parameter6");} 334 class Fl_Osc_Dial 335 } 336 } 337 } 338 Function {make_chorus_window()} {} { 339 Fl_Window effchoruswindow { 340 xywh {476 811 380 100} type Double box UP_BOX color 221 labelfont 1 labelsize 19 341 code0 {set_module_parameters(o);} 342 class Fl_Group visible 343 } { 344 Fl_Choice chorusp { 345 label Preset 346 xywh {10 15 90 15} box UP_BOX down_box BORDER_BOX color 14 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 347 code0 {o->init("preset");} 348 class Fl_Osc_Choice 349 } { 350 MenuItem {} { 351 label {Chorus 1} 352 xywh {20 20 100 20} labelfont 1 labelsize 10 353 } 354 MenuItem {} { 355 label {Chorus 2} 356 xywh {30 30 100 20} labelfont 1 labelsize 10 357 } 358 MenuItem {} { 359 label {Chorus 3} 360 xywh {40 40 100 20} labelfont 1 labelsize 10 361 } 362 MenuItem {} { 363 label {Celeste 1} 364 xywh {50 50 100 20} labelfont 1 labelsize 10 365 } 366 MenuItem {} { 367 label {Celeste 2} 368 xywh {60 60 100 20} labelfont 1 labelsize 10 369 } 370 MenuItem {} { 371 label {Flange 1} 372 xywh {70 70 100 20} labelfont 1 labelsize 10 373 } 374 MenuItem {} { 375 label {Flange 2} 376 xywh {80 80 100 20} labelfont 1 labelsize 10 377 } 378 MenuItem {} { 379 label {Flange 3} 380 xywh {90 90 100 20} labelfont 1 labelsize 10 381 } 382 MenuItem {} { 383 label {Flange 4} 384 xywh {100 100 100 20} labelfont 1 labelsize 10 385 } 386 MenuItem {} { 387 label {Flange 5} 388 xywh {110 110 100 20} labelfont 1 labelsize 10 389 } 390 } 391 Fl_Dial chorusp0 { 392 label Vol 393 xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 394 code0 {o->init("parameter0");} 395 class Fl_Osc_Dial 396 } 397 Fl_Dial chorusp1 { 398 label Pan 399 xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 400 code0 {o->init("parameter1");} 401 class Fl_Osc_Dial 402 } 403 Fl_Dial chorusp2 { 404 label Freq 405 tooltip {LFO Frequency} xywh {85 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 406 code0 {o->init("parameter2");} 407 class Fl_Osc_Dial 408 } 409 Fl_Dial chorusp3 { 410 label Rnd 411 tooltip {LFO Randomness} xywh {120 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 412 code0 {o->init("parameter3");} 413 class Fl_Osc_Dial 414 } 415 Fl_Dial chorusp5 { 416 label {St.df} 417 tooltip {L/R Phase Shift} xywh {200 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 418 code0 {o->init("parameter5");} 419 class Fl_Osc_Dial 420 } 421 Fl_Dial chorusp6 { 422 label Dpth 423 tooltip {LFO Depth} xywh {235 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 424 code0 {o->init("parameter6");} 425 class Fl_Osc_Dial 426 } 427 Fl_Dial chorusp7 { 428 label Delay 429 xywh {270 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 430 code0 {o->init("parameter7");} 431 class Fl_Osc_Dial 432 } 433 Fl_Dial chorusp8 { 434 label Fb 435 tooltip Feedback xywh {305 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 436 code0 {o->init("parameter8");} 437 class Fl_Osc_Dial 438 } 439 Fl_Dial chorusp9 { 440 label {L/R} 441 tooltip {Channel Routing} xywh {340 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 442 code0 {o->init("parameter9");} 443 class Fl_Osc_Dial 444 } 445 Fl_Check_Button chorusp11 { 446 label Subtract 447 tooltip {inverts the output} xywh {185 10 70 20} box THIN_UP_BOX down_box DOWN_BOX color 51 labelsize 10 448 code0 {o->init("parameter11");} 449 class Fl_Osc_Check 450 } 451 Fl_Choice chorusp4 { 452 label {LFO type} 453 tooltip {LFO function} xywh {155 50 40 15} down_box BORDER_BOX labelfont 1 labelsize 10 align 130 textsize 8 454 code0 {o->init("parameter4");} 455 class Fl_Osc_Choice 456 } { 457 MenuItem {} { 458 label SINE 459 xywh {15 15 100 20} labelfont 1 labelsize 10 460 } 461 MenuItem {} { 462 label TRI 463 xywh {25 25 100 20} labelfont 1 labelsize 10 464 } 465 } 466 Fl_Choice chorusp10 { 467 label {Mode} 468 tooltip {LFO function} xywh {270 15 80 15} box UP_BOX down_box BORDER_BOX labelfont 1 labelsize 10 align 5 textsize 8 469 code0 {o->init("parameter10");} 470 class Fl_Osc_Choice 471 } { 472 MenuItem {} { 473 label CHORUS 474 xywh {15 15 100 20} labelfont 1 labelsize 10 475 } 476 MenuItem {} { 477 label FLANGE 478 xywh {25 25 100 20} labelfont 1 labelsize 10 479 } 480 MenuItem {} { 481 label TRIPLE 482 xywh {35 35 100 20} labelfont 1 labelsize 10 483 } 484 MenuItem {} { 485 label DUAL 486 xywh {45 45 100 20} labelfont 1 labelsize 10 487 } 488 } 489 } 490 } 491 Function {make_phaser_window()} {} { 492 Fl_Window effphaserwindow { 493 xywh {110 301 380 95} type Double box UP_BOX color 221 labelfont 1 labelsize 19 494 code0 {set_module_parameters(o);} 495 class Fl_Group visible 496 } { 497 Fl_Choice phaserp { 498 label Preset 499 xywh {10 15 100 15} box UP_BOX down_box BORDER_BOX color 14 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 500 code0 {o->init("preset");} 501 class Fl_Osc_Choice 502 } { 503 MenuItem {} { 504 label {Phaser 1} 505 xywh {30 30 100 20} labelfont 1 labelsize 10 506 } 507 MenuItem {} { 508 label {Phaser 2} 509 xywh {40 40 100 20} labelfont 1 labelsize 10 510 } 511 MenuItem {} { 512 label {Phaser 3} 513 xywh {50 50 100 20} labelfont 1 labelsize 10 514 } 515 MenuItem {} { 516 label {Phaser 4} 517 xywh {60 60 100 20} labelfont 1 labelsize 10 518 } 519 MenuItem {} { 520 label {Phaser 5} 521 xywh {70 70 100 20} labelfont 1 labelsize 10 522 } 523 MenuItem {} { 524 label {Phaser 6} 525 xywh {80 80 100 20} labelfont 1 labelsize 10 526 } 527 MenuItem {} { 528 label {APhaser 1} 529 xywh {40 40 100 20} labelfont 1 labelsize 10 530 } 531 MenuItem {} { 532 label {APhaser 2} 533 xywh {50 50 100 20} labelfont 1 labelsize 10 534 } 535 MenuItem {} { 536 label {APhaser 3} 537 xywh {60 60 100 20} labelfont 1 labelsize 10 538 } 539 MenuItem {} { 540 label {APhaser 4} 541 xywh {70 70 100 20} labelfont 1 labelsize 10 542 } 543 MenuItem {} { 544 label {APhaser 5} 545 xywh {80 80 100 20} labelfont 1 labelsize 10 546 } 547 MenuItem {} { 548 label {APhaser 6} 549 xywh {90 90 100 20} labelfont 1 labelsize 10 550 } 551 } 552 Fl_Dial phaserp0 { 553 label Vol 554 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 555 code0 {o->init("parameter0");} 556 class Fl_Osc_Dial 557 } 558 Fl_Dial phaserp1 { 559 label Pan 560 xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 561 code0 {o->init("parameter1");} 562 class Fl_Osc_Dial 563 } 564 Fl_Dial phaserp2 { 565 label Freq 566 tooltip {LFO frequency} xywh {85 45 25 25} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 567 code0 {o->init("parameter2");} 568 class Fl_Osc_Dial 569 } 570 Fl_Dial phaserp3 { 571 label Rnd 572 tooltip {LFO randomness} xywh {120 45 25 25} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 573 code0 {o->init("parameter3");} 574 class Fl_Osc_Dial 575 } 576 Fl_Choice phaserp4 { 577 label LFO 578 tooltip {LFO function} xywh {245 55 40 15} down_box BORDER_BOX labelfont 1 labelsize 10 align 130 textsize 8 579 code0 {o->init("parameter4");} 580 class Fl_Osc_Choice 581 } { 582 MenuItem {} { 583 label SIN 584 xywh {15 15 100 20} labelfont 1 labelsize 10 585 } 586 MenuItem {} { 587 label TRI 588 xywh {25 25 100 20} labelfont 1 labelsize 10 589 } 590 } 591 Fl_Dial phaserp5 { 592 label {St.df} 593 tooltip {Left/Right Channel Phase Shift} xywh {155 45 25 25} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 594 code0 {o->init("parameter5");} 595 class Fl_Osc_Dial 596 } 597 Fl_Dial phaserp6 { 598 label Dpth 599 tooltip {LFO Depth} xywh {120 5 25 25} box ROUND_UP_BOX labelfont 1 labelsize 10 maximum 127 600 code0 {o->init("parameter6");} 601 class Fl_Osc_Dial 602 } 603 Fl_Dial phaserp7 { 604 label Fb 605 tooltip Feedback xywh {185 45 25 25} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 606 code0 {o->init("parameter7");} 607 class Fl_Osc_Dial 608 } 609 Fl_Counter phaserp8 { 610 label Stages 611 xywh {290 55 35 15} type Simple labelfont 1 labelsize 11 minimum 0 maximum 127 step 1 612 code0 {o->range(1,MAX_PHASER_STAGES);} 613 code1 {o->init("parameter8");} 614 class Fl_Osc_Counter 615 } 616 Fl_Dial phaserp9 { 617 label {L/R} 618 tooltip {Channel Routing} xywh {215 45 25 25} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 619 code0 {o->init("parameter9");} 620 class Fl_Osc_Dial 621 } 622 Fl_Check_Button phaserp10 { 623 label Subtract 624 tooltip {inverts output} xywh {200 10 74 20} box THIN_UP_BOX down_box DOWN_BOX color 51 labelfont 1 labelsize 10 625 code0 {o->init("parameter10");} 626 class Fl_Osc_Check 627 } 628 Fl_Dial phaserp11 { 629 label Phase 630 xywh {155 5 25 25} box ROUND_UP_BOX labelfont 1 labelsize 10 maximum 127 631 code0 {o->init("parameter11");} 632 class Fl_Osc_Dial 633 } 634 Fl_Check_Button phaserp12 { 635 label {hyp.} 636 tooltip hyper xywh {245 35 55 15} down_box DOWN_BOX 637 code0 {o->init("parameter12");} 638 class Fl_Osc_Check 639 } 640 Fl_Dial phaserp13 { 641 label dist 642 tooltip Distortion xywh {340 50 25 25} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 643 code0 {o->init("parameter13");} 644 class Fl_Osc_Dial 645 } 646 Fl_Check_Button phaserp14 { 647 label Analog 648 xywh {305 35 70 15} down_box DOWN_BOX 649 code0 {o->init("parameter14");} 650 class Fl_Osc_Check 651 } 652 } 653 } 654 Function {make_alienwah_window()} {} { 655 Fl_Window effalienwahwindow { 656 xywh {262 422 380 100} type Double box UP_BOX color 221 labelfont 1 labelsize 19 657 code0 {set_module_parameters(o);} 658 class Fl_Group visible 659 } { 660 Fl_Choice awp { 661 label Preset 662 xywh {10 15 90 15} box UP_BOX down_box BORDER_BOX color 14 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 663 code0 {o->init("preset");} 664 class Fl_Osc_Choice 665 } { 666 MenuItem {} { 667 label {Alienwah 1} 668 xywh {40 40 100 20} labelfont 1 labelsize 10 669 } 670 MenuItem {} { 671 label {Alienwah 2} 672 xywh {50 50 100 20} labelfont 1 labelsize 10 673 } 674 MenuItem {} { 675 label {Alienwah 3} 676 xywh {60 60 100 20} labelfont 1 labelsize 10 677 } 678 MenuItem {} { 679 label {Alienwah 4} 680 xywh {70 70 100 20} labelfont 1 labelsize 10 681 } 682 } 683 Fl_Dial awp0 { 684 label Vol 685 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 686 code0 {o->init("parameter0");} 687 class Fl_Osc_Dial 688 } 689 Fl_Dial awp1 { 690 label Pan 691 xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 692 code0 {o->init("parameter1");} 693 class Fl_Osc_Dial 694 } 695 Fl_Dial awp2 { 696 label Freq 697 tooltip {LFO Frequency} xywh {85 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 698 code0 {o->init("parameter2");} 699 class Fl_Osc_Dial 700 } 701 Fl_Dial awp3 { 702 label Rnd 703 tooltip {LFO Randomness} xywh {120 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 704 code0 {o->init("parameter3");} 705 class Fl_Osc_Dial 706 } 707 Fl_Dial awp5 { 708 label {St.df} 709 tooltip {Left/Right Channel Phase Shift} xywh {200 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 710 code0 {o->init("parameter5");} 711 class Fl_Osc_Dial 712 } 713 Fl_Dial awp6 { 714 label Dpth 715 tooltip Depth xywh {235 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 716 code0 {o->init("parameter6");} 717 class Fl_Osc_Dial 718 } 719 Fl_Dial awp7 { 720 label Fb 721 tooltip Feedback xywh {270 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 722 code0 {o->init("parameter7");} 723 class Fl_Osc_Dial 724 } 725 Fl_Dial awp9 { 726 label {L/R} 727 xywh {345 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 728 code0 {o->init("parameter9");} 729 class Fl_Osc_Dial 730 } 731 Fl_Choice awp4 { 732 label {LFO type} 733 tooltip {LFO function} xywh {155 50 40 15} down_box BORDER_BOX labelfont 1 labelsize 10 align 130 textsize 8 734 code0 {o->init("parameter4");} 735 class Fl_Osc_Choice 736 } { 737 MenuItem {} { 738 label SINE 739 xywh {15 15 100 20} labelfont 1 labelsize 10 740 } 741 MenuItem {} { 742 label TRI 743 xywh {25 25 100 20} labelfont 1 labelsize 10 744 } 745 } 746 Fl_Dial awp10 { 747 label Phase 748 xywh {160 5 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 749 code0 {o->init("parameter10");} 750 class Fl_Osc_Dial 751 } 752 Fl_Counter awp8 { 753 label Delay 754 xywh {305 55 35 15} type Simple labelfont 1 labelsize 11 minimum 0 maximum 127 step 1 755 code0 {o->range(1,MAX_ALIENWAH_DELAY);} 756 code1 {o->init("parameter8");} 757 class Fl_Osc_Counter 758 } 759 } 760 } 761 Function {make_distortion_window()} {} { 762 Fl_Window effdistortionwindow { 763 xywh {553 286 380 100} type Double box UP_BOX color 221 labelfont 1 labelsize 19 764 code0 {set_module_parameters(o);} 765 class Fl_Group visible 766 } { 767 Fl_Choice distp { 768 label Preset 769 xywh {11 15 95 15} box UP_BOX down_box BORDER_BOX color 14 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 770 code0 {o->init("preset");} 771 class Fl_Osc_Choice 772 } { 773 MenuItem {} { 774 label {Overdrive 1} 775 xywh {20 20 100 20} labelfont 1 labelsize 10 776 } 777 MenuItem {} { 778 label {Overdrive 2} 779 xywh {30 30 100 20} labelfont 1 labelsize 10 780 } 781 MenuItem {} { 782 label {A. Exciter 1} 783 xywh {40 40 100 20} labelfont 1 labelsize 10 784 } 785 MenuItem {} { 786 label {A. Exciter 2} 787 xywh {50 50 100 20} labelfont 1 labelsize 10 788 } 789 MenuItem {} { 790 label {Guitar Amp} 791 xywh {50 50 100 20} labelfont 1 labelsize 10 792 } 793 MenuItem {} { 794 label Quantisize 795 xywh {60 60 100 20} labelfont 1 labelsize 10 796 } 797 } 798 Fl_Dial distp0 { 799 label Vol 800 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 801 code0 {o->init("parameter0");} 802 class Fl_Osc_Dial 803 } 804 Fl_Dial distp1 { 805 label Pan 806 xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 807 code0 {o->init("parameter1");} 808 class Fl_Osc_Dial 809 } 810 Fl_Dial distp2 { 811 label {LRc.} 812 tooltip {L/R Mix} xywh {80 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 813 code0 {o->init("parameter2");} 814 class Fl_Osc_Dial 815 } 816 Fl_Dial distp3 { 817 label Drive 818 tooltip {Input Amplification} xywh {120 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 819 code0 {o->init("parameter3");} 820 class Fl_Osc_Dial 821 } 822 Fl_Dial distp4 { 823 label Level 824 tooltip {Output Amplification} xywh {155 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 825 code0 {o->init("parameter4");} 826 class Fl_Osc_Dial 827 } 828 Fl_Dial distp12 { 829 label Offs 830 tooltip {DC Offset} xywh {190 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 831 code0 {o->init("parameter12");} 832 class Fl_Osc_Dial 833 } 834 Fl_Dial distp11 { 835 label Shape 836 tooltip {Shape Parameter} xywh {225 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 837 code0 {o->init("parameter11");} 838 class Fl_Osc_Dial 839 } 840 Fl_Dial distp7 { 841 label LPF 842 tooltip {Low Pass Filter} xywh {285 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 843 code0 {o->init("parameter7");} 844 class Fl_Osc_Dial 845 } 846 Fl_Dial distp8 { 847 label HPF 848 tooltip {High Pass Filter} xywh {320 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 849 code0 {o->init("parameter8");} 850 class Fl_Osc_Dial 851 } 852 Fl_Choice distp5 { 853 label Type 854 xywh {190 15 60 20} box UP_BOX down_box BORDER_BOX labelfont 1 labelsize 11 align 5 textsize 10 855 code0 {o->init("parameter5");} 856 class Fl_Osc_Choice 857 } { 858 MenuItem {} { 859 label Atan 860 xywh {55 55 100 20} labelfont 1 labelsize 10 861 } 862 MenuItem {} { 863 label Asym1 864 xywh {65 65 100 20} labelfont 1 labelsize 10 865 } 866 MenuItem {} { 867 label Pow 868 xywh {75 75 100 20} labelfont 1 labelsize 10 869 } 870 MenuItem {} { 871 label Sine 872 xywh {85 85 100 20} labelfont 1 labelsize 10 873 } 874 MenuItem {} { 875 label Qnts 876 xywh {95 95 100 20} labelfont 1 labelsize 10 877 } 878 MenuItem {} { 879 label Zigzg 880 xywh {105 105 100 20} labelfont 1 labelsize 10 881 } 882 MenuItem {} { 883 label Lmt 884 xywh {115 115 100 20} labelfont 1 labelsize 10 885 } 886 MenuItem {} { 887 label LmtU 888 xywh {125 125 100 20} labelfont 1 labelsize 10 889 } 890 MenuItem {} { 891 label LmtL 892 xywh {135 135 100 20} labelfont 1 labelsize 10 893 } 894 MenuItem {} { 895 label ILmt 896 xywh {147 147 100 20} labelfont 1 labelsize 10 897 } 898 MenuItem {} { 899 label Clip 900 xywh {157 157 100 20} labelfont 1 labelsize 10 901 } 902 MenuItem {} { 903 label Asym2 904 xywh {75 75 100 20} labelfont 1 labelsize 10 905 } 906 MenuItem {} { 907 label Pow2 908 xywh {85 85 100 20} labelfont 1 labelsize 10 909 } 910 MenuItem {} { 911 label Sgm 912 xywh {95 95 100 20} labelfont 1 labelsize 10 913 } 914 MenuItem {} { 915 label Tanh 916 xywh {105 105 100 20} labelfont 1 labelsize 10 917 } 918 MenuItem {} { 919 label Cubic 920 xywh {115 115 100 20} labelfont 1 labelsize 10 921 } 922 MenuItem {} { 923 label Square 924 xywh {205 125 100 20} labelfont 1 labelsize 10 925 } 926 } 927 Fl_Check_Button distp6 { 928 label {Neg.} 929 xywh {260 15 15 15} down_box DOWN_BOX labelfont 1 labelsize 11 align 1 930 code0 {o->init("parameter6");} 931 class Fl_Osc_Check 932 } 933 Fl_Check_Button distp9 { 934 label {St.} 935 tooltip Stereo xywh {355 60 15 15} down_box DOWN_BOX labelfont 1 labelsize 11 align 2 936 code0 {o->init("parameter9");} 937 class Fl_Osc_Check 938 } 939 Fl_Check_Button distp10 { 940 label PF 941 tooltip {Applies the filters(before or after) the distortion} xywh {355 44 15 15} down_box DOWN_BOX labelfont 1 labelsize 11 align 1 942 code0 {o->init("parameter10");} 943 class Fl_Osc_Check 944 } 945 } 946 } 947 Function {make_eq_window()} {} { 948 Fl_Window effeqwindow { 949 xywh {691 881 380 100} type Double box UP_BOX color 221 labelfont 1 labelsize 19 950 code0 {set_module_parameters(o);} 951 class Fl_Group visible 952 } { 953 Fl_Dial eqp0 { 954 label Gain 955 callback {eqgraph->redraw();} 956 xywh {10 35 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 957 code0 {o->init("parameter0");} 958 class Fl_Osc_Dial 959 } 960 Fl_Counter bandcounter { 961 label {B.} 962 callback {eqband=(int) o->value(); 963 int npb=eqband*5+10; 964 965 typechoice->oscMove("parameter"+to_s(npb)); 966 freqdial->oscMove("parameter"+to_s(npb+1)); 967 gaindial->oscMove("parameter"+to_s(npb+2)); 968 qdial->oscMove("parameter"+to_s(npb+3)); 969 stagescounter->oscMove("parameter"+to_s(npb+4));} 970 tooltip {Band no.} xywh {240 20 45 15} type Simple labelfont 1 labelsize 11 align 1 minimum 0 maximum 1 step 1 textfont 1 textsize 11 971 code0 {o->bounds(0,MAX_EQ_BANDS-1);} 972 } 973 Fl_Group bandgroup { 974 xywh {245 40 130 50} box ENGRAVED_FRAME 975 } { 976 Fl_Dial freqdial { 977 label Freq 978 callback {eqgraph->update();} 979 xywh {250 50 25 25} box ROUND_UP_BOX labelfont 1 labelsize 10 when 3 maximum 127 980 code0 {o->init("parameter11");} 981 class Fl_Osc_Dial 982 } 983 Fl_Dial gaindial { 984 label Gain 985 callback {eqgraph->update();} 986 xywh {280 50 25 25} box ROUND_UP_BOX labelfont 1 labelsize 10 when 3 maximum 127 step 1 987 code0 {o->init("parameter12");} 988 class Fl_Osc_Dial 989 } 990 Fl_Dial qdial { 991 label Q 992 callback {eqgraph->update();} 993 tooltip {Resonance/Bandwidth} xywh {310 50 25 25} box ROUND_UP_BOX labelfont 1 labelsize 10 when 3 maximum 127 994 code0 {o->init("parameter13");} 995 class Fl_Osc_Dial 996 } 997 Fl_Counter stagescounter { 998 label {St.} 999 callback {eqgraph->update();} 1000 tooltip {Additional filter stages} xywh {340 60 30 15} type Simple labelfont 1 labelsize 10 minimum 0 maximum 127 step 1 textfont 1 textsize 11 1001 code0 {o->init("parameter14");} 1002 class Fl_Osc_Counter 1003 } 1004 } 1005 Fl_Choice typechoice { 1006 label {T.} 1007 callback {int type = o->value(); 1008 if (type>6) gaindial->activate(); 1009 else gaindial->deactivate(); 1010 1011 if (type==0) bandgroup->deactivate(); 1012 else bandgroup->activate(); 1013 eqgraph->update();} 1014 tooltip Type xywh {290 20 40 15} down_box BORDER_BOX labelfont 1 labelsize 10 align 1 when 6 textsize 10 1015 code0 {o->init("parameter15");} 1016 class Fl_Osc_Choice 1017 } { 1018 MenuItem {} { 1019 label OFF 1020 xywh {0 0 100 20} labelfont 1 labelsize 10 1021 } 1022 MenuItem {} { 1023 label Lp1 1024 xywh {10 10 100 20} labelfont 1 labelsize 10 1025 } 1026 MenuItem {} { 1027 label Hp1 1028 xywh {20 20 100 20} labelfont 1 labelsize 10 1029 } 1030 MenuItem {} { 1031 label Lp2 1032 xywh {30 30 100 20} labelfont 1 labelsize 10 1033 } 1034 MenuItem {} { 1035 label Hp2 1036 xywh {40 40 100 20} labelfont 1 labelsize 10 1037 } 1038 MenuItem {} { 1039 label Bp2 1040 xywh {50 50 100 20} labelfont 1 labelsize 10 1041 } 1042 MenuItem {} { 1043 label N2 1044 xywh {60 60 100 20} labelfont 1 labelsize 10 1045 } 1046 MenuItem {} { 1047 label Pk 1048 xywh {80 80 100 20} labelfont 1 labelsize 10 1049 } 1050 MenuItem {} { 1051 label LSh 1052 xywh {70 70 100 20} labelfont 1 labelsize 10 1053 } 1054 MenuItem {} { 1055 label HSh 1056 xywh {80 80 100 20} labelfont 1 labelsize 10 1057 } 1058 } 1059 Fl_Box eqgraph { 1060 xywh {45 10 190 75} box BORDER_BOX color 50 1061 class Fl_EQGraph 1062 } 1063 } 1064 } 1065 Function {make_dynamicfilter_window()} {} { 1066 Fl_Window effdynamicfilterwindow { 1067 xywh {828 359 380 100} type Double box UP_BOX color 221 labelfont 1 labelsize 19 1068 code0 {set_module_parameters(o);} 1069 class Fl_Group visible 1070 } { 1071 Fl_Choice dfp { 1072 label Preset 1073 xywh {10 15 90 15} box UP_BOX down_box BORDER_BOX color 14 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 1074 code0 {o->init("preset");} 1075 class Fl_Osc_Choice 1076 } { 1077 MenuItem {} { 1078 label WahWah 1079 xywh {30 30 100 20} labelfont 1 labelsize 10 1080 } 1081 MenuItem {} { 1082 label AutoWah 1083 xywh {40 40 100 20} labelfont 1 labelsize 10 1084 } 1085 MenuItem {} { 1086 label Sweep 1087 xywh {50 50 100 20} labelfont 1 labelsize 10 1088 } 1089 MenuItem {} { 1090 label VocalMorph1 1091 xywh {50 50 100 20} labelfont 1 labelsize 10 1092 } 1093 MenuItem {} { 1094 label VocalMorph2 1095 xywh {60 60 100 20} labelfont 1 labelsize 10 1096 } 1097 } 1098 Fl_Dial dfp0 { 1099 label Vol 1100 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1101 code0 {o->init("parameter0");} 1102 class Fl_Osc_Dial 1103 } 1104 Fl_Dial dfp1 { 1105 label Pan 1106 xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1107 code0 {o->init("parameter1");} 1108 class Fl_Osc_Dial 1109 } 1110 Fl_Dial dfp2 { 1111 label Freq 1112 tooltip {LFO Frequency} xywh {85 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1113 code0 {o->init("parameter2");} 1114 class Fl_Osc_Dial 1115 } 1116 Fl_Dial dfp3 { 1117 label Rnd 1118 tooltip {LFO Randomness} xywh {120 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 1119 code0 {o->init("parameter3");} 1120 class Fl_Osc_Dial 1121 } 1122 Fl_Dial dfp5 { 1123 label {St.df} 1124 tooltip {Left/Right Channel Phase Shift} xywh {200 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1125 code0 {o->init("parameter5");} 1126 class Fl_Osc_Dial 1127 } 1128 Fl_Dial dfp6 { 1129 label LfoD 1130 tooltip {LFO Depth} xywh {235 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1131 code0 {o->init("parameter6");} 1132 class Fl_Osc_Dial 1133 } 1134 Fl_Choice dfp4 { 1135 label {LFO type} 1136 tooltip {LFO function} xywh {155 50 40 15} down_box BORDER_BOX labelfont 1 labelsize 10 align 130 textsize 8 1137 code0 {o->init("parameter4");} 1138 class Fl_Osc_Choice 1139 } { 1140 MenuItem {} { 1141 label SINE 1142 xywh {15 15 100 20} labelfont 1 labelsize 10 1143 } 1144 MenuItem {} { 1145 label TRI 1146 xywh {25 25 100 20} labelfont 1 labelsize 10 1147 } 1148 } 1149 Fl_Button {} { 1150 label Filter 1151 callback {filterwindow->show();} 1152 xywh {115 10 55 25} box THIN_UP_BOX 1153 } 1154 Fl_Group {} { 1155 xywh {270 40 105 45} box UP_FRAME color 51 1156 } { 1157 Fl_Dial dfp7 { 1158 label {A.S.} 1159 tooltip {Filter vs Amplitude} xywh {275 45 25 25} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1160 code0 {o->init("parameter7");} 1161 class Fl_Osc_Dial 1162 } 1163 Fl_Dial dfp9 { 1164 label {A.M} 1165 tooltip {rate that amplitude changes the filter} xywh {305 45 25 25} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1166 code0 {o->init("parameter9");} 1167 class Fl_Osc_Dial 1168 } 1169 Fl_Check_Button dfp8 { 1170 label {A.Inv.} 1171 tooltip {enable for filter frequency to lower with higher input amplitude} xywh {345 55 15 15} down_box DOWN_BOX labelfont 1 labelsize 11 align 2 1172 code0 {o->init("parameter8");} 1173 class Fl_Osc_Check 1174 } 1175 } 1176 } 1177 } 1178 Function {make_sympathetic_window()} {} { 1179 Fl_Window effsympatheticwindow { 1180 xywh {974 596 380 100} type Double box UP_BOX color 51 labelfont 1 labelsize 19 1181 code3 {set_module_parameters(o);} 1182 class Fl_Group visible 1183 } { 1184 Fl_Choice sympp { 1185 label Preset 1186 xywh {11 15 95 15} box UP_BOX down_box BORDER_BOX color 47 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 1187 code0 {o->init("preset");} 1188 class Fl_Osc_Choice 1189 } { 1190 MenuItem {} { 1191 label {Generic} 1192 xywh {20 20 100 20} labelfont 1 labelsize 10 1193 } 1194 MenuItem {} { 1195 label {Piano} 1196 xywh {30 30 100 20} labelfont 1 labelsize 10 1197 } 1198 MenuItem {} { 1199 label {Grand} 1200 xywh {40 40 100 20} labelfont 1 labelsize 10 1201 } 1202 MenuItem {} { 1203 label {Guitar} 1204 xywh {50 50 100 20} labelfont 1 labelsize 10 1205 } 1206 MenuItem {} { 1207 label {12-String} 1208 xywh {50 50 100 20} labelfont 1 labelsize 10 1209 } 1210 } 1211 Fl_Dial symp0 { 1212 label Vol 1213 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1214 code0 {o->init("parameter0");} 1215 class Fl_Osc_Dial 1216 } 1217 Fl_Dial symp2 { 1218 label Q 1219 tooltip {Resonance} xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1220 code0 {o->init("parameter2");} 1221 class Fl_Osc_Dial 1222 } 1223 Fl_Dial symp3 { 1224 label Drive 1225 tooltip {Drive} xywh {80 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1226 code0 {o->init("parameter3");} 1227 class Fl_Osc_Dial 1228 } 1229 Fl_Dial symp4 { 1230 label Lev 1231 tooltip {Level} xywh {115 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1232 code0 {o->init("parameter4");} 1233 class Fl_Osc_Dial 1234 } 1235 Fl_Dial symp5 { 1236 label Spr 1237 tooltip {Spread} xywh {150 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1238 code0 {o->init("parameter5");} 1239 class Fl_Osc_Dial 1240 } 1241 Fl_Dial symp9 { 1242 label Uni 1243 tooltip {number of unisono strings} xywh {185 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 3 1244 code0 {o->init("parameter9");} 1245 class Fl_Osc_Dial 1246 } 1247 Fl_Dial symp10 { 1248 label Str 1249 tooltip {number of strings} xywh {220 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 76 1250 code0 {o->init("parameter10");} 1251 class Fl_Osc_Dial 1252 } 1253 Fl_Dial symp11 { 1254 label B.note 1255 tooltip {lowest midi note } xywh {255 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1256 code0 {o->init("parameter11");} 1257 class Fl_Osc_Dial 1258 } 1259 1260 } 1261 } 1262 Function {make_filter_window()} {} { 1263 Fl_Window filterwindow { 1264 label {Filter Parameters for DynFilter Eff.} 1265 xywh {810 543 290 110} type Double 1266 code0 {set_module_parameters(o);} visible 1267 } { 1268 Fl_Group {} { 1269 label {DynFilter effect - Filter} 1270 xywh {5 5 275 75} box FLAT_BOX color 50 align 144 1271 code0 {o->init("",osc, loc(), "filterpars/");} 1272 code1 {o->use_for_dynamic_filter();} 1273 class FilterUI 1274 } {} 1275 Fl_Button {} { 1276 label Close 1277 callback {filterwindow->hide();} 1278 xywh {105 85 70 20} box THIN_UP_BOX 1279 } 1280 } 1281 } 1282 Function {init(bool ins_)} {open 1283 } { 1284 code {efftype = 0; 1285 insertion = ins_; 1286 1287 make_null_window(); 1288 make_reverb_window(); 1289 make_echo_window(); 1290 make_chorus_window(); 1291 make_phaser_window(); 1292 make_alienwah_window(); 1293 make_distortion_window(); 1294 make_eq_window(); 1295 make_dynamicfilter_window(); 1296 make_sympathetic_window(); 1297 1298 int px=this->parent()->x(); 1299 int py=this->parent()->y(); 1300 1301 effnullwindow->position(px,py); 1302 effreverbwindow->position(px,py); 1303 effechowindow->position(px,py); 1304 effchoruswindow->position(px,py); 1305 effphaserwindow->position(px,py); 1306 effalienwahwindow->position(px,py); 1307 effdistortionwindow->position(px,py); 1308 effeqwindow->position(px,py); 1309 effdynamicfilterwindow->position(px,py); 1310 effsympatheticwindow->position(px,py); 1311 1312 refresh();} {} 1313 } 1314 Function {refresh()} {open 1315 } { 1316 code {this->hide(); 1317 for(int i=0; i<32; ++i) 1318 osc->requestValue(loc()+"parameter"+to_s(i)); 1319 1320 effnullwindow->hide(); 1321 effreverbwindow->hide(); 1322 effechowindow->hide(); 1323 effchoruswindow->hide(); 1324 effphaserwindow->hide(); 1325 effalienwahwindow->hide(); 1326 effdistortionwindow->hide(); 1327 effeqwindow->hide(); 1328 effdynamicfilterwindow->hide(); 1329 effsympatheticwindow->hide(); 1330 1331 eqband=0; 1332 1333 if (filterwindow){ 1334 filterwindow->hide(); 1335 delete(filterwindow); 1336 filterwindow=NULL; 1337 }; 1338 1339 if(insertion) { 1340 revp0->label("D/W"); 1341 echop0->label("D/W"); 1342 chorusp0->label("D/W"); 1343 phaserp0->label("D/W"); 1344 awp0->label("D/W"); 1345 distp0->label("D/W"); 1346 dfp0->label("D/W"); 1347 } 1348 1349 switch(efftype){ 1350 case 1: 1351 effreverbwindow->show(); 1352 break; 1353 case 2: 1354 effechowindow->show(); 1355 break; 1356 case 3: 1357 effchoruswindow->show(); 1358 break; 1359 case 4: 1360 effphaserwindow->show(); 1361 break; 1362 case 5: 1363 effalienwahwindow->show(); 1364 break; 1365 case 6: 1366 effdistortionwindow->show(); 1367 break; 1368 case 7:eqband=0; 1369 bandcounter->value(eqband); 1370 bandcounter->do_callback(); 1371 eqgraph->redraw(); 1372 effeqwindow->show(); 1373 break; 1374 case 8:make_filter_window(); 1375 effdynamicfilterwindow->show(); 1376 break; 1377 case 9: 1378 effsympatheticwindow->show(); 1379 break; 1380 default:effnullwindow->show(); 1381 break; 1382 }; 1383 1384 this->show();} {selected 1385 } 1386 } 1387 decl {int eqband;} {private local 1388 } 1389 decl {bool insertion;} {public local 1390 } 1391 decl {int efftype;} {public local 1392 } 1393 } 1394 1395 class SimpleEffUI {open : {public Fl_Osc_Group,public PresetsUI_} 1396 } { 1397 Function {SimpleEffUI(int x,int y, int w, int h, const char *label=0):Fl_Osc_Group(x,y,w,h,label),efftype(0)} {} { 1398 code {} {} 1399 } 1400 Function {~SimpleEffUI()} {} { 1401 code {effnullwindow->hide();//delete (effnullwindow); 1402 effreverbwindow->hide();//delete (effreverbwindow); 1403 effechowindow->hide();//delete (effechowindow); 1404 effchoruswindow->hide();//delete (effchoruswindow); 1405 effphaserwindow->hide();//delete (effphaserwindow); 1406 effalienwahwindow->hide();//delete (effalienwahwindow); 1407 effdistortionwindow->hide();//delete (effdistortionwindow); 1408 effeqwindow->hide();//delete (effeqwindow); 1409 effdynamicfilterwindow->hide();//delete (effdynamicfilterwindow); 1410 effsympatheticwindow->hide();//delete (effsympatheticwindow);} {} 1411 } 1412 Function {make_null_window()} {} { 1413 Fl_Window effnullwindow { 1414 xywh {1047 824 230 95} type Double box UP_BOX color 221 labelfont 1 labelsize 19 1415 code0 {set_module_parameters(o);} 1416 class Fl_Group visible 1417 } {} 1418 } 1419 Function {make_reverb_window()} {} { 1420 Fl_Window effreverbwindow { 1421 xywh {1047 532 230 100} type Double box UP_BOX color 51 labelfont 1 labelsize 19 1422 code3 {set_module_parameters(o);} 1423 class Fl_Group visible 1424 } { 1425 Fl_Choice revp { 1426 label Preset 1427 xywh {10 15 90 15} down_box BORDER_BOX color 47 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 1428 code0 {o->init("preset");} 1429 class Fl_Osc_Choice 1430 } { 1431 MenuItem {} { 1432 label {Cathedral 1} 1433 xywh {10 10 100 20} labelfont 1 labelsize 10 1434 } 1435 MenuItem {} { 1436 label {Cathedral 2} 1437 xywh {20 20 100 20} labelfont 1 labelsize 10 1438 } 1439 MenuItem {} { 1440 label {Cathedral 3} 1441 xywh {30 30 100 20} labelfont 1 labelsize 10 1442 } 1443 MenuItem {} { 1444 label {Hall 1} 1445 xywh {40 40 100 20} labelfont 1 labelsize 10 1446 } 1447 MenuItem {} { 1448 label {Hall 2} 1449 xywh {50 50 100 20} labelfont 1 labelsize 10 1450 } 1451 MenuItem {} { 1452 label {Room 1} 1453 xywh {60 60 100 20} labelfont 1 labelsize 10 1454 } 1455 MenuItem {} { 1456 label {Room 2} 1457 xywh {70 70 100 20} labelfont 1 labelsize 10 1458 } 1459 MenuItem {} { 1460 label Basement 1461 xywh {80 80 100 20} labelfont 1 labelsize 10 1462 } 1463 MenuItem {} { 1464 label Tunnel 1465 xywh {90 90 100 20} labelfont 1 labelsize 10 1466 } 1467 MenuItem {} { 1468 label {Echoed 1} 1469 xywh {100 100 100 20} labelfont 1 labelsize 10 1470 } 1471 MenuItem {} { 1472 label {Echoed 2} 1473 xywh {110 110 100 20} labelfont 1 labelsize 10 1474 } 1475 MenuItem {} { 1476 label {Very Long 1} 1477 xywh {120 120 100 20} labelfont 1 labelsize 10 1478 } 1479 MenuItem {} { 1480 label {Very Long 2} 1481 xywh {130 130 100 20} labelfont 1 labelsize 10 1482 } 1483 } 1484 Fl_Dial revp0 { 1485 label Vol 1486 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1487 code0 {o->init("parameter0");} 1488 class Fl_Osc_Dial 1489 } 1490 Fl_Dial revp2 { 1491 label Time 1492 tooltip {Duration of Reverb} xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1493 code0 {o->init("parameter2");} 1494 class Fl_Osc_Dial 1495 } 1496 Fl_Dial revp3 { 1497 label {I.del} 1498 tooltip {Initial Delay} xywh {85 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 1499 code0 {o->init("parameter3");} 1500 class Fl_Osc_Dial 1501 } 1502 Fl_Dial revp9 { 1503 label Damp 1504 tooltip Dampening xywh {120 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 minimum 64 maximum 127 step 1 1505 code0 {o->init("parameter9");} 1506 class Fl_Osc_Dial 1507 } 1508 } 1509 } 1510 Function {make_echo_window()} {} { 1511 Fl_Window effechowindow { 1512 xywh {437 881 230 100} type Double box UP_BOX color 51 labelfont 1 labelsize 19 1513 code3 {set_module_parameters(o);} 1514 class Fl_Group visible 1515 } { 1516 Fl_Choice echop { 1517 label Preset 1518 xywh {11 15 95 15} box UP_BOX down_box BORDER_BOX color 47 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 1519 code0 {o->init("preset");} 1520 class Fl_Osc_Choice 1521 } { 1522 MenuItem {} { 1523 label {Echo 1} 1524 xywh {20 20 100 20} labelfont 1 labelsize 10 1525 } 1526 MenuItem {} { 1527 label {Echo 2} 1528 xywh {30 30 100 20} labelfont 1 labelsize 10 1529 } 1530 MenuItem {} { 1531 label {Echo 3} 1532 xywh {40 40 100 20} labelfont 1 labelsize 10 1533 } 1534 MenuItem {} { 1535 label {Simple Echo} 1536 xywh {50 50 100 20} labelfont 1 labelsize 10 1537 } 1538 MenuItem {} { 1539 label Canyon 1540 xywh {60 60 100 20} labelfont 1 labelsize 10 1541 } 1542 MenuItem {} { 1543 label {Panning Echo 1} 1544 xywh {70 70 100 20} labelfont 1 labelsize 10 1545 } 1546 MenuItem {} { 1547 label {Panning Echo 2} 1548 xywh {80 80 100 20} labelfont 1 labelsize 10 1549 } 1550 MenuItem {} { 1551 label {Panning Echo 3} 1552 xywh {90 90 100 20} labelfont 1 labelsize 10 1553 } 1554 MenuItem {} { 1555 label {Feedback Echo} 1556 xywh {100 100 100 20} labelfont 1 labelsize 10 1557 } 1558 } 1559 Fl_Dial echop0 { 1560 label Vol 1561 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1562 code0 {o->init("parameter0");} 1563 class Fl_Osc_Dial 1564 } 1565 Fl_Dial echop2 { 1566 label Delay 1567 xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 1568 code0 {o->init("parameter2");} 1569 class Fl_Osc_Dial 1570 } 1571 Fl_Dial echop5 { 1572 label {Fb.} 1573 tooltip Feedback xywh {80 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1574 code0 {o->init("parameter5");} 1575 class Fl_Osc_Dial 1576 } 1577 } 1578 } 1579 Function {make_chorus_window()} {} { 1580 Fl_Window effchoruswindow { 1581 xywh {728 657 230 100} type Double box UP_BOX color 51 labelfont 1 labelsize 19 1582 code3 {set_module_parameters(o);} 1583 class Fl_Group visible 1584 } { 1585 Fl_Choice chorusp { 1586 label Preset 1587 xywh {10 15 90 15} box UP_BOX down_box BORDER_BOX color 47 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 1588 code0 {o->init("preset");} 1589 class Fl_Osc_Choice 1590 } { 1591 MenuItem {} { 1592 label {Chorus 1} 1593 xywh {20 20 100 20} labelfont 1 labelsize 10 1594 } 1595 MenuItem {} { 1596 label {Chorus 2} 1597 xywh {30 30 100 20} labelfont 1 labelsize 10 1598 } 1599 MenuItem {} { 1600 label {Chorus 3} 1601 xywh {40 40 100 20} labelfont 1 labelsize 10 1602 } 1603 MenuItem {} { 1604 label {Celeste 1} 1605 xywh {50 50 100 20} labelfont 1 labelsize 10 1606 } 1607 MenuItem {} { 1608 label {Celeste 2} 1609 xywh {60 60 100 20} labelfont 1 labelsize 10 1610 } 1611 MenuItem {} { 1612 label {Flange 1} 1613 xywh {70 70 100 20} labelfont 1 labelsize 10 1614 } 1615 MenuItem {} { 1616 label {Flange 2} 1617 xywh {80 80 100 20} labelfont 1 labelsize 10 1618 } 1619 MenuItem {} { 1620 label {Flange 3} 1621 xywh {90 90 100 20} labelfont 1 labelsize 10 1622 } 1623 MenuItem {} { 1624 label {Flange 4} 1625 xywh {100 100 100 20} labelfont 1 labelsize 10 1626 } 1627 MenuItem {} { 1628 label {Flange 5} 1629 xywh {110 110 100 20} labelfont 1 labelsize 10 1630 } 1631 } 1632 Fl_Dial chorusp0 { 1633 label Vol 1634 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1635 code0 {o->init("parameter0");} 1636 class Fl_Osc_Dial 1637 } 1638 Fl_Dial chorusp2 { 1639 label Freq 1640 tooltip {LFO Frequency} xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1641 code0 {o->init("parameter2");} 1642 class Fl_Osc_Dial 1643 } 1644 Fl_Dial chorusp6 { 1645 label Dpth 1646 tooltip Depth xywh {80 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1647 code0 {o->init("parameter6");} 1648 class Fl_Osc_Dial 1649 } 1650 Fl_Dial chorusp7 { 1651 label Delay 1652 xywh {115 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1653 code0 {o->init("parameter7");} 1654 class Fl_Osc_Dial 1655 } 1656 Fl_Dial chorusp8 { 1657 label Fb 1658 tooltip Feedback xywh {150 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1659 code0 {o->init("parameter8");} 1660 class Fl_Osc_Dial 1661 } 1662 Fl_Check_Button {} { 1663 label Flange 1664 xywh {120 10 55 20} box THIN_UP_BOX down_box DOWN_BOX color 230 labelfont 1 labelsize 10 hide deactivate 1665 code0 {o->init("parameter10");} 1666 class Fl_Osc_Check 1667 } 1668 } 1669 } 1670 Function {make_phaser_window()} {} { 1671 Fl_Window effphaserwindow { 1672 xywh {1047 881 230 100} type Double box UP_BOX color 51 labelfont 1 labelsize 19 1673 code3 {set_module_parameters(o);} 1674 class Fl_Group visible 1675 } { 1676 Fl_Choice phaserp { 1677 label Preset 1678 xywh {10 15 90 15} box UP_BOX down_box BORDER_BOX color 47 selection_color 0 labelfont 1 labelsize 10 labelcolor 55 align 5 textfont 1 textsize 10 textcolor 7 1679 code0 {o->init("preset");} 1680 class Fl_Osc_Choice 1681 } { 1682 MenuItem {} { 1683 label {Phaser 1} 1684 xywh {30 30 100 20} labelfont 1 labelsize 10 1685 } 1686 MenuItem {} { 1687 label {Phaser 2} 1688 xywh {40 40 100 20} labelfont 1 labelsize 10 1689 } 1690 MenuItem {} { 1691 label {Phaser 3} 1692 xywh {50 50 100 20} labelfont 1 labelsize 10 1693 } 1694 MenuItem {} { 1695 label {Phaser 4} 1696 xywh {60 60 100 20} labelfont 1 labelsize 10 1697 } 1698 MenuItem {} { 1699 label {Phaser 5} 1700 xywh {70 70 100 20} labelfont 1 labelsize 10 1701 } 1702 MenuItem {} { 1703 label {Phaser 6} 1704 xywh {80 80 100 20} labelfont 1 labelsize 10 1705 } 1706 } 1707 Fl_Dial phaserp0 { 1708 label Vol 1709 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1710 code0 {o->init("parameter0");} 1711 class Fl_Osc_Dial 1712 } 1713 Fl_Dial phaserp2 { 1714 label Freq 1715 tooltip {LFO frequency} xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1716 code0 {o->init("parameter2");} 1717 class Fl_Osc_Dial 1718 } 1719 Fl_Dial phaserp5 { 1720 label {St.df} 1721 tooltip {Left/Right Channel Phase Shift} xywh {80 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1722 code0 {o->init("parameter5");} 1723 class Fl_Osc_Dial 1724 } 1725 Fl_Dial phaserp6 { 1726 label Dpth 1727 tooltip Depth xywh {115 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1728 code0 {o->init("parameter6");} 1729 class Fl_Osc_Dial 1730 } 1731 Fl_Dial phaserp7 { 1732 label Fb 1733 tooltip Feedback xywh {150 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1734 code0 {o->init("parameter7");} 1735 class Fl_Osc_Dial 1736 } 1737 Fl_Counter phaserp8 { 1738 label Stages 1739 xywh {185 55 35 15} type Simple labelfont 1 labelsize 11 minimum 0 maximum 127 step 1 1740 code0 {o->range(1,MAX_PHASER_STAGES);} 1741 code1 {o->init("parameter8");} 1742 class Fl_Osc_Counter 1743 } 1744 } 1745 } 1746 Function {make_alienwah_window()} {} { 1747 Fl_Window effalienwahwindow { 1748 xywh {412 549 230 100} type Double box UP_BOX color 51 labelfont 1 labelsize 19 1749 code3 {set_module_parameters(o);} 1750 class Fl_Group visible 1751 } { 1752 Fl_Choice awp { 1753 label Preset 1754 xywh {10 15 90 15} box UP_BOX down_box BORDER_BOX color 47 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 1755 code0 {o->init("preset");} 1756 class Fl_Osc_Choice 1757 } { 1758 MenuItem {} { 1759 label {Alienwah 1} 1760 xywh {40 40 100 20} labelfont 1 labelsize 10 1761 } 1762 MenuItem {} { 1763 label {Alienwah 2} 1764 xywh {50 50 100 20} labelfont 1 labelsize 10 1765 } 1766 MenuItem {} { 1767 label {Alienwah 3} 1768 xywh {60 60 100 20} labelfont 1 labelsize 10 1769 } 1770 MenuItem {} { 1771 label {Alienwah 4} 1772 xywh {70 70 100 20} labelfont 1 labelsize 10 1773 } 1774 } 1775 Fl_Dial awp0 { 1776 label Vol 1777 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1778 code0 {o->init("parameter0");} 1779 class Fl_Osc_Dial 1780 } 1781 Fl_Dial awp2 { 1782 label Freq 1783 tooltip {LFO frequency} xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1784 code0 {o->init("parameter2");} 1785 class Fl_Osc_Dial 1786 } 1787 Fl_Dial awp6 { 1788 label Dpth 1789 tooltip Depth xywh {85 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1790 code0 {o->init("parameter6");} 1791 class Fl_Osc_Dial 1792 } 1793 Fl_Counter awp8 { 1794 label Delay 1795 xywh {125 55 35 15} type Simple labelfont 1 labelsize 11 minimum 0 maximum 127 step 1 1796 code0 {o->range(1,MAX_ALIENWAH_DELAY);} 1797 code1 {o->init("parameter8");} 1798 class Fl_Osc_Counter 1799 } 1800 } 1801 } 1802 Function {make_distortion_window()} {} { 1803 Fl_Window effdistortionwindow { 1804 xywh {88 881 230 100} type Double box UP_BOX color 51 labelfont 1 labelsize 19 1805 code3 {set_module_parameters(o);} 1806 class Fl_Group visible 1807 } { 1808 Fl_Choice distp { 1809 label Preset 1810 xywh {11 15 95 15} box UP_BOX down_box BORDER_BOX color 47 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 1811 code0 {o->init("preset");} 1812 class Fl_Osc_Choice 1813 } { 1814 MenuItem {} { 1815 label {Overdrive 1} 1816 xywh {20 20 100 20} labelfont 1 labelsize 10 1817 } 1818 MenuItem {} { 1819 label {Overdrive 2} 1820 xywh {30 30 100 20} labelfont 1 labelsize 10 1821 } 1822 MenuItem {} { 1823 label {A. Exciter 1} 1824 xywh {40 40 100 20} labelfont 1 labelsize 10 1825 } 1826 MenuItem {} { 1827 label {A. Exciter 2} 1828 xywh {50 50 100 20} labelfont 1 labelsize 10 1829 } 1830 MenuItem {} { 1831 label {Guitar Amp} 1832 xywh {50 50 100 20} labelfont 1 labelsize 10 1833 } 1834 MenuItem {} { 1835 label Quantisize 1836 xywh {60 60 100 20} labelfont 1 labelsize 10 1837 } 1838 } 1839 Fl_Dial distp0 { 1840 label Vol 1841 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1842 code0 {o->init("parameter0");} 1843 class Fl_Osc_Dial 1844 } 1845 Fl_Dial distp3 { 1846 label Drive 1847 tooltip {Input amplification} xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 when 4 maximum 127 1848 code0 {o->init("parameter3");} 1849 class Fl_Osc_Dial 1850 } 1851 Fl_Dial distp4 { 1852 label Level 1853 tooltip {Output Amplification} xywh {80 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1854 code0 {o->init("parameter4");} 1855 class Fl_Osc_Dial 1856 } 1857 Fl_Dial distp12 { 1858 label Offs 1859 tooltip {DC Offset} xywh {190 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1860 code0 {o->init("parameter12");} 1861 class Fl_Osc_Dial 1862 } 1863 Fl_Dial distp11 { 1864 label Shape 1865 tooltip {Shape Parameter} xywh {225 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1866 code0 {o->init("parameter11");} 1867 class Fl_Osc_Dial 1868 } 1869 Fl_Dial distp7 { 1870 label LPF 1871 tooltip {Low Pass Filter} xywh {190 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 1872 code0 {o->init("parameter7");} 1873 class Fl_Osc_Dial 1874 } 1875 Fl_Choice distp5 { 1876 label Type 1877 xywh {120 15 60 20} box UP_BOX down_box BORDER_BOX labelfont 1 labelsize 11 align 5 textsize 10 1878 code0 {o->init("parameter5");} 1879 class Fl_Osc_Choice 1880 } { 1881 MenuItem {} { 1882 label Atan 1883 xywh {55 55 100 20} labelfont 1 labelsize 10 1884 } 1885 MenuItem {} { 1886 label Asym1 1887 xywh {65 65 100 20} labelfont 1 labelsize 10 1888 } 1889 MenuItem {} { 1890 label Pow 1891 xywh {75 75 100 20} labelfont 1 labelsize 10 1892 } 1893 MenuItem {} { 1894 label Sine 1895 xywh {85 85 100 20} labelfont 1 labelsize 10 1896 } 1897 MenuItem {} { 1898 label Qnts 1899 xywh {95 95 100 20} labelfont 1 labelsize 10 1900 } 1901 MenuItem {} { 1902 label Zigzg 1903 xywh {105 105 100 20} labelfont 1 labelsize 10 1904 } 1905 MenuItem {} { 1906 label Lmt 1907 xywh {115 115 100 20} labelfont 1 labelsize 10 1908 } 1909 MenuItem {} { 1910 label LmtU 1911 xywh {125 125 100 20} labelfont 1 labelsize 10 1912 } 1913 MenuItem {} { 1914 label LmtL 1915 xywh {135 135 100 20} labelfont 1 labelsize 10 1916 } 1917 MenuItem {} { 1918 label ILmt 1919 xywh {147 147 100 20} labelfont 1 labelsize 10 1920 } 1921 MenuItem {} { 1922 label Clip 1923 xywh {157 157 100 20} labelfont 1 labelsize 10 1924 } 1925 MenuItem {} { 1926 label Asym2 1927 xywh {75 75 100 20} labelfont 1 labelsize 10 1928 } 1929 MenuItem {} { 1930 label Pow2 1931 xywh {85 85 100 20} labelfont 1 labelsize 10 1932 } 1933 MenuItem {} { 1934 label Sgm 1935 xywh {95 95 100 20} labelfont 1 labelsize 10 1936 } 1937 MenuItem {} { 1938 label Tanh 1939 xywh {105 105 100 20} labelfont 1 labelsize 10 1940 } 1941 MenuItem {} { 1942 label Cubic 1943 xywh {115 115 100 20} labelfont 1 labelsize 10 1944 } 1945 MenuItem {} { 1946 label Square 1947 xywh {205 125 100 20} labelfont 1 labelsize 10 1948 } 1949 } 1950 } 1951 } 1952 Function {make_eq_window()} {} { 1953 Fl_Window effeqwindow { 1954 xywh {1047 881 230 100} type Double box UP_BOX color 51 labelfont 1 labelsize 19 1955 code3 {set_module_parameters(o);} 1956 class Fl_Group visible 1957 } { 1958 Fl_Counter bandcounter { 1959 label Band 1960 callback {eqband=(int) o->value(); 1961 int npb=eqband*5+10; 1962 typechoice->oscMove("parameter"+to_s(npb)); 1963 freqdial->oscMove("parameter"+to_s(npb+1)); 1964 gaindial->oscMove("parameter"+to_s(npb+2)); 1965 qdial->oscMove("parameter"+to_s(npb+3)); 1966 stagescounter->oscMove("parameter"+to_s(npb+4));} 1967 tooltip {Band no.} xywh {85 15 45 15} type Simple labelfont 1 labelsize 11 align 1 minimum 0 maximum 1 step 1 textfont 1 textsize 11 1968 code0 {o->bounds(0,MAX_EQ_BANDS-1);} 1969 } 1970 Fl_Group bandgroup { 1971 xywh {5 5 75 85} box UP_FRAME 1972 } { 1973 Fl_Dial freqdial { 1974 label Freq 1975 callback {eqgraph->redraw();} 1976 xywh {10 10 25 25} box ROUND_UP_BOX labelfont 1 labelsize 10 when 3 maximum 127 1977 code0 {o->init("parameter11");} 1978 class Fl_Osc_Dial 1979 } 1980 Fl_Dial gaindial { 1981 label Gain 1982 callback {eqgraph->redraw();} 1983 xywh {45 10 25 25} box ROUND_UP_BOX labelfont 1 labelsize 10 when 3 maximum 127 step 1 1984 code0 {o->init("parameter12");} 1985 class Fl_Osc_Dial 1986 } 1987 Fl_Dial qdial { 1988 label Q 1989 callback {eqgraph->redraw();} 1990 tooltip {Bandwidth/Resonance} xywh {10 50 25 25} box ROUND_UP_BOX labelfont 1 labelsize 10 when 3 maximum 127 1991 code0 {o->init("parameter13");} 1992 class Fl_Osc_Dial 1993 } 1994 Fl_Counter stagescounter { 1995 label Stages 1996 callback {eqgraph->redraw();} 1997 tooltip {Additional filter stages} xywh {40 55 30 15} type Simple labelfont 1 labelsize 10 minimum 1 maximum 127 step 1 textfont 1 textsize 11 1998 code0 {o->bounds(0,MAX_FILTER_STAGES-1);} 1999 code1 {o->init("parameter14");} 2000 class Fl_Osc_Counter 2001 } 2002 } 2003 Fl_Choice typechoice { 2004 label Type 2005 callback {int type = o->value(); 2006 if (type>6) gaindial->activate(); 2007 else gaindial->deactivate(); 2008 2009 if (type==0) bandgroup->deactivate(); 2010 else bandgroup->activate(); 2011 eqgraph->redraw();} 2012 tooltip Type xywh {135 15 40 15} down_box BORDER_BOX labelfont 1 labelsize 10 align 1 when 6 textsize 10 2013 code0 {o->init("parameter10");} 2014 class Fl_Osc_Choice 2015 } { 2016 MenuItem {} { 2017 label OFF 2018 xywh {10 10 100 20} labelfont 1 labelsize 10 2019 } 2020 MenuItem {} { 2021 label Lp1 2022 xywh {20 20 100 20} labelfont 1 labelsize 10 2023 } 2024 MenuItem {} { 2025 label Hp1 2026 xywh {30 30 100 20} labelfont 1 labelsize 10 2027 } 2028 MenuItem {} { 2029 label Lp2 2030 xywh {40 40 100 20} labelfont 1 labelsize 10 2031 } 2032 MenuItem {} { 2033 label Hp2 2034 xywh {50 50 100 20} labelfont 1 labelsize 10 2035 } 2036 MenuItem {} { 2037 label Bp2 2038 xywh {60 60 100 20} labelfont 1 labelsize 10 2039 } 2040 MenuItem {} { 2041 label N2 2042 xywh {70 70 100 20} labelfont 1 labelsize 10 2043 } 2044 MenuItem {} { 2045 label Pk 2046 xywh {90 90 100 20} labelfont 1 labelsize 10 2047 } 2048 MenuItem {} { 2049 label LSh 2050 xywh {80 80 100 20} labelfont 1 labelsize 10 2051 } 2052 MenuItem {} { 2053 label HSh 2054 xywh {90 90 100 20} labelfont 1 labelsize 10 2055 } 2056 } 2057 Fl_Box eqgraph { 2058 xywh {85 35 140 55} box BORDER_BOX color 50 2059 class Fl_EQGraph 2060 } 2061 } 2062 } 2063 Function {make_dynamicfilter_window()} {} { 2064 Fl_Window effdynamicfilterwindow { 2065 xywh {974 596 230 100} type Double box UP_BOX color 51 labelfont 1 labelsize 19 2066 code3 {set_module_parameters(o);} 2067 class Fl_Group visible 2068 } { 2069 Fl_Choice dfp { 2070 label Preset 2071 xywh {10 15 90 15} box UP_BOX down_box BORDER_BOX color 47 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 2072 code0 {o->init("preset");} 2073 class Fl_Osc_Choice 2074 } { 2075 MenuItem {} { 2076 label WahWah 2077 xywh {30 30 100 20} labelfont 1 labelsize 10 2078 } 2079 MenuItem {} { 2080 label AutoWah 2081 xywh {40 40 100 20} labelfont 1 labelsize 10 2082 } 2083 MenuItem {} { 2084 label Sweep 2085 xywh {50 50 100 20} labelfont 1 labelsize 10 2086 } 2087 MenuItem {} { 2088 label VocalMorph1 2089 xywh {50 50 100 20} labelfont 1 labelsize 10 2090 } 2091 MenuItem {} { 2092 label VocalMorph2 2093 xywh {60 60 100 20} labelfont 1 labelsize 10 2094 } 2095 } 2096 Fl_Dial dfp0 { 2097 label Vol 2098 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 2099 code0 {o->init("parameter0");} 2100 class Fl_Osc_Dial 2101 } 2102 Fl_Dial dfp2 { 2103 label Freq 2104 tooltip {LFO frequency} xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 2105 code0 {o->init("parameter2");} 2106 class Fl_Osc_Dial 2107 } 2108 Fl_Dial dfp6 { 2109 label LfoD 2110 tooltip {LFO depth} xywh {80 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 2111 code0 {o->init("parameter6");} 2112 class Fl_Osc_Dial 2113 } 2114 Fl_Group {} { 2115 xywh {115 40 65 45} box UP_FRAME 2116 } { 2117 Fl_Dial dfp7 { 2118 label {A.S.} 2119 tooltip {how filter varies with amplitude} xywh {120 45 25 25} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 2120 code0 {o->init("parameter7");} 2121 class Fl_Osc_Dial 2122 } 2123 Fl_Dial dfp9 { 2124 label {A.M} 2125 tooltip {how quickly the filter varies with amplitude} xywh {150 45 25 25} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 2126 code0 {o->init("parameter9");} 2127 class Fl_Osc_Dial 2128 } 2129 } 2130 } 2131 } 2132 Function {make_sympathetic_window()} {} { 2133 Fl_Window effsympatheticwindow { 2134 xywh {974 596 380 100} type Double box UP_BOX color 51 labelfont 1 labelsize 19 2135 code3 {set_module_parameters(o);} 2136 class Fl_Group visible 2137 } { 2138 Fl_Choice sympp { 2139 label Preset 2140 xywh {11 15 95 15} box UP_BOX down_box BORDER_BOX color 47 selection_color 7 labelfont 1 labelsize 10 align 5 textfont 1 textsize 10 2141 code0 {o->init("preset");} 2142 class Fl_Osc_Choice 2143 } { 2144 MenuItem {} { 2145 label {Generic} 2146 xywh {20 20 100 20} labelfont 1 labelsize 10 2147 } 2148 MenuItem {} { 2149 label {Piano} 2150 xywh {30 30 100 20} labelfont 1 labelsize 10 2151 } 2152 MenuItem {} { 2153 label {Grand} 2154 xywh {40 40 100 20} labelfont 1 labelsize 10 2155 } 2156 MenuItem {} { 2157 label {Guitar} 2158 xywh {50 50 100 20} labelfont 1 labelsize 10 2159 } 2160 MenuItem {} { 2161 label {12-String} 2162 xywh {50 50 100 20} labelfont 1 labelsize 10 2163 } 2164 } 2165 Fl_Dial symp0 { 2166 label Vol 2167 tooltip {Effect Volume} xywh {10 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 2168 code0 {o->init("parameter0");} 2169 class Fl_Osc_Dial 2170 } 2171 Fl_Dial symp2 { 2172 label Q 2173 tooltip {Resonance} xywh {45 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 2174 code0 {o->init("parameter2");} 2175 class Fl_Osc_Dial 2176 } 2177 Fl_Dial symp3 { 2178 label Drive 2179 tooltip {Drive} xywh {80 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 2180 code0 {o->init("parameter3");} 2181 class Fl_Osc_Dial 2182 } 2183 Fl_Dial symp4 { 2184 label Level 2185 tooltip {Level} xywh {115 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 2186 code0 {o->init("parameter4");} 2187 class Fl_Osc_Dial 2188 } 2189 Fl_Dial symp5 { 2190 label Spread 2191 tooltip {Spread} xywh {150 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 2192 code0 {o->init("parameter5");} 2193 class Fl_Osc_Dial 2194 } 2195 Fl_Dial symp9 { 2196 label Drive 2197 tooltip {Drive} xywh {185 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 2198 code0 {o->init("parameter9");} 2199 class Fl_Osc_Dial 2200 } 2201 Fl_Dial symp10 { 2202 label Strings 2203 tooltip {number of strings} xywh {220 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 76 2204 code0 {o->init("parameter10");} 2205 class Fl_Osc_Dial 2206 } 2207 Fl_Dial symp11 { 2208 label Basenote 2209 tooltip {lowest midi note } xywh {255 40 30 30} box ROUND_UP_BOX labelfont 1 labelsize 11 maximum 127 2210 code0 {o->init("parameter11");} 2211 class Fl_Osc_Dial 2212 } 2213 2214 } 2215 } 2216 Function {init(bool ins_)} {open 2217 } { 2218 code {efftype = 0; 2219 insertion = ins_; 2220 make_null_window(); 2221 make_reverb_window(); 2222 make_echo_window(); 2223 make_chorus_window(); 2224 make_phaser_window(); 2225 make_alienwah_window(); 2226 make_distortion_window(); 2227 make_eq_window(); 2228 make_dynamicfilter_window(); 2229 make_sympathetic_window(); 2230 2231 int px=this->parent()->x(); 2232 int py=this->parent()->y(); 2233 2234 effnullwindow->position(px,py); 2235 effreverbwindow->position(px,py); 2236 effechowindow->position(px,py); 2237 effchoruswindow->position(px,py); 2238 effphaserwindow->position(px,py); 2239 effalienwahwindow->position(px,py); 2240 effdistortionwindow->position(px,py); 2241 effeqwindow->position(px,py); 2242 effdynamicfilterwindow->position(px,py); 2243 effsympatheticwindow->position(px,py);} {} 2244 } 2245 Function {refresh()} {open 2246 } { 2247 code {this->hide(); 2248 2249 for(int i=0; i<32; ++i) 2250 osc->requestValue(loc()+"parameter"+to_s(i)); 2251 2252 effnullwindow->hide(); 2253 effreverbwindow->hide(); 2254 effechowindow->hide(); 2255 effchoruswindow->hide(); 2256 effphaserwindow->hide(); 2257 effalienwahwindow->hide(); 2258 effdistortionwindow->hide(); 2259 effeqwindow->hide(); 2260 effdynamicfilterwindow->hide(); 2261 effsympatheticwindow->hide(); 2262 2263 eqband=0; 2264 2265 if(insertion) { 2266 revp0->label("D/W"); 2267 echop0->label("D/W"); 2268 chorusp0->label("D/W"); 2269 phaserp0->label("D/W"); 2270 awp0->label("D/W"); 2271 distp0->label("D/W"); 2272 dfp0->label("D/W"); 2273 } 2274 2275 switch(efftype){ 2276 case 1: 2277 effreverbwindow->show(); 2278 break; 2279 case 2: 2280 effechowindow->show(); 2281 break; 2282 case 3: 2283 effchoruswindow->show(); 2284 break; 2285 case 4: 2286 effphaserwindow->show(); 2287 break; 2288 case 5: 2289 effalienwahwindow->show(); 2290 break; 2291 case 6: 2292 effdistortionwindow->show(); 2293 break; 2294 case 7: 2295 bandcounter->value(eqband); 2296 bandcounter->do_callback(); 2297 effeqwindow->show(); 2298 break; 2299 case 8: 2300 effdynamicfilterwindow->show(); 2301 break; 2302 case 9: 2303 effsympatheticwindow->show(); 2304 break; 2305 default:effnullwindow->show(); 2306 break; 2307 }; 2308 2309 this->show();} {} 2310 } 2311 decl {int eqband;} {private local 2312 } 2313 decl {bool insertion;} {public local 2314 } 2315 decl {int efftype;} {public local 2316 } 2317 }