View Issue Details

IDProjectCategoryView StatusLast Update
0003657Far ManagerPlugins API.Dialogpublic2018-10-08 21:24
ReportershmuelAssigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
Platformx86OSWindowsOS Version7
Product Version3.0 
Target VersionFixed in Version 
Summary0003657: DM_SETTEXT не сбрасывает LeftPos в ноль
DescriptionЕсли в DI_EDIT отображается текст, превышающий длину контрола, то обычно показывается "хвост" текста, то есть LeftPos выставлен > 0. Если при этом послать DM_SETTEXT с текстом меньшей длины, то из-за того, что не сбрасывается LeftPos, отображается только часть нового текста (или совсем ничего), даже если он помещается по длине контрола.
Steps To Reproduce
local F=far.Flags
local Toggle = false
local Items = {
--[[01]]  {F.DI_TEXT,    5,1, 5,1, 0, 0,0,0, "&Some text"},
--[[02]]  {F.DI_EDIT,    5,2,28,2, 0,"",0,0, ""},
--[[03]]  {F.DI_CHECKBOX,5,4, 5,4, 0, 0,0,0, "&Toggle"},
}
local EDT, CHKBOX = 2,3

local function DlgProc (hDlg,Msg,Param1,Param2)
  if Msg == F.DN_BTNCLICK and Param1==CHKBOX then
    Toggle = not Toggle
    local text = Toggle and ("abcd_"):rep(5) or "12345"
    hDlg:send("DM_SETTEXT", EDT, text)
  end
end

local guid = win.Uuid("21A9E11B-A095-4A94-A559-5C40593D5B62")
far.Dialog (guid,-1,-1,34,6,nil,Items,nil,DlgProc)
TagsNo tags attached.
Build

Activities

There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
2018-10-08 21:04 shmuel New Issue
2018-10-08 21:24 shmuel Category Dialog => Plugins API.Dialog