From 56e3d0a7bdbba177123f793c8e99952cd48d596d Mon Sep 17 00:00:00 2001 From: Igor Timofeev Date: Fri, 20 Jan 2017 11:06:46 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=20=D0=BD=D0=B5=D0=B4=D0=BE=D1=87=D0=B5=D1=82,=20?= =?UTF-8?q?=D0=BA=D0=BE=D0=B3=D0=B4=D0=B0=20=D0=BE=D1=82=D0=BB=D0=B0=D0=B4?= =?UTF-8?q?=D1=87=D0=B8=D0=BA=20=D0=B8=D1=81=D0=BA=D0=B0=D0=BB=20=D0=B2?= =?UTF-8?q?=D0=BE=D0=B7=D0=BC=D0=BE=D0=B6=D0=BD=D1=8B=D0=B5=20=D0=BF=D0=B5?= =?UTF-8?q?=D1=80=D0=B5=D0=BC=D0=B5=D0=BD=D0=BD=D1=8B=D0=B5=20=D0=B2=20?= =?UTF-8?q?=D1=81=D1=82=D1=80=D0=BE=D0=BA=D0=B0=D1=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .DS_Store | Bin 18436 -> 18436 bytes Applications/.DS_Store | Bin 79876 -> 79876 bytes .../MineCodeIDE/Localization/English.lang | 1 + .../MineCodeIDE/Localization/Russian.lang | 1 + Applications/MineCodeIDE/MineCodeIDE.lua | 21 +++++++++++------- 5 files changed, 15 insertions(+), 8 deletions(-) diff --git a/.DS_Store b/.DS_Store index fd0f421f3c62ed2e365bb9f7f0743cab8feccc52..e1afaa0999cdd98af8c970a378aee31c5c28eeb2 100644 GIT binary patch delta 18 acmZpfz}PZ@al;m|$vYK2H~$r5Hv|Ak{|8wB delta 39 vcmZpfz}PZ@al;ld5o1de9R(vxqgow>YD-IV9R)KZi^+mkrknqYu^R#a=r{{3 diff --git a/Applications/.DS_Store b/Applications/.DS_Store index 830ba0fefecae23a22536bcbae576a9039d34661..f0250a3169b82006470fad5a40c6302184417fc3 100644 GIT binary patch delta 402 zcmXYqO(=tL0LK5%dS(A*yx3m*&&NU`3{yTDGEp+hcN`>p+tiykiw%u~)J{U?e{gVd z_7y2ca=_JLB{?ZMxNh=s6JDOn)AQ@;dBSla92d5uv{hF9G9kM4O@|4lB-WAc?&L>` znY)(9%)2S(+=8OAsv2i=+nq5rO-#?AlsiUCQ=Tckld>#EW@R}%=Cnw9u~0ueBP&xg zN-(5#^K6Xr_=hAE+8ER599D-4k65A0b#6S9T99` z3p?1uJ`Qk-D9&(=8{FcaXwu=&N!Onn{v*KykDXX~@H~&Z4u#VT32i#Qa%JF;C&uH% Lg$Kux%RuNGE`Vux delta 72 zcmV-O0Jr~y@C1bL1faN+WRV?{$>q6|&(gG$Hs{lm)V3Fsv$`IWKokVCKIjzzv!Ht~ e0h5fv3X|Tp4YM%4VF8n%RhN?>dNH#azv_5q@gxZV diff --git a/Applications/MineCodeIDE/Localization/English.lang b/Applications/MineCodeIDE/Localization/English.lang index fcd1668e..fd0d9fd6 100755 --- a/Applications/MineCodeIDE/Localization/English.lang +++ b/Applications/MineCodeIDE/Localization/English.lang @@ -1,6 +1,7 @@ { debugging = "Debugger on line ", runtimeError = "Runtime error", + variablesNotAvailable = "No variables found", variables = "Values of the variables:", scalePlus = "Increase scale", scaleMinus = "Decrease scale", diff --git a/Applications/MineCodeIDE/Localization/Russian.lang b/Applications/MineCodeIDE/Localization/Russian.lang index bc588ca7..d92b3ae5 100755 --- a/Applications/MineCodeIDE/Localization/Russian.lang +++ b/Applications/MineCodeIDE/Localization/Russian.lang @@ -1,6 +1,7 @@ { debugging = "Отладчик на строке ", runtimeError = "Ошибка при выполнении программы", + variablesNotAvailable = "Не найдено возможных переменных", variables = "Значения переменных:", scalePlus = "Увеличить масштаб", scaleMinus = "Уменьшить масштаб", diff --git a/Applications/MineCodeIDE/MineCodeIDE.lua b/Applications/MineCodeIDE/MineCodeIDE.lua index 84e58cd3..c397aa13 100755 --- a/Applications/MineCodeIDE/MineCodeIDE.lua +++ b/Applications/MineCodeIDE/MineCodeIDE.lua @@ -254,15 +254,19 @@ local function showBreakpointMessage(variables) mainWindow.errorMessage.isHidden = false mainWindow.errorMessage.errorTextBox:setAlignment(GUI.alignment.horizontal.center, GUI.alignment.vertical.top) - mainWindow.errorMessage.errorTextBox.lines = { - {text = localization.variables, color = 0x0}, - " ", - } + mainWindow.errorMessage.errorTextBox.lines = {} for variable, value in pairs(variables) do table.insert(mainWindow.errorMessage.errorTextBox.lines, variable .. " = " .. value) end + if #mainWindow.errorMessage.errorTextBox.lines > 0 then + table.insert(mainWindow.errorMessage.errorTextBox.lines, 1, " ") + table.insert(mainWindow.errorMessage.errorTextBox.lines, 1, {text = localization.variables, color = 0x0}) + else + table.insert(mainWindow.errorMessage.errorTextBox.lines, 1, {text = localization.variablesNotAvailable, color = 0x0}) + end + calculateErrorMessageSizeAndBeep() end @@ -551,15 +555,16 @@ local function getVariables(codePart) word ~= "nil" and word ~= "not" and word ~= "and" and - word ~= "or" + word ~= "or" and + -- А вот это надо на всякий пожарный, вдруг это ебучая строка с дохуяллионом кавычек + not word:match("^\".+\"$") then -- Затем извлекаем из наших слов куски без всяких хитрожопых символов, оставляя лишь буковки с циферками for variable in word:gmatch("[^%[%]%{%}%(%)%;%,%=%+%-%*%/%^%%%>%<]+") do - -- Попутно чекаем, не является ли этот кусок числом или строкой + -- Попутно чекаем, не является ли этот кусок числом if not variable:match("^%d+$") and - not variable:match("^0x%x+$") and - not variable:match("^\".+\"$") + not variable:match("^0x%x+$") then variables[variable] = true end