Модуль "Мое меню" (часть 16) - EditWebShortCuts

Рубрика: Исходники
Среда, 21 апреля 2010 г.
Просмотров: 198
последняя версия: 3.0.9 build 961 beta
от 07 декабря 2007 г.
procedure TfrmP2K_MyMenu.EditWebShortCuts;
var
  frmWebShortcuts: TfrmWebShortcuts;
  idx, i, j: integer;
  tmp: string;
begin
  if spSkinListView2.SelCount < 1 then exit;

  try
  Screen.Cursor:= crHourGlass;
  idx:= integer(spSkinListView2.Selected.Data);
  frmWebShortcuts:= TfrmWebShortcuts.Create(Self);
  frmWebShortcuts.Caption:= p2k_mymenu_m_text_05;  
  try
    frmWebShortcuts.edtMeMenuName.Text:= spSkinListView2.Selected.SubItems[0];
    frmWebShortcuts.spSkinEdit1.Text:= spSkinListView2.Selected.SubItems[1];
    case xWebShortCutType of
      0: frmWebShortcuts.spSkinCheckRadioBox1.Checked:= boolean(xWebShortcuts[idx].AllowDelete);
      1: frmWebShortcuts.spSkinCheckRadioBox1.Checked:= boolean(xWebShortcuts2[idx].AllowDelete);
    end;
    //frmMyMemuProps.rgMenuType.ItemIndex:=
    frmWebShortcuts.ShowModal;
    if frmWebShortcuts.ModalResult = mrOk then
      begin
        case xWebShortCutType of
          0: xWebShortcuts[idx].AllowDelete:= integer(frmWebShortcuts.spSkinCheckRadioBox1.Checked);
          1: xWebShortcuts2[idx].AllowDelete:= integer(frmWebShortcuts.spSkinCheckRadioBox1.Checked);
        end;
        tmp:= frmWebShortcuts.spSkinEdit1.Text;
        case xWebShortCutType of
          0: begin
               FillMemory(@xWebShortcuts[idx].Url, 1024, 0);
               for i:= 0 to length(tmp)-1 do xWebShortcuts[idx].Url[i]:= tmp[i+1];
             end;
          1: begin
               FillMemory(@xWebShortcuts2[idx].Url, 1024, 0);
               for i:= 0 to length(tmp)-1 do xWebShortcuts2[idx].Url[i]:= tmp[i+1];
             end;
        end;
        tmp:= frmWebShortcuts.edtMeMenuName.Text;
        tmp:= ASCI2UCS(tmp, true);
        i:= 1;
        for j:=1 to (length(tmp) div 2) do
          begin
            case xWebShortCutType of
              0: xWebShortcuts[idx].Name[j-1]:= hex2int(Copy(tmp, i, 2));
              1: xWebShortcuts2[idx].Name[j-1]:= hex2int(Copy(tmp, i, 2));
            end;                
            inc(i,2);
          end;
        spSkinListView2.Selected.SubItems[0]:= frmWebShortcuts.edtMeMenuName.Text;
        spSkinListView2.Selected.SubItems[1]:= frmWebShortcuts.spSkinEdit1.Text;
        tmp:= '';
        if frmWebShortcuts.spSkinCheckRadioBox1.Checked
          then spSkinListView2.Selected.ImageIndex:= 1
          else spSkinListView2.Selected.ImageIndex:= -1;
        case xWebShortCutType of
          0: WebShortcuts_applyChanges(xWebShortcuts);
          1: WebShortcuts_applyChanges(xWebShortcuts2);
        end;            
      end;
  finally
    frmWebShortcuts.Free;
  end;
  finally
    Screen.Cursor:= crDefault;
  end;  
end;
Rambler's Top100