📄 fmain.pas
字号:
procedure mnuArrangeClick(Sender: TObject);
procedure AppIdle(Sender: TObject; var Done: Boolean);
procedure mnuCascadeClick(Sender: TObject);
procedure mnuLinksClick(Sender: TObject);
procedure pgTopDockDrop(Sender: TObject; Source: TDragDockObject; X,
Y: Integer);
procedure cntrlTopBandMove(Sender: TObject; Control: TControl;
var ARect: TRect);
procedure dpLeftGetSiteInfo(Sender: TObject; DockClient: TControl;
var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
procedure dpBottomGetSiteInfo(Sender: TObject; DockClient: TControl;
var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
procedure dpRightGetSiteInfo(Sender: TObject; DockClient: TControl;
var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
procedure dpTopGetSiteInfo(Sender: TObject; DockClient: TControl;
var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
procedure pgTopGetSiteInfo(Sender: TObject; DockClient: TControl;
var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
procedure cntrlTopGetSiteInfo(Sender: TObject; DockClient: TControl;
var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
procedure BuildSettings1Click(Sender: TObject);
procedure cmbURLKeyPress(Sender: TObject; var Key: Char);
procedure cmbURLClick(Sender: TObject);
procedure tbbHomeClick(Sender: TObject);
procedure tbbSearchClick(Sender: TObject);
procedure tbbReloadClick(Sender: TObject);
procedure tbbForwardClick(Sender: TObject);
procedure tbbBackClick(Sender: TObject);
procedure tbbStopClick(Sender: TObject);
procedure ileHorizontally1Click(Sender: TObject);
procedure ileVerticly1Click(Sender: TObject);
procedure ArrangeIcons1Click(Sender: TObject);
procedure Cascade1Click(Sender: TObject);
procedure Readme1Click(Sender: TObject);
procedure CommentLine1Click(Sender: TObject);
procedure UncommentBlock1Click(Sender: TObject);
procedure tbbCommentBlockClick(Sender: TObject);
procedure tbbUncommentLineClick(Sender: TObject);
procedure DateTime1Click(Sender: TObject);
procedure ClearBookmarks1Click(Sender: TObject);
procedure tbbClearBookmarksClick(Sender: TObject);
procedure ShowResults1Click(Sender: TObject);
procedure OpenFromInternet1Click(Sender: TObject);
procedure pgClientChange(Sender: TObject);
procedure ctrlTabBandMove(Sender: TObject; Control: TControl;
var ARect: TRect);
procedure tcFilesGetImageIndex(Sender: TObject; TabIndex: Integer;
var ImageIndex: Integer);
procedure ctrlTabGetSiteInfo(Sender: TObject; DockClient: TControl;
var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
procedure tcFilesDrawTab(Control: TCustomTabControl; TabIndex: Integer;
const Rect: TRect; Active: Boolean);
procedure Tools1Click(Sender: TObject);
procedure GotoBookmark91Click(Sender: TObject);
procedure Modified1Click(Sender: TObject);
procedure Readonly1Click(Sender: TObject);
procedure MDITabbedView1Click(Sender: TObject);
procedure tbWebResize(Sender: TObject);
procedure tbbMacRecClick(Sender: TObject);
procedure tbbOpenFromWebClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure QuickTags1Click(Sender: TObject);
procedure ProjectView1Click(Sender: TObject);
procedure SnippetsView1Click(Sender: TObject);
procedure DebugOutput2Click(Sender: TObject);
procedure FindInFiles2Click(Sender: TObject);
procedure tbbMac1Click(Sender: TObject);
procedure AppendCopy1Click(Sender: TObject);
procedure OpenProject1Click(Sender: TObject);
procedure GotoB9Click(Sender: TObject);
procedure File2Click(Sender: TObject);
procedure SaveProject1Click(Sender: TObject);
procedure Folder1Click(Sender: TObject);
procedure Hyperlink1Click(Sender: TObject);
procedure EmailAddress1Click(Sender: TObject);
procedure FormShortCut(var Msg: TWMKey; var Handled: Boolean);
procedure tbLangResize(Sender: TObject);
procedure cntrlTopBandPaint(Sender: TObject; Control: TControl;
Canvas: TCanvas; var ARect: TRect; var Options: TBandPaintOptions);
procedure cntrlTopBandInfo(Sender: TObject; Control: TControl;
var Insets: TRect; var PreferredSize, RowCount: Integer);
procedure cntrlTopMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure ClickLang(Sender: TObject);
procedure tbWebAdvancedCustomDraw(Sender: TToolBar; const ARect: TRect;
Stage: TCustomDrawStage; var DefaultDraw: Boolean);
procedure tbWebEndDock(Sender, Target: TObject; X, Y: Integer);
procedure ctrlTabBandPaint(Sender: TObject; Control: TControl;
Canvas: TCanvas; var ARect: TRect; var Options: TBandPaintOptions);
procedure ctrlTabBandInfo(Sender: TObject; Control: TControl;
var Insets: TRect; var PreferredSize, RowCount: Integer);
procedure FormResize(Sender: TObject);
procedure ctrlTabMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure KeyboardMap1Click(Sender: TObject);
procedure tbSearchResize(Sender: TObject);
procedure tbSearchAdvancedCustomDraw(Sender: TToolBar;
const ARect: TRect; Stage: TCustomDrawStage;
var DefaultDraw: Boolean);
procedure cmbFindKeyPress(Sender: TObject; var Key: Char);
procedure Main1Click(Sender: TObject);
procedure Standard1Click(Sender: TObject);
procedure Editor1Click(Sender: TObject);
procedure Web1Click(Sender: TObject);
procedure Search2Click(Sender: TObject);
procedure Macro1Click(Sender: TObject);
procedure ools1Click(Sender: TObject);
procedure oolPalette1Click(Sender: TObject);
procedure FileView1Click(Sender: TObject);
procedure cEditWebsite1Click(Sender: TObject);
procedure NewProject1Click(Sender: TObject);
procedure SaveProjectAs1Click(Sender: TObject);
procedure RemoveItem1Click(Sender: TObject);
procedure tcFilesChange(Sender: TObject);
procedure tbbPrevLineClick(Sender: TObject);
procedure tbbNextLineClick(Sender: TObject);
procedure InsertfromFile1Click(Sender: TObject);
procedure abbedView1Click(Sender: TObject);
procedure StatusBar1Click(Sender: TObject);
procedure EditAccounts1Click(Sender: TObject);
procedure RegMruItemClick(Sender: TObject; MenuItem: TMenuItem;
const FileName: String; var CanDelete: Boolean);
procedure NextLine1Click(Sender: TObject);
procedure PreviousLine1Click(Sender: TObject);
procedure FileDrag1Drop(Sender: TObject);
procedure PrintPreview1Click(Sender: TObject);
procedure Print1Click(Sender: TObject);
procedure tbrMainCustomDrawButton(Sender: TToolBar;
Button: TToolButton; State: TCustomDrawState;
var DefaultDraw: Boolean);
procedure pgTopChange(Sender: TObject);
procedure Unix1Click(Sender: TObject);
procedure Macintosh1Click(Sender: TObject);
procedure tbbHelpClick(Sender: TObject);
procedure Index1Click(Sender: TObject);
procedure HelpOnline1Click(Sender: TObject);
procedure DownloadLanguageFiles1Click(Sender: TObject);
procedure QuickFTP1Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure DownloadPlugins1Click(Sender: TObject);
procedure DeleteExtraLines1Click(Sender: TObject);
procedure MRUItemClick(Sender: TObject; MenuItem: TMenuItem;
const FileName: String; var CanDelete: Boolean);
procedure File1Click(Sender: TObject);
procedure MinimizeAll1Click(Sender: TObject);
procedure MaximizeAll1Click(Sender: TObject);
procedure RestoreAll1Click(Sender: TObject);
procedure Window1Click(Sender: TObject);
procedure pManagerNewCommand(Sender: TObject; ACaption, AHint,
AData: String; ABitmap: TBitmap; AEvent: TNotifyEvent);
private
BandMouseX, BandMouseY: integer;
PluginInit : tPluginInit;
PlgMsgNum : tPlgMsgNum;
PlgStrResult : tStrResult;
Loading: Boolean;
m_ws: TWindowState;
sFilter: String;
strLinks: TStringList;
projFilename: String;
strProject: TStringList;
fHighlighters: TStringList;
iNonMaxWidth, iNonMaxHeight, iNonMaxLeft, iNonMaxTop: Integer;
{ Private declarations }
function HH(Command: Word; Data: Integer; var CallHelp: Boolean): Boolean;
procedure CheckPlugins;
procedure ActivationFromOtherInstance;
procedure WriteToolbarState(aIniFile: TIniFile; Control: TControl; Section: string);
procedure tlbrClose(Sender: TObject; var Action: TCloseAction);
function ReadToolbarState(aIniFile: TIniFile; Control: TControl; Section: string; DockHosts: array of TWinControl; ManualDock: boolean): boolean;
procedure CheckMenuBar;
procedure SaveToolbar;
procedure OpenToolbar;
procedure DoRefresh(Sender: TObject);
procedure WriteSettings;
procedure ReadSettings;
procedure LoadSettings;
procedure LoadOptions;
// procedure SaveDesktop(sDesktopName: String);
// function LoadDesktop(sDesktopName: String): Boolean;
public
Grep : tfrmGrepResults;
Plugins : TPlugins;
PluginMenuItems : tList;
MsgNum : Integer;
frmOutput: TfrmOutput;
{ Public declarations }
OW: TWndMethod;
procedure NW(var M: TMessage);
function GetVisibleDockClientCount(win: TWinControl): Integer;
function NewFTP(FileName: String; FTPName: String; FTPDir: String): TfrmDoc;
function CloseQuery: boolean; override;
function ChildFromFileName(sFileName: String): TfrmDoc;
procedure DrawTheText(Sender: TObject; txt, ShortCuttext: string;
ACanvas: TCanvas; TextRect: TRect;
Selected, Enabled, Default, TopMenu, IsRightToLeft: boolean;
var TxtFont: TFont; TextFormat: integer);
procedure OpenProject(sFileName: String);
procedure SaveProject(sFileName: String);
procedure LoadTools;
procedure CustomAlignPosition(Control: TControl; var NewLeft: Integer;
var NewTop: Integer; var NewWidth: Integer; var NewHeight: Integer;
var AlignRect: TRect; AlignInfo: TAlignInfo); override;
// procedure RedrawHostingPageControls;
function GetCurrentEditor: TfrmDoc;
end;
TgbToolDockForm = class(TToolDockForm)
public
property OnClose;
end;
var
frmMain: TfrmMain;
StopSearch: Boolean;
Const
GrepKey = 'Software\cEdit\Grep';
implementation
{$R *.dfm}
uses fOptions, fFiles, fFTP, fTags, fFind, fUpload,fProjects, fSnippets, fCompiler,
fFindText, fSaveDlg, fSaveMacroDialog, uHighlighterProcs, dMain, fGoto, fReplace, GrepSearchDlg, fOpenWeb, fImage, uOptVars,
Registry, dlgKeyboardMap, SynEditTypes, SynSpellCheck,
fWeb, fAccount, fQuickFTP, fDownloadLanguage, fDownloadPlugins;
var
frmTags: TfrmTags;
frmSnippets: TfrmSnippets;
frmProjects: TfrmProjects;
frmQuickFTP: TfrmQuickFTP;
frmFind: TfrmFind;
frmFiles: TfrmFiles;
fRep: TfrmReplace;
function TfrmMain.GetCurrentEditor: TfrmDoc;
Begin
Result := nil;
if Assigned(frmMain.ActiveMDIChild) Then
Result := TfrmDoc(frmMain.ActiveMDIChild);
end;
procedure TfrmMain.DrawTheText(Sender: TObject; txt, ShortCuttext: string;
ACanvas: TCanvas; TextRect: TRect;
Selected, Enabled, Default, TopMenu, IsRightToLeft: boolean;
var TxtFont: TFont; TextFormat: integer);
var
DefColor: TColor;
B: TBitmap;
BRect: TRect;
begin
TextFormat := TextFormat + DT_EXPANDTABS;
DefColor := TxtFont.Color;
ACanvas.Font.Assign (TxtFont);
if Selected then
DefColor := clBlack;
If not Enabled then
begin
DefColor := clGray;
if (Sender is TToolButton) then
begin
TextRect.Top := TextRect.Top +
((TextRect.Bottom - TextRect.Top) - ACanvas.TextHeight('W')) div 2;
B := TBitmap.Create;
try
B.Width := TextRect.Right - TextRect.Left;
B.Height := TextRect.Bottom - TextRect.Top;
BRect := Rect(0,0,B.Width, B.Height);
B.Canvas.Brush.Color := ACanvas.Brush.Color;
B.Canvas.FillRect (BRect);
// B.Canvas.Font := FFont; //felix added for resolving font problems in Win98
//27.08
B.Canvas.Font.color := DefColor;
DrawtextEx(B.Canvas.Handle,
PChar(txt),
Length(txt),
BRect, TextFormat + DT_VCENTER, nil);
ACanvas.CopyRect(TextRect, B.Canvas, BRect);
finally
B.Free;
end;
exit;
end;
end;
ACanvas.Font.color := DefColor; // will not affect Buttons
SetBkMode(ACanvas.Handle, TRANSPARENT);
if Default and Enabled then
begin
Inc(TextRect.Left, 1);
ACanvas.Font.color := GetShadeColor(ACanvas,
ACanvas.Pixels[TextRect.Left, TextRect.Top], 30);
DrawtextEx(ACanvas.Handle,
PChar(txt),
Length(txt),
TextRect, TextFormat, nil);
Dec(TextRect.Left, 1);
Inc(TextRect.Top, 2);
Inc(TextRect.Left, 1);
Inc(TextRect.Right, 1);
ACanvas.Font.color := GetShadeColor(ACanvas,
ACanvas.Pixels[TextRect.Left, TextRect.Top], 30);
DrawtextEx(ACanvas.Handle,
PChar(txt),
Length(txt),
TextRect, TextFormat, nil);
Dec(TextRect.Top, 1);
Dec(TextRect.Left, 1);
Dec(TextRect.Right, 1);
ACanvas.Font.color := GetShadeColor(ACanvas,
ACanvas.Pixels[TextRect.Left, TextRect.Top], 40);
DrawtextEx(ACanvas.Handle,
PChar(txt),
Length(txt),
TextRect, TextFormat, nil);
Inc(TextRect.Left, 1);
Inc(TextRect.Right, 1);
ACanvas.Font.color := GetShadeColor(ACanvas,
ACanvas.Pixels[TextRect.Left, TextRect.Top], 60);
DrawtextEx(ACanvas.Handle,
PChar(txt),
Length(txt),
TextRect, TextFormat, nil);
Dec(TextRect.Left, 1);
Dec(TextRect.Right, 1);
Dec(TextRect.Top, 1);
ACanvas.Font.color := DefColor;
end;
DrawtextEx(ACanvas.Handle,
PChar(txt),
Length(txt),
TextRect, TextFormat, nil);
txt := ShortCutText + ' ';
{
if not Is16Bit then
ACanvas.Font.color := DefColor
else
ACanvas.Font.color := GetShadeColor(ACanvas, DefColor, -40);
}
if IsRightToLeft then
begin
Inc(TextRect.Left, 10);
TextFormat := DT_LEFT
end
else
begin
Dec(TextRect.Right, 10);
TextFormat := DT_RIGHT;
end;
DrawtextEx(ACanvas.Handle,
PChar(txt),
Length(txt),
TextRect, TextFormat, nil);
end;
type
// used to access protected methods
THackPageControl = class(TPageControl)
end;
procedure DrawEclTab(Canvas: TCanvas; R: TRect; S: String);
const
D = 5;
var
H: HRgn;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -