--- /dev/null
+unit PresetReplace;
+
+{
+ PresetReplace.pas
+ GUI\82©\82ç\93Æ\97§\82µ\82½\81A\81u\83v\83\8a\83Z\83b\83g\92u\8a·\81v\83\8d\83W\83b\83N\83N\83\89\83X\82Ì\8eÀ\91\95
+}
+
+interface
+
+uses Classes, SysUtils, Forms, Menus;
+
+type
+ // \88È\89º\82Ì5\82Â\82Ì\83N\83\89\83X\82Ì\92è\8b`\82Í\81A\8f¬\82³\82¢\95û\82©\82ç\81¨\91å\82«\82¢\95û\82Ö\81A\82Æ
+ // \8bL\8fq\82µ\82Ä\82 \82é(\8aÜ\82Ü\82ê\82é\95û\82©\82ç\8aÜ\82Þ\95û\81A\82Ì\8f\87\94Ô)
+
+ // \8c\9f\8dõ\8cê\82Æ\92u\8a·\8cê\82Ì\83y\83A\82Æ\82»\82Ì\83I\83v\83V\83\87\83\93\82ð\8bL\98^\82·\82é
+ TReplacePair = class(TCollectionItem)
+ private
+ FIgnoreCase: boolean;
+ FBeforeStr: String;
+ FAfterStr: String;
+ procedure SetAfterStr(const Value: String);
+ procedure SetBeforeStr(const Value: String);
+ procedure SetIgnoreCase(const Value: boolean);
+ published
+ property BeforeStr: String read FBeforeStr write SetBeforeStr;
+ property AfterStr: String read FAfterStr write SetAfterStr;
+ property IgnoreCase: boolean read FIgnoreCase write SetIgnoreCase;
+ end;
+
+ // TReplacePair\82Ì\83R\83\8c\83N\83V\83\87\83\93\83N\83\89\83X
+ TReplacePairCollection = class(TCollection)
+ end;
+
+ // TReplacePair\82Ì\83R\83\8c\83N\83V\83\87\83\93\82ð\95Û\8e\9d\82µ\81A\83^\83C\83g\83\8b\82È\82Ç\82ð\82Ü\82Æ\82ß\82Ä
+ // 1\82Â\82Ì\83v\83\8a\83Z\83b\83g\90Ý\92è\8d\80\96Ú\82ð\95\\8c»\82·\82é\83N\83\89\83X
+ TReplacePreset = class(TCollectionItem)
+ private
+ FTitle: String;
+ FPairs: TReplacePairCollection;
+ FShortCut: TShortCut;
+ procedure SetPairs(const Value: TReplacePairCollection);
+ procedure SetShortCut(const Value: TShortCut);
+ procedure SetTitle(const Value: String);
+ public
+ constructor Create(Collection: TCollection); override;
+ destructor Destroy; override;
+ procedure Assign(Source: TPersistent); override;
+ published
+ property Pairs: TReplacePairCollection read FPairs write SetPairs;
+ property Title: String read FTitle write SetTitle;
+ property ShortCut: TShortCut read FShortCut write SetShortCut;
+ end;
+
+ // \83v\83\8a\83Z\83b\83g\90Ý\92è\8d\80\96ÚTReplacePreset\82Ì\83R\83\8c\83N\83V\83\87\83\93\83N\83\89\83X
+ TReplacePresetCollection = class(TCollection)
+ end;
+
+ // \8dÅ\8fI\93I\82É\82±\82ê\82ð\83V\83\8a\83A\83\89\83C\83Y\82·\82é
+ TReplacePresets = class(TComponent)
+ private
+ FPresets: TReplacePresetCollection;
+ procedure SetPresets(const Value: TReplacePresetCollection);
+ public
+ constructor Create(AOwner: TComponent); override;
+ destructor Destroy; override;
+ procedure Assign(Source: TPersistent); override;
+ published
+ property Presets: TReplacePresetCollection read FPresets write SetPresets;
+ end;
+
+implementation
+
+{ TReplacePair }
+
+procedure TReplacePair.SetAfterStr(const Value: String);
+begin
+ FAfterStr := Value;
+end;
+
+procedure TReplacePair.SetBeforeStr(const Value: String);
+begin
+ FBeforeStr := Value;
+end;
+
+procedure TReplacePair.SetIgnoreCase(const Value: boolean);
+begin
+ FIgnoreCase := Value;
+end;
+
+{ TReplacePreset }
+
+procedure TReplacePreset.Assign(Source: TPersistent);
+var
+ Src: TReplacePreset;
+begin
+ if not (Source is TReplacePreset) then
+ inherited
+ else
+ begin
+ Src := Source as TReplacePreset;
+ Pairs.Assign(Src.Pairs);
+ Title := Src.Title;
+ ShortCut := Src.ShortCut;
+ end;
+end;
+
+constructor TReplacePreset.Create(Collection: TCollection);
+begin
+ inherited;
+ FPairs := TReplacePairCollection.Create(TReplacePair);
+end;
+
+destructor TReplacePreset.Destroy;
+begin
+ FPairs.Free;
+ inherited;
+end;
+
+procedure TReplacePreset.SetPairs(const Value: TReplacePairCollection);
+begin
+ FPairs.Assign(Value);
+end;
+
+procedure TReplacePreset.SetShortCut(const Value: TShortCut);
+begin
+ FShortCut := Value;
+end;
+
+procedure TReplacePreset.SetTitle(const Value: String);
+begin
+ FTitle := Value;
+end;
+
+{ TReplacePresets }
+
+procedure TReplacePresets.Assign(Source: TPersistent);
+var
+ Src: TReplacePresets;
+begin
+ if not (Source is TReplacePresets) then
+ inherited
+ else
+ begin
+ Src := Source as TReplacePresets;
+ Presets.Assign(Src.Presets);
+ end;
+end;
+
+constructor TReplacePresets.Create(AOwner: TComponent);
+begin
+ inherited;
+ FPresets := TReplacePresetCollection.Create(TReplacePreset);
+end;
+
+destructor TReplacePresets.Destroy;
+begin
+ FPresets.Free;
+ inherited;
+end;
+
+procedure TReplacePresets.SetPresets(
+ const Value: TReplacePresetCollection);
+begin
+ FPresets.Assign(Value);
+end;
+
+initialization
+
+Classes.RegisterClass(TReplacePresets);
+
+end.