mirror of
https://github.com/beefytech/Beef.git
synced 2025-07-04 15:26:00 +02:00
SDL/OGL platform improvements
This commit is contained in:
parent
213aea8c82
commit
258a6653f9
16 changed files with 711 additions and 1141 deletions
|
@ -3,6 +3,7 @@
|
|||
#include "BFApp.h"
|
||||
#include "BFWindow.h"
|
||||
#include <map>
|
||||
#include "util/Dictionary.h"
|
||||
|
||||
struct SDL_Window;
|
||||
|
||||
|
@ -16,24 +17,38 @@ class SdlBFWindow : public BFWindow
|
|||
{
|
||||
public:
|
||||
SDL_Window* mSDLWindow;
|
||||
bool mIsMouseInside;
|
||||
int mModalCount;
|
||||
bool mIsMouseInside;
|
||||
int mModalCount;
|
||||
|
||||
public:
|
||||
SdlBFWindow(BFWindow* parent, const StringImpl& title, int x, int y, int width, int height, int windowFlags);
|
||||
~SdlBFWindow();
|
||||
|
||||
virtual void* GetUnderlying() {return mSDLWindow; };
|
||||
virtual void Destroy() { }
|
||||
|
||||
virtual void SetTitle(const char* title) override {}
|
||||
virtual void SetMinimumSize(int minWidth, int minHeight, bool clientSized) override {}
|
||||
virtual void GetPlacement(int* normX, int* normY, int* normWidth, int* normHeight, int* showKind) override { }
|
||||
virtual void Resize(int x, int y, int width, int height, int showKind) override {}
|
||||
virtual void SetMouseVisible(bool isMouseVisible) override {}
|
||||
|
||||
virtual bool TryClose() override;
|
||||
virtual void GetPosition(int* x, int* y, int* width, int* height, int* clientX, int* clientY, int* clientWidth, int* clientHeight) override;
|
||||
virtual void SetClientPosition(int x, int y) override;
|
||||
virtual void SetAlpha(float alpha, uint32 destAlphaSrcMask, bool isMouseVisible) override;
|
||||
virtual BFMenu* AddMenuItem(BFMenu* parent, const wchar_t* text, const wchar_t* hotKey, BFSysBitmap* sysBitmap, bool enabled, int checkState, bool radioCheck);
|
||||
|
||||
virtual BFMenu* AddMenuItem(BFMenu* parent, int insertIdx, const char* text, const char* hotKey, BFSysBitmap* bitmap, bool enabled, int checkState, bool radioCheck) override;
|
||||
virtual void ModifyMenuItem(BFMenu* item, const char* text, const char* hotKey, BFSysBitmap* bitmap, bool enabled, int checkState, bool radioCheck) override {}
|
||||
virtual void RemoveMenuItem(BFMenu* item) override;
|
||||
|
||||
virtual void LostFocus(BFWindow* newFocus) override {};
|
||||
|
||||
virtual void ModalsRemoved() override;
|
||||
|
||||
virtual void SetForeground() override {};
|
||||
};
|
||||
|
||||
typedef std::map<uint32, SdlBFWindow*> SdlWindowMap;
|
||||
typedef Dictionary<uint32, SdlBFWindow*> SdlWindowMap;
|
||||
|
||||
class SdlBFApp : public BFApp
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue