Commit Graph

1487 Commits

Author SHA1 Message Date
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
vurtun
a2472f8c36 Fixed #501 incorrect documentation for nk_input_scroll 2017-08-21 11:15:17 +02:00
Micha Mettke
d7f757b8f2 Merge pull request #499 from reujab/master
Corrected line count
2017-08-20 09:26:26 +02:00
reujab
4a82680e23 corrected line count 2017-08-19 18:48:52 -04:00
Micha Mettke
1aebb41ec4 Merge pull request #495 from cascade256/master
Fix GLFW double clicking
2017-08-19 11:21:48 +02:00
vurtun
fcbbc4ae87 Merge branch 'stillwarter-master' 2017-08-19 11:20:04 +02:00
StillWarter
e454fcf8d1 nk_iceilf now returns correct value when x >= 0 2017-08-19 12:45:00 +08:00
jwdeitch
52f24d4e67 fix compiling error on OSX
error: ld: library not found for -lglfw3
2017-08-17 00:58:08 -04:00