Fixed starting scripts from "Tools" page

This commit is contained in:
Raphael Coeffic
2021-05-30 08:10:02 +02:00
parent df79e10be5
commit 54a7ef68e0
2 changed files with 27 additions and 18 deletions
+1 -3
View File
@@ -29,8 +29,6 @@
extern uint8_t g_moduleIdx;
#define TOOL_NAME_MAXLEN 16
RadioToolsPage::RadioToolsPage():
PageTab(STR_MENUTOOLS, ICON_RADIO_TOOLS)
{
@@ -104,7 +102,7 @@ void RadioToolsPage::rebuild(FormWindow * window)
strcat(path, fno.fname);
if (isRadioScriptTool(fno.fname)) {
char toolName[TOOL_NAME_MAXLEN + 1];
char toolName[RADIO_TOOL_NAME_MAXLEN + 1] = {0};
const char * label;
char * ext = (char *)getFileExtension(path);
if (readToolName(toolName, path)) {
+26 -15
View File
@@ -748,29 +748,38 @@ void displayLuaError(const char * title)
{
#if !defined(COLORLCD)
drawMessageBox(title);
#endif
if (lua_warning_info[0]) {
char * split = strstr(lua_warning_info, ": ");
char *split = strstr(lua_warning_info, ": ");
if (split) {
#if LCD_W == 128
if (strlen(split + 2) <= 20) {
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + FH + 3, lua_warning_info, split - lua_warning_info, SMLSIZE);
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + 2 * FH + 2, split + 2, strlen(split + 2), SMLSIZE);
}
else {
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + FH, lua_warning_info, split - lua_warning_info, SMLSIZE);
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + 2 * FH, split + 2, 20, SMLSIZE);
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + 3 * FH, split + 22, strlen(split + 22), SMLSIZE);
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + FH + 3,
lua_warning_info, split - lua_warning_info, SMLSIZE);
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + 2 * FH + 2, split + 2,
strlen(split + 2), SMLSIZE);
} else {
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + FH, lua_warning_info,
split - lua_warning_info, SMLSIZE);
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + 2 * FH, split + 2, 20,
SMLSIZE);
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + 3 * FH, split + 22,
strlen(split + 22), SMLSIZE);
}
#elif LCD_W == 64
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + FH + 3, lua_warning_info, split - lua_warning_info, SMLSIZE);
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + 2 * FH + 2, split + 2, lua_warning_info + LUA_WARNING_INFO_LEN - split, SMLSIZE);
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + FH + 3,
lua_warning_info, split - lua_warning_info, SMLSIZE);
lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + 2 * FH + 2, split + 2,
lua_warning_info + LUA_WARNING_INFO_LEN - split,
SMLSIZE);
#endif
}
else {
// TODO lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + FH + 3, lua_warning_info, 40, SMLSIZE);
} else {
// TODO lcdDrawSizedText(WARNING_LINE_X, WARNING_LINE_Y + FH + 3,
// lua_warning_info, 40, SMLSIZE);
}
}
#else
POPUP_WARNING(title, lua_warning_info);
#endif
}
#if !defined(COLORLCD)
@@ -825,6 +834,8 @@ void luaError(lua_State * L, uint8_t error, bool acknowledge)
warningText = errorTitle;
warningType = WARNING_TYPE_INFO;
popupFunc = displayAcknowledgeLuaError;
#else
POPUP_WARNING(errorTitle, lua_warning_info);
#endif
}
else {
@@ -1191,7 +1202,7 @@ bool readToolName(char * toolName, const char * filename)
return false;
strncpy(toolName, start, len);
memclear(toolName + len, RADIO_TOOL_NAME_MAXLEN + 1 - len);
toolName[len] = '\0';
return true;
}