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.

257 lines
6.8KB

  1. // generated by Fast Light User Interface Designer (fluid) version 1.0300
  2. #ifndef EnvelopeUI_h
  3. #define EnvelopeUI_h
  4. #include <FL/Fl.H>
  5. #include "Fl_Osc_Dial.H"
  6. #include "Fl_Osc_Check.H"
  7. #include "Fl_Osc_Button.H"
  8. #include "Fl_Osc_Counter.H"
  9. #include "Fl_Osc_Pane.H"
  10. #include <stdio.h>
  11. #include <stdlib.h>
  12. #include "../globals.h"
  13. #include <FL/Fl_Group.H>
  14. #include "../Params/EnvelopeParams.h"
  15. #include <FL/Fl_Box.H>
  16. #include <FL/fl_draw.H>
  17. #include <FL/fl_ask.H>
  18. #include "PresetsUI.h"
  19. #include "common.H"
  20. #include "EnvelopeFreeEdit.h"
  21. class PointButton : public Fl_Button, public Fl_Osc_Widget {
  22. public:
  23. PointButton(int x,int y, int w, int h, const char *label=0);
  24. void rebase(std::string new_base);
  25. void init(std::string path_);
  26. };
  27. #include <FL/Fl_Button.H>
  28. #include <FL/Fl_Group.H>
  29. class EnvelopeUI : public Fl_Osc_Group,PresetsUI_ {
  30. public:
  31. EnvelopeUI(int x,int y, int w, int h, const char *label=0);
  32. ~EnvelopeUI();
  33. Fl_Osc_Window* make_freemode_edit_window();
  34. Fl_Osc_Window *freemodeeditwindow;
  35. private:
  36. void cb_C_i(Fl_Button*, void*);
  37. static void cb_C(Fl_Button*, void*);
  38. void cb_P_i(Fl_Button*, void*);
  39. static void cb_P(Fl_Button*, void*);
  40. public:
  41. PointButton *addpoint;
  42. private:
  43. void cb_addpoint_i(PointButton*, void*);
  44. static void cb_addpoint(PointButton*, void*);
  45. public:
  46. EnvelopeFreeEdit *freeedit;
  47. private:
  48. void cb_freeedit_i(EnvelopeFreeEdit*, void*);
  49. static void cb_freeedit(EnvelopeFreeEdit*, void*);
  50. public:
  51. PointButton *deletepoint;
  52. private:
  53. void cb_deletepoint_i(PointButton*, void*);
  54. static void cb_deletepoint(PointButton*, void*);
  55. public:
  56. Fl_Osc_Check *forcedreleasecheck;
  57. Fl_Osc_Dial *envstretchdial;
  58. private:
  59. void cb_Close_i(Fl_Button*, void*);
  60. static void cb_Close(Fl_Button*, void*);
  61. public:
  62. Fl_Osc_Check *linearenvelopecheck;
  63. Fl_Osc_Counter *sustaincounter;
  64. private:
  65. void cb_sustaincounter_i(Fl_Osc_Counter*, void*);
  66. static void cb_sustaincounter(Fl_Osc_Counter*, void*);
  67. public:
  68. Fl_Osc_Check *freemodehack;
  69. private:
  70. void cb_freemodehack_i(Fl_Osc_Check*, void*);
  71. static void cb_freemodehack(Fl_Osc_Check*, void*);
  72. void cb_Cancel_i(Fl_Osc_Button*, void*);
  73. static void cb_Cancel(Fl_Osc_Button*, void*);
  74. public:
  75. Fl_Osc_Group* make_ADSR_window();
  76. Fl_Osc_Group *envADSR;
  77. private:
  78. void cb_C1_i(Fl_Button*, void*);
  79. static void cb_C1(Fl_Button*, void*);
  80. void cb_P1_i(Fl_Button*, void*);
  81. static void cb_P1(Fl_Button*, void*);
  82. public:
  83. Fl_Osc_Dial *e1adt;
  84. private:
  85. void cb_e1adt_i(Fl_Osc_Dial*, void*);
  86. static void cb_e1adt(Fl_Osc_Dial*, void*);
  87. public:
  88. Fl_Osc_Dial *e1ddt;
  89. private:
  90. void cb_e1ddt_i(Fl_Osc_Dial*, void*);
  91. static void cb_e1ddt(Fl_Osc_Dial*, void*);
  92. public:
  93. Fl_Osc_Dial *e1rdt;
  94. private:
  95. void cb_e1rdt_i(Fl_Osc_Dial*, void*);
  96. static void cb_e1rdt(Fl_Osc_Dial*, void*);
  97. public:
  98. Fl_Osc_Dial *e1sval;
  99. private:
  100. void cb_e1sval_i(Fl_Osc_Dial*, void*);
  101. static void cb_e1sval(Fl_Osc_Dial*, void*);
  102. public:
  103. Fl_Osc_Check *e1forcedrelease;
  104. Fl_Osc_Dial *e1envstretch;
  105. private:
  106. void cb_E_i(Fl_Osc_Button*, void*);
  107. static void cb_E(Fl_Osc_Button*, void*);
  108. public:
  109. Fl_Osc_Check *e1linearenvelope;
  110. Fl_Osc_Group* make_ASR_window();
  111. Fl_Osc_Group *envASR;
  112. private:
  113. void cb_C2_i(Fl_Button*, void*);
  114. static void cb_C2(Fl_Button*, void*);
  115. void cb_P2_i(Fl_Button*, void*);
  116. static void cb_P2(Fl_Button*, void*);
  117. public:
  118. Fl_Osc_Dial *e2aval;
  119. private:
  120. void cb_e2aval_i(Fl_Osc_Dial*, void*);
  121. static void cb_e2aval(Fl_Osc_Dial*, void*);
  122. public:
  123. Fl_Osc_Dial *e2adt;
  124. private:
  125. void cb_e2adt_i(Fl_Osc_Dial*, void*);
  126. static void cb_e2adt(Fl_Osc_Dial*, void*);
  127. public:
  128. Fl_Osc_Dial *e2rval;
  129. private:
  130. void cb_e2rval_i(Fl_Osc_Dial*, void*);
  131. static void cb_e2rval(Fl_Osc_Dial*, void*);
  132. public:
  133. Fl_Osc_Dial *e2rdt;
  134. private:
  135. void cb_e2rdt_i(Fl_Osc_Dial*, void*);
  136. static void cb_e2rdt(Fl_Osc_Dial*, void*);
  137. public:
  138. Fl_Osc_Dial *e2envstretch;
  139. Fl_Osc_Check *e2forcedrelease;
  140. private:
  141. void cb_E1_i(Fl_Osc_Button*, void*);
  142. static void cb_E1(Fl_Osc_Button*, void*);
  143. public:
  144. Fl_Osc_Group* make_ADSRfilter_window();
  145. Fl_Osc_Group *envADSRfilter;
  146. private:
  147. void cb_C3_i(Fl_Button*, void*);
  148. static void cb_C3(Fl_Button*, void*);
  149. void cb_P3_i(Fl_Button*, void*);
  150. static void cb_P3(Fl_Button*, void*);
  151. public:
  152. Fl_Osc_Dial *e3aval;
  153. private:
  154. void cb_e3aval_i(Fl_Osc_Dial*, void*);
  155. static void cb_e3aval(Fl_Osc_Dial*, void*);
  156. public:
  157. Fl_Osc_Dial *e3adt;
  158. private:
  159. void cb_e3adt_i(Fl_Osc_Dial*, void*);
  160. static void cb_e3adt(Fl_Osc_Dial*, void*);
  161. public:
  162. Fl_Osc_Dial *e3dval;
  163. private:
  164. void cb_e3dval_i(Fl_Osc_Dial*, void*);
  165. static void cb_e3dval(Fl_Osc_Dial*, void*);
  166. public:
  167. Fl_Osc_Dial *e3ddt;
  168. private:
  169. void cb_e3ddt_i(Fl_Osc_Dial*, void*);
  170. static void cb_e3ddt(Fl_Osc_Dial*, void*);
  171. public:
  172. Fl_Osc_Dial *e3rdt;
  173. private:
  174. void cb_e3rdt_i(Fl_Osc_Dial*, void*);
  175. static void cb_e3rdt(Fl_Osc_Dial*, void*);
  176. public:
  177. Fl_Osc_Dial *e3rval;
  178. private:
  179. void cb_e3rval_i(Fl_Osc_Dial*, void*);
  180. static void cb_e3rval(Fl_Osc_Dial*, void*);
  181. public:
  182. Fl_Osc_Dial *e3envstretch;
  183. Fl_Osc_Check *e3forcedrelease;
  184. private:
  185. void cb_E2_i(Fl_Osc_Button*, void*);
  186. static void cb_E2(Fl_Osc_Button*, void*);
  187. public:
  188. Fl_Osc_Group* make_ASRbw_window();
  189. Fl_Osc_Group *envASRbw;
  190. private:
  191. void cb_C4_i(Fl_Button*, void*);
  192. static void cb_C4(Fl_Button*, void*);
  193. void cb_P4_i(Fl_Button*, void*);
  194. static void cb_P4(Fl_Button*, void*);
  195. public:
  196. Fl_Osc_Dial *e4aval;
  197. private:
  198. void cb_e4aval_i(Fl_Osc_Dial*, void*);
  199. static void cb_e4aval(Fl_Osc_Dial*, void*);
  200. public:
  201. Fl_Osc_Dial *e4adt;
  202. private:
  203. void cb_e4adt_i(Fl_Osc_Dial*, void*);
  204. static void cb_e4adt(Fl_Osc_Dial*, void*);
  205. public:
  206. Fl_Osc_Dial *e4rval;
  207. private:
  208. void cb_e4rval_i(Fl_Osc_Dial*, void*);
  209. static void cb_e4rval(Fl_Osc_Dial*, void*);
  210. public:
  211. Fl_Osc_Dial *e4rdt;
  212. private:
  213. void cb_e4rdt_i(Fl_Osc_Dial*, void*);
  214. static void cb_e4rdt(Fl_Osc_Dial*, void*);
  215. public:
  216. Fl_Osc_Dial *e4envstretch;
  217. Fl_Osc_Check *e4forcedrelease;
  218. private:
  219. void cb_E3_i(Fl_Osc_Button*, void*);
  220. static void cb_E3(Fl_Osc_Button*, void*);
  221. public:
  222. Fl_Osc_Group* make_free_window();
  223. Fl_Osc_Group *envfree;
  224. Fl_Group *envfreegroup;
  225. private:
  226. void cb_E4_i(Fl_Osc_Button*, void*);
  227. static void cb_E4(Fl_Osc_Button*, void*);
  228. public:
  229. EnvelopeFreeEdit *freeeditsmall;
  230. private:
  231. void cb_freeeditsmall_i(EnvelopeFreeEdit*, void*);
  232. static void cb_freeeditsmall(EnvelopeFreeEdit*, void*);
  233. void cb_C5_i(Fl_Button*, void*);
  234. static void cb_C5(Fl_Button*, void*);
  235. void cb_P5_i(Fl_Button*, void*);
  236. static void cb_P5(Fl_Button*, void*);
  237. public:
  238. void open_as_freemode();
  239. void init(int env_type, Fl_Osc_Interface *osc_, std::string base_, std::string ext_);
  240. void rebase(std::string new_base);
  241. void disable_freemode();
  242. void refresh();
  243. void refresh_display();
  244. private:
  245. int Envmode;
  246. int Penvsustain;
  247. int Penvpoints;
  248. int Penvstretch;
  249. int Pforcedrelease;
  250. int Plinearenvelope;
  251. Fl_Group *envwindow;
  252. };
  253. #endif