LuaFAR: ломка API

Здесь обсуждается всё, что касается макросов.
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: LuaFAR: ломка API

Post by Shmuel »

Latest post of the previous page:

Max Rusov wrote:Я правильно понял, что все мои честно нажитые макросы теперь будут глючить? Спасибо, конечно...
А у других, нечестно нажитые? Полагаю, что мне пришлось в связи с этим сломом править своего кода на порядок больше, чем придётся вам. Иногда перемены бывают болезненными, да. Но исправлять надо один раз, а пользоваться улучшенным АПИ - долго.
User avatar
John Doe
Бюрократ
Posts: 13862
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Re: LuaFAR: ломка API

Post by John Doe »

Max Rusov wrote:Видимо, нет. Никто не предупреждал, что какими-то функциями пользоваться нельзя.
Если вы пользовались функциями из luafar_manual.chm, то да, всё ожидаемо.
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

Re: LuaFAR: ломка API

Post by SUSim »

Всё не так страшно, когда об этом предупреждают, что было сделано!
я сильно обиделся, когда ввели -n в строковых функциях - поиск багов в макросах которые раньше отрицательные числа воспринимали как 0 был ещё тот квест ну я не жаловался - лишняя разминка для ума :)
SimSU ··· ·· -- ··· ··-
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: LuaFAR: ломка API

Post by Shmuel »

SUSim wrote:я сильно обиделся, когда ввели -n в строковых функциях
Да -n вроде никто нигде не вводил. Если вы имеете в виду стандартные функции Lua, то -n там уже много лет.
User avatar
John Doe
Бюрократ
Posts: 13862
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Re: LuaFAR: ломка API

Post by John Doe »

Shmuel
До Lua ещё ввели (в макроязыке)
2useven10
Posts: 5232
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 18 times
Been thanked: 315 times

Re: LuaFAR: ломка API

Post by 2useven10 »

это есть и в перл и даже в батниках.
и кроме всего прочего это удобно.
User avatar
Aidar
Posts: 541
Joined: Mon 09 Mar, 2009 22:43
Location: Kazan
Has thanked: 8 times
Been thanked: 7 times
Contact:

Re: LuaFAR: ломка API

Post by Aidar »

SUSim wrote:...Про координаты экрана тоже лучше с 1, геометрию тут притягивать не надо (а то 0, 0 надо помещать в нижний левый угол экрана)!...
Нумерация с 1 нужна для строк и таблиц, где так принято в Lua. А экранные координаты принято нумеровать с 0. В том числе, насколько я помню, так принято и в библиотеке IUP от авторов Lua.
К тому же для вывода придётся прибавлять 1, который будет всё равно вычитаться в LuaFAR API, а в обработчиках мыши - наоборот.
User avatar
John Doe
Бюрократ
Posts: 13862
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Re: LuaFAR: ломка API

Post by John Doe »

Баг.
В DialogEvent параметр param.Param1 приходит в виде 0-based значения
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: LuaFAR: ломка API

Post by Shmuel »

John Doe wrote:Баг.
В DialogEvent параметр param.Param1 приходит в виде 0-based значения
Не баг, а недоделка. :)
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: LuaFAR: ломка API

Post by Shmuel »

DialogEvent доработан в смысле параметров, кроме Param2 в сообщениях DM_XXX, который механически передаётся числом.

Вроде пока никому не требовалось обрабатывать DM_XXX в DialogEvent. Когда потребуется практически, можно будет дописать.
User avatar
Smitis
Posts: 1709
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 23 times
Been thanked: 55 times

Re: LuaFAR: ломка API

Post by Smitis »

panel.GetPanelItem нумерует элементы с нуля
Разум когда-нибудь победит.
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: LuaFAR: ломка API

Post by Shmuel »

Smitis wrote:panel.GetPanelItem нумерует элементы с нуля
Скорее всего, вас ввело в заблуждение, что при передаче нуля возвращается элемент. Дело в том, что эта функция для всех индексов <= 1 возвращает первый элемент. Это не знвчит, однако, что элементы нумеруются с нуля.
User avatar
Smitis
Posts: 1709
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 23 times
Been thanked: 55 times

Re: LuaFAR: ломка API

Post by Smitis »

А, сорри, действительно :oops:
Разум когда-нибудь победит.
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: LuaFAR: ломка API

Post by Shmuel »

Shmuel wrote:Дело в том, что эта функция для всех индексов <= 1 возвращает первый элемент. Это не знвчит, однако, что элементы нумеруются с нуля.
Это больше не так:
changelog 18.04.2013 08:54:23 +0200 wrote:LuaFAR: panel.GetPanelItem и panel.GetSelectedPanelItem возвращают nil для неположительных индексов элемента.
User avatar
Smitis
Posts: 1709
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 23 times
Been thanked: 55 times

Re: LuaFAR: ломка API

Post by Smitis »

LuaFAR: panel.GetPanelItem и panel.GetSelectedPanelItem возвращают nil для неположительных индексов элемента.
Для нулевого тоже? Это было бы логично.
Разум когда-нибудь победит.
Shmuel
Posts: 6840
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Re: LuaFAR: ломка API

Post by Shmuel »

Smitis wrote:Для нулевого тоже? Это было бы логично.
Да.
Post Reply

Return to “Обсуждение макросов”