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.

27 lines
837B

  1. #pragma once
  2. #include <JuceHeader.h>
  3. #include "PluginSelectorComponent.h"
  4. #include "PluginSelectorListParameters.h"
  5. class PluginSelectorWindow : public juce::DocumentWindow {
  6. public:
  7. PluginSelectorWindow(std::function<void()> onCloseCallback,
  8. PluginSelectorListParameters selectorListParameters,
  9. std::unique_ptr<SelectorComponentStyle> style,
  10. juce::String title);
  11. virtual ~PluginSelectorWindow();
  12. virtual void closeButtonPressed() override;
  13. void takeFocus();
  14. private:
  15. std::function<void()> _onCloseCallback;
  16. PluginSelectorComponent* _content;
  17. std::unique_ptr<SelectorComponentStyle> _style;
  18. // We need to keep a reference to state to update the bounds on resize
  19. PluginSelectorState& _state;
  20. };