mirror of
https://github.com/keharriso/love-nuklear.git
synced 2025-09-11 00:27:48 -04:00
Compare commits
No commits in common. "master" and "v2.5.2" have entirely different histories.
8 changed files with 661 additions and 817 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1 +0,0 @@
|
||||||
build/
|
|
2
.gitmodules
vendored
2
.gitmodules
vendored
|
@ -1,3 +1,3 @@
|
||||||
[submodule "src/nuklear"]
|
[submodule "src/nuklear"]
|
||||||
path = src/nuklear
|
path = src/nuklear
|
||||||
url = https://github.com/Immediate-Mode-UI/Nuklear.git
|
url = https://github.com/vurtun/nuklear.git
|
||||||
|
|
|
@ -24,14 +24,4 @@ TARGET_LINK_LIBRARIES(
|
||||||
${LUA_LIBRARIES}
|
${LUA_LIBRARIES}
|
||||||
)
|
)
|
||||||
|
|
||||||
IF(MSVC)
|
|
||||||
TARGET_COMPILE_DEFINITIONS(${LIB_NAME} PRIVATE LUA_BUILD_AS_DLL)
|
|
||||||
endif(MSVC)
|
|
||||||
|
|
||||||
SET_TARGET_PROPERTIES("${LIB_NAME}" PROPERTIES PREFIX "")
|
SET_TARGET_PROPERTIES("${LIB_NAME}" PROPERTIES PREFIX "")
|
||||||
|
|
||||||
IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
|
|
||||||
SET(CMAKE_INSTALL_PREFIX "${CMAKE_BINARY_DIR}" CACHE PATH "..." FORCE)
|
|
||||||
ENDIF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
|
|
||||||
|
|
||||||
INSTALL(TARGETS "${LIB_NAME}" DESTINATION .)
|
|
||||||
|
|
25
README.md
25
README.md
|
@ -1,6 +1,6 @@
|
||||||
# LÖVE-Nuklear
|
# LÖVE-Nuklear
|
||||||
|
|
||||||
[Nuklear](https://github.com/Immediate-Mode-UI/Nuklear) module for the [LÖVE](https://love2d.org/) game engine.
|
[Nuklear](https://github.com/vurtun/nuklear) module for the [LÖVE](https://love2d.org/) game engine.
|
||||||
|
|
||||||
Provides a lightweight immediate mode GUI for LÖVE games.
|
Provides a lightweight immediate mode GUI for LÖVE games.
|
||||||
|
|
||||||
|
@ -98,13 +98,6 @@ $ make
|
||||||
```
|
```
|
||||||
5. Locate `nuklear.so` in the build folder.
|
5. Locate `nuklear.so` in the build folder.
|
||||||
|
|
||||||
#### Via GNU Guix
|
|
||||||
|
|
||||||
LÖVE-Nuklear is also available as a [Guix](http://guix.gnu.org/) package, and can thus be directly downloaded and built via:
|
|
||||||
```
|
|
||||||
$ guix package --install love-nuklear
|
|
||||||
```
|
|
||||||
|
|
||||||
### Compiling with CMake and MinGW on Windows
|
### Compiling with CMake and MinGW on Windows
|
||||||
|
|
||||||
1. Install [CMake](https://cmake.org/download/) and [MinGW](http://mingw.org/) or [MinGW-w64](https://mingw-w64.org/doku.php).
|
1. Install [CMake](https://cmake.org/download/) and [MinGW](http://mingw.org/) or [MinGW-w64](https://mingw-w64.org/doku.php).
|
||||||
|
@ -132,22 +125,6 @@ $ mingw32-make
|
||||||
```
|
```
|
||||||
18. Locate `nuklear.dll` inside the build folder.
|
18. Locate `nuklear.dll` inside the build folder.
|
||||||
|
|
||||||
### Compiling with CMake and MSVC on Windows
|
|
||||||
|
|
||||||
1. Install [CMake](https://cmake.org/download/) and [Visual Studio](https://visualstudio.microsoft.com/).
|
|
||||||
Community or Express edition is sufficient.
|
|
||||||
2. Download the source code for [LuaJIT](http://luajit.org/download.html).
|
|
||||||
3. Open a Visual Studio Command Prompt (x86 or x64 depending on what architecture you need)
|
|
||||||
and set the current directory to the LuaJIT folder (the one that contains "README"). Also
|
|
||||||
remember this path.
|
|
||||||
4. At the VS Command Prompt, set your current directory to `src` then
|
|
||||||
execute `msvcbuild.bat`. This will create lua51.dll, lua51.lib, and luajit.exe
|
|
||||||
5. Now open new command prompt window inside the `love-nuklear` folder.
|
|
||||||
6. Type `set "LUA_DIR=<path to directory at step 3>"`
|
|
||||||
7. Then type `cmake -Bbuild -H. -A Win32 -DLUA_INCLUDE_DIR=%LUA_DIR%\src -DLUA_LIBRARY=%LUA_DIR%\src\lua51.lib -DCMAKE_INSTALL_PREFIX=%CD%\install`.
|
|
||||||
If you previously compile LuaJIT using x64 VS command prompt, replace `Win32` with `x64` at above command.
|
|
||||||
8. Then type `cmake --build build --config Release --target install` and you'll found `nuklear.dll` inside "install" folder.
|
|
||||||
|
|
||||||
## Documentation
|
## Documentation
|
||||||
|
|
||||||
A complete description of all functions and style properties, alongside additional examples, is available at the [LÖVE-Nuklear wiki](https://github.com/keharriso/love-nuklear/wiki).
|
A complete description of all functions and style properties, alongside additional examples, is available at the [LÖVE-Nuklear wiki](https://github.com/keharriso/love-nuklear/wiki).
|
||||||
|
|
|
@ -14,7 +14,6 @@ local transform = require 'transform'
|
||||||
local ui1, ui2
|
local ui1, ui2
|
||||||
|
|
||||||
function love.load()
|
function love.load()
|
||||||
love.keyboard.setKeyRepeat(true)
|
|
||||||
ui1, ui2 = nuklear.newUI(), nuklear.newUI()
|
ui1, ui2 = nuklear.newUI(), nuklear.newUI()
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,6 @@ local colorPicker = {value = '#ff0000'}
|
||||||
local property = {value = 6}
|
local property = {value = 6}
|
||||||
local edit = {value = 'Edit text'}
|
local edit = {value = 'Edit text'}
|
||||||
local comboA = {value = 1, items = {'A', 'B', 'C'}}
|
local comboA = {value = 1, items = {'A', 'B', 'C'}}
|
||||||
local scissorActive = false
|
|
||||||
|
|
||||||
return function (ui)
|
return function (ui)
|
||||||
if ui:windowBegin('Overview', 100, 100, 600, 450, 'border', 'movable', 'title') then
|
if ui:windowBegin('Overview', 100, 100, 600, 450, 'border', 'movable', 'title') then
|
||||||
|
@ -50,9 +49,6 @@ return function (ui)
|
||||||
ui:spacing(1)
|
ui:spacing(1)
|
||||||
ui:checkbox('Checkbox A', checkA)
|
ui:checkbox('Checkbox A', checkA)
|
||||||
ui:checkbox('Checkbox B', checkB)
|
ui:checkbox('Checkbox B', checkB)
|
||||||
if ui:button('Scissor') then
|
|
||||||
scissorActive = not scissorActive
|
|
||||||
end
|
|
||||||
ui:groupEnd()
|
ui:groupEnd()
|
||||||
end
|
end
|
||||||
if ui:groupBegin('Group 2', 'border') then
|
if ui:groupBegin('Group 2', 'border') then
|
||||||
|
@ -108,11 +104,4 @@ return function (ui)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
ui:windowEnd()
|
ui:windowEnd()
|
||||||
if(scissorActive) then
|
|
||||||
love.graphics.setScissor()
|
|
||||||
love.graphics.clear()
|
|
||||||
love.graphics.setScissor(130, 130, 500, 400)
|
|
||||||
else
|
|
||||||
love.graphics.setScissor()
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Subproject commit 614abce05b9455849bbf1519b7f86e53c78b04ab
|
Subproject commit 181cfd86c47ae83eceabaf4e640587b844e613b6
|
1426
src/nuklear_love.c
1426
src/nuklear_love.c
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue