External plugins for Carla
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

162 lines
4.6KB

  1. // generated by Fast Light User Interface Designer (fluid) version 1.0300
  2. #ifndef FilterUI_h
  3. #define FilterUI_h
  4. #include <FL/Fl.H>
  5. #include "Fl_Osc_Dial.H"
  6. #include "Fl_Osc_Choice.H"
  7. #include "Fl_Osc_Check.H"
  8. #include "Fl_Osc_Counter.H"
  9. #include "Fl_Osc_Output.H"
  10. #include "Fl_Osc_Slider.H"
  11. #include "Fl_Osc_Pane.H"
  12. #include "../globals.h"
  13. #include "../Misc/Util.h"
  14. #include <FL/Fl_Group.H>
  15. #include "../Params/FilterParams.h"
  16. #include <FL/Fl_Box.H>
  17. #include <FL/fl_draw.H>
  18. #include <FL/fl_ask.H>
  19. #include "PresetsUI.h"
  20. #include "common.H"
  21. #include "FormantFilterGraph.H"
  22. using namespace zyncarla;
  23. #include <FL/Fl_Button.H>
  24. #include <FL/Fl_Group.H>
  25. #include <FL/Fl_Counter.H>
  26. #include <FL/Fl_Box.H>
  27. class FilterUI : public Fl_Osc_Group,PresetsUI_ {
  28. public:
  29. FilterUI(int x,int y, int w, int h, const char *label=0);
  30. ~FilterUI();
  31. Fl_Osc_Group* make_window();
  32. Fl_Osc_Group *filterui;
  33. private:
  34. void cb_P_i(Fl_Button*, void*);
  35. static void cb_P(Fl_Button*, void*);
  36. public:
  37. Fl_Group *filterparamswindow;
  38. Fl_Osc_Choice *analogfiltertypechoice;
  39. static Fl_Menu_Item menu_analogfiltertypechoice[];
  40. Fl_Osc_Choice *svfiltertypechoice;
  41. static Fl_Menu_Item menu_svfiltertypechoice[];
  42. Fl_Osc_Choice *filtertype;
  43. private:
  44. void cb_filtertype_i(Fl_Osc_Choice*, void*);
  45. static void cb_filtertype(Fl_Osc_Choice*, void*);
  46. static Fl_Menu_Item menu_filtertype[];
  47. public:
  48. Fl_Osc_Dial *cfreqdial;
  49. Fl_Osc_Dial *qdial;
  50. private:
  51. void cb_qdial_i(Fl_Osc_Dial*, void*);
  52. static void cb_qdial(Fl_Osc_Dial*, void*);
  53. public:
  54. Fl_Osc_Dial *freqtrdial;
  55. Fl_Osc_Dial *vsnsadial;
  56. Fl_Osc_Dial *vsnsdial;
  57. Fl_Osc_Dial *gaindial;
  58. private:
  59. void cb_gaindial_i(Fl_Osc_Dial*, void*);
  60. static void cb_gaindial(Fl_Osc_Dial*, void*);
  61. public:
  62. Fl_Osc_Choice *stcounter;
  63. private:
  64. void cb_stcounter_i(Fl_Osc_Choice*, void*);
  65. static void cb_stcounter(Fl_Osc_Choice*, void*);
  66. public:
  67. Fl_Button *editbutton;
  68. private:
  69. void cb_editbutton_i(Fl_Button*, void*);
  70. static void cb_editbutton(Fl_Button*, void*);
  71. void cb_C_i(Fl_Button*, void*);
  72. static void cb_C(Fl_Button*, void*);
  73. void cb_P1_i(Fl_Button*, void*);
  74. static void cb_P1(Fl_Button*, void*);
  75. public:
  76. Fl_Osc_Window* make_formant_window();
  77. Fl_Osc_Window *formantparswindow;
  78. private:
  79. void cb_P2_i(Fl_Button*, void*);
  80. static void cb_P2(Fl_Button*, void*);
  81. void cb_Formant_i(Fl_Counter*, void*);
  82. static void cb_Formant(Fl_Counter*, void*);
  83. void cb_Vowel_i(Fl_Counter*, void*);
  84. static void cb_Vowel(Fl_Counter*, void*);
  85. public:
  86. Fl_Osc_Group *formantparsgroup;
  87. Fl_Osc_Dial *formant_freq_dial;
  88. private:
  89. void cb_formant_freq_dial_i(Fl_Osc_Dial*, void*);
  90. static void cb_formant_freq_dial(Fl_Osc_Dial*, void*);
  91. public:
  92. Fl_Osc_Dial *formant_q_dial;
  93. private:
  94. void cb_formant_q_dial_i(Fl_Osc_Dial*, void*);
  95. static void cb_formant_q_dial(Fl_Osc_Dial*, void*);
  96. public:
  97. Fl_Osc_Dial *formant_amp_dial;
  98. private:
  99. void cb_formant_amp_dial_i(Fl_Osc_Dial*, void*);
  100. static void cb_formant_amp_dial(Fl_Osc_Dial*, void*);
  101. public:
  102. Fl_Osc_Counter *sequencesize;
  103. private:
  104. void cb_sequencesize_i(Fl_Osc_Counter*, void*);
  105. static void cb_sequencesize(Fl_Osc_Counter*, void*);
  106. void cb_S_i(Fl_Counter*, void*);
  107. static void cb_S(Fl_Counter*, void*);
  108. public:
  109. Fl_Osc_Counter *vowel_counter;
  110. private:
  111. void cb_vowel_counter_i(Fl_Osc_Counter*, void*);
  112. static void cb_vowel_counter(Fl_Osc_Counter*, void*);
  113. public:
  114. Fl_Osc_Dial *strchdial;
  115. Fl_Osc_Counter *numformants;
  116. private:
  117. void cb_numformants_i(Fl_Osc_Counter*, void*);
  118. static void cb_numformants(Fl_Osc_Counter*, void*);
  119. public:
  120. Fl_Osc_Dial *frsldial;
  121. Fl_Osc_Output *centerfreqvo;
  122. private:
  123. void cb_centerfreqvo_i(Fl_Osc_Output*, void*);
  124. static void cb_centerfreqvo(Fl_Osc_Output*, void*);
  125. public:
  126. Fl_Osc_Output *octavesfreqvo;
  127. private:
  128. void cb_octavesfreqvo_i(Fl_Osc_Output*, void*);
  129. static void cb_octavesfreqvo(Fl_Osc_Output*, void*);
  130. public:
  131. Fl_Osc_Slider *cfknob;
  132. private:
  133. void cb_cfknob_i(Fl_Osc_Slider*, void*);
  134. static void cb_cfknob(Fl_Osc_Slider*, void*);
  135. public:
  136. Fl_Osc_Slider *octknob;
  137. private:
  138. void cb_octknob_i(Fl_Osc_Slider*, void*);
  139. static void cb_octknob(Fl_Osc_Slider*, void*);
  140. public:
  141. FormantFilterGraph *formantfiltergraph;
  142. Fl_Osc_Dial *wvknob;
  143. private:
  144. void cb_Close_i(Fl_Button*, void*);
  145. static void cb_Close(Fl_Button*, void*);
  146. void cb_C1_i(Fl_Button*, void*);
  147. static void cb_C1(Fl_Button*, void*);
  148. public:
  149. void update_formant_window();
  150. void refresh();
  151. void rebase(std::string new_base);
  152. void init(std::string alt_root_, Fl_Osc_Interface *osc_, std::string base_, std::string ext_);
  153. void switchcategory(int newcat);
  154. void use_for_dynamic_filter();
  155. private:
  156. std::string alt_root;
  157. int nvowel,nformant,nseqpos;
  158. };
  159. #endif