add support for non-resizable windows

This commit is contained in:
StapleButter 2017-10-02 23:26:25 +02:00
parent f8b63759f7
commit dad0e6b6e8
5 changed files with 10 additions and 7 deletions

View File

@ -65,7 +65,7 @@ void OnOk(uiButton* btn, void* blarg)
void Open() void Open()
{ {
win = uiNewWindow("Emu settings - melonDS", 300, 200, 0); win = uiNewWindow("Emu settings - melonDS", 300, 200, 0, 0);
uiWindowSetMargined(win, 1); uiWindowSetMargined(win, 1);
uiWindowOnClosing(win, OnCloseWindow, NULL); uiWindowOnClosing(win, OnCloseWindow, NULL);

View File

@ -283,7 +283,7 @@ void Open()
memcpy(keymap, Config::KeyMapping, sizeof(int)*12); memcpy(keymap, Config::KeyMapping, sizeof(int)*12);
memcpy(joymap, Config::JoyMapping, sizeof(int)*12); memcpy(joymap, Config::JoyMapping, sizeof(int)*12);
win = uiNewWindow("Input config - melonDS", 600, 400, 0); win = uiNewWindow("Input config - melonDS", 600, 400, 0, 0);
uiWindowSetMargined(win, 1); uiWindowSetMargined(win, 1);
uiWindowOnClosing(win, OnCloseWindow, NULL); uiWindowOnClosing(win, OnCloseWindow, NULL);
uiWindowOnGetFocus(win, OnGetFocus, NULL); uiWindowOnGetFocus(win, OnGetFocus, NULL);

View File

@ -115,7 +115,7 @@ _UI_EXTERN void uiWindowSetChild(uiWindow *w, uiControl *child);
_UI_EXTERN int uiWindowMargined(uiWindow *w); _UI_EXTERN int uiWindowMargined(uiWindow *w);
_UI_EXTERN void uiWindowSetMargined(uiWindow *w, int margined); _UI_EXTERN void uiWindowSetMargined(uiWindow *w, int margined);
_UI_EXTERN void uiWindowSetDropTarget(uiWindow* w, int drop); _UI_EXTERN void uiWindowSetDropTarget(uiWindow* w, int drop);
_UI_EXTERN uiWindow *uiNewWindow(const char *title, int width, int height, int hasMenubar); _UI_EXTERN uiWindow *uiNewWindow(const char *title, int width, int height, int hasMenubar, int resizable);
_UI_EXTERN void uiWindowOnContentSizeChanged(uiWindow *w, void (*f)(uiWindow *, void *), void *data); _UI_EXTERN void uiWindowOnContentSizeChanged(uiWindow *w, void (*f)(uiWindow *, void *), void *data);
_UI_EXTERN void uiWindowOnClosing(uiWindow *w, int (*f)(uiWindow *w, void *data), void *data); _UI_EXTERN void uiWindowOnClosing(uiWindow *w, int (*f)(uiWindow *w, void *data), void *data);

View File

@ -512,7 +512,7 @@ static void setClientSize(uiWindow *w, int width, int height, BOOL hasMenubar, D
logLastError(L"error resizing window"); logLastError(L"error resizing window");
} }
uiWindow *uiNewWindow(const char *title, int width, int height, int hasMenubar) uiWindow *uiNewWindow(const char *title, int width, int height, int hasMenubar, int resizable)
{ {
uiWindow *w; uiWindow *w;
WCHAR *wtitle; WCHAR *wtitle;
@ -525,8 +525,11 @@ uiWindow *uiNewWindow(const char *title, int width, int height, int hasMenubar)
hasMenubarBOOL = TRUE; hasMenubarBOOL = TRUE;
w->hasMenubar = hasMenubarBOOL; w->hasMenubar = hasMenubarBOOL;
#define style WS_OVERLAPPEDWINDOW int style = WS_OVERLAPPEDWINDOW;
#define exstyle 0 int exstyle = 0;
if (!resizable)
style &= ~(WS_THICKFRAME | WS_MAXIMIZEBOX);
wtitle = toUTF16(title); wtitle = toUTF16(title);
w->hwnd = CreateWindowExW(exstyle, w->hwnd = CreateWindowExW(exstyle,

View File

@ -646,7 +646,7 @@ int main(int argc, char** argv)
if (w < 256) w = 256; if (w < 256) w = 256;
if (h < 384) h = 384; if (h < 384) h = 384;
MainWindow = uiNewWindow("melonDS " MELONDS_VERSION, w, h, 1); MainWindow = uiNewWindow("melonDS " MELONDS_VERSION, w, h, 1, 1);
uiWindowOnClosing(MainWindow, OnCloseWindow, NULL); uiWindowOnClosing(MainWindow, OnCloseWindow, NULL);
uiWindowSetDropTarget(MainWindow, 1); uiWindowSetDropTarget(MainWindow, 1);