Audio plugin host https://kx.studio/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.

49 lines
1.3KB

  1. /*
  2. ZynAddSubFX - a software synthesizer
  3. Presets.h - Presets and Clipboard management
  4. Copyright (C) 2002-2005 Nasca Octavian Paul
  5. Author: Nasca Octavian Paul
  6. This program is free software; you can redistribute it and/or
  7. modify it under the terms of the GNU General Public License
  8. as published by the Free Software Foundation; either version 2
  9. of the License, or (at your option) any later version.
  10. */
  11. #ifndef PRESETS_H
  12. #define PRESETS_H
  13. #include "../globals.h"
  14. namespace zyncarla {
  15. class PresetsStore;
  16. /**Presets and Clipboard management*/
  17. class Presets
  18. {
  19. friend class PresetsArray;
  20. public:
  21. Presets();
  22. virtual ~Presets();
  23. virtual void copy(PresetsStore &ps, const char *name); /**<if name==NULL, the clipboard is used*/
  24. //virtual void paste(PresetsStore &ps, int npreset); //npreset==0 for clipboard
  25. virtual bool checkclipboardtype(PresetsStore &ps);
  26. void deletepreset(PresetsStore &ps, int npreset);
  27. char type[MAX_PRESETTYPE_SIZE];
  28. //void setelement(int n);
  29. protected:
  30. void setpresettype(const char *type);
  31. private:
  32. virtual void add2XML(XMLwrapper& xml) = 0;
  33. //virtual void getfromXML(XMLwrapper *xml) = 0;
  34. //virtual void defaults() = 0;
  35. };
  36. }
  37. #endif