logo
Main Page | Namespaces | Classes | Compounds | Files | Compound Members | Related

FilterDialog.h

00001 //
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 __FilterDialog
00008 #define __FilterDialog
00009 
00010 #include "Synth.h"
00011 #include <iostream>
00012 #include "math.h"
00013 
00014 #include "WinForm.h"
00015 #include "menu.h"
00016 #include "AInput.h"
00017 #include <string>
00018 #include <vector>
00019 #include "MainDialog.h"
00020 
00021 using namespace SynthCore;
00022 using namespace GUIToolkit;
00023 
00024 namespace SynthGUI {
00025 
00027 class FilterDialog : public EventHandler {
00028         public:
00029 
00031                 FilterDialog(mod * moduleptr);
00032 
00034                 ~FilterDialog();
00035 
00037                 void MessageLoop();
00038 
00040                 void HandleEvents(event ev);
00041         private:
00043                 void setFreqAndRez(float freq,float rez) ;
00044 
00046                 void filterType(int fltType) ;
00047 
00048                 void drawPZ(float x1, float x2, float max, int type) ;
00049                 void drawPolesAndZeroes();
00050         
00051                 BiQuad * filter;
00052 
00053                 DWORD WINAPI myThread();
00054                 WinForm * myWindow;
00055                 TextBox * myText ;
00056                 TextBox * myText2 ;
00057                 Button * myButton ;
00058                 Button * myButton2 ;
00059                 Button * myButton3 ;
00060 
00061                 // Canvases
00062 
00063                 MCanvas * poleCanvas;
00064                 MCanvas * responseCanvas;
00065 
00066                 // Combo Boxes
00067 
00068                 ComboBox * filterDropDown;
00069                 ComboBox * seriesDropDown;
00070                 
00071                 ComboBoxItem * FDD1;
00072                 ComboBoxItem * FDD2;
00073                 ComboBoxItem * FDD3;
00074                 ComboBoxItem * FDD4;
00075                 ComboBoxItem * FDD5;
00076                 ComboBoxItem * FDD6;
00077                 ComboBoxItem * FDD7;
00078                 ComboBoxItem * FDD8;
00079                 ComboBoxItem * FDD9;
00080                 ComboBoxItem * FDD10;
00081                 
00082                 
00083                 ComboBoxItem * SDD1;
00084                 ComboBoxItem * SDD2;
00085                 ComboBoxItem * SDD3;
00086                 ComboBoxItem * SDD4;
00087 
00088                 // Labels
00089 
00090                 Label * typeLabel;
00091                 Label * filterLabel;
00092                 Label * seriesLabel;
00093                 Label * zPlaneLabel;
00094                 Label * responseLabel;
00095 
00096                 // Buttons
00097 
00098                 Button * OKButton;
00099                 Button * CancelButton;
00100                 
00101                 // Dividers
00102 
00103                 divider * div1;
00104                 divider * div2;
00105 
00106                 // Inputs
00107 
00108                 AInput * freqInput;
00109                 AInput * QInput;
00110                 
00111                 // rest
00112                 float freq;
00113                 float q;
00114                 BiFilter * myFilter;
00115                 mod * myMod;
00116                 ScrollBar * myScroll;
00117                 int t;
00118                 bool threadRunning;
00119                 void drawResponse();
00120 };
00121 
00122 }; // end of namespace: SynthGUI
00123 
00124 #endif

Syntopia Project. Visit the web page, or the SourceForge page.
Docs made by Doxygen. Email: Mikael Christensen