2019-12-11 00:51:42 -05:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include "SharedTypes.h"
|
|
|
|
|
#include "PascalStr.h"
|
|
|
|
|
|
2019-12-27 00:30:31 -05:00
|
|
|
class PLPasStr;
|
|
|
|
|
|
2019-12-11 00:51:42 -05:00
|
|
|
namespace PortabilityLayer
|
|
|
|
|
{
|
|
|
|
|
class IOStream;
|
|
|
|
|
|
2020-01-23 01:19:12 -05:00
|
|
|
namespace WindowStyleFlags
|
|
|
|
|
{
|
|
|
|
|
enum WindowStyleFlag
|
|
|
|
|
{
|
|
|
|
|
kTitleBar = 1,
|
|
|
|
|
kBorderless = 2,
|
|
|
|
|
kResizable = 4,
|
|
|
|
|
kMiniBar = 8,
|
|
|
|
|
kAlert = 16,
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
2019-12-11 00:51:42 -05:00
|
|
|
struct WindowDef
|
|
|
|
|
{
|
|
|
|
|
Rect m_initialRect;
|
2020-01-23 01:19:12 -05:00
|
|
|
uint16_t m_styleFlags;
|
2019-12-11 00:51:42 -05:00
|
|
|
uint16_t m_visibilityStatus;
|
|
|
|
|
uint16_t m_hasCloseBox;
|
|
|
|
|
uint32_t m_referenceConstant;
|
|
|
|
|
uint16_t m_positionSpec;
|
|
|
|
|
uint8_t m_title[256];
|
|
|
|
|
|
|
|
|
|
bool Deserialize(IOStream *stream);
|
2019-12-27 00:30:31 -05:00
|
|
|
|
2020-01-23 01:19:12 -05:00
|
|
|
static WindowDef Create(const Rect &initialRect, uint16_t styleFlags, bool isVisible, bool hasCloseBox, uint32_t refConstant, uint16_t positionSpec, const PLPasStr &title);
|
2019-12-11 00:51:42 -05:00
|
|
|
};
|
|
|
|
|
}
|