MostlyHarmless 0.0.1
 
Loading...
Searching...
No Matches
mostlyharmless_IEditor.h
Go to the documentation of this file.
1//
2// Created by Syl Morrison on 20/10/2024.
3//
4
5#ifndef MOSTLYHARMLESS_MOSTLYHARMLESS_IEDITOR_H
6#define MOSTLYHARMLESS_MOSTLYHARMLESS_IEDITOR_H
8#include <mostly_harmless/mostlyharmless_Concepts.h>
9namespace mostly_harmless::core {
19 struct IEditor {
23 virtual ~IEditor() noexcept = default;
24
28 virtual void initialise() = 0;
29
33 virtual void destroy() = 0;
34
39 [[nodiscard]] virtual bool allowResize() const noexcept = 0;
40
46 virtual void setSize(std::uint32_t width, std::uint32_t height) = 0;
47
54 virtual void onResizeRequested(std::uint32_t* newWidth, std::uint32_t* newHeight) = 0;
55
61 virtual void getSize(std::uint32_t* width, std::uint32_t* height) = 0;
62
67 virtual void setParent(void* parentHandle) = 0;
68
72 virtual void show() = 0;
73
77 virtual void hide() = 0;
78
82 virtual void onParamEvent(events::ProcToGuiParamEvent event) = 0;
83 };
84
85} // namespace mostly_harmless::core
86
87#endif // MOSTLYHARMLESS_MOSTLYHARMLESS_IEDITOR_H
Contains core functionality of the framework.
Definition mostlyharmless_PluginBase.h:15
Contains classes and functions related to events.
Definition mostlyharmless_InputEventContext.h:4
Interface for the plugin's gui functionality.
Definition mostlyharmless_IEditor.h:19
virtual bool allowResize() const noexcept=0
virtual void onParamEvent(events::ProcToGuiParamEvent event)=0
virtual void setSize(std::uint32_t width, std::uint32_t height)=0
virtual void setParent(void *parentHandle)=0
virtual void getSize(std::uint32_t *width, std::uint32_t *height)=0
virtual ~IEditor() noexcept=default
virtual void onResizeRequested(std::uint32_t *newWidth, std::uint32_t *newHeight)=0