Commit Graph

774 Commits

Author SHA1 Message Date
Benedikt Müssig 321badb389
Implemented select all for GDI 2022-05-12 12:52:44 +02:00
Benedikt Müssig cacdf6baa4
Added the arc methods to the GDI binding 2022-05-12 12:52:05 +02:00
Rob Loach a51d9eec96
Merge pull request #427 from kbolino/fix-sdl-hidpi-rendering
Fix high-DPI scaling in sdl_renderer
2022-04-20 13:51:59 -04:00
Rob Loach c9d3a3fd20
file_browser: Bring string.h to the top 2022-04-15 17:20:20 -04:00
crazyBaboon f58114e45e
file_browser.c - remove #include <string.h>
It is no longer necessary, since string comparison is now carried out by Nuklear API.
2022-04-13 22:44:14 +01:00
crazyBaboon e5100bcef6
Ignore case when sorting strings alphabetically 2022-04-13 01:07:41 +01:00
crazyBaboon e3cec3b6b1
Forgot to include <string.h> 2022-04-03 15:53:49 +01:00
crazyBaboon 0163faffed
file_browser.c - Display files and folders by alphabetical order 2022-04-03 12:40:14 +01:00
crazyBaboon 8f2ccedfa4
Change dialog action from "Save" to "Open"
This is because there is yet no text box for the user to write the file name.
2022-03-29 21:00:45 +01:00
crazyBaboon 8377f9147a
Use local static variable instead of global 2022-03-26 19:34:40 +00:00
crazyBaboon a1df0c4f57
Further improve file_browser.c
-Adds visible boundary to file icon box;
-Adds a 'cancel' button that closes the file dialog;
-Adds a 'save' button that should be used for the save() routine defined by the user;
2022-03-26 18:28:49 +00:00
Rob Loach ceee8839ab
glfw_gl3: Cast the void* to a struct nk_glfw* (#434)
While it doesn't fix the issue @tree786isback in #434, it is a good thing to cast the void*'s correctly.
2022-03-22 11:22:22 -04:00
Ludwig Füchsl 1b028c654c
Merge branch 'Immediate-Mode-UI:master' into gdi_nuklear_native_window 2022-03-21 16:34:11 +01:00
crazyBaboon ec14ad2a30
Better Display file icons in the filebrowser
Icons are now displayed in a "Compact list view" rather than a "icon view"
2022-03-19 22:17:33 +00:00
Kristian Bolino 04eac1db2a Scale font height rather than oversampling 2022-03-16 17:01:39 -04:00
Kristian Bolino 779c420d06 Fix C89 warnings and oversample at 3x scale 2022-03-15 18:10:01 -04:00
Kristian Bolino ec4aa9992f Fix high-DPI scaling in sdl_renderer
This commit resolves two issues with high-DPI display rendering:

1. The coordinates were not scaled properly, resulting in tiny output
   and misalignment of actual cursor position with apparent position;
   this is fixed by calling SDL_SetRenderScale with appropriate scaling
   factors determined by comparing the window size to the renderer's
   output size
2. The fonts were not oversampled, resulting in excessively blurry text;
    this is fixed by setting oversample_h and oversample_v on the
    font_config according to the scaling factors
2022-03-15 11:43:31 -04:00
Kristian Bolino cbfc8f89e9
sdl_renderer: fix Metal rendering (#426)
Addresses an issue where the Metal render driver (macOS) could not handle the clipping rectangle {-8192, -8192, 16384, 16384} and would simply draw nothing to the screen. The solution is to ensure the cliprect coordinates are not negative, which also doesn't break the other render drivers.

Co-authored-by: Kristian Bolino <kbolino@kbolino.com>
2022-03-15 15:28:47 +01:00
crazyBaboon f0dccaeeec
Integrate file browser with glfw opengl2 demo (#400) and restructure demo/ directory accordingly 2022-03-14 20:46:44 +01:00
Ludwig Füchsl a31c6c0089 Bug fix & Added comments 2022-03-04 13:16:47 +01:00
Ludwig Füchsl 33395aabdb Fixed non displayed windows.
WARNING: Drawing is not done correctly
2022-02-28 15:53:54 +01:00
Ludwig Füchsl 169470d2e3 Converted from C++ to C
WARNING: Is currently not working! Needs more debugging.
2022-02-28 14:57:47 +01:00
Ludwig Füchsl d4e695420d Added GDI full featured window code 2022-02-25 11:13:01 +01:00
Ludwig Füchsl cb59055c06 Added some API dokumentation 2022-02-14 22:41:32 +01:00
Ludwig Füchsl 703d73aebf Added D3D12 backend and demo 2022-02-14 20:51:28 +01:00
Rob Loach 6686ab1dd5
Fix incorrect cast on SDL_RenderGeometryRaw()
Fixes #405
2022-02-06 00:43:54 -05:00
lib-omar f6851ea2ca
Favor switch over if-else chain in event handler. 2022-01-29 14:19:32 -05:00
lib-omar 811dbacd12
Favor switch over if-else chain in event handler. 2022-01-29 14:18:07 -05:00
lib-omar 43b5e82748
Favor switch over if-else chain in event handler. 2022-01-29 14:15:02 -05:00
lib-omar 8f5ae21035
Favor switch over if-else chain in event handler. 2022-01-29 14:13:34 -05:00
Rob Loach 9486833f61
Merge pull request #396 from Immediate-Mode-UI/br_example_sdl_rendergeometry
Backend: SDL2 Renderer
2022-01-09 18:13:28 -05:00
Rob Loach cd4990834f
sdl_renderer: Update code 2022-01-06 21:55:20 -05:00
Cameron Cawley 20a26c8fec Restore a previously removed cast 2021-12-22 21:43:33 +00:00
Cameron Cawley 54b14dc103 Support any format with 1, 2, or 4 bytes per pixel in sdl2surface_rawfb 2021-12-22 21:43:29 +00:00
Rob Loach 1f562ecb94
Merge branch 'master' of github.com:Immediate-Mode-UI/Nuklear into br_example_sdl_rendergeometry 2021-12-22 16:08:49 -05:00
dumblob a3cfd2a910
Merge pull request #378 from ccawley2011/canvas-demo
demos: Integrate the canvas example with the demos
2021-12-17 09:47:59 +01:00
Cameron Cawley 48334b8ba6 Implement arcs with GDI+ 2021-12-16 21:15:23 +00:00
Cameron Cawley a12c158ad4 Add more shapes to the canvas demo 2021-12-16 20:26:26 +00:00
Cameron Cawley 459ba9c48c Integrate the canvas example with the demos 2021-12-16 20:26:26 +00:00
Rob Loach 24912785b7
Merge pull request #379 from ccawley2011/allegro5
Fix rendering issues with Allegro
2021-12-16 14:51:45 -05:00
Cameron Cawley 60c52adfaf
Enable and fix most GCC warnings (#377)
Co-authored-by: Rob Loach <robloach@gmail.com>
2021-12-16 20:44:00 +01:00
Cameron Cawley c5d18493a4 Correctly implement arcs with Allegro 2021-12-16 18:57:08 +00:00
Cameron Cawley 291ce9b609 Fix rendering polygons and polylines with Allegro 2021-12-16 18:56:07 +00:00
Rob Loach eadb4179af
sdlrenderer: C89 support 2021-12-14 21:10:30 -05:00
Cameron Cawley 9af0103cac Build all demos as C89 2021-12-14 20:14:34 +00:00
dumblob 93940ccbd0
Merge pull request #363 from lockie/master
allegro5 demo: Fix warning
2021-12-14 09:26:59 +01:00
Andrew Kravchuk 5ea1a668cb
Use NK_UNUSED macro
Co-authored-by: Rob Loach <robloach@gmail.com>
2021-12-14 09:15:00 +03:00
luz paz 297e463d37 Fix various typos
Found via `codespell -q 3 -L acount,modifyable,nd,pixelx,seperator,te,vertexes`
2021-11-30 21:45:48 -05:00
Andrew Kravchuk 019df39478
Fix warning in Allegro5 demo 2021-11-02 19:22:01 +03:00
Alex Anderson a37a563315 Add select all shortcut to glfw4 demo 2021-10-10 12:15:21 +02:00
Wladislav Artsimovich 1e4eacca2e change NK_MEMSET to memset(), because NK_MEMSET is NK internal 2021-06-18 16:19:49 +02:00
Richard Gill abbd89896f added style and overview to xbc_cairo demo 2021-06-06 17:27:44 +02:00
Richard Gill 2b886bd2cd fixes for PR inclusion 2021-05-13 15:22:52 +02:00
Richard Gill 14531a23a5 fixed rect multi color 2021-05-13 01:00:19 +02:00
Richard Gill ef9fef2189 last xcb try 2021-05-06 21:35:36 +02:00
Richard Gill 596e5d76d9 try to impl rect multicolor command with cairo 2021-05-01 20:50:31 +02:00
Richard Gill 1ae558aa7f added style selector in demo 2021-05-01 17:48:17 +02:00
Richard Gill 24594c8f75 working
from https://github.com/griebd/nuklear_xcb
2021-05-01 17:38:55 +02:00
marcinzelent d829ff1ef1 Fixed copy and paste in glfw_opengl3 demo 2021-04-08 17:36:07 +02:00
Sylvain fb698ba7ef
Set back clipping_enabled 2021-04-03 23:40:13 +02:00
Sylvain 6b5cfe5f2b
Save and restore the cliprect 2021-04-03 20:53:19 +02:00
Sylvain 3552e131a9
Remove setting GL attributes 2021-03-30 17:09:57 +02:00
Sylvain 34450093d7
Add example to use Nuklear with SDL2 SDL_Renderer and SDL_RenderGeometry() 2021-03-26 09:19:50 +01:00
Hecklezz ff7f929e38 Made D3D11 implementation work when using NK_UINT_DRAW_INDEX 2020-12-29 15:08:47 +10:00
Martijn Versteegh 7fea82f534 Properly cleanup all resources and remove some obsolete comments. 2020-10-07 11:43:40 +02:00
Martijn Versteegh dc635effbc Don't show the grid demo, since it doesn't work that well without keyboard handling. 2020-10-07 11:42:45 +02:00
Martijn Versteegh 737bb49754 Remove overly spammy printf.\n 2020-10-07 11:37:45 +02:00
Martijn Versteegh b5faf09c4f Add a rawfb backend which uses SDL_Surface's for output.
The other sdl  demo backends all use OpenGL, which defeats the
purpose of using SDL_Renderer for portabilty.
This is maybe not as good as a full SDL_Renderer backend, but it
is more flexible. For most applications software rendering of the
UI is more than fast enough.
2020-10-07 11:18:20 +02:00
Andrew Kravchuk 264abf4af1
Added processed event flag as a return value in allegro5 backend 2020-06-16 19:03:50 +03:00
Patrick McMorris c1e7be31bd fix incorrect memset size in shutdown for glfw demo 2020-06-11 23:03:38 -07:00
wyattscarpenter 9812c131b4
use integer for integer bound
I got a warning about this from my compiler (cl.exe). I tested it both ways, and the behavior is the same, except for the compiler warning no longer occurs after my change.
2020-06-11 07:08:43 -05:00
Andrew Kravchuk 539f477781
Improved user font initialization in allegro5 backend 2020-06-06 09:50:00 +03:00
Andrew Kravchuk 74db09cdab
Added ability to use user fonts after initialization in allegro5 backend 2020-06-05 12:01:49 +03:00
Andrew Kravchuk f7960ba73c
Fixed naming bug in allegro5 backend image support 2020-05-27 07:57:02 +03:00
Andrew Kravchuk 151916aee4
Added image support to allegro5 backend 2020-05-26 17:56:13 +03:00
Arnavion e98ddde398 Migrate wayland demo to xdg_shell.
The wl_shell interface it previously used is deprecated and not implemented
by some compositors, like sway.

Fixes #134
2020-05-17 12:07:21 -07:00
Richard Gill 910df27fa0
nuklear_glfw_gl3.h without implementation (#124)
note: including nuklear implementation in glfw_gl3 implementation file is still needed because of the usage of some macros (i.e. NK_MEMSET)
2020-05-08 13:12:55 +02:00
crazyBaboon 244a98ea7b
Fix missing space in overview.c "Popup->Right click here:" 2020-05-03 11:06:50 +01:00
Richard Gill fe01ff52eb demo/glfw_opengl3 Remove global state 2020-04-30 15:17:24 +02:00
Zane Ashby 9818f642da Fix memory leak in demo and example code.
Clear cmds nk_buffer after each frame to stop it growing over time.
2020-04-12 01:40:09 +12:00
crazyBaboon 4f6b838748 Remove duplicated #include <math.h> 2020-03-09 21:51:08 +00:00
Johan Söderlind Åström 81e408a805 Added arg params in main function to fix conflicting types for 'SDL_main' error 2020-02-28 15:24:03 +01:00
Zidi 135b585695 zidi add comment 2020-02-27 10:11:05 +08:00
Zidi ad8dcbb385 add some comment 2020-02-26 22:50:16 +08:00
Zidi 9ee58df23e add some comment 2020-02-26 22:47:48 +08:00
Zidi ce6b5b03c4 fix backspace question mark problem 2020-02-26 11:21:22 +08:00
Zidi 5b4cc7b5eb zidi fix backspace won't work problem in SFML UTF-8 2020-02-26 11:01:09 +08:00
skoperst a88cd062b7 Add pure C wayland demo
This implementation uses software rendering in native wayland client.
2019-12-12 21:24:46 +02:00
dumblob df60f5590d
Merge pull request #761 from sukhchainn/patch-2
Remove superfluous #include <math.h>
2019-09-20 18:04:41 +02:00
Jimmi Holst Christensen 7fafcb3ac7 add ctrl support for x11 demos 2019-09-18 18:27:25 +02:00
Jmmi f176f3d7e6 use memset macros instead of fn in x11 demos 2019-08-16 22:20:22 +02:00
Lory171 130f0a6303
x11_xft fixes
Fixes for the X11 backend with XFT fonts from demo/x11_xft:
- fixed some memory leaks by destroying XFT objects during cleanup 
- the function to get text width was returning the wrong value
- the clipping space of text boxes was not implemented for XFT
- misc
2019-07-23 01:34:43 +02:00
Infinity_X 15e4dae107
Add type conversion for calloc 2019-07-10 19:32:36 +08:00
Lory171 7decd7c600
x11_xft fix resize issue 2019-07-08 20:55:35 +02:00
dumblob 9854477f0b
Merge pull request #817 from ccawley2011/sfml-fix
Fix compilation of the SFML demos
2019-06-16 20:38:13 +02:00
Tropby 386386f7de added casts to HBITMAP (needed to compile with mingw 32bit)
added "A" to CreateFont (needed to compile with mingw 32bit)
2019-06-15 12:50:24 +02:00
0x0203 e8d1c38546 Fix nits (see PR #851) to clean up x11_rawfb 2019-06-10 18:03:22 -04:00
0x0203 4de6d284a3 - Determine pixel layout at runtime instead of relying on compile-time flags
- Fix some potential null dereference bugs
2019-06-06 14:54:30 -04:00
0x0203 1dfe4ebc19 Implement software rendering of RECT_MUTI_COLOR for x11_rawfb 2019-06-06 12:58:03 -04:00
0x0203 46031ccc5f Make x11_rawfb set_style() examples correct 2019-06-06 12:51:16 -04:00
0x0203 6d24023d98 - Implement text foreground color
- Be consistent about reading and writing pixel values to avoid casting/offset madness
- clean up function names for clarity/consistency
- Fix fence post errors preventing get/set pixels from operating on first row/column
- Enforce mutual exclusivity for pixel layout macros
2019-06-06 12:42:32 -04:00
0x0203 b9f9d0a176 Allow proper drawing to last column of screen. 2019-05-31 19:31:54 -04:00
dumblob b76f2f28c4
Merge pull request #777 from sa-kib/rawfb_xft_demo_fixes
x11_rawfb and x11_xft demos fixes
2019-05-28 10:32:58 +02:00
Cameron Cawley 930ac1e888 Fix compilation of the SFML demos 2019-02-28 00:10:42 +00:00
Cameron Cawley e032440225 Fix background colour in Direct3D 9 demo 2019-02-27 17:56:38 +00:00
Sergiy Kibrik 945c7f82ac demo/x11_xft: fix UTF-8 text rendering
If XftDrawString8() is given non-ASCII UTF-8 string it fails to properly render it.
Using XftDrawStringUtf8() instead seems to be doing the right thing.

Signed-off-by: Sergiy Kibrik <sakib@darkstar.site>
2018-12-11 17:20:10 +02:00
Sergiy Kibrik 0a46238a44 demo/x11_rawfb: fix build errors
Like these:

   main.c: In function ‘main’:
   main.c:234:20: error: ‘ctx’ undeclared (first use in this function)
              overview(ctx);
                       ^
Signed-off-by: Sergiy Kibrik <sakib@darkstar.site>
2018-12-11 17:06:16 +02:00
Micha Mettke 3e10d1204b
Merge pull request #759 from kphillisjr/gdi_fixes
Demos: some windows GDI fixes
2018-11-01 19:28:07 +01:00
Micha Mettke 99904e9f4b
Merge pull request #764 from DeXP/master
Add Raspberry Pi to OpenGL ES2
2018-11-01 19:23:37 +01:00
Robert Winkler 36a8d2a5ad Fix issue 548
The issue was introduced in the fix for 416 (commit 8559aeb).

The original problem was (backspace and arrows moving too fast) is not a
nuklear problem but a GLFW problem.  Because of the way nuklear handles
input (it must be between input_begin and end), the key callback method
GLFW offers is not an option.

So we have to use glfwGetKey() which returns the current state of a key
not whether it was just pressed or released, so nuklear acts like it
was pressed every single frame, hence the "too fast" problem.

The fix checks for state change and discards the event if there was
no change.  This kills key repeat behavior (for named keys) on
*all* platforms which makes deleting or arrowing inconvenient.

Since there's no way to fix the shortcomings of a callback vs event
based input API, my "fix" just makes the original fix conditional
on a macro NK_KEYSTATE_BASED_INPUT
2018-10-30 00:43:01 -07:00
Dmitry Hrabrov 272f1b9a05
Create Readme.md for OpenGL ES 2018-10-28 14:31:00 +03:00
Dmitry Hrabrov bb21a3c836
Add Raspberry Pi to OpenGL ES2 makefile 2018-10-28 14:08:15 +03:00
Brain Developer 721b3755f4
I removed an additional #include <math.h>
I found an additional "#include <math.h>" so I removed it.
Thinking that it was additional.
2018-10-22 21:10:01 +05:30
Kenney Phillis Jr 3121e6cb2a gdi demo: Implement nk_gdi_rect_multi_color.
This implements the GDI Rect Multicolor functions. This will work without
any problems when targetting Windows 2000 and up.

TODO: Fix Alpha blending. The Color Matrix does not render correctly.
2018-10-18 18:13:56 -05:00
Kenney Phillis Jr 9c2af0124d gdi demo: fix style issues.
A small fix of style where tabs are replaced with spaces.
2018-10-18 18:13:36 -05:00
Vincent Torri 1fdf7828af demos: fix typo (clipbard --> clipboard) 2018-09-15 06:52:10 +02:00
Micha Mettke 4ce3b6a0b3
Merge pull request #701 from buserror/fix-out-of-bound-access
overview.c: Fix an out of bound access
2018-06-29 21:43:12 +02:00
Michel Pollet 8ddb3e59f6 xlib: Add support for x11_xft for antialiases fonts
Looks a lot better.

Signed-off-by: Michel Pollet <buserror@gmail.com>
2018-06-21 13:41:04 +01:00
Michel Pollet e5dee6bf3d overview.c: Fix an out of bound access
Access 8 elements in a 4 elements array.

Signed-off-by: Michel Pollet <buserror@gmail.com>
2018-06-21 11:08:28 +01:00
vurtun 0981c1a321 Fixed #677 contextual right-click behavior
Closing a contextual menu by right click caused invalid behavior and
bocking. In addition having consecutive contextual menus and closing an
earlier menu will wrongfully open a following menu. Both are now fixed.
2018-04-23 10:55:35 +02:00
vurtun 3f99a80f11 Added selectable tree nodes #626 2018-04-14 13:57:25 +02:00
vurtun aa6752487f Merge branch 'lumonix-glfw_opengl4_demo' 2018-04-06 09:24:56 +02:00
vurtun 1098b22423 Changed GLFW context version to OpenGL 4 2018-04-06 09:20:53 +02:00
Micha Mettke 9a8899fb29
Merge pull request #644 from vtorri/master
d3d11 demo: release target view with ID3D11RenderTargetView_Release()…
2018-04-01 04:15:57 -07:00
Dickby 0dabcdd1f9
correct major/minor version of opengl in x11_opengl2 2018-03-23 16:14:32 +01:00
Vincent Torri 602ad7d6f9 d3d11 demo: release target view with ID3D11RenderTargetView_Release() and not with ID3D11ShaderResourceView_Release() 2018-03-14 10:14:17 +01:00
Micha Mettke d9ccea11fe
Merge pull request #640 from vtorri/master
d3d11 demo: GetBuffer requires a void ** as 4th argument.
2018-03-01 09:37:55 -08:00
Vincent Torri 30a5709e0a d3d11 demo: GetBuffer requires a void ** as 4th argument.
Fix warning with gcc.
2018-03-01 16:22:19 +01:00
vurtun 19ce2bf091 Removed cursor hidding while property dragging 2018-02-12 09:53:18 +01:00
Patrick Rudolph 66946dc3cf nuklear_rawfb: Use pitch in offset calculation
Use the framebuffer pitch to calculate the correct offset.
Fixes garbled rendering on framebuffer that have
pitch != x_resolution * bpp / 8.

The demo application is unaffected as the pitch always aligns with
the x resolution of the window.

Signed-off-by: Patrick Rudolph <siro@das-labor.org>
2018-02-04 17:08:17 +01:00
um e409328ff2 fixed nk_gdi_stroke_rect() : used old version (Rectangle/RoundRect) but with transparent brush. 2018-02-02 10:32:45 +03:00
um f771450e93 Correct GDI window sizing handling 2018-02-01 17:26:27 +03:00
Martins Mozeiko 5acdfc9e34 correctly draw non-filled rectangle for GDI demo 2018-01-29 22:14:41 -08:00
vurtun 48a9d3176b Fixed ANSI C warnings 2018-01-28 11:59:06 +01:00
vurtun f8dfddd732 Applied patch from #603 for panel border drawing 2018-01-28 11:48:44 +01:00
Kees Rijnen 205089ff62 Add opengl 4 demo that uses bindless textures and pesistent mapped vertex buffer 2018-01-22 06:00:39 -08:00
vurtun 2891c6afbc Update demos to new color picker API 2018-01-05 13:09:27 +01:00
vurtun bd30c124a6 Fixed #544 color picker (breaking change) 2018-01-05 12:32:42 +01:00
Micha Mettke df96bac317
Merge pull request #590 from mgerhardy/travis
TravisCI changes
2018-01-03 12:27:14 -08:00
William Emerison Six 1b64d1241d show full label in overview popup by expanding horizontal space 2018-01-02 22:06:19 -05:00
Martin Gerhardy b17ec490ef TRAVIS: include demo windows and activate warnings 2018-01-02 08:26:29 +01:00
vurtun 6bddc5c5f0 Update demos configurables and removed warnings 2018-01-01 17:20:55 +01:00
Micha Mettke 5b9d6a9e6f
Merge pull request #591 from mgerhardy/issue584
Fixed parts of issue #584
2018-01-01 06:34:47 -08:00
Martin Gerhardy be55f26a9f Fixed parts of issue #584 2017-12-31 17:26:52 +01:00
Martin Gerhardy 43277a4ff2 Fixed issue #588 2017-12-31 16:54:43 +01:00
vurtun a9e5e7299c Added extended submenus to overview.c 2017-12-07 11:50:27 +01:00
vurtun f7833d0379 Fixed #569 and added additional formated tooltip 2017-12-04 13:23:18 +01:00
Micha Mettke 7e32431af8
Merge pull request #549 from GreenByteSoftware/master
Fix D3D9 rendering in certain scenarios
2017-11-29 22:13:08 +01:00
vurtun 9e2cce1ebc Removed not needed } from comment 2017-11-28 12:21:39 +01:00
vurtun 054136075c Fixed warnings and UB in demo code 2017-11-27 20:44:13 +01:00