Commit 2dda4071 authored by Nathan Heisey's avatar Nathan Heisey

Fixed minor rendering issues.

parent 2f941519
......@@ -63,8 +63,8 @@ class SDL_BWin:public BDirectWindow
{
public:
/* Constructor/Destructor */
SDL_BWin(BRect bounds):BDirectWindow(bounds, "Untitled",
B_TITLED_WINDOW, 0)
SDL_BWin(BRect bounds, uint32 flags):BDirectWindow(bounds, "Untitled",
B_TITLED_WINDOW, flags)
{
_last_buttons = 0;
......
......@@ -38,6 +38,7 @@ static inline SDL_BApp *_GetBeApp() {
}
int _InitWindow(_THIS, SDL_Window *window) {
uint32 flags = 0;
BRect bounds(
window->x,
window->y,
......@@ -45,13 +46,24 @@ int _InitWindow(_THIS, SDL_Window *window) {
window->y + window->h - 1
);
SDL_BWin *bwin = new(std::nothrow) SDL_BWin(bounds);
if(window->flags & SDL_WINDOW_FULLSCREEN) {
}
if(window->flags & SDL_WINDOW_OPENGL) {
}
if(!(window->flags & SDL_WINDOW_RESIZABLE)) {
flags |= B_NOT_RESIZABLE;
}
if(window->flags & SDL_WINDOW_BORDERLESS) {
}
SDL_BWin *bwin = new(std::nothrow) SDL_BWin(bounds, flags);
if(bwin == NULL)
return ENOMEM;
window->driverdata = bwin;
int32 winID = _GetBeApp()->GetID(window);
bwin->SetID(winID);
return 0;
}
......@@ -59,6 +71,7 @@ int BE_CreateWindow(_THIS, SDL_Window *window) {
if(_InitWindow(_this, window) == ENOMEM)
return ENOMEM;
printf("Flags = 0x%x\n", window->flags);
/* Start window loop */
_ToBeWin(window)->Show();
return 0;
......@@ -76,6 +89,11 @@ int BE_CreateWindowFrom(_THIS, SDL_Window * window, const void *data) {
window->w = (int)otherBWin->Frame().Width();
window->h = (int)otherBWin->Frame().Height();
/* Set SDL flags */
if(!(otherBWin->Flags() & B_NOT_RESIZABLE)) {
window->flags |= SDL_WINDOW_RESIZABLE;
}
/* If we are out of memory, return the error code */
if(_InitWindow(_this, window) == ENOMEM)
return ENOMEM;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment