📄 freplace.pas
字号:
unit fReplace;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, fDoc, CorelButton;
type
TfrmReplace = class(TForm)
lblFind: TLabel;
btnFind: TCorelButton;
btnCancel: TCorelButton;
cmbFind: TComboBox;
cmbReplace: TComboBox;
lblReplace: TLabel;
btnRepAll: TCorelButton;
gpOptions: TGroupBox;
chkMatch: TCheckBox;
chkCase: TCheckBox;
chkCaret: TCheckBox;
chkSel: TCheckBox;
gbDir: TGroupBox;
rdDown: TRadioButton;
rdUp: TRadioButton;
procedure btnFindClick(Sender: TObject);
procedure btnCancelClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
flags: Integer;
{ Private declarations }
function GetSearchBackwards: boolean;
function GetSearchCaseSensitive: boolean;
function GetSearchFromCursor: boolean;
function GetSearchInSelection: boolean;
function GetSearchText: string;
function GetReplaceText: string;
function GetSearchTextHistory: string;
function GetSearchWholeWords: boolean;
procedure SetSearchBackwards(Value: boolean);
procedure SetSearchCaseSensitive(Value: boolean);
procedure SetSearchFromCursor(Value: boolean);
procedure SetSearchInSelection(Value: boolean);
procedure SetSearchText(Value: string);
procedure SetSearchTextHistory(Value: string);
procedure SetSearchWholeWords(Value: boolean);
public
{ Public declarations }
property SearchBackwards: boolean read GetSearchBackwards
write SetSearchBackwards;
property SearchCaseSensitive: boolean read GetSearchCaseSensitive
write SetSearchCaseSensitive;
property SearchFromCursor: boolean read GetSearchFromCursor
write SetSearchFromCursor;
property SearchInSelectionOnly: boolean read GetSearchInSelection
write SetSearchInSelection;
property SearchText: string read GetSearchText write SetSearchText;
property SearchTextHistory: string read GetSearchTextHistory
write SetSearchTextHistory;
property SearchWholeWords: boolean read GetSearchWholeWords
write SetSearchWholeWords;
property ReplaceText: String read GetReplaceText;
end;
var
frmReplace: TfrmReplace;
implementation
uses fMain, uDialogSettings;
{$R *.dfm}
function TfrmReplace.GetSearchBackwards: boolean;
begin
Result := rdUp.Checked = True;
end;
function TfrmReplace.GetReplaceText: string;
begin
Result := cmbReplace.Text;
end;
procedure TfrmReplace.SetSearchBackwards(Value: boolean);
begin
rdUp.Checked := Value;
end;
function TfrmReplace.GetSearchCaseSensitive: boolean;
begin
Result := chkCase.Checked;
end;
function TfrmReplace.GetSearchFromCursor: boolean;
begin
Result := chkCaret.Checked;
end;
function TfrmReplace.GetSearchText: string;
begin
Result := cmbFind.Text;
end;
function TfrmReplace.GetSearchTextHistory: string;
var
i: integer;
begin
Result := '';
for i := 0 to cmbFind.Items.Count - 1 do begin
if i >= 10 then
break;
if i > 0 then
Result := Result + #13#10;
Result := Result + cmbFind.Items[i];
end;
end;
function TfrmReplace.GetSearchWholeWords: boolean;
begin
Result := chkMatch.Checked;
end;
function TfrmReplace.GetSearchInSelection: boolean;
begin
Result := chkSel.Checked;
end;
procedure TfrmReplace.SetSearchCaseSensitive(Value: boolean);
begin
chkCase.Checked := Value;
end;
procedure TfrmReplace.SetSearchFromCursor(Value: boolean);
begin
chkCaret.Checked := Value;
end;
procedure TfrmReplace.SetSearchInSelection(Value: boolean);
begin
chkSel.Checked := Value;
end;
procedure TfrmReplace.SetSearchText(Value: string);
begin
cmbFind.Text := Value;
end;
procedure TfrmReplace.SetSearchTextHistory(Value: string);
begin
cmbFind.Items.Text := Value;
end;
procedure TfrmReplace.SetSearchWholeWords(Value: boolean);
begin
chkMatch.Checked := Value;
end;
procedure TfrmReplace.btnFindClick(Sender: TObject);
begin
SaveOpts(Self);
end;
procedure TfrmReplace.btnCancelClick(Sender: TObject);
begin
close;
end;
procedure TfrmReplace.FormCreate(Sender: TObject);
begin
LoadOpts(Self);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -