Commit Graph

1594 Commits (master)

Author SHA1 Message Date
Michael Bosse 0fca7e2045 Adds protection of the texture matrix stack which allows the user to use sf::Sprites with this code unmodified otherwise 2017-10-17 17:16:55 -04:00
Micha Mettke 9e0ed888fb Merge pull request #523 from nuklear-ui/docs
Docs
2017-10-17 12:25:36 +02:00
Micha Mettke 056af25e27 Merge pull request #534 from DeXP/gles2
OpenGL ES2.0: Emscripten support
2017-10-17 12:23:56 +02:00
Micha Mettke a75bfcc3cb Merge pull request #535 from siro20/nuklear_softrast
demo/x11_rawfb: Change license to MIT
2017-10-09 18:22:10 +02:00
Patrick Rudolph 3705464605 demo/x11_rawfb: Change license to MIT
Relicense all x11_rawfb demo files under MIT license.

Signed-off-by: Patrick Rudolph <siro@das-labor.org>
2017-10-09 17:41:06 +02:00
DeXP e57e0149f3 Emscripten support 2017-10-08 21:26:33 +02:00
vurtun 24a7536273 Merge branch 'siro20-nuklear_softrast' 2017-10-07 14:31:05 +02:00
vurtun e5850a01b9 Fixed style issues in software renderer 2017-10-07 14:30:22 +02:00
vurtun 5d72fe5f86 Merge branch 'nuklear_softrast' of https://github.com/siro20/nuklear into siro20-nuklear_softrast 2017-10-07 14:01:22 +02:00
Patrick Rudolph 2eb72b26e4 Add software rasterizer library and demo.
The software rasterizer is to be used with raw framebuffer
devices, where no GPU or X11 is available.
The demo emulates a raw framebuffer on X11 using XShmImage / XImage.

