Fixed starting scripts from "Tools" page
This commit is contained in:
@@ -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
@@ -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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user