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.

36 lines
1.0KB

  1. #pragma once
  2. #include <JuceHeader.h>
  3. #include <optional>
  4. struct PluginSelectorState {
  5. int sortColumnId;
  6. bool sortForwards;
  7. bool includeLV2;
  8. bool includeVST;
  9. bool includeVST3;
  10. bool includeAU;
  11. // Stores the value of the text box
  12. juce::String filterString;
  13. // Stores the last location of the window - empty if the window hasn't been opened yet
  14. std::optional<juce::Rectangle<int>> bounds;
  15. // Stores scroll position (value from 0 to 1)
  16. double scrollPosition;
  17. PluginSelectorState() : sortColumnId(0),
  18. sortForwards(true),
  19. includeLV2(true),
  20. includeVST(true),
  21. includeVST3(true),
  22. includeAU(true),
  23. filterString(""),
  24. bounds(),
  25. scrollPosition(0) { }
  26. void restoreFromXml(juce::XmlElement* element);
  27. void writeToXml(juce::XmlElement* element) const;
  28. };