📄 fmain.pas
字号:
CanDock := (DockClient.Tag = 1);
end;
procedure TfrmMain.mxPluginNewAction(Sender: TObject; Name: String; Image,
HotImage, DisabledImage: TBitmap; Caption: String; Enabled,
Checked: Boolean; Hint: String; ShortCut: TShortCut;
OnAction: TNotifyEvent);
var
aItem: TMenuItem;
begin
aItem := TMenuItem.Create(Plugins1);
aItem.Caption := Caption;
aItem.OnClick := OnAction;
aItem.ImageIndex := 61;
Plugins1.Add(aItem);
xp.ActivateMenuItem(aItem, false);
end;
procedure TfrmMain.mnuTileHorClick(Sender: TObject);
begin
TileMode := tbHorizontal;
Tile
end;
procedure TfrmMain.mnuTileVerClick(Sender: TObject);
begin
TileMode := tbVertical;
Tile
end;
procedure TfrmMain.mnuArrangeClick(Sender: TObject);
begin
ArrangeIcons;
end;
procedure TfrmMain.mnuCascadeClick(Sender: TObject);
begin
Cascade;
end;
procedure TfrmMain.mnuLinksClick(Sender: TObject);
begin
dmMain.ClickLink(strLinks[(Sender as TMEnuItem).Tag]);
end;
procedure TfrmMain.pgTopDockDrop(Sender: TObject; Source: TDragDockObject;
X, Y: Integer);
begin
pgTop.ActivePage.Caption := (Source.Control as TToolbar).Caption;
pgTop.ActivePage.Font.Name := 'Ms Sans Serif';
pgTop.ActivePage.Font.Size := 8;
(Source.Control as TToolbar).Indent := 13
end;
procedure TfrmMain.cntrlTopBandMove(Sender: TObject; Control: TControl;
var ARect: TRect);
var
i, iLowLeft: Integer;
begin
if (cntrlTop.Width - Arect.Left) < 150 then aRect.Left := (cntrlTop.Width - 150);
if (Control = pnlPage) then begin
With Arect do begin
Right := cntrlTop.ClientWidth; //-2;
Bottom := pnlPage.Height + pnlPage.Top;
end;
end;
{ if (Co ntrol = pnlMDITabs) then begin
With Arect do begin
Right := ctrlTab.ClientWidth ;
Bottom := pnlMDITabs.Height + pnlMDITabs.Top;
end;
end;}
end;
procedure TfrmMain.dpLeftGetSiteInfo(Sender: TObject; DockClient: TControl;
var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
begin
if CanDock = true then
CanDock := (DockClient.Tag <> 1) and (DockClient.Tag <> 2);
end;
procedure TfrmMain.dpBottomGetSiteInfo(Sender: TObject;
DockClient: TControl; var InfluenceRect: TRect; MousePos: TPoint;
var CanDock: Boolean);
begin
if CanDock = true then
CanDock := (DockClient.Tag <> 1) and (DockClient.Tag <> 2);
end;
procedure TfrmMain.dpRightGetSiteInfo(Sender: TObject;
DockClient: TControl; var InfluenceRect: TRect; MousePos: TPoint;
var CanDock: Boolean);
begin
if CanDock = true then
CanDock := (DockClient.Tag <> 1) and (DockClient.Tag <> 2);
end;
procedure TfrmMain.dpTopGetSiteInfo(Sender: TObject; DockClient: TControl;
var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
begin
if CanDock = true then
CanDock := (DockClient.Tag <> 1) and (DockClient.Tag <> 2);
end;
procedure TfrmMain.pgTopGetSiteInfo(Sender: TObject; DockClient: TControl;
var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
begin
CanDock := DockClient.HostDockSite <> pgTop;
if CanDock = true then
CanDock := DockClient.Tag = 1;
end;
procedure TfrmMain.cntrlTopGetSiteInfo(Sender: TObject;
DockClient: TControl; var InfluenceRect: TRect; MousePos: TPoint;
var CanDock: Boolean);
begin
CanDock := DockClient.HostDockSite <> pgTop;
if CanDock = true then
CanDock := DockClient.Tag = 1;
end;
procedure TfrmMain.BuildSettings1Click(Sender: TObject);
var
frmCompiler: TfrmCompiler;
begin
frmCompiler := TfrmCompiler.create(self);
frmCompiler.ShowModal;
end;
procedure TfrmMain.cmbURLKeyPress(Sender: TObject; var Key: Char);
begin
if Key = Char(13) then begin
dmMain.Clicklink(cmbURl.Text);
cmbURL.Items.Add(cmbURL.Text);
end;
end;
procedure TfrmMain.cmbURLClick(Sender: TObject);
begin
dmMain.Clicklink(String(cmbURl.Text))
end;
procedure TfrmMain.tbbHomeClick(Sender: TObject);
begin
dmMain.ClickLink('http://cedit.sourceforge.net');
end;
procedure TfrmMain.tbbSearchClick(Sender: TObject);
begin
dmMain.ClickLink('http://cedit.sourceforge.net');
end;
procedure TfrmMain.tbbReloadClick(Sender: TObject);
begin
if dmMain.SelWeb <> nil then
dmMain.SelWeb.www.Refresh;
end;
procedure TfrmMain.tbbForwardClick(Sender: TObject);
begin
if dmMain.SelWeb <> nil then
dmMain.SelWeb.www.GoForward;
end;
procedure TfrmMain.tbbBackClick(Sender: TObject);
begin
if dmMain.SelWeb <> nil then
dmMain.SelWeb.www.GoBack;
end;
procedure TfrmMain.tbbStopClick(Sender: TObject);
begin
if dmMain.SelWeb <> nil then
dmMain.SelWeb.www.Stop;
end;
procedure TfrmMain.ileHorizontally1Click(Sender: TObject);
begin
TileMode := tbHorizontal;
Tile;
end;
procedure TfrmMain.ileVerticly1Click(Sender: TObject);
begin
TileMode := tbVertical;
Tile;
end;
procedure TfrmMain.ArrangeIcons1Click(Sender: TObject);
begin
ArrangeIcons;
end;
procedure TfrmMain.Cascade1Click(Sender: TObject);
begin
Cascade;
end;
procedure TfrmMain.Readme1Click(Sender: TObject);
begin
// dmMain.NewDoc(ExtractFilePath(Application.ExeName) + 'Readme.txt');
dmMain.ClickLink(ExtractFilePath(Application.ExeName) + 'readme\home.htm');
end;
procedure TfrmMain.CommentLine1Click(Sender: TObject);
var
tmp,ret: STring;
txt: PChar;
selStartLine, selectionStart, selectionEnd, selEndLine, i: Integer;
begin
if dmMain.SelDoc = nil then exit;
with dmMain.SelDoc do begin
{ selectionStart := sciMain.GetSelectionStart;
selectionEnd := sciMain.GetSelectionEnd;
selStartLine := sciMain.LineFromPosition(selectionStart);
selEndLine := sciMain.LineFromPosition(selectionEnd);
for i := selStartLine to selEndLine do begin
sciMain.GetLine(i-1, txt);
tmp := AnsiReplaceText(cString, '%d', txt);
ret := PChar(ret + tmp);
if i <> selEndLine then ret := ret + #10;
sciMain.LineDelete;
end;
// sciMain.Clear;
sciMain.AddText(Length(ret), PChar(ret));}
end;
end;
procedure TfrmMain.UncommentBlock1Click(Sender: TObject);
var
tmp,ret, strStart, strEnd: STring;
txt: PChar;
selStartLine, selectionStart, iPos, selectionEnd, selEndLine, i: Integer;
begin
if dmMain.SelDoc = nil then exit;
with dmMain.SelDoc do begin
iPos := Pos('%d', cString);
strStart := LeftStr(cString, iPos-1);
strEnd := RightStr(cString, Length(cString)-ipos-1);
{ selectionStart := sciMain.GetSelectionStart;
selectionEnd := sciMain.GetSelectionEnd;
selStartLine := sciMain.LineFromPosition(selectionStart);
selEndLine := sciMain.LineFromPosition(selectionEnd);
for i := selStartLine to selEndLine do begin
sciMain.GetLine(i-1, txt);
tmp := AnsiReplaceText(txt, strStart, '');
ret := ret + AnsiReplaceText(tmp, strEnd, '');
sciMain.LineDelete;
if i <> selEndLine then ret := ret + #10;
end;
sciMain.AddText(Length(ret), PChar(ret));}
end;
end;
procedure TfrmMain.tbbCommentBlockClick(Sender: TObject);
var
i,b,c: Integer;
p: PChar;
s: String;
begin
//CommentLine1Click(nil);
if dmMain.SelDoc = nil then exit;
if dmMain.SelDoc.sciMain.Highlighter = nil then exit;
if dmMain.SelDoc.sciMain.Highlighter.CommentVar = '' then exit;
b := dmMain.SelDoc.sciMain.SelStart;
p := PChar(dmMain.SelDoc.sciMain.SelText);
s := s + dmMain.SelDoc.sciMain.Highlighter.CommentVar + '~ ';
for i := 0 to StrLen(p)-1 do begin
if (ord(p[i]) <> 10) and (ord(p[i]) <> 13) then
s := s + p[i];
if ord(p[i]) = 13 then begin
s := s + chr(10);
s := s + dmMain.SelDoc.sciMain.Highlighter.CommentVar + '~ ';
end;
end;
dmMain.SelDoc.scimain.SelText := s;
c := dmMain.SelDoc.sciMain.SelStart;
dmMain.SelDoc.scimain.SelStart := b;
dmMain.SelDoc.scimain.SelEnd := c;
end;
procedure TfrmMain.tbbUncommentLineClick(Sender: TObject);
var
CommentString: String;
p: String;
b, c: Integer;
begin
if dmMain.SelDoc = nil then exit;
if dmMain.SelDoc.sciMain.Highlighter = nil then exit;
if dmMain.SelDoc.sciMain.Highlighter.CommentVar = '' then exit;
b := dmMain.seldoc.sciMain.SelStart;
p := PChar(dmMain.SelDoc.sciMain.SelText);
CommentString := dmMain.SelDoc.sciMain.Highlighter.CommentVar + '~ ';
p := AnsiReplaceText(p, CommentString, '');
dmMain.SelDoc.sciMain.Seltext := p;
c := dmMain.SelDoc.sciMain.SelStart;
dmMain.SelDoc.scimain.SelStart := b;
dmMain.SelDoc.scimain.SelEnd := c;
end;
procedure TfrmMain.DateTime1Click(Sender: TObject);
begin
if dmMain.SelDoc <> nil then begin
dmMain.SelDoc.sciMain.SelText := TimeToStr(Time) + ' ' + DateToStr(Date);
end;
end;
procedure TfrmMain.ClearBookmarks1Click(Sender: TObject);
var
i: Integer;
begin
if dmMain.SelDoc <> nil then begin
for i := 0 to 9 do BEGIN
dmMain.selDoc.sciMain.ClearBookMark(i);
END;
With dmMain.selDoc.sciMain do begin
dmMain.actToggle0.Checked := IsBookmark(0);
dmMain.actToggle1.Checked := IsBookmark(1);
dmMain.actToggle2.Checked := IsBookmark(2);
dmMain.actToggle3.Checked := IsBookmark(3);
dmMain.actToggle4.Checked := IsBookmark(4);
dmMain.actToggle5.Checked := IsBookmark(5);
dmMain.actToggle6.Checked := IsBookmark(6);
dmMain.actToggle7.Checked := IsBookmark(7);
dmMain.actToggle8.Checked := IsBookmark(8);
dmMain.actToggle9.Checked := IsBookmark(9);
oggleBookmark1.Checked := False;
oggleBookmark2.Checked := False;
oggleBookmark3.Checked := False;
oggleBookmark4.Checked := False;
oggleBookmark5.Checked := False;
oggleBookmark6.Checked := False;
oggleBookmark7.Checked := False;
oggleBookmark8.Checked := False;
oggleBookmark9.Checked := False;
oggleBookmark10.Checked := False;
end;
end;
end;
procedure TfrmMain.tbbClearBookmarksClick(Sender: TObject);
begin
Clearbookmarks1click(nil);
end;
procedure TfrmMain.ShowResults1Click(Sender: TObject);
begin
FindInFiles2.Checked := true;
Grep.Visible := True;
end;
procedure TfrmMain.OpenFromInternet1Click(Sender: TObject);
begin
//if frmOpenWeb = nil then frmOpenWeb := TfrmOpenWeb.Create(nil);
With TfrmOpenWeb.Create(nil) do begin
ShowModal;
end;
end;
procedure TfrmMain.pgClientChange(Sender: TObject);
begin
if dmMain.SelDoc <> nil then dmMain.SelDoc.sciMain.SetFocus;
end;
procedure TfrmMain.ctrlTabBandMove(Sender: TObject; Control: TControl;
var ARect: TRect);
begin
{ if (Control = pnlMDITabs) then begin
With Arect do begin
Right := ctrlTab.ClientWidth ;
Bottom := pnlMDITabs.Height + pnlMDITabs.Top;
end;
end;}
end;
procedure TfrmMain.tcFilesGetImageIndex(Sender: TObject; TabIndex: Integer;
var ImageIndex: Integer);
begin
ImageIndex := 0;
end;
procedure TfrmMain.ctrlTabGetSiteInfo(Sender: TObject;
DockClient: TControl; var InfluenceRect: TRect; MousePos: TPoint;
var CanDock: Boolean);
begin
CanDock := (DockClient.Tag = 2);
end;
procedure TfrmMain.tcFilesDrawTab(Control: TCustomTabControl;
TabIndex: Integer; const Rect: TRect; Active: Boolean);
var
Offset: integer;
fDoc: TfrmDoc;
rc: TRect;
tw: integer;
MaxWidth: integer
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -