anchor.diff:  end;
   
   
  +procedure DoControl_SetState_Combobox(C: TCombobox; const SValue: string);
  +var
  +  N: integer;
  +begin
  +  if C.ReadOnly then
  +  begin
  +    N:= StrToIntDef(SValue, -1);
  +    if (N>=0) and (N<C.Items.Count) then
  +      C.ItemIndex:= N;
  +  end
  +  else
  +    C.Text:= SValue;
  +end;
  +
  +procedure DoControl_SetState_Checkbox(C: TCheckbox; const SValue: string);
  +begin
  +  if SValue='1' then C.Checked:= true else
  +  if SValue='0' then C.Checked:= false else
  +  if SValue='?' then begin C.AllowGrayed:= true; C.State:= cbGrayed; end;
  +end;
  +
   procedure DoControl_SetState_Listbox(C: TListbox; const SValue: string);
   var
     N: integer;
  
positive.code:   N:= StrToIntDef(SValue, -1);
    if (N>=0) and (N<C.Items.Count) then
      C.ItemIndex:= N;
  end;
  
  procedure DoControl_SetState_Listview(C: TListView; SValue: string);
  
negative.code:   until false;
  end;
  
  procedure DoControl_SetState_CheckListbox(C: TCheckListBox; AValue: string);
  var
    SItem: string;
    N: integer;
  