Main Page | Namespaces | Classes | Compounds | Files | Compound Members | Related OscDialog.h00001 // 00002 // SYNTOPIA. See http://Syntopia.sourceforge.net for details and documentation. 00003 // 00004 // Author of this file: Mikael Hvidtfeldt Christensen (mikaelc@users.sourceforge.net) 00005 // 00006 00007 #ifndef __oscDialog 00008 #define __oscDialog 00009 00010 #include "Synth.h" 00011 #include <iostream> 00012 #include "math.h" 00013 00014 #include "WinForm.h" 00015 #include "AInput.h" 00016 #include <string> 00017 00018 using namespace GUIToolkit; 00019 using namespace SynthCore; 00020 00021 namespace SynthGUI { 00022 00023 class mod; 00024 00026 class OscDialog : public EventHandler { 00027 public: 00029 OscDialog(mod * mmod); 00030 00032 ~OscDialog(); 00033 00035 void MessageLoop(); 00036 00038 void HandleEvents(event ev); 00039 private: 00040 bool showFFT; 00041 bool showScaled; 00042 int modCount; 00043 Sampler * getSampler(int i); 00044 WinForm * myWindow; 00045 TextBox * myText2 ; 00046 Sampler * mySampler; 00047 mod * myMod; 00048 FreqTable * myFreqTable; 00049 int midikey; 00050 // Canvases 00051 00052 MCanvas * waveCanvas; 00053 00054 // Combo Boxes 00055 00056 ComboBox * WavSel1DD; // User/Preset 00057 ComboBox * WavSel2DD; // Preset Items 00058 ComboBox * WavSel3DD; // User Items 00059 ComboBox * interpolDD; // Interpolation method 00060 ComboBox * outputDD; 00061 00062 00063 ComboBoxItem * WS1DD1; // Items : Preset / User 00064 ComboBoxItem * WS1DD2; 00065 00066 ComboBoxItem * WS2DD1; // Items : Presets : sinus, triangle, square, saw 00067 ComboBoxItem * WS2DD2; 00068 ComboBoxItem * WS2DD3; 00069 ComboBoxItem * WS2DD4; 00070 ComboBoxItem * WS2DD5; 00071 ComboBoxItem * WS2DD6; 00072 ComboBoxItem * WS2DD7; 00073 ComboBoxItem * WS2DD8; 00074 00075 ComboBoxItem * WS3DD1; // Items : User Items 00076 00077 ComboBoxItem * outputDD1; 00078 00079 ComboBoxItem * interpolDD1; 00080 ComboBoxItem * interpolDD2; 00081 ComboBoxItem * interpolDD3; 00082 00083 ComboBoxItem * interpolDD4; 00084 ComboBoxItem * interpolDD5; 00085 00086 // Labels 00087 00088 Label * label0; // headline 00089 Label * label1; // Wave 00090 Label * label2; // Show Key 00091 Label * label5; // Show Key 00092 00093 Label * label6; // Quality 00094 Label * label7; // Interpolation 00095 Label * label8; // SampleLength 00096 Label * label9; // Oversampling 00097 00098 // Buttons 00099 00100 Button * EditButton; 00101 Button * OKButton; 00102 Button * CancelButton; 00103 Button * scaleButton; 00104 Button * FFTButton; 00105 00106 // Dividers 00107 00108 divider * div1; 00109 divider * div2; 00110 divider * div3; 00111 divider * div4; 00112 divider * div5; 00113 00114 // Extra Inputs 00115 00116 AInput * freqInput; 00117 AInput * FMInput; 00118 AInput * PWMInput; 00119 SlideInput * midikeyInput; 00120 00121 // IN/OUT 00122 00123 //IOSelector * outputSel; 00124 00125 // rest 00126 ScrollBar * showkeyScroll; 00127 00128 00129 void drawSample(); 00130 }; 00131 00132 }; // end of namespace: SynthGUI 00133 00134 #endif Docs made by Doxygen. Email: Mikael Christensen |