summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjussi2024-02-22 01:10:22 +0200
committerjussi2024-02-22 01:10:22 +0200
commit04d2a7df47210f7ac4b9a44ade49af3d92375ee0 (patch)
tree84ea1c136f91822506f24b7f6ffb1bd076077392
parent178196b0ffb8e2358ce9b0be5e1570a10136eb45 (diff)
downloadreilua-enhanced-04d2a7df47210f7ac4b9a44ade49af3d92375ee0.tar.gz
reilua-enhanced-04d2a7df47210f7ac4b9a44ade49af3d92375ee0.tar.bz2
reilua-enhanced-04d2a7df47210f7ac4b9a44ade49af3d92375ee0.zip
GuiGetFont fix.
-rw-r--r--API.md2
-rw-r--r--ReiLua_API.lua2
-rw-r--r--changelog2
-rw-r--r--examples/raygui_extensions/main.lua8
-rw-r--r--examples/resources/lib/raygui.lua6
-rw-r--r--include/state.h1
-rw-r--r--src/rgui.c8
-rw-r--r--src/state.c1
8 files changed, 19 insertions, 11 deletions
diff --git a/API.md b/API.md
index b6323b7..215ca5e 100644
--- a/API.md
+++ b/API.md
@@ -8805,7 +8805,7 @@ Set gui custom font (global state)
> font = RL.GuiGetFont()
-Get gui custom font (global state)
+Get gui custom font (global state). Return as lightuserdata
- Success return Font
diff --git a/ReiLua_API.lua b/ReiLua_API.lua
index 8dd0899..0b6f9b5 100644
--- a/ReiLua_API.lua
+++ b/ReiLua_API.lua
@@ -5924,7 +5924,7 @@ function RL.GuiGetState() end
---@return any RL.GuiSetFont
function RL.GuiSetFont( font ) end
----Get gui custom font (global state)
+---Get gui custom font (global state). Return as lightuserdata
---- Success return Font
---@return any font
function RL.GuiGetFont() end
diff --git a/changelog b/changelog
index 91c5449..6bbc481 100644
--- a/changelog
+++ b/changelog
@@ -10,6 +10,8 @@ KEY CHANGES:
DETAILED CHANGES:
- ADDED: GetBufferElementSize and GetBufferLength.
- FIXED: Compress_data example.
+ - FIXED: GuiGetFont return lightuserdata.
+ - FIXED: GuiSetStyle, GuiLoadStyle and GuiLoadStyleDefault sets state->guiDefaultFont to GuiGetFont.
------------------------------------------------------------------------
Release: ReiLua version 0.7.0 Using Raylib 5.0 and Forked Raygui 4.0
diff --git a/examples/raygui_extensions/main.lua b/examples/raygui_extensions/main.lua
index e3f559d..a7dfa15 100644
--- a/examples/raygui_extensions/main.lua
+++ b/examples/raygui_extensions/main.lua
@@ -248,10 +248,10 @@ function RL.init()
RL.SetWindowSize( winSize )
RL.SetWindowPosition( { mPos.x + mSize.x / 2 - winSize.x / 2, mPos.y + mSize.y / 2 - winSize.y / 2 } )
- RL.GuiSetStyle( RL.DEFAULT, RL.TEXT_SIZE, 20 )
- RL.GuiSetStyle( RL.DEFAULT, RL.TEXT_SPACING, 4 )
- RL.GuiSetStyle( RL.SPINNER, RL.TEXT_ALIGNMENT, RL.TEXT_ALIGN_RIGHT )
- RL.GuiSetStyle( RL.SPINNER, RL.TEXT_PADDING, 2 )
+ -- RL.GuiSetStyle( RL.DEFAULT, RL.TEXT_SIZE, 20 )
+ -- RL.GuiSetStyle( RL.DEFAULT, RL.TEXT_SPACING, 4 )
+ -- RL.GuiSetStyle( RL.SPINNER, RL.TEXT_ALIGNMENT, RL.TEXT_ALIGN_RIGHT )
+ -- RL.GuiSetStyle( RL.SPINNER, RL.TEXT_PADDING, 2 )
cat.texture = RL.LoadTexture( RL.GetBasePath().."../resources/images/cat.png" )
local texSize = Vec2:new( RL.GetTextureSize( cat.texture ) )
diff --git a/examples/resources/lib/raygui.lua b/examples/resources/lib/raygui.lua
index 63bbf2f..cd02c78 100644
--- a/examples/resources/lib/raygui.lua
+++ b/examples/resources/lib/raygui.lua
@@ -1733,7 +1733,7 @@ function Raygui:new()
object.textEdit = false
object.defaultTexture = RL.GetTextureDefault()
object.defaultRect = Rect:new( 0, 0, 1, 1 ) -- For texture.
- object.defaultFont = RL.GetFontDefault()
+ object.defaultFont = RL.GuiGetFont()
object.mouseOffset = Vec2:new()
object.view = Rect:new() -- Active if larger than 0. Then only controls in view will be updated and drawn.
object.tooltip = {
@@ -1788,7 +1788,7 @@ function Raygui:update()
if control.tooltip ~= nil then
self.tooltip.focused = i
-
+
if self.tooltip.timer < self.tooltip.delay then
self.tooltip.timer = self.tooltip.timer + RL.GetFrameTime()
else
@@ -1866,7 +1866,7 @@ function Raygui:drawTooltip()
view.width = screenSize.x
view.height = screenSize.y
end
-
+
RL.GuiDummyRec( tooltipRect:clampInside( view ), self.tooltip.text )
end
diff --git a/include/state.h b/include/state.h
index d657034..63ab870 100644
--- a/include/state.h
+++ b/include/state.h
@@ -13,6 +13,7 @@ typedef struct {
Vector2 resolution;
int logLevelInvalid;
Font defaultFont;
+ Font guiDefaultFont;
Material defaultMaterial;
Texture defaultTexture;
int* RLGLcurrentShaderLocs;
diff --git a/src/rgui.c b/src/rgui.c
index 3a4420c..fb5a7ad 100644
--- a/src/rgui.c
+++ b/src/rgui.c
@@ -119,6 +119,7 @@ int lguiGuiSetFont( lua_State* L ) {
Font* font = uluaGetFont( L, 1 );
GuiSetFont( *font );
+ state->guiDefaultFont = GuiGetFont();
return 0;
}
@@ -126,12 +127,12 @@ int lguiGuiSetFont( lua_State* L ) {
/*
> font = RL.GuiGetFont()
-Get gui custom font (global state)
+Get gui custom font (global state). Return as lightuserdata
- Success return Font
*/
int lguiGuiGetFont( lua_State* L ) {
- uluaPushFont( L, GuiGetFont() );
+ lua_pushlightuserdata( L, &state->guiDefaultFont );
return 1;
}
@@ -151,6 +152,7 @@ int lguiGuiSetStyle( lua_State* L ) {
int value = luaL_checkinteger( L, 3 );
GuiSetStyle( control, property, value );
+ state->guiDefaultFont = GuiGetFont();
return 0;
}
@@ -190,6 +192,7 @@ int lguiGuiLoadStyle( lua_State* L ) {
return 1;
}
+ state->guiDefaultFont = GuiGetFont();
TraceLog( state->logLevelInvalid, "Invalid file '%s'", lua_tostring( L, 1 ) );
lua_pushnil( L );
@@ -203,6 +206,7 @@ Load style default over global style
*/
int lguiGuiLoadStyleDefault( lua_State* L ) {
GuiLoadStyleDefault();
+ state->guiDefaultFont = GuiGetFont();
return 0;
}
diff --git a/src/state.c b/src/state.c
index 37b4ddd..9df5d94 100644
--- a/src/state.c
+++ b/src/state.c
@@ -29,6 +29,7 @@ bool stateInit( int argn, const char** argc, const char* exePath ) {
state->run = luaInit( argn, argc );
}
state->defaultFont = GetFontDefault();
+ state->guiDefaultFont = GuiGetFont();
state->defaultMaterial = LoadMaterialDefault();
state->defaultTexture = (Texture){ 1, 1, 1, 1, 7 };
state->RLGLcurrentShaderLocs = malloc( RL_MAX_SHADER_LOCATIONS * sizeof( int ) );