Features implemented:
* Drawing primitives
* Drawing polygons (using Darel Rex Finley algorithm)
* Drawing arcs and circles (using Bresenham's elipses algorithm)
* Drawing images using nearest filtering
* Bounds check on every operation
* Fastpath for lines
* Font rendering using nearest filtering
* Window resize
* Thread safe implementation by using a context
* Fixed lower and upper scissors on fast-path
* Adapted coding style to nuklear's style
* Implemented text scissors

Color formats:
Define one of them at compile time.
* RAWFB_RGBX_8888 (32bpp)
* RAWFB_XRGB_8888 (32bpp)

Tested:
The library has been tested on Lenovo Thinkpad T500 and is able to render
more than 30fps on a single core with no further optimizations and VSNYC enabled.

TODO:
* Improve font rendering by using filters.
* Account font foreground color.

Usage:
The raw framebuffer library needs a "texture" that holds the prerendered
font data. The texture is used at runtime to blit the letters onto screen.
You have to provide the framebuffer address, dimension and pitch.

Signed-off-by: Patrick Rudolph <siro@das-labor.org>
2017-10-07 12:08:24 +02:00
Micha Mettke ed57400644 Merge pull request #529 from DeXP/gdip-fonts
GDI+ multiple fonts support
2017-10-04 21:41:41 +02:00
Dmitry Hrabrov 49c3bcd0c6 nk_ prefix 2017-10-04 20:05:47 +03:00
Micha Mettke e24b8ca2ba Merge pull request #526 from RomanAkberov/master
Use correct style for progressbar cursor.
2017-10-04 15:13:34 +02:00
vurtun a5f171a4c8 Merge branch 'DeXP--gles2' 2017-10-04 15:11:24 +02:00
vurtun af216a1be4 Merge branch 'gles2' of https://github.com/DeXP/nuklear into DeXP--gles2 2017-10-04 15:10:05 +02:00
Micha Mettke c582959eea Merge pull request #527 from DeXP/gdip
GDI+ nk_gdip_fill_rect background fix
2017-10-04 15:08:07 +02:00
Dmitry Hrabrov 02e6a81625 GDI+ multiple fonts support
Each custom loaded font requires own `GpFontCollection`. So there is array of font collections now.
2017-10-01 18:38:08 +03:00
Dmitry Hrabrov a01977264c Revert X11 changes 2017-10-01 18:36:40 +03:00
DeXP cc8556533f Open GL ES 2 demo
Can be used on: Linux, Mac OS X, Android, Emscripten
2017-10-01 14:10:57 +02:00
Dmitry Hrabrov 49f6b1134e Revert X11 changes 2017-10-01 14:08:06 +02:00
Dmitry Hrabrov ecee5816d5 Revert X11 changes 2017-10-01 13:42:41 +03:00
Dmitry Hrabrov d0ed8bc3cf GDI+ nk_gdip_fill_rect background fix
1. Main background area was filled by 2 big overlapping rectangles. It works good on solid but not on semi-transparent themes. Just replaced 2 big rectangles with 1 big and 2 small.
2. There is no need in [nk_gdip_fill_rect filled pies fix](7ab7327fa4) anymore. It disturbs semi-transparent themes too.
2017-10-01 13:33:52 +03:00
Roman Akberov 31c88a8ccf Use correct style for progressbar cursor. 2017-09-24 18:22:23 +02:00
vurtun 0b95e3e5a0 Fixed #525 by updating canvas example 2017-09-23 14:53:55 +02:00
Bailey Cosier 3444d8aeef Bump docs submodule revision 2017-09-21 18:18:57 +07:00
Bailey Cosier 981d542177 Add doc scripts and sphinx configuration update 2017-09-21 18:18:57 +07:00
Bailey Cosier 075e3fd349 Add .readthedocs.yml config for installing breathe dependency 2017-09-21 18:18:57 +07:00
Bailey Cosier 9d2fe7cfed Add doxygen, sphinx docs setup 2017-09-21 18:18:57 +07:00
Micha Mettke 815b5e19e4 Merge pull request #521 from valera-rozuvan/patch-3
Add comment to closing #endif statement
2017-09-20 16:43:27 +02:00
Valera Rozuvan 55206c7bea Add comment to closing #endif statement
I think this adds more clarity to the library. I.e. that it is organized into 2 large #define statements. The first large statement (`NK_NUKLEAR_H_`) has a comment for it's closing `#endif` statement. The second one (`NK_IMPLEMENTATION`) does not.
2017-09-19 16:15:21 +03:00
Micha Mettke 48f659abd8 Merge pull request #497 from jwdeitch/master
fix compiling error on OSX (-lglfw3 not found)
2017-09-18 17:41:54 +02:00
Micha Mettke 46cd4e0bd5 Merge pull request #520 from valera-rozuvan/patch-2
Remove unused line of code
2017-09-18 14:42:46 +02:00
Valera Rozuvan 3757f56824 Remove unused line of code 2017-09-18 12:00:58 +03:00
Micha Mettke 8f9ead7539 Merge pull request #519 from valera-rozuvan/patch-2
Fix comment for closing #endif
2017-09-17 21:46:55 +02:00
Valera Rozuvan 1b1b04fec0 Fix comment for closing #endif
I believe it should be `NK_NUKLEAR_H_` instead of `NK_H_`.
2017-09-17 22:25:32 +03:00
vurtun 9059628b16 Fixed #517 second attempt 2017-09-14 14:53:38 +02:00
vurtun b774329a2e Fixed #516 nk_edit_buffer and nk_edit_focus 2017-09-14 14:48:43 +02:00
vurtun 43b41f92bd Fixed window closing behavior
If a window was closed the remaining windows remain in read only mode.
This wrong behavior is now fixed.
2017-09-14 14:09:33 +02:00
vurtun 3b5123f523 Fixed #517 --!!BREAKING CHANGE!!--
Since directly modifing window position and size between function calls
nk_begin and nk_end causes drawing errors it is now required to be set
_OUTSIDE_. For that reason each modifing function now takes in the name
of the window to modify. Sorry for the inconvenience.
2017-09-14 12:59:33 +02:00
Dmitry Hrabrov 708a7ebbc3 Xlib: remove text BG rectangle
It's already window or BGcolor on background.
2017-09-11 15:15:38 +03:00
Micha Mettke 0c2a725ac7 Merge pull request #512 from DeXP/master
XLib: stb_image support with bit transparency
2017-09-11 14:12:10 +02:00
Dmitry Hrabrov f72dd6239d Optional stb_image defines 2017-09-11 14:00:20 +03:00
vurtun 31674e4b09 Fixed #503 background window flag
Fixed anotherr background window flag in case the background window is
defined last.
2017-09-11 12:47:37 +02:00
Dmitry Hrabrov 5de84dc310 Fix stb_image path 2017-09-04 12:38:04 +03:00
Dmitry Hrabrov 5fc8a250aa stb_image with bit transparency
X11 do not support transparent images itself. So the clip mask is calculating in this code. X11 ClipMask support only bit transparency.
2017-09-04 12:35:32 +03:00
DeXP f994b15b84 Merge branch 'master' of git://github.com/vurtun/nuklear 2017-09-04 12:12:16 +03:00
Micha Mettke 67b26f9c32 Merge pull request #510 from lieff/master
fix asan error (out-of-scope variable access)
2017-09-01 12:39:00 +02:00
lieff 039afa80ae fix asan error (out-of-scope variable access) 2017-09-01 13:06:49 +03:00
vurtun afa76f52ab Fixed #502 nk_item_is_any_active for hidden window 2017-08-27 17:12:19 +02:00
vurtun 7c089a5f09 Fixed #503 NK_WINDOW_BACKGROUND flag behavior
The window background flags was pretty much broken at this point. It
would completly block all input for each window. The fix itself is quite
dirty but hopefully everything works correctly now.
2017-08-27 16:57:40 +02:00