⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 delforexpert.pas

📁 delphi代码格式化,最新汉化版
💻 PAS
字号:
unit DelForExpert;

interface

uses
  Classes, ExtCtrls, Forms, Menus, SysUtils, Windows, Dialogs, ToolsApi;

type
  TIDETextExpert = class(TNotifierObject, IOTANotifier, IOTAWizard)
  private
    FNewMenuItem: TMenuItem;
    procedure OnMenuItemClick(Sender: TObject);
    function GetShortCut: TShortCut;
    procedure SetShortCut(AShortCut: TShortCut);
  protected
  public
    constructor Create; virtual;
    destructor Destroy; override;
    property MenuShortCut: TShortCut read GetShortCut write SetShortCut;
    function GetIDString: string;
    function GetName: string;
    function GetState: TWizardState;
    procedure Execute;
  end;

var
  IDETextExpert: TIDETextExpert = nil;

implementation

uses DelExpert;

{ TIDETextExpert code }


function TIDETextExpert.GetName: string;
begin
  Result := 'DelForExpert'
end;

function TIDETextExpert.GetState: TWizardState;
begin
  Result := [];
end;

function TIDETextExpert.GetIDString: string;
begin
  Result := 'e_van_nes.DelForExpert';
end;

constructor TIDETextExpert.Create;
var
  FMainMenu: TMainMenu;
  FToolMenu: TMenuItem;
  I: integer;
  Ch: Char;
begin
  inherited Create;
  FToolMenu := nil;
  // find Delphi's main menu
  FMainMenu := (BorlandIDEServices as INTAServices).MainMenu;
  // find Tools
  for i := 0 to FMainMenu.Items.Count - 1 do begin
    if AnsiSameCaption(FMainMenu.Items[i].Name, 'ToolsMenu') then begin
      FToolMenu := FMainMenu.Items[i];
      Break;
    end;
  end;

  if Assigned(FToolMenu) then
  begin
    FNewMenuItem := TMenuItem.Create(FToolMenu);
    FNewMenuItem.Caption := '&Source Formatter...';
    FNewMenuItem.OnClick := OnMenuItemClick;
    Ch := 'D';
    FNewMenuItem.ShortCut := ShortCut(Word(Ch), [ssCtrl]);

  // find first separator
    for i := 0 to FToolMenu.Count - 1 do begin
      if FToolMenu.Items[i].IsLine then begin
        FToolMenu.Insert(i, FNewMenuItem);
        Break;
      end;
    end;
  end;
end;

destructor TIDETextExpert.Destroy;
begin
  inherited Destroy;
  if Assigned(DelExpertDlg) then
    DelExpertDlg.Free;
end; {Destroy}


procedure TIDETextExpert.Execute;
begin
  if not Assigned(DelExpertDlg) then
  begin
    DelExpertDlg := TDelExpertDlg.Create(Application);
  end;
  DelExpertDlg.ShowModal;
end;

procedure TIDETextExpert.OnMenuItemClick(Sender: TObject);
begin
  Execute;
end;

function TIDETextExpert.GetShortCut: TShortCut;
begin
  Result := FNewMenuItem.ShortCut;
end;

procedure TIDETextExpert.SetShortCut(AShortCut: TShortCut);
begin
  FNewMenuItem.ShortCut := AShortCut;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -