diff --git a/modules/game_textwindow/textwindow.lua b/modules/game_textwindow/textwindow.lua index bde2dd08..f01f1f52 100644 --- a/modules/game_textwindow/textwindow.lua +++ b/modules/game_textwindow/textwindow.lua @@ -40,34 +40,64 @@ function onGameEditText(id, itemId, maxLength, text, writter, time) local desc = '' if #writter > 0 then desc = tr('You read the following, written by \n%s\n', writter) - if #time > 0 then desc = desc .. tr('on %s.\n', time) end elseif #time > 0 then - desc = tr('You read the following, written on %s.\n', time) + desc = tr('You read the following, written on \n%s.\n', time) end if #text == 0 and not writeable then - desc = tr("It is empty.\n") + desc = tr("It is empty.") elseif writeable then desc = desc .. tr('You can enter new text.') end + local lines = #{string.find(desc, '\n')} + if lines < 2 then desc = desc .. '\n' end + description:setText(desc) if not writeable then textWindow:setText(tr('Show Text')) + --textEdit:wrapText() cancelButton:hide() + cancelButton:setWidth(0) + okButton:setMarginRight(0) else textWindow:setText(tr('Edit Text')) end - doneFunc = function() + local doneFunc = function() if writeable then g_game.editText(id, textEdit:getText()) end - textEdit = nil + destroy() + end + + okButton.onClick = doneFunc + cancelButton.onClick = destroy + --textWindow.onEnter = doneFunc -- this should be '\n' + textWindow.onEscape = destroy +end + +function onGameEditList(id, doorId, text) + if textWindow then return end + textWindow = g_ui.createWidget('TextWindow', rootWidget) + + local textEdit = textWindow:getChildById('text') + local description = textWindow:getChildById('description') + local okButton = textWindow:getChildById('okButton') + local cancelButton = textWindow:getChildById('cancelButton') + + textEdit:setMaxLength(8192) + textEdit:setText(text) + textEdit:setEnabled(true) + description:setText(tr('Enter one name per line.')) + textWindow:setText(tr('Edit List')) + + doneFunc = function() + g_game.editList(id, doorId, textEdit:getText()) destroy() end @@ -76,6 +106,7 @@ function onGameEditText(id, itemId, maxLength, text, writter, time) textWindow.onEscape = destroy end + function onGameEditList(id, doorId, text) if textWindow then return end textWindow = g_ui.createWidget('TextWindow', rootWidget)