zynaddsubfx

ZynAddSubFX open source synthesizer
Log | Files | Refs | Submodules | LICENSE

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 }