nuklear_cross icon indicating copy to clipboard operation
nuklear_cross copied to clipboard

Get Window Size

Open OetkenPurveyorOfCode opened this issue 1 year ago • 3 comments

I do not like the window in a window approach that the example uses (If you get what I mean - there is a nuklear window inside a native OS window surrounded by some background color passed to nkc_render), so I disabled the nuklear window titlebar and wanted to size the nuklear window according to the native OS window around (so the background would never be seen). Does nuklear_cross provide a backend abstraction of getting the Window size? If not I might be willing to add a method to nuklear cross for getting the window size for some of the backends.

OetkenPurveyorOfCode avatar Jan 09 '24 23:01 OetkenPurveyorOfCode

Nope, just the function for desktop size.

NK_API int nkc_get_desktop_size(struct nkc* nkcHandle, int* width, int* height);

The idea behind this is - you are creating the window. You are passing width and height to it. So you already know the window's size.

NK_API struct nk_context *nkc_init(struct nkc* nkcHandle, const char* title, 
                            int width, int height, enum nkc_window_mode windowMode);

DeXP avatar Jan 10 '24 07:01 DeXP

Well, the window is resizable, and to be clear, I want the window to be reiszable. So when the user resizes the window, it changes its size. Since I am on windows, I could get by with calling:

    RECT rect;
    if (GetWindowRect(myapp->nkcHandle->window, &rect)) {
        width = rect.right - rect.left;
        height = rect.bottom - rect.top;
    }

To get the window size and readjust the nk_rect in my mainloop, but I think a cross platform solution might be more desirable. (Or would you consider this outside the scope of this project, meaning you intend this project only for use in applications with non-resizable windows, (or resizable windows, but using nested nuklear's windows inside a resizable frame)).

OetkenPurveyorOfCode avatar Feb 27 '24 22:02 OetkenPurveyorOfCode

Aha. Thank you for the idea and Windows code. I'm not sure when I'll get back to Nuclear_cross. But I'll have the function in my TODO-list.

DeXP avatar Feb 28 '24 08:02 DeXP