From c60d3858d2ef86cf8edacd41c039fb8a668d26e7 Mon Sep 17 00:00:00 2001 From: 3djc Date: Wed, 18 Sep 2019 17:55:51 +0200 Subject: [PATCH] Allow longer toolsname on wide screens (#6805) --- radio/src/gui/480x272/radio_tools.cpp | 2 +- radio/src/gui/common/stdlcd/radio_tools.cpp | 6 ++---- radio/src/lua/interface.cpp | 4 ++-- radio/src/lua/lua_api.h | 7 ++++++- 4 files changed, 11 insertions(+), 8 deletions(-) diff --git a/radio/src/gui/480x272/radio_tools.cpp b/radio/src/gui/480x272/radio_tools.cpp index 283799234..cf560fd71 100644 --- a/radio/src/gui/480x272/radio_tools.cpp +++ b/radio/src/gui/480x272/radio_tools.cpp @@ -49,7 +49,7 @@ void addRadioModuleTool(uint8_t index, const char * label, bool (* tool)(event_t #if defined(LUA) void addRadioScriptTool(uint8_t index, const char * path) { - char toolName[TOOL_NAME_MAXLEN + 1]; + char toolName[RADIO_TOOL_NAME_MAXLEN + 1]; const char * label; char * ext = (char *)getFileExtension(path); if (readToolName(toolName, path)) { diff --git a/radio/src/gui/common/stdlcd/radio_tools.cpp b/radio/src/gui/common/stdlcd/radio_tools.cpp index 9eb478507..1ac177c21 100644 --- a/radio/src/gui/common/stdlcd/radio_tools.cpp +++ b/radio/src/gui/common/stdlcd/radio_tools.cpp @@ -46,15 +46,13 @@ void addRadioModuleTool(uint8_t index, const char * label, void (* tool)(event_t } } -#define TOOL_NAME_MAXLEN 16 - #if defined(LUA) void addRadioScriptTool(uint8_t index, const char * path) { - char toolName[TOOL_NAME_MAXLEN + 1]; + char toolName[RADIO_TOOL_NAME_MAXLEN + 1]; if (!readToolName(toolName, path)) { - strAppendFilename(toolName, getBasename(path), TOOL_NAME_MAXLEN); + strAppendFilename(toolName, getBasename(path), RADIO_TOOL_NAME_MAXLEN); } if (addRadioTool(index, toolName)) { diff --git a/radio/src/lua/interface.cpp b/radio/src/lua/interface.cpp index f1bdbe0f6..73b71da62 100644 --- a/radio/src/lua/interface.cpp +++ b/radio/src/lua/interface.cpp @@ -1150,11 +1150,11 @@ bool readToolName(char * toolName, const char * filename) return false; uint8_t len = end - start; - if (len > TOOL_NAME_MAXLEN) + if (len > RADIO_TOOL_NAME_MAXLEN) return false; strncpy(toolName, start, len); - memclear(toolName + len, TOOL_NAME_MAXLEN + 1 - len); + memclear(toolName + len, RADIO_TOOL_NAME_MAXLEN + 1 - len); return true; } diff --git a/radio/src/lua/lua_api.h b/radio/src/lua/lua_api.h index 007e7b8f1..71a1cef01 100644 --- a/radio/src/lua/lua_api.h +++ b/radio/src/lua/lua_api.h @@ -171,7 +171,12 @@ void registerBitmapClass(lua_State * L); void luaSetInstructionsLimit(lua_State* L, int count); int luaLoadScriptFileToState(lua_State * L, const char * filename, const char * mode); -#define TOOL_NAME_MAXLEN 16 +#if LCD_W > 350 + #define RADIO_TOOL_NAME_MAXLEN 40 +#else + #define RADIO_TOOL_NAME_MAXLEN 16 +#endif + bool readToolName(char * toolName, const char * filename); bool isRadioScriptTool(const char * filename);