38 lines
801 B
C++
38 lines
801 B
C++
#pragma once
|
|
|
|
#include <cstdint>
|
|
#include <string>
|
|
|
|
namespace XCEngine::UI::Editor::Windowing::Domain {
|
|
|
|
struct WindowCommand {
|
|
enum class Type : std::uint8_t {
|
|
None = 0,
|
|
DestroyNativeWindow,
|
|
ShowWindow,
|
|
FocusWindow,
|
|
ResizeWindow,
|
|
MoveWindow,
|
|
SetWindowTitle,
|
|
SetWindowBounds,
|
|
MinimizeWindow,
|
|
CloseWindow,
|
|
BeginCaptionDrag,
|
|
};
|
|
|
|
enum class BoundsMode : std::uint8_t {
|
|
Default = 0,
|
|
InteractiveResizeNoRedraw,
|
|
};
|
|
|
|
Type type = Type::None;
|
|
BoundsMode boundsMode = BoundsMode::Default;
|
|
std::string payload = {};
|
|
std::int32_t x = 0;
|
|
std::int32_t y = 0;
|
|
std::int32_t width = 0;
|
|
std::int32_t height = 0;
|
|
};
|
|
|
|
} // namespace XCEngine::UI::Editor::Windowing::Domain
|