⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ac3rdpartyeditor.pas

📁 Alpha Controls.v5.46b Source
💻 PAS
字号:
unit ac3rdPartyEditor;
{$I sDefs.inc}

interface

uses
  Windows, Messages, SysUtils, {$IFDEF DELPHI6}Variants, {$ENDIF}Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, sBitBtn, ComCtrls, sListView, sSkinManager,
  sSkinProvider, sSpeedButton, Menus;

type
  TForm3rdPartyEditor = class(TForm)
    sListView1: TsListView;
    sBitBtn1: TsBitBtn;
    sBitBtn2: TsSpeedButton;
    sBitBtn3: TsSpeedButton;
    sBitBtn4: TsSpeedButton;
    sSkinProvider1: TsSkinProvider;
    PopupMenu1: TPopupMenu;
    Addnew1: TMenuItem;
    Delete1: TMenuItem;
    Defaultsettings1: TMenuItem;
    N1: TMenuItem;
    Exit1: TMenuItem;
    procedure sBitBtn2Click(Sender: TObject);
    procedure sBitBtn1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure sBitBtn3Click(Sender: TObject);
    procedure sBitBtn4Click(Sender: TObject);
  public
    SM : TsSkinManager;
    procedure Populate;
  end;

var
  Form3rdPartyEditor: TForm3rdPartyEditor;

implementation

{$R *.dfm}

uses sDefaults, ac3dNewClass;

procedure TForm3rdPartyEditor.Populate;
var
  i, j : integer;
begin
  sListView1.Items.BeginUpdate;
  sListView1.Items.Clear;
  for j := 0 to Length(SM.ThirdLists) - 1 do begin
    for i := 0 to SM.ThirdLists[j].Count - 1 do if (SM.ThirdLists[j][i] <> ' ') then begin
      sListView1.Items.Add;
      sListView1.Items[sListView1.Items.Count - 1].Caption := SM.ThirdLists[j][i];
      sListView1.Items[sListView1.Items.Count - 1].SubItems.Add(acThirdCaptions[j]);
      sListView1.Items[sListView1.Items.Count - 1].ImageIndex := j;
    end;
  end;
  sListView1.Items.EndUpdate;
  RedrawWindow(sListView1.Handle, nil, 0, RDW_UPDATENOW or RDW_ERASE or RDW_INVALIDATE);
end;

procedure TForm3rdPartyEditor.sBitBtn2Click(Sender: TObject);
begin              
  FormNewThirdClass := TFormNewThirdClass.Create(Application);
  FormNewThirdClass.ShowModal;
  if FormNewThirdClass.ModalResult = mrOk then begin
    SM.ThirdLists[FormNewThirdClass.sComboBox1.ItemIndex].Add(FormNewThirdClass.sEdit1.Text);
    UpdateThirdNames(SM);
    Populate;
  end;
  FreeAndNil(FormNewThirdClass);
end;

procedure TForm3rdPartyEditor.sBitBtn1Click(Sender: TObject);
begin
  Close
end;

procedure TForm3rdPartyEditor.FormShow(Sender: TObject);
begin
  sListView1.Columns[1].Width := 180;
end;

procedure TForm3rdPartyEditor.sBitBtn3Click(Sender: TObject);
var
  i, j : integer;
{$IFDEF DELPHI6UP}
  LastIndex : integer;
{$ENDIF}
begin
{$IFDEF DELPHI6UP}
  LastIndex := sListView1.ItemIndex;
{$ENDIF}
  for i := 0 to sListView1.Items.Count - 1 do if sListView1.Items[i].Selected then begin
    j := 0;
    while j < SM.ThirdLists[sListView1.Items[i].ImageIndex].Count do begin
      if SM.ThirdLists[sListView1.Items[i].ImageIndex][j] = sListView1.Items[i].Caption then begin
        SM.ThirdLists[sListView1.Items[i].ImageIndex].Delete(j);
        if SM.ThirdLists[sListView1.Items[i].ImageIndex].Count = 0 then SM.ThirdLists[sListView1.Items[i].ImageIndex].Text := ' ';
      end
      else inc(j);
    end;
  end;
  UpdateThirdNames(SM);
  Populate;
{$IFDEF DELPHI6UP}
  if LastIndex > sListView1.Items.Count - 1 then sListView1.ItemIndex := sListView1.Items.Count - 1 else sListView1.ItemIndex := LastIndex;
{$ENDIF}
end;

procedure TForm3rdPartyEditor.sBitBtn4Click(Sender: TObject);
begin
  LoadThirdNames(SM, True);
  Populate;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -