/[svn]/gigedit/trunk/src/dimregionedit.cpp
ViewVC logotype

Diff of /gigedit/trunk/src/dimregionedit.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1118 by schoenebeck, Sat Mar 24 13:48:16 2007 UTC revision 1150 by schoenebeck, Sun Apr 8 00:14:17 2007 UTC
# Line 19  Line 19 
19    
20  #include "dimregionedit.h"  #include "dimregionedit.h"
21    
 bool update_gui;  
   
 namespace {  
     uint8_t& access_UnityNote(gig::DimensionRegion* dimreg)  
     {  
         return dimreg->UnityNote;  
     }  
     int16_t& access_FineTune(gig::DimensionRegion* dimreg)  
     {  
         return dimreg->FineTune;  
     }  
     uint32_t& access_SampleLoops(gig::DimensionRegion* dimreg)  
     {  
         return dimreg->SampleLoops;  
     }  
     uint8_t& access_Crossfade_in_start(gig::DimensionRegion* dimreg)  
     {  
         return dimreg->Crossfade.in_start;  
     }  
     uint8_t& access_Crossfade_in_end(gig::DimensionRegion* dimreg)  
     {  
         return dimreg->Crossfade.in_end;  
     }  
     uint8_t& access_Crossfade_out_start(gig::DimensionRegion* dimreg)  
     {  
         return dimreg->Crossfade.out_start;  
     }  
     uint8_t& access_Crossfade_out_end(gig::DimensionRegion* dimreg)  
     {  
         return dimreg->Crossfade.out_end;  
     }  
 }  
   
