File: lazchmhelpregister.pas

package info (click to toggle)
lazarus 4.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 275,760 kB
  • sloc: pascal: 2,341,904; xml: 509,420; makefile: 348,726; cpp: 93,608; sh: 3,387; java: 609; perl: 297; sql: 222; ansic: 137
file content (72 lines) | stat: -rw-r--r-- 2,091 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
unit LazCHMHelpRegister;

{$mode objfpc}{$H+}

{ Registers Lazarus CHM Help menu shortcuts into the IDE }
{ This source is free software; you can redistribute it and/or modify it under
  the terms of the GNU General Public License as published by the Free
  Software Foundation; either version 2 of the License, or (at your option)
  any later version.

  This code is distributed in the hope that it will be useful, but WITHOUT ANY
  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
  details.

  A copy of the GNU General Public License is available on the World Wide Web
  at <http://www.gnu.org/copyleft/gpl.html>. You can also obtain it by writing
  to the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
  Boston, MA 02110-1335, USA.
}

interface

uses
  { rtl }
  SysUtils, Classes,
  { lcl }
  LCLType, FileUtil, LResources,
  PropEdits, Controls;

procedure Register;

implementation

uses
  { lazarus }
  LazIDEIntf, MenuIntf, IdeCommands,
  { local }
  LazCHMHelp;

const
  HELP_CURRENT_NAME  = 'chpHelp';
  HELP_CATEGORY_IDECMD_NAME = 'chpFormat';

// Register package
procedure Register;
var
  Cat: TIDECommandCategory;
  {
  Key: TIDEShortCut;
  }
  CmdHelpCommand: TIDECommand;
  AChmViewer: TChmHelpViewer;
begin
  // We can't put this in an initialization section because IDEChmHelp requires
  // some IDE features, which are only available in "Register".
  AChmViewer := ChmViewerInstance();
  Cat := IDECommandList.CreateCategory(nil, HELP_CATEGORY_IDECMD_NAME,
    HELP_CATEGORY_IDECMD, IDECmdScopeSrcEditOnly);
  {
  // Assign F1 key
  Key := IDEShortCut(VK_F1, [], VK_UNKNOWN, []);
  CmdHelpCommand := RegisterIDECommand(Cat, HELP_CURRENT_NAME, HELP_CURRENT_IDECMD, Key,
    @IDECHMHelp.ShowAllHelp);
  }
  CmdHelpCommand := RegisterIDECommand(Cat, HELP_CURRENT_NAME, HELP_CURRENT_IDECMD,
    @AChmViewer.ShowAllHelp);
  RegisterIDEMenuCommand(mnuHelp, HELP_CURRENT_NAME, HELP_CURRENT_MENU,
    @AChmViewer.ShowAllHelp, nil, CmdHelpCommand);
end;

end.