View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0003044 | Far Manager | Plugins API.Editor | public | 2015-07-31 15:43 | 2024-08-26 15:01 |
Reporter | JohnDoe | Assigned To | |||
Priority | normal | Severity | minor | Reproducibility | have not tried |
Status | new | Resolution | open | ||
Product Version | 3.0 | ||||
Summary | 0003044: EF_NONMODAL не сработает, если в момент вызова Editor активен модальный редактор. | ||||
Description | Сценарий: плагин хочет открыть немодальный редактор, и сразу же получив управление обратно что-то сделать с его содержимым. Проблема: если в этот момент активен другой, модальный реактор, то открытый плагином новый редактор будет модальным! Следствие: плагин получит управление только после закрытия СВОЕГО редактора, а всю работу ошибочно произведёт в ЧУЖОМ редакторе! Предлагаемое решение: В описанном сценарии попытка открытия немодального редактора должна заканчиваться неудачей, что необходимо документировать (возможно нужен отдельный флаг для возвращаемого значения) | ||||
Steps To Reproduce | Macro { area="Common"; key="F1"; action=function() editor.Editor([[C:\CONFIG.SYS]]) end } Macro { area="Editor"; key="F2"; action=function() editor.Editor([[C:\autoexec.bat]],nil,nil,nil,nil,nil,{EF_NONMODAL=1,EF_IMMEDIATERETURN=1,EF_ENABLE_F6=1}) assert(Area.Editor) -- далее действия над текстом в редакторе end } Нажать F1 для открытия модального редактора. Нажать F2 для попытки открытия немодального редактора, и убедиться, что он оказался модальный. | ||||
Additional Information | http://api.farmanager.com/ru/service_functions/editor.html http://forum.farmanager.com/viewtopic.php?p=121151#p121151 Информация для размышления: Можно ли сделать так, чтобы флаг EF_IMMEDIATERETURN действовал и в модальном редакторе? В настоящий момент "модальность" предполагает два разных свойства: - невозможность переключиться в другие окна - возврат управления только после закрытия редактора Возможно есть смысл их разделить? | ||||
Tags | No tags attached. | ||||
Build | |||||