22  DimRegionEdit::DimRegionEdit() :  DimRegionEdit::DimRegionEdit() :
23      eEG1PreAttack("PreAttack", &gig::DimensionRegion::EG1PreAttack, 0, 100, 2),      eEG1PreAttack("PreAttack", 0, 100, 2),
24      eEG1Attack("Attack", &gig::DimensionRegion::EG1Attack, 0, 60, 3),      eEG1Attack("Attack", 0, 60, 3),
25      eEG1Decay1("Decay1", &gig::DimensionRegion::EG1Decay1, 0.005, 60, 3),      eEG1Decay1("Decay1", 0.005, 60, 3),
26      eEG1Decay2("Decay2", &gig::DimensionRegion::EG1Decay2, 0, 60, 3),      eEG1Decay2("Decay2", 0, 60, 3),
27      eEG1InfiniteSustain("InfiniteSustain",      eEG1InfiniteSustain("InfiniteSustain"),
28                          &gig::DimensionRegion::EG1InfiniteSustain),      eEG1Sustain("Sustain", 0, 100, 2),
29      eEG1Sustain("Sustain", &gig::DimensionRegion::EG1Sustain, 0, 100, 2),      eEG1Release("Release", 0, 60, 3),
30      eEG1Release("Release", &gig::DimensionRegion::EG1Release, 0, 60, 3),      eEG1Hold("Hold"),
31      eEG1Hold("Hold", &gig::DimensionRegion::EG1Hold),      eEG1Controller("Controller"),
32      eEG1Controller("Controller", &gig::DimensionRegion::EG1Controller),      eEG1ControllerInvert("ControllerInvert"),
33      eEG1ControllerInvert("ControllerInvert",      eEG1ControllerAttackInfluence("ControllerAttackInfluence", 0, 3),
34                           &gig::DimensionRegion::EG1ControllerInvert),      eEG1ControllerDecayInfluence("ControllerDecayInfluence", 0, 3),
35      eEG1ControllerAttackInfluence("ControllerAttackInfluence",      eEG1ControllerReleaseInfluence("ControllerReleaseInfluence", 0, 3),
36                                    &gig::DimensionRegion::EG1ControllerAttackInfluence,      eLFO1Frequency("Frequency", 0.1, 10, 2),
37                                    0, 3),      eLFO1InternalDepth("InternalDepth", 0, 1200),
38      eEG1ControllerDecayInfluence("ControllerDecayInfluence",      eLFO1ControlDepth("ControlDepth", 0, 1200),
39                                   &gig::DimensionRegion::EG1ControllerDecayInfluence,      eLFO1Controller("Controller"),
40                                   0, 3),      eLFO1FlipPhase("FlipPhase"),
41      eEG1ControllerReleaseInfluence("ControllerReleaseInfluence",      eLFO1Sync("Sync"),
42                                     &gig::DimensionRegion::EG1ControllerReleaseInfluence,      eEG2PreAttack("PreAttack", 0, 100, 2),
43                                     0, 3),      eEG2Attack("Attack", 0, 60, 3),
44      eLFO1Frequency("Frequency", &gig::DimensionRegion::LFO1Frequency,      eEG2Decay1("Decay1", 0.005, 60, 3),
45                     0.1, 10, 2),      eEG2Decay2("Decay2", 0, 60, 3),
46      eLFO1InternalDepth("InternalDepth",      eEG2InfiniteSustain("InfiniteSustain"),
47                         &gig::DimensionRegion::LFO1InternalDepth, 0, 1200),      eEG2Sustain("Sustain", 0, 100, 2),
48      eLFO1ControlDepth("ControlDepth", &gig::DimensionRegion::LFO1ControlDepth,      eEG2Release("Release", 0, 60, 3),
49                        0, 1200),      eEG2Controller("Controller"),
50      eLFO1Controller("Controller", &gig::DimensionRegion::LFO1Controller),      eEG2ControllerInvert("ControllerInvert"),
51      eLFO1FlipPhase("FlipPhase", &gig::DimensionRegion::LFO1FlipPhase),      eEG2ControllerAttackInfluence("ControllerAttackInfluence", 0, 3),
52      eLFO1Sync("Sync", &gig::DimensionRegion::LFO1Sync),      eEG2ControllerDecayInfluence("ControllerDecayInfluence", 0, 3),
53      eEG2PreAttack("PreAttack", &gig::DimensionRegion::EG2PreAttack, 0, 100, 2),      eEG2ControllerReleaseInfluence("ControllerReleaseInfluence", 0, 3),
54      eEG2Attack("Attack", &gig::DimensionRegion::EG2Attack, 0, 60, 3),      eLFO2Frequency("Frequency", 0.1, 10, 2),
55      eEG2Decay1("Decay1", &gig::DimensionRegion::EG2Decay1, 0.005, 60, 3),      eLFO2InternalDepth("InternalDepth", 0, 1200),
56      eEG2Decay2("Decay2", &gig::DimensionRegion::EG2Decay2, 0, 60, 3),      eLFO2ControlDepth("ControlDepth", 0, 1200),
57      eEG2InfiniteSustain("InfiniteSustain",      eLFO2Controller("Controller"),
58                          &gig::DimensionRegion::EG2InfiniteSustain),      eLFO2FlipPhase("FlipPhase"),
59      eEG2Sustain("Sustain", &gig::DimensionRegion::EG2Sustain, 0, 100, 2),      eLFO2Sync("Sync"),
60      eEG2Release("Release", &gig::DimensionRegion::EG2Release, 0, 60, 3),      eEG3Attack("Attack", 0, 10, 3),
61      eEG2Controller("Controller", &gig::DimensionRegion::EG2Controller),      eEG3Depth("Depth", -1200, 1200),
62      eEG2ControllerInvert("ControllerInvert",      eLFO3Frequency("Frequency", 0.1, 10, 2),
63                           &gig::DimensionRegion::EG2ControllerInvert),      eLFO3InternalDepth("InternalDepth", 0, 1200),
64      eEG2ControllerAttackInfluence("ControllerAttackInfluence",      eLFO3ControlDepth("ControlDepth", 0, 1200),
65                                    &gig::DimensionRegion::EG2ControllerAttackInfluence,      eLFO3Controller("Controller"),
66                                    0, 3),      eLFO3Sync("Sync"),
67      eEG2ControllerDecayInfluence("ControllerDecayInfluence",      eVCFEnabled("Enabled"),
68                                   &gig::DimensionRegion::EG2ControllerDecayInfluence,      eVCFType("Type"),
69                                   0, 3),      eVCFCutoffController("CutoffController"),
70      eEG2ControllerReleaseInfluence("ControllerReleaseInfluence",      eVCFCutoffControllerInvert("CutoffControllerInvert"),
71                                     &gig::DimensionRegion::EG2ControllerReleaseInfluence,      eVCFCutoff("Cutoff"),
72                                     0, 3),      eVCFVelocityCurve("VelocityCurve"),
73      eLFO2Frequency("Frequency", &gig::DimensionRegion::LFO2Frequency,      eVCFVelocityScale("VelocityScale"),
74                     0.1, 10, 2),      eVCFVelocityDynamicRange("VelocityDynamicRange", 0, 4),
75      eLFO2InternalDepth("InternalDepth",      eVCFResonance("Resonance"),
76                         &gig::DimensionRegion::LFO2InternalDepth, 0, 1200),      eVCFResonanceDynamic("ResonanceDynamic"),
77      eLFO2ControlDepth("ControlDepth",      eVCFResonanceController("ResonanceController"),
78                        &gig::DimensionRegion::LFO2ControlDepth, 0, 1200),      eVCFKeyboardTracking("KeyboardTracking"),
79      eLFO2Controller("Controller", &gig::DimensionRegion::LFO2Controller),      eVCFKeyboardTrackingBreakpoint("KeyboardTrackingBreakpoint"),
80      eLFO2FlipPhase("FlipPhase", &gig::DimensionRegion::LFO2FlipPhase),      eVelocityResponseCurve("VelocityResponseCurve"),
81      eLFO2Sync("Sync", &gig::DimensionRegion::LFO2Sync),      eVelocityResponseDepth("VelocityResponseDepth", 0, 4),
82      eEG3Attack("Attack", &gig::DimensionRegion::EG3Attack, 0, 10, 3),      eVelocityResponseCurveScaling("VelocityResponseCurveScaling"),
83      eEG3Depth("Depth", &gig::DimensionRegion::EG3Depth, -1200, 1200),      eReleaseVelocityResponseCurve("ReleaseVelocityResponseCurve"),
84      eLFO3Frequency("Frequency", &gig::DimensionRegion::LFO3Frequency,      eReleaseVelocityResponseDepth("ReleaseVelocityResponseDepth", 0, 4),
85                     0.1, 10, 2),      eReleaseTriggerDecay("ReleaseTriggerDecay", 0, 8),
86      eLFO3InternalDepth("InternalDepth",      eCrossfade_in_start("Crossfade.in_start"),
87                         &gig::DimensionRegion::LFO3InternalDepth, 0, 1200),      eCrossfade_in_end("Crossfade.in_end"),
88      eLFO3ControlDepth("ControlDepth", &gig::DimensionRegion::LFO3ControlDepth,      eCrossfade_out_start("Crossfade.out_start"),
89                        0, 1200),      eCrossfade_out_end("Crossfade.out_end"),
90      eLFO3Controller("Controller", &gig::DimensionRegion::LFO3Controller),      ePitchTrack("PitchTrack"),
91      eLFO3Sync("Sync", &gig::DimensionRegion::LFO3Sync),      eDimensionBypass("DimensionBypass"),
92      eVCFEnabled("Enabled", &gig::DimensionRegion::VCFEnabled),      ePan("Pan", -64, 63),
93      eVCFType("Type", &gig::DimensionRegion::VCFType),      eSelfMask("SelfMask"),
94      eVCFCutoffController("CutoffController",      eAttenuationController("AttenuationController"),
95                           &gig::DimensionRegion::VCFCutoffController),      eInvertAttenuationController("InvertAttenuationController"),
96      eVCFCutoffControllerInvert("CutoffControllerInvert",      eAttenuationControllerThreshold("AttenuationControllerThreshold"),
97                                 &gig::DimensionRegion::VCFCutoffControllerInvert),      eChannelOffset("ChannelOffset", 0, 9),
98      eVCFCutoff("Cutoff", &gig::DimensionRegion::VCFCutoff),      eSustainDefeat("SustainDefeat"),
99      eVCFVelocityCurve("VelocityCurve", &gig::DimensionRegion::VCFVelocityCurve),      eMSDecode("MSDecode"),
100      eVCFVelocityScale("VelocityScale", &gig::DimensionRegion::VCFVelocityScale),      eSampleStartOffset("SampleStartOffset", 0, 2000),
101      eVCFVelocityDynamicRange("VelocityDynamicRange",      eUnityNote("UnityNote"),
102                               &gig::DimensionRegion::VCFVelocityDynamicRange,      eFineTune("FineTune", -49, 50),
103                               0, 4),      eGain("Gain", -96, 0, 2, -655360),
104      eVCFResonance("Resonance", &gig::DimensionRegion::VCFResonance),      eGainPlus6("Gain +6dB", eGain, 6 * -655360),
105      eVCFResonanceDynamic("ResonanceDynamic",      eSampleLoops("SampleLoops", 0, 1)
                          &gig::DimensionRegion::VCFResonanceDynamic),  
     eVCFResonanceController("ResonanceController",  
                             &gig::DimensionRegion::VCFResonanceController),  
     eVCFKeyboardTracking("KeyboardTracking",  
                          &gig::DimensionRegion::VCFKeyboardTracking),  
     eVCFKeyboardTrackingBreakpoint("KeyboardTrackingBreakpoint",  
                                    &gig::DimensionRegion::VCFKeyboardTrackingBreakpoint),  
     eVelocityResponseCurve("VelocityResponseCurve",  
                            &gig::DimensionRegion::VelocityResponseCurve),  
     eVelocityResponseDepth("VelocityResponseDepth",  
                            &gig::DimensionRegion::VelocityResponseDepth, 0, 4),  
     eVelocityResponseCurveScaling("VelocityResponseCurveScaling",  
                                   &gig::DimensionRegion::VelocityResponseCurveScaling),  
     eReleaseVelocityResponseCurve("ReleaseVelocityResponseCurve",  
                                   &gig::DimensionRegion::ReleaseVelocityResponseCurve),  
     eReleaseVelocityResponseDepth("ReleaseVelocityResponseDepth",  
                                   &gig::DimensionRegion::ReleaseVelocityResponseDepth,  
                                   0, 4),  
     eReleaseTriggerDecay("ReleaseTriggerDecay",  
                          &gig::DimensionRegion::ReleaseTriggerDecay, 0, 8),  
     eCrossfade_in_start("Crossfade.in_start", &access_Crossfade_in_start),  
     eCrossfade_in_end("Crossfade.in_end", &access_Crossfade_in_end),  
     eCrossfade_out_start("Crossfade.out_start", &access_Crossfade_out_start),  
     eCrossfade_out_end("Crossfade.out_end", &access_Crossfade_out_end),  
     ePitchTrack("PitchTrack", &gig::DimensionRegion::PitchTrack),  
     eDimensionBypass("DimensionBypass", &gig::DimensionRegion::DimensionBypass),  
     ePan("Pan", &gig::DimensionRegion::Pan, -64, 63),  
     eSelfMask("SelfMask", &gig::DimensionRegion::SelfMask),  
     eAttenuationController("AttenuationController",  
                            &gig::DimensionRegion::AttenuationController),  
     eInvertAttenuationController("InvertAttenuationController",  
                                  &gig::DimensionRegion::InvertAttenuationController),  
     eAttenuationControllerThreshold("AttenuationControllerThreshold",  
                                     &gig::DimensionRegion::AttenuationControllerThreshold),  
     eChannelOffset("ChannelOffset", &gig::DimensionRegion::ChannelOffset, 0, 9),  
     eSustainDefeat("SustainDefeat", &gig::DimensionRegion::SustainDefeat),  
     eMSDecode("MSDecode", &gig::DimensionRegion::MSDecode),  
     eSampleStartOffset("SampleStartOffset",  
                        &gig::DimensionRegion::SampleStartOffset, 0, 2000),  
     eUnityNote("UnityNote", &access_UnityNote),  
     eFineTune("FineTune", &access_FineTune, -49, 50),  
     eGain("Gain", -96, 0, 2),  
     eGainPlus6("Gain +6dB", eGain),  
     eSampleLoops("SampleLoops", &access_SampleLoops, 0, 1)  
