1 unit ReplacePresetListFrame;
6 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
7 Dialogs, BottleDef, StrReplace, StdCtrls, ReplacePresetEditor;
10 TfrmReplacePresetList = class(TFrame)
18 procedure btnMoveUpClick(Sender: TObject);
19 procedure btnMoveDownClick(Sender: TObject);
20 procedure btnEditClick(Sender: TObject);
21 procedure btnCloneClick(Sender: TObject);
22 procedure btnDeleteClick(Sender: TObject);
23 procedure btnAddClick(Sender: TObject);
25 procedure MoveItem(const Delta: Integer);
27 procedure UpdateControls;
34 { TfrmReplacePresetList }
36 procedure TfrmReplacePresetList.UpdateControls;
39 Presets: TReplacePresetCollection;
41 Presets := Pref.ReplacePresets.Presets;
42 with lstPresets.Items do
47 for i := 0 to Presets.Count-1 do
49 Add(Presets[i].Title);
57 procedure TfrmReplacePresetList.btnMoveUpClick(Sender: TObject);
62 procedure TfrmReplacePresetList.btnMoveDownClick(Sender: TObject);
67 procedure TfrmReplacePresetList.MoveItem(const Delta: Integer);
70 Presets: TReplacePresetCollection;
73 TargetIndex := lstPresets.ItemIndex;
74 if TargetIndex < 0 then
76 if (TargetIndex + Delta < 0) or (TargetIndex + Delta >= lstPresets.Count) then
78 Presets := Pref.ReplacePresets.Presets;
79 //
\88ê
\92U
\83A
\83C
\83e
\83\80\82ð
\94²
\82«
\8fo
\82·
80 Item := Presets[TargetIndex];
81 Item.Collection := nil; //
\82±
\82ê
\82Å
\83R
\83\8c\83N
\83V
\83\87\83\93\82©
\82ç
\8aO
\82ê
\82é
82 //
\90V
\82µ
\82¢
\8fê
\8f\8a\82É
\83A
\83C
\83e
\83\80\82ð
\8dì
\82Á
\82Ä
\91ã
\93ü
\82·
\82é
83 Presets.Insert(TargetIndex + Delta).Assign(Item);
84 lstPresets.Items.Move(TargetIndex, TargetIndex + Delta);
87 procedure TfrmReplacePresetList.btnEditClick(Sender: TObject);
89 Target: TReplacePreset;
91 Form: TfrmReplacePresetEditor;
93 Index := lstPresets.ItemIndex;
96 Target := Pref.ReplacePresets.Presets[Index];
97 Application.CreateForm(TfrmReplacePresetEditor, Form);
102 Title := Target.Title;
103 ShortCut := Target.ShortCut;
104 Pairs := Target.Pairs;
107 Target.Title := Title;
108 Target.ShortCut := ShortCut;
109 Target.Pairs := Pairs;
110 lstPresets.Invalidate;
118 procedure TfrmReplacePresetList.btnCloneClick(Sender: TObject);
121 Target, New: TReplacePreset;
123 Index := lstPresets.ItemIndex;
126 Target := Pref.ReplacePresets.Presets[Index];
127 New := Pref.ReplacePresets.Presets.Add;
129 New.Title := Target.Title + '
\82Ì
\83R
\83s
\81[';
130 lstPresets.Items.Add(New.Title);
131 lstPresets.ItemIndex := lstPresets.Items.Count-1;
134 procedure TfrmReplacePresetList.btnDeleteClick(Sender: TObject);
137 Target: TReplacePreset;
139 Index := lstPresets.ItemIndex;
140 Target := Pref.ReplacePresets.Presets[Index];
141 Target.Free; //
\8f\9f\8eè
\82É
\83R
\83\8c\83N
\83V
\83\87\83\93\82Ì
\83\8a\83X
\83g
\82©
\82ç
\8aO
\82ê
\82é
142 lstPresets.Items.Delete(Index);
145 procedure TfrmReplacePresetList.btnAddClick(Sender: TObject);
148 Form: TfrmReplacePresetEditor;
150 New := TReplacePreset.Create(nil);
152 Application.CreateForm(TfrmReplacePresetEditor, Form);
158 ShortCut := New.ShortCut;
162 Pref.ReplacePresets.Presets.Add.Assign(New);
163 lstPresets.Items.Add(New.Title);