106  {  {
107      for (int i = 0 ; i < 5 ; i++) {      for (int i = 0 ; i < 5 ; i++) {
108          table[i] = new Gtk::Table(3, 1);          table[i] = new Gtk::Table(3, 1);
# Line 190  DimRegionEdit::DimRegionEdit() : Line 113  DimRegionEdit::DimRegionEdit() :
113      rowno = 0;      rowno = 0;
114      firstRowInBlock = 0;      firstRowInBlock = 0;
115    
116        addHeader("General (mandatory):");
117      addString("Sample", lSample, wSample);      addString("Sample", lSample, wSample);
118      //TODO: the following would break drag&drop:   wSample->property_editable().set_value(false);  or this:    wSample->set_editable(false);      //TODO: the following would break drag&drop:   wSample->property_editable().set_value(false);  or this:    wSample->set_editable(false);
119      tooltips.set_tip(*wSample, "drop a sample here");      tooltips.set_tip(*wSample, "drop a sample here");
120      addHeader("EG1");      addProp(eUnityNote);
121        addHeader("Optional Settings:");
122        addProp(eSampleStartOffset);
123        addProp(ePan);
124        addProp(eChannelOffset);
125        addHeader("Loops:");
126        addProp(eSampleLoops);
127        addHeader("Crossfade:");
128        addProp(eCrossfade_in_start);
129        addProp(eCrossfade_in_end);
130        addProp(eCrossfade_out_start);
131        addProp(eCrossfade_out_end);
132    
133        nextPage();
134    
135        addHeader("General Amplitude Settings:");
136        addProp(eGain);
137        addProp(eGainPlus6);
138        addProp(eAttenuationController);
139        addProp(eInvertAttenuationController);
140        addProp(eAttenuationControllerThreshold);
141        addHeader("EG1 (Amplitude Envelope):");
142      addProp(eEG1PreAttack);      addProp(eEG1PreAttack);
143      addProp(eEG1Attack);      addProp(eEG1Attack);
144      addProp(eEG1Decay1);      addProp(eEG1Decay1);
# Line 207  DimRegionEdit::DimRegionEdit() : Line 152  DimRegionEdit::DimRegionEdit() :
152      addProp(eEG1ControllerAttackInfluence);      addProp(eEG1ControllerAttackInfluence);
153      addProp(eEG1ControllerDecayInfluence);      addProp(eEG1ControllerDecayInfluence);
154      addProp(eEG1ControllerReleaseInfluence);      addProp(eEG1ControllerReleaseInfluence);
155      addHeader("LFO1");      addHeader("LFO1 (Amplitude Oscillator):");
156      addProp(eLFO1Frequency);      addProp(eLFO1Frequency);
157      addProp(eLFO1InternalDepth);      addProp(eLFO1InternalDepth);
158      addProp(eLFO1ControlDepth);      addProp(eLFO1ControlDepth);
# Line 228  DimRegionEdit::DimRegionEdit() : Line 173  DimRegionEdit::DimRegionEdit() :
173      addProp(eLFO1Sync);      addProp(eLFO1Sync);
174    
175      nextPage();      nextPage();
     addHeader("EG2");  
     addProp(eEG2PreAttack);  
     addProp(eEG2Attack);  
     addProp(eEG2Decay1);  
     addProp(eEG2Decay2);  
     addProp(eEG2InfiniteSustain);  
     addProp(eEG2Sustain);  
     addProp(eEG2Release);  
     addProp(eEG2Controller);  
     addProp(eEG2ControllerInvert);  
     addProp(eEG2ControllerAttackInfluence);  
     addProp(eEG2ControllerDecayInfluence);  
     addProp(eEG2ControllerReleaseInfluence);  
     addHeader("LFO2");  
     addProp(eLFO2Frequency);  
     addProp(eLFO2InternalDepth);  
     addProp(eLFO2ControlDepth);  
     {  
         char* choices[] = { "internal", "modwheel", "foot",  
                             "internal+modwheel", "internal+foot", 0 };  
         static const gig::lfo2_ctrl_t values[] = {  
             gig::lfo2_ctrl_internal,  
             gig::lfo2_ctrl_modwheel,  
             gig::lfo2_ctrl_foot,  
             gig::lfo2_ctrl_internal_modwheel,  
             gig::lfo2_ctrl_internal_foot  
         };  
         eLFO2Controller.set_choices(choices, values);  
     }  
     addProp(eLFO2Controller);  
     addProp(eLFO2FlipPhase);  
     addProp(eLFO2Sync);  
   
     nextPage();  
176    
177      addHeader("EG3");      addHeader("General Filter Settings:");
     addProp(eEG3Attack);  
     addProp(eEG3Depth);  
     addHeader("LFO3");  
     addProp(eLFO3Frequency);  
     addProp(eLFO3InternalDepth);  
     addProp(eLFO3ControlDepth);  
     {  
         char* choices[] = { "internal", "modwheel", "aftertouch",  
                             "internal+modwheel", "internal+aftertouch", 0 };  
         static const gig::lfo3_ctrl_t values[] = {  
             gig::lfo3_ctrl_internal,  
             gig::lfo3_ctrl_modwheel,  
             gig::lfo3_ctrl_aftertouch,  
             gig::lfo3_ctrl_internal_modwheel,  
             gig::lfo3_ctrl_internal_aftertouch  
         };  
         eLFO3Controller.set_choices(choices, values);  
     }  
     addProp(eLFO3Controller);  
     addProp(eLFO3Sync);  
     addHeader("VCF");  
178      addProp(eVCFEnabled);      addProp(eVCFEnabled);
179      {      {
180          char* choices[] = { "lowpass", "lowpassturbo", "bandpass",          char* choices[] = { "lowpass", "lowpassturbo", "bandpass",
# Line 349  DimRegionEdit::DimRegionEdit() : Line 239  DimRegionEdit::DimRegionEdit() :
239      addProp(eVCFResonanceController);      addProp(eVCFResonanceController);
240      addProp(eVCFKeyboardTracking);      addProp(eVCFKeyboardTracking);
241      addProp(eVCFKeyboardTrackingBreakpoint);      addProp(eVCFKeyboardTrackingBreakpoint);
242        addHeader("EG2 (Filter Cutoff Envelope):");
243        addProp(eEG2PreAttack);
244        addProp(eEG2Attack);
245        addProp(eEG2Decay1);
246        addProp(eEG2Decay2);
247        addProp(eEG2InfiniteSustain);
248        addProp(eEG2Sustain);
249        addProp(eEG2Release);
250        addProp(eEG2Controller);
251        addProp(eEG2ControllerInvert);
252        addProp(eEG2ControllerAttackInfluence);
253        addProp(eEG2ControllerDecayInfluence);
254        addProp(eEG2ControllerReleaseInfluence);
255        addHeader("LFO2 (Filter Cutoff Oscillator):");
256        addProp(eLFO2Frequency);
257        addProp(eLFO2InternalDepth);
258        addProp(eLFO2ControlDepth);
259        {
260            char* choices[] = { "internal", "modwheel", "foot",
261                                "internal+modwheel", "internal+foot", 0 };
262            static const gig::lfo2_ctrl_t values[] = {
263                gig::lfo2_ctrl_internal,
264                gig::lfo2_ctrl_modwheel,
265                gig::lfo2_ctrl_foot,
266                gig::lfo2_ctrl_internal_modwheel,
267                gig::lfo2_ctrl_internal_foot
268            };
269            eLFO2Controller.set_choices(choices, values);
270        }
271        addProp(eLFO2Controller);
272        addProp(eLFO2FlipPhase);
273        addProp(eLFO2Sync);
274    
275        nextPage();
276    
277        addHeader("General Pitch Settings:");
278        addProp(eFineTune);
279        addProp(ePitchTrack);
280        addHeader("EG3 (Pitch Envelope):");
281        addProp(eEG3Attack);
282        addProp(eEG3Depth);
283        addHeader("LFO3 (Pitch Oscillator):");
284        addProp(eLFO3Frequency);
285        addProp(eLFO3InternalDepth);
286        addProp(eLFO3ControlDepth);
287        {
288            char* choices[] = { "internal", "modwheel", "aftertouch",
289                                "internal+modwheel", "internal+aftertouch", 0 };
290            static const gig::lfo3_ctrl_t values[] = {
291                gig::lfo3_ctrl_internal,
292                gig::lfo3_ctrl_modwheel,
293                gig::lfo3_ctrl_aftertouch,
294                gig::lfo3_ctrl_internal_modwheel,
295                gig::lfo3_ctrl_internal_aftertouch
296            };
297            eLFO3Controller.set_choices(choices, values);
298        }
299        addProp(eLFO3Controller);
300        addProp(eLFO3Sync);
301    
302      nextPage();      nextPage();
303    
# Line 361  DimRegionEdit::DimRegionEdit() : Line 310  DimRegionEdit::DimRegionEdit() :
310      addProp(eReleaseVelocityResponseCurve);      addProp(eReleaseVelocityResponseCurve);
311      addProp(eReleaseVelocityResponseDepth);      addProp(eReleaseVelocityResponseDepth);
312      addProp(eReleaseTriggerDecay);      addProp(eReleaseTriggerDecay);
     addProp(eCrossfade_in_start);  
     addProp(eCrossfade_in_end);  
     addProp(eCrossfade_out_start);  
     addProp(eCrossfade_out_end);  
     addProp(ePitchTrack);  
313      {      {
314          char* choices[] = { "none", "effect4depth", "effect5depth", 0 };          char* choices[] = { "none", "effect4depth", "effect5depth", 0 };
315          static const gig::dim_bypass_ctrl_t values[] = {          static const gig::dim_bypass_ctrl_t values[] = {
# Line 376  DimRegionEdit::DimRegionEdit() : Line 320  DimRegionEdit::DimRegionEdit() :
320          eDimensionBypass.set_choices(choices, values);          eDimensionBypass.set_choices(choices, values);
321      }      }
322      addProp(eDimensionBypass);      addProp(eDimensionBypass);
     addProp(ePan);  
323      addProp(eSelfMask);      addProp(eSelfMask);
     addProp(eAttenuationController);  
     addProp(eInvertAttenuationController);  
     addProp(eAttenuationControllerThreshold);  
     addProp(eChannelOffset);  
324      addProp(eSustainDefeat);      addProp(eSustainDefeat);
   
     nextPage();  
325      addProp(eMSDecode);      addProp(eMSDecode);
326      addProp(eSampleStartOffset);  
     addProp(eUnityNote);  
     addProp(eFineTune);  
     addProp(eGain);  
     addProp(eGainPlus6);  
     addProp(eSampleLoops);  
327      nextPage();      nextPage();
328    
329    
330      eEG1InfiniteSustain.signal_toggled().connect(      eEG1InfiniteSustain.signal_toggled().connect(
331          sigc::mem_fun(*this, &DimRegionEdit::EG1InfiniteSustain_toggled) );          sigc::mem_fun(*this, &DimRegionEdit::EG1InfiniteSustain_toggled) );
332      eEG2InfiniteSustain.signal_toggled().connect(      eEG2InfiniteSustain.signal_toggled().connect(
# Line 426  DimRegionEdit::DimRegionEdit() : Line 359  DimRegionEdit::DimRegionEdit() :
359      eCrossfade_out_end.signal_value_changed().connect(      eCrossfade_out_end.signal_value_changed().connect(
360          sigc::mem_fun(*this, &DimRegionEdit::crossfade4_changed));          sigc::mem_fun(*this, &DimRegionEdit::crossfade4_changed));
361    
362      append_page(*table[0], "EG1");      append_page(*table[0], "Sample");
363      append_page(*table[1], "EG2");      append_page(*table[1], "Amplitude");
364      append_page(*table[2], "EG3");      append_page(*table[2], "Filter");
365      append_page(*table[3], "Velocity");      append_page(*table[3], "Pitch");
366      append_page(*table[4], "Misc");      append_page(*table[4], "Misc");
367  }  }
368    
# Line 504  void DimRegionEdit::set_dim_region(gig:: Line 437  void DimRegionEdit::set_dim_region(gig::
437    
438      update_gui = false;      update_gui = false;
439      wSample->set_text(d->pSample ? d->pSample->pInfo->Name.c_str() : "NULL");      wSample->set_text(d->pSample ? d->pSample->pInfo->Name.c_str() : "NULL");
440      eEG1PreAttack.set_dimreg(d);      eEG1PreAttack.set_ptr(&d->EG1PreAttack);
441      eEG1Attack.set_dimreg(d);      eEG1Attack.set_ptr(&d->EG1Attack);
442      eEG1Decay1.set_dimreg(d);      eEG1Decay1.set_ptr(&d->EG1Decay1);
443      eEG1Decay2.set_dimreg(d);      eEG1Decay2.set_ptr(&d->EG1Decay2);
444      eEG1InfiniteSustain.set_dimreg(d);      eEG1InfiniteSustain.set_ptr(&d->EG1InfiniteSustain);
445      eEG1Sustain.set_dimreg(d);      eEG1Sustain.set_ptr(&d->EG1Sustain);
446      eEG1Release.set_dimreg(d);      eEG1Release.set_ptr(&d->EG1Release);
447      eEG1Hold.set_dimreg(d);      eEG1Hold.set_ptr(&d->EG1Hold);
448      eEG1Controller.set_dimreg(d);      eEG1Controller.set_ptr(&d->EG1Controller);
449      eEG1ControllerInvert.set_dimreg(d);      eEG1ControllerInvert.set_ptr(&d->EG1ControllerInvert);
450      eEG1ControllerAttackInfluence.set_dimreg(d);      eEG1ControllerAttackInfluence.set_ptr(&d->EG1ControllerAttackInfluence);
451      eEG1ControllerDecayInfluence.set_dimreg(d);      eEG1ControllerDecayInfluence.set_ptr(&d->EG1ControllerDecayInfluence);
452      eEG1ControllerReleaseInfluence.set_dimreg(d);      eEG1ControllerReleaseInfluence.set_ptr(&d->EG1ControllerReleaseInfluence);
453      eLFO1Frequency.set_dimreg(d);      eLFO1Frequency.set_ptr(&d->LFO1Frequency);
454      eLFO1InternalDepth.set_dimreg(d);      eLFO1InternalDepth.set_ptr(&d->LFO1InternalDepth);
455      eLFO1ControlDepth.set_dimreg(d);      eLFO1ControlDepth.set_ptr(&d->LFO1ControlDepth);
456      eLFO1Controller.set_dimreg(d);      eLFO1Controller.set_ptr(&d->LFO1Controller);
457      eLFO1FlipPhase.set_dimreg(d);      eLFO1FlipPhase.set_ptr(&d->LFO1FlipPhase);
458      eLFO1Sync.set_dimreg(d);      eLFO1Sync.set_ptr(&d->LFO1Sync);
459      eEG2PreAttack.set_dimreg(d);      eEG2PreAttack.set_ptr(&d->EG2PreAttack);
460      eEG2Attack.set_dimreg(d);      eEG2Attack.set_ptr(&d->EG2Attack);
461      eEG2Decay1.set_dimreg(d);      eEG2Decay1.set_ptr(&d->EG2Decay1);
462      eEG2Decay2.set_dimreg(d);      eEG2Decay2.set_ptr(&d->EG2Decay2);
463      eEG2InfiniteSustain.set_dimreg(d);      eEG2InfiniteSustain.set_ptr(&d->EG2InfiniteSustain);
464      eEG2Sustain.set_dimreg(d);      eEG2Sustain.set_ptr(&d->EG2Sustain);
465      eEG2Release.set_dimreg(d);      eEG2Release.set_ptr(&d->EG2Release);
466      eEG2Controller.set_dimreg(d);      eEG2Controller.set_ptr(&d->EG2Controller);
467      eEG2ControllerInvert.set_dimreg(d);      eEG2ControllerInvert.set_ptr(&d->EG2ControllerInvert);
468      eEG2ControllerAttackInfluence.set_dimreg(d);      eEG2ControllerAttackInfluence.set_ptr(&d->EG2ControllerAttackInfluence);
469      eEG2ControllerDecayInfluence.set_dimreg(d);      eEG2ControllerDecayInfluence.set_ptr(&d->EG2ControllerDecayInfluence);
470      eEG2ControllerReleaseInfluence.set_dimreg(d);      eEG2ControllerReleaseInfluence.set_ptr(&d->EG2ControllerReleaseInfluence);
471      eLFO2Frequency.set_dimreg(d);      eLFO2Frequency.set_ptr(&d->LFO2Frequency);
472      eLFO2InternalDepth.set_dimreg(d);      eLFO2InternalDepth.set_ptr(&d->LFO2InternalDepth);
473      eLFO2ControlDepth.set_dimreg(d);      eLFO2ControlDepth.set_ptr(&d->LFO2ControlDepth);
474      eLFO2Controller.set_dimreg(d);      eLFO2Controller.set_ptr(&d->LFO2Controller);
475      eLFO2FlipPhase.set_dimreg(d);      eLFO2FlipPhase.set_ptr(&d->LFO2FlipPhase);
476      eLFO2Sync.set_dimreg(d);      eLFO2Sync.set_ptr(&d->LFO2Sync);
477      eEG3Attack.set_dimreg(d);      eEG3Attack.set_ptr(&d->EG3Attack);
478      eEG3Depth.set_dimreg(d);      eEG3Depth.set_ptr(&d->EG3Depth);
479      eLFO3Frequency.set_dimreg(d);      eLFO3Frequency.set_ptr(&d->LFO3Frequency);
480      eLFO3InternalDepth.set_dimreg(d);      eLFO3InternalDepth.set_ptr(&d->LFO3InternalDepth);
481      eLFO3ControlDepth.set_dimreg(d);      eLFO3ControlDepth.set_ptr(&d->LFO3ControlDepth);
482      eLFO3Controller.set_dimreg(d);      eLFO3Controller.set_ptr(&d->LFO3Controller);
483      eLFO3Sync.set_dimreg(d);      eLFO3Sync.set_ptr(&d->LFO3Sync);
484      eVCFEnabled.set_dimreg(d);      eVCFEnabled.set_ptr(&d->VCFEnabled);
485      eVCFType.set_dimreg(d);      eVCFType.set_ptr(&d->VCFType);
486      eVCFCutoffController.set_dimreg(d);      eVCFCutoffController.set_ptr(&d->VCFCutoffController);
487      eVCFCutoffControllerInvert.set_dimreg(d);      eVCFCutoffControllerInvert.set_ptr(&d->VCFCutoffControllerInvert);
488      eVCFCutoff.set_dimreg(d);      eVCFCutoff.set_ptr(&d->VCFCutoff);
489      eVCFVelocityCurve.set_dimreg(d);      eVCFVelocityCurve.set_ptr(&d->VCFVelocityCurve);
490      eVCFVelocityScale.set_dimreg(d);      eVCFVelocityScale.set_ptr(&d->VCFVelocityScale);
491      eVCFVelocityDynamicRange.set_dimreg(d);      eVCFVelocityDynamicRange.set_ptr(&d->VCFVelocityDynamicRange);
492      eVCFResonance.set_dimreg(d);      eVCFResonance.set_ptr(&d->VCFResonance);
493      eVCFResonanceDynamic.set_dimreg(d);      eVCFResonanceDynamic.set_ptr(&d->VCFResonanceDynamic);
494      eVCFResonanceController.set_dimreg(d);      eVCFResonanceController.set_ptr(&d->VCFResonanceController);
495      eVCFKeyboardTracking.set_dimreg(d);      eVCFKeyboardTracking.set_ptr(&d->VCFKeyboardTracking);
496      eVCFKeyboardTrackingBreakpoint.set_dimreg(d);      eVCFKeyboardTrackingBreakpoint.set_ptr(&d->VCFKeyboardTrackingBreakpoint);
497      eVelocityResponseCurve.set_dimreg(d);      eVelocityResponseCurve.set_ptr(&d->VelocityResponseCurve);
498      eVelocityResponseDepth.set_dimreg(d);      eVelocityResponseDepth.set_ptr(&d->VelocityResponseDepth);
499      eVelocityResponseCurveScaling.set_dimreg(d);      eVelocityResponseCurveScaling.set_ptr(&d->VelocityResponseCurveScaling);
500      eReleaseVelocityResponseCurve.set_dimreg(d);      eReleaseVelocityResponseCurve.set_ptr(&d->ReleaseVelocityResponseCurve);
501      eReleaseVelocityResponseDepth.set_dimreg(d);      eReleaseVelocityResponseDepth.set_ptr(&d->ReleaseVelocityResponseDepth);
502      eReleaseTriggerDecay.set_dimreg(d);      eReleaseTriggerDecay.set_ptr(&d->ReleaseTriggerDecay);
503      eCrossfade_in_start.set_dimreg(d);      eCrossfade_in_start.set_ptr(&d->Crossfade.in_start);
504      eCrossfade_in_end.set_dimreg(d);      eCrossfade_in_end.set_ptr(&d->Crossfade.in_end);
505      eCrossfade_out_start.set_dimreg(d);      eCrossfade_out_start.set_ptr(&d->Crossfade.out_start);
506      eCrossfade_out_end.set_dimreg(d);      eCrossfade_out_end.set_ptr(&d->Crossfade.out_end);
507      ePitchTrack.set_dimreg(d);      ePitchTrack.set_ptr(&d->PitchTrack);
508      eDimensionBypass.set_dimreg(d);      eDimensionBypass.set_ptr(&d->DimensionBypass);
509      ePan.set_dimreg(d);      ePan.set_ptr(&d->Pan);
510      eSelfMask.set_dimreg(d);      eSelfMask.set_ptr(&d->SelfMask);
511      eAttenuationController.set_dimreg(d);      eAttenuationController.set_ptr(&d->AttenuationController);
512      eInvertAttenuationController.set_dimreg(d);      eInvertAttenuationController.set_ptr(&d->InvertAttenuationController);
513      eAttenuationControllerThreshold.set_dimreg(d);      eAttenuationControllerThreshold.set_ptr(&d->AttenuationControllerThreshold);
514      eChannelOffset.set_dimreg(d);      eChannelOffset.set_ptr(&d->ChannelOffset);
515      eSustainDefeat.set_dimreg(d);      eSustainDefeat.set_ptr(&d->SustainDefeat);
516      eMSDecode.set_dimreg(d);      eMSDecode.set_ptr(&d->MSDecode);
517      eSampleStartOffset.set_dimreg(d);      eSampleStartOffset.set_ptr(&d->SampleStartOffset);
518      eUnityNote.set_dimreg(d);      eUnityNote.set_ptr(&d->UnityNote);
519      eFineTune.set_dimreg(d);      eFineTune.set_ptr(&d->FineTune);
520      eGain.set_dimreg(d);      eGain.set_ptr(&d->Gain);
521      eGainPlus6.set_dimreg(d);      eGainPlus6.set_ptr(&d->Gain);
522      eSampleLoops.set_dimreg(d);      eSampleLoops.set_ptr(&d->SampleLoops);
523    
524      VCFEnabled_toggled();      VCFEnabled_toggled();
525    

Legend:
Removed from v.1118  
changed lines
  Added in v.1150

  ViewVC Help
Powered by ViewVC