diff --git a/.gitattributes b/.gitattributes index f2b731b6e2..c18f7dab97 100644 --- a/.gitattributes +++ b/.gitattributes @@ -934,6 +934,18 @@ examples/helphtml/htmlhelp1.lpr svneol=native#text/plain examples/helphtml/unit1.lfm svneol=native#text/plain examples/helphtml/unit1.lrs svneol=native#text/plain examples/helphtml/unit1.pas svneol=native#text/plain +examples/htmlhelp_ipro/htmlhelp2unit1.lfm svneol=native#text/plain +examples/htmlhelp_ipro/htmlhelp2unit1.lrs svneol=native#text/plain +examples/htmlhelp_ipro/htmlhelp2unit1.pas svneol=native#text/plain +examples/htmlhelp_ipro/htmlhelp2unit2.lfm svneol=native#text/plain +examples/htmlhelp_ipro/htmlhelp2unit2.lrs svneol=native#text/plain +examples/htmlhelp_ipro/htmlhelp2unit2.pas svneol=native#text/plain +examples/htmlhelp_ipro/htmlhelp2viewer.lfm svneol=native#text/plain +examples/htmlhelp_ipro/htmlhelp2viewer.lrs svneol=native#text/plain +examples/htmlhelp_ipro/htmlhelp2viewer.pas svneol=native#text/plain +examples/htmlhelp_ipro/htmlhelpsample.lpi svneol=native#text/plain +examples/htmlhelp_ipro/htmlhelpsample.lpr svneol=native#text/plain +examples/htmlhelp_ipro/htmlhelpsample.lps svneol=native#text/plain examples/idequickfix/quickfixdemo1.pas svneol=native#text/plain examples/idequickfix/quickfixexample.lpk svneol=native#text/plain examples/idequickfix/quickfixexample.pas svneol=native#text/plain diff --git a/examples/htmlhelp_ipro/htmlhelp2unit1.lfm b/examples/htmlhelp_ipro/htmlhelp2unit1.lfm new file mode 100644 index 0000000000..42334f77d7 --- /dev/null +++ b/examples/htmlhelp_ipro/htmlhelp2unit1.lfm @@ -0,0 +1,48 @@ +object Form1: TForm1 + Left = 290 + Height = 300 + Top = 163 + Width = 400 + HorzScrollBar.Page = 399 + VertScrollBar.Page = 299 + ActiveControl = Edit1 + Caption = 'Form1' + OnCreate = FormCreate + object Edit1: TEdit + Left = 60 + Height = 23 + Top = 40 + Width = 207 + HelpType = htKeyword + HelpKeyword = 'HTML/edit1.html' + TabOrder = 0 + Text = 'Edit1 - Press F1 for help' + end + object Edit2: TEdit + Left = 60 + Height = 23 + Top = 95 + Width = 207 + HelpType = htKeyword + HelpKeyword = 'HTML/edit2.html' + TabOrder = 1 + Text = 'Edit2 - Press F1 for help' + end + object HelpButton: TButton + Left = 60 + Height = 25 + Top = 155 + Width = 98 + BorderSpacing.InnerBorder = 4 + Caption = 'Help' + OnClick = HelpButtonClick + TabOrder = 2 + end + object HTMLHelpDatabase1: THTMLHelpDatabase + BaseURL = 'file://../helphtml/html/' + AutoRegister = True + KeywordPrefix = 'HTML/' + left = 200 + top = 110 + end +end diff --git a/examples/htmlhelp_ipro/htmlhelp2unit1.lrs b/examples/htmlhelp_ipro/htmlhelp2unit1.lrs new file mode 100644 index 0000000000..8bbb966090 --- /dev/null +++ b/examples/htmlhelp_ipro/htmlhelp2unit1.lrs @@ -0,0 +1,17 @@ +{ This is an automatically generated lazarus resource file } + +LazarusResources.Add('TForm1','FORMDATA',[ + 'TPF0'#6'TForm1'#5'Form1'#4'Left'#3'"'#1#6'Height'#3','#1#3'Top'#3#163#0#5'Wi' + +'dth'#3#144#1#18'HorzScrollBar.Page'#3#143#1#18'VertScrollBar.Page'#3'+'#1#13 + +'ActiveControl'#7#5'Edit1'#7'Caption'#6#5'Form1'#8'OnCreate'#7#10'FormCreate' + +#0#5'TEdit'#5'Edit1'#4'Left'#2'<'#6'Height'#2#23#3'Top'#2'('#5'Width'#3#207#0 + +#8'HelpType'#7#9'htKeyword'#11'HelpKeyword'#6#15'HTML/edit1.html'#8'TabOrder' + +#2#0#4'Text'#6#25'Edit1 - Press F1 for help'#0#0#5'TEdit'#5'Edit2'#4'Left'#2 + +'<'#6'Height'#2#23#3'Top'#2'_'#5'Width'#3#207#0#8'HelpType'#7#9'htKeyword'#11 + +'HelpKeyword'#6#15'HTML/edit2.html'#8'TabOrder'#2#1#4'Text'#6#25'Edit2 - Pre' + +'ss F1 for help'#0#0#7'TButton'#10'HelpButton'#4'Left'#2'<'#6'Height'#2#25#3 + +'Top'#3#155#0#5'Width'#2'b'#25'BorderSpacing.InnerBorder'#2#4#7'Caption'#6#4 + +'Help'#7'OnClick'#7#15'HelpButtonClick'#8'TabOrder'#2#2#0#0#17'THTMLHelpData' + +'base'#17'HTMLHelpDatabase1'#7'BaseURL'#6#24'file://../helphtml/html/'#12'Au' + +'toRegister'#9#13'KeywordPrefix'#6#5'HTML/'#4'left'#3#200#0#3'top'#2'n'#0#0#0 +]); diff --git a/examples/htmlhelp_ipro/htmlhelp2unit1.pas b/examples/htmlhelp_ipro/htmlhelp2unit1.pas new file mode 100644 index 0000000000..955d7ae150 --- /dev/null +++ b/examples/htmlhelp_ipro/htmlhelp2unit1.pas @@ -0,0 +1,82 @@ +{ + *************************************************************************** + * * + * 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 . You can also * + * obtain it by writing to the Free Software Foundation, * + * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + * * + *************************************************************************** + + Abstract: + This example demonstrates the html help components using the turbo power + ipro browser component to show local html files +} + +unit HtmlHelp2Unit1; + +{$mode objfpc}{$H+} + +interface + +uses + Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, + LazHelpHTML, StdCtrls, Buttons, HelpIntfs, HtmlHelp2Viewer; + +type + + { TForm1 } + + TForm1 = class(TForm) + HelpButton: TButton; + Edit1: TEdit; + Edit2: TEdit; + HTMLHelpDatabase1: THTMLHelpDatabase; + procedure FormCreate(Sender: TObject); + procedure HelpButtonClick(Sender: TObject); + private + { private declarations } + + public + { public declarations } + + end; + +var + Form1: TForm1; + +implementation + +{ TForm1 } + +procedure TForm1.HelpButtonClick(Sender: TObject); +begin + // This demonstrates how to show a help item manually: + ShowHelpOrErrorForKeyword('','HTML/index.html'); // HTML is case sensitive +end; + + +procedure TForm1.FormCreate(Sender: TObject); +begin + HtmlHelp2Viewer.RegisterHelpViewer; // This registers the help viewer + // using the iPro viewer +end; + + + + +initialization + {$I htmlhelp2unit1.lrs} + +end. + diff --git a/examples/htmlhelp_ipro/htmlhelp2unit2.lfm b/examples/htmlhelp_ipro/htmlhelp2unit2.lfm new file mode 100644 index 0000000000..fd85814762 --- /dev/null +++ b/examples/htmlhelp_ipro/htmlhelp2unit2.lfm @@ -0,0 +1,267 @@ +object Form2: TForm2 + Left = 249 + Height = 300 + Top = 326 + Width = 400 + HorzScrollBar.Page = 399 + VertScrollBar.Page = 299 + Caption = 'Help' + object Panel1: TPanel + Height = 52 + Width = 400 + Align = alTop + TabOrder = 0 + object IndexButton: TSpeedButton + Left = 8 + Height = 42 + Hint = 'Index' + Top = 4 + Width = 48 + Caption = 'Index' + Color = clBtnFace + Glyph.Data = { + F40400002F2A2058504D202A2F0A7374617469632063686172202A6772617068 + 69635B5D203D207B0A2231362031362036302031222C0A222E2063204E6F6E65 + 222C0A222C20632023413530303030222C0A222D20632023454632393239222C + 0A222A20632023374234453441222C0A226120632023384335413541222C0A22 + 6220632023394435463542222C0A226320632023383438353836222C0A226420 + 632023394639463945222C0A226520632023433638453845222C0A2266206320 + 23394437373733222C0A226720632023384639343844222C0A22682063202342 + 4442444244222C0A226920632023433643364337222C0A226A20632023424642 + 464244222C0A226B20632023433641354135222C0A226C206320234137384438 + 46222C0A226D20632023394641353945222C0A226E2063202342464246424622 + 2C0A226F20632023444544454446222C0A227020632023444644464446222C0A + 227120632023443744374437222C0A227220632023434642354235222C0A2273 + 20632023413739463944222C0A227420632023413741374137222C0A22752063 + 2023444544454445222C0A227620632023454645464546222C0A227720632023 + 453745374537222C0A227820632023444544364436222C0A2279206320234237 + 42374235222C0A227A20632023413741374135222C0A22412063202335373537 + 3533222C0A224220632023373737423742222C0A224320632023373737423746 + 222C0A224420632023373737373737222C0A224520632023463746374637222C + 0A224620632023374638343742222C0A224720632023374638353746222C0A22 + 4820632023383438363746222C0A224920632023374239444337222C0A224A20 + 632023373739434336222C0A224B20632023383438363835222C0A224C206320 + 23354638364237222C0A224D20632023344137374146222C0A224E2063202337 + 3337373742222C0A224F20632023383638433837222C0A225020632023384538 + 433637222C0A225120632023373337423835222C0A2252206320233335363741 + 35222C0A225320632023364637373835222C0A22542063202338373844383422 + 2C0A225520632023384338443746222C0A225620632023423542374237222C0A + 225720632023424442444337222C0A225820632023413541354135222C0A2259 + 20632023384338453835222C0A225A20632023363736373633222C0A22302063 + 2023393739443934222C0A223120632023394339443936222C0A223220632023 + 394439453936222C0A223320632023464646464646222C0A222E2E2E2E2E2E2E + 2C2C2D2E2E2E2E2E2E222C0A222E2E2E2E2E2E2C2D2D2C2E2E2E2E2E2E222C0A + 222E2E2E2E2E2C2D2A612D2C2E2E2E2E2E222C0A222E2E2E2E2C2D626364652D + 2C2E2E2E2E222C0A222E2E2E2C2D666768696A6B2D2C2E2E2E222C0A222E2E2C + 2D6C6D6E6F6F7071722D2C2E2E222C0A222E2C2D737475767676767677782D2C + 2E222C0A222C2D797A757777777777777777772D2C222C0A222E2D7741414141 + 774243444344452D2E222C0A222E414541464748774349444A4345412E222C0A + 222E4145414B4B4B77424C444D4E45412E222C0A222E4176414F4F5077515244 + 525345412E222C0A222E4176415454557756576A575845412E222C0A222E4176 + 4159595977747474747445412E222C0A222E41455A3031324545454545453341 + 2E222C0A222E41414141414141414141414141412E227D0A + } + Layout = blGlyphTop + NumGlyphs = 0 + OnClick = IndexButtonClick + ShowHint = True + ParentShowHint = False + end + object BackButton: TSpeedButton + Left = 64 + Height = 42 + Hint = 'Back' + Top = 4 + Width = 48 + Caption = 'Back' + Color = clBtnFace + Enabled = False + Glyph.Data = { + 500800002F2A2058504D202A2F0A7374617469632063686172202A6772617068 + 69635B5D203D207B0A2231362031362039342032222C0A222E2E2063204E6F6E + 65222C0A222E2C20632023334437373034222C0A222E2D206320233445383731 + 38222C0A222E2A20632023334237333034222C0A222E61206320233545393732 + 44222C0A222E6220632023434545464146222C0A222E63206320233344373730 + 37222C0A222E6420632023374241443441222C0A222E65206320234346454642 + 37222C0A222E6620632023443646374244222C0A222E67206320233342373730 + 34222C0A222E6820632023393442463637222C0A222E69206320234345454642 + 35222C0A222E6A20632023423545373844222C0A222E6B206320234437454642 + 46222C0A222E6C20632023343337463039222C0A222E6D206320233346373730 + 39222C0A222E6E20632023413543453836222C0A222E6F206320234345453741 + 44222C0A222E7020632023414444453835222C0A222E71206320234146444537 + 42222C0A222E7220632023443645464244222C0A222E73206320234436454642 + 37222C0A222E7420632023434645374235222C0A222E75206320234345453741 + 46222C0A222E7620632023433745374144222C0A222E77206320233344373730 + 36222C0A222E7820632023344237463136222C0A222E79206320234237443739 + 35222C0A222E7A20632023424444454135222C0A222E41206320234135443637 + 42222C0A222E4220632023413544373737222C0A222E43206320234137444537 + 37222C0A222E4420632023413744463737222C0A222E45206320234135444537 + 33222C0A222E4620632023413544363646222C0A222E47206320233943434636 + 42222C0A222E4820632023393743463637222C0A222E49206320234337444641 + 44222C0A222E4A20632023354138443239222C0A222E4B206320234244443741 + 35222C0A222E4C20632023423544363935222C0A222E4D206320233946434636 + 46222C0A222E4E20632023394543463733222C0A222E4F206320233946443637 + 33222C0A222E5020632023413544363733222C0A222E51206320234135443736 + 46222C0A222E5220632023394544363642222C0A222E53206320233946434636 + 42222C0A222E5420632023393743453637222C0A222E55206320233937433736 + 33222C0A222E5620632023433644454146222C0A222E57206320233541384632 + 35222C0A222E5820632023413543463834222C0A222E59206320233846424636 + 33222C0A222E5A20632023383442463532222C0A222E30206320233934433635 + 45222C0A222E3120632023383443363442222C0A222E32206320233737424433 + 37222C0A222E3320632023364242373231222C0A222E34206320233546414630 + 45222C0A222E3520632023363341463137222C0A222E36206320233646423732 + 39222C0A222E3720632023373742353342222C0A222E38206320233437374631 + 34222C0A222E3920632023393742463642222C0A222E40206320233836423734 + 46222C0A222E2320632023353239463038222C0A222E3B206320233536413730 + 38222C0A222E3A20632023353641373039222C0A222E3D206320233537414430 + 41222C0A222E2B20632023353741373039222C0A222E25206320233537413530 + 39222C0A222E2420632023353241353038222C0A222E28206320233446394630 + 36222C0A222E2920632023413743453746222C0A222E5B206320233346373730 + 42222C0A222E5D20632023383542353541222C0A222C2E206320233845424636 + 33222C0A222C2C20632023353641353045222C0A222C2D206320233533394630 + 37222C0A222C2A20632023413743463746222C0A222C61206320234137434537 + 42222C0A222C6220632023413743463742222C0A222C63206320234135434637 + 42222C0A222C6420632023334237373035222C0A222C65206320233737413734 + 41222C0A222C6620632023393743373646222C0A222C67206320233542413531 + 39222C0A222C6820632023334637423038222C0A222C69206320233637394333 + 33222C0A222C6A20632023394643373733222C0A222C6B206320233533384432 + 31222C0A222C6C20632023394643363733222C0A222E2E2E2E2E2E2E2E2E2E2E + 2E2E2E2E2E2E2E2E2C2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E + 2E2E2E2E2E2E2E2E2E2E2D2E2A2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E + 2E2E2E2E2E2E2E2E2E2E2C2E612E622E632E2E2E2E2E2E2E2E2E2E2E2E222C0A + 222E2E2E2E2E2E2E2E2E2E2E2C2E642E652E662E632E2E2E2E2E2E2E2E2E2E2E + 2E222C0A222E2E2E2E2E2E2E2E2E672E682E692E6A2E6B2E6C2E2A2E2A2E2A2E + 2A2E672E2E222C0A222E2E2E2E2E2E2E6D2E6E2E6F2E702E712E722E732E692E + 742E752E762E772E2E222C0A222E2E2E2E2E782E792E7A2E412E422E432E442E + 452E462E472E482E492E772E2E222C0A222E672E4A2E4B2E4C2E4D2E4E2E4F2E + 502E512E522E532E542E552E562E772E2E222C0A222E672E572E582E592E5A2E + 302E312E322E332E342E352E362E372E7A2E772E2E222C0A222E2E2E672E382E + 392E402E232E3B2E3A2E3D2E2B2E252E242E282E292E2A2E2E222C0A222E2E2E + 2E2E2E2E5B2E5D2C2E2C2C2C2D2C2A2C612C622C632C632E292E2A2E2E222C0A + 222E2E2E2E2E2E2E2E2C642C652C662C672E292C682E632E632E632E632E672E + 2E222C0A222E2E2E2E2E2E2E2E2E2E2E672C692C6A2E292E2A2E2E2E2E2E2E2E + 2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E672C6B2C6C2E2A2E2E2E + 2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E672E382E + 2A2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E + 2E2E2E2E672E2E2E2E2E2E2E2E2E2E2E2E227D0A + } + Layout = blGlyphTop + NumGlyphs = 0 + OnClick = BackButtonClick + ShowHint = True + ParentShowHint = False + end + object ForwardButton: TSpeedButton + Left = 120 + Height = 42 + Hint = 'Go forward one page' + Top = 4 + Width = 48 + Caption = 'Forward' + Color = clBtnFace + Enabled = False + Glyph.Data = { + 200800002F2A2058504D202A2F0A7374617469632063686172202A6772617068 + 69635B5D203D207B0A2231362031362039312032222C0A222E2E2063204E6F6E + 65222C0A222E2C20632023334437373034222C0A222E2D206320233342373330 + 34222C0A222E2A20632023343637463132222C0A222E61206320234337453741 + 37222C0A222E6220632023354139343239222C0A222E63206320233342373730 + 34222C0A222E6420632023443645464244222C0A222E65206320234346454642 + 37222C0A222E6620632023373741373436222C0A222E67206320234436454642 + 37222C0A222E6820632023423745373846222C0A222E69206320233844424636 + 33222C0A222E6A20632023424444374135222C0A222E6B206320234337444641 + 37222C0A222E6C20632023433645374144222C0A222E6D206320234337453741 + 46222C0A222E6E20632023434545374146222C0A222E6F206320234144444537 + 42222C0A222E7020632023414644453835222C0A222E71206320234137434537 + 46222C0A222E7220632023334437373038222C0A222E73206320234337444641 + 44222C0A222E7420632023393543373637222C0A222E75206320233944434536 + 42222C0A222E7620632023394544363646222C0A222E77206320234137443737 + 33222C0A222E7820632023413744463737222C0A222E79206320234137444537 + 37222C0A222E7A20632023413744363742222C0A222E41206320234337453741 + 35222C0A222E4220632023423744363937222C0A222E43206320233437374631 + 33222C0A222E4420632023433644454137222C0A222E45206320233846433636 + 33222C0A222E4620632023393743373633222C0A222E47206320233943434636 + 37222C0A222E4820632023394643463642222C0A222E49206320234135443636 + 46222C0A222E4A20632023413544373733222C0A222E4B206320234135443637 + 33222C0A222E4C20632023394543463733222C0A222E4D206320234235443739 + 34222C0A222E4E20632023424644363946222C0A222E4F206320233537384432 + 35222C0A222E5020632023424644374135222C0A222E51206320233737423534 + 32222C0A222E5220632023364641463244222C0A222E53206320233633414431 + 41222C0A222E5420632023354541463133222C0A222E55206320233646423732 + 37222C0A222E5620632023374242463339222C0A222E57206320233844433634 + 46222C0A222E5820632023393643463637222C0A222E59206320233843433635 + 42222C0A222E5A20632023384643373546222C0A222E30206320234144434638 + 37222C0A222E3120632023354639373246222C0A222E32206320234135434537 + 42222C0A222E3320632023353239463039222C0A222E34206320233446394630 + 36222C0A222E3520632023353241353038222C0A222E36206320233537413530 + 39222C0A222E3720632023353741443041222C0A222E38206320233536413730 + 39222C0A222E3920632023353641353038222C0A222E40206320233746423734 + 37222C0A222E2320632023393743363646222C0A222E3B206320233445383431 + 42222C0A222E3A20632023394643363733222C0A222E3D206320233943433637 + 37222C0A222E2B20632023394443373737222C0A222E25206320233946434637 + 37222C0A222E2420632023413543453737222C0A222E28206320233536413730 + 41222C0A222E2920632023353741353042222C0A222E5B206320233844424435 + 41222C0A222E5D20632023384442443633222C0A222C2E206320233433374230 + 46222C0A222C2C20632023343237423045222C0A222C2D206320233432374230 + 44222C0A222C2A20632023343337463043222C0A222C61206320234135434637 + 42222C0A222C6220632023354241353136222C0A222C63206320233936433736 + 37222C0A222C6420632023374641463532222C0A222C65206320233344373730 + 37222C0A222C6620632023394643373733222C0A222C67206320233646413533 + 46222C0A222C6820632023354539353242222C0A222C69206320233442383531 + 37222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2C2E2E2E2E2E2E2E2E2E2E2E2E2E + 2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2D2E2A2E2E2E2E2E2E2E + 2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2D2E612E622E + 2C2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E632E + 642E652E662E2C2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E632E632E632E632E + 632E2C2E672E682E672E692E632E2E2E2E2E2E2E2E222C0A222E2E2E2D2E6A2E + 6B2E6C2E6D2E6E2E672E6F2E702E6E2E712E722E2E2E2E2E2E222C0A222E2E2E + 2D2E732E742E752E762E772E782E782E792E7A2E412E422E432E2E2E2E222C0A + 222E2E2E2D2E442E452E462E472E482E762E492E4A2E4B2E4C2E4D2E4E2E4F2E + 63222C0A222E2E2E2D2E502E512E522E532E542E552E562E572E582E592E5A2E + 302E312E63222C0A222E2E2E2D2E322E332E342E352E362E372E372E382E392E + 402E232E3B2E632E2E222C0A222E2E2E2D2E322E3A2E3D2E2B2E252E242E282E + 292E5B2E5D2C2E2E2E2E2E2E2E222C0A222E2E2E632C2E2C2E2C2C2C2D2C2A2C + 612C622C632C642C652E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E + 2E2E2D2E322C662C672E632E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E + 2E2E2E2E2E2E2D2E3A2C682E632E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E + 2E2E2E2E2E2E2E2E2E2E2D2C692E632E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A + 222E2E2E2E2E2E2E2E2E2E2E2E2E632E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E + 2E227D0A + } + Layout = blGlyphTop + NumGlyphs = 0 + OnClick = ForwardButtonClick + ShowHint = True + ParentShowHint = False + end + end + object IHP: TIpHtmlPanel + Height = 228 + Top = 52 + Width = 400 + Align = alClient + DataProvider = DataProvider + FixedTypeface = 'Courier New' + DefaultTypeFace = 'default' + PrintSettings.MarginLeft = 0.5 + PrintSettings.MarginTop = 0.5 + PrintSettings.MarginRight = 0.5 + PrintSettings.MarginBottom = 0.5 + OnDocumentOpen = IHPDocumentOpen + OnHotChange = IHPHotChange + end + object StatusBar1: TStatusBar + Height = 20 + Top = 280 + Width = 400 + Panels = < + item + Width = 512 + end> + SimplePanel = False + end + object DataProvider: TIpFileDataProvider + left = 12 + top = 232 + end +end diff --git a/examples/htmlhelp_ipro/htmlhelp2unit2.lrs b/examples/htmlhelp_ipro/htmlhelp2unit2.lrs new file mode 100644 index 0000000000..bed3e4bc0e --- /dev/null +++ b/examples/htmlhelp_ipro/htmlhelp2unit2.lrs @@ -0,0 +1,119 @@ +{ This is an automatically generated lazarus resource file } + +LazarusResources.Add('TForm2','FORMDATA',[ + 'TPF0'#6'TForm2'#5'Form2'#4'Left'#3#249#0#6'Height'#3','#1#3'Top'#3'F'#1#5'Wi' + +'dth'#3#144#1#18'HorzScrollBar.Page'#3#143#1#18'VertScrollBar.Page'#3'+'#1#7 + +'Caption'#6#4'Help'#0#6'TPanel'#6'Panel1'#6'Height'#2'4'#5'Width'#3#144#1#5 + +'Align'#7#5'alTop'#8'TabOrder'#2#0#0#12'TSpeedButton'#11'IndexButton'#4'Left' + +#2#8#6'Height'#2'*'#4'Hint'#6#5'Index'#3'Top'#2#4#5'Width'#2'0'#7'Caption'#6 + +#5'Index'#5'Color'#7#9'clBtnFace'#10'Glyph.Data'#10#248#4#0#0#244#4#0#0'/* X' + +'PM */'#10'static char *graphic[] = {'#10'"16 16 60 1",'#10'". c None",'#10 + +'", c #A50000",'#10'"- c #EF2929",'#10'"* c #7B4E4A",'#10'"a c #8C5A5A",'#10 + +'"b c #9D5F5B",'#10'"c c #848586",'#10'"d c #9F9F9E",'#10'"e c #C68E8E",'#10 + +'"f c #9D7773",'#10'"g c #8F948D",'#10'"h c #BDBDBD",'#10'"i c #C6C6C7",'#10 + +'"j c #BFBFBD",'#10'"k c #C6A5A5",'#10'"l c #A78D8F",'#10'"m c #9FA59E",'#10 + +'"n c #BFBFBF",'#10'"o c #DEDEDF",'#10'"p c #DFDFDF",'#10'"q c #D7D7D7",'#10 + +'"r c #CFB5B5",'#10'"s c #A79F9D",'#10'"t c #A7A7A7",'#10'"u c #DEDEDE",'#10 + +'"v c #EFEFEF",'#10'"w c #E7E7E7",'#10'"x c #DED6D6",'#10'"y c #B7B7B5",'#10 + +'"z c #A7A7A5",'#10'"A c #575753",'#10'"B c #777B7B",'#10'"C c #777B7F",'#10 + +'"D c #777777",'#10'"E c #F7F7F7",'#10'"F c #7F847B",'#10'"G c #7F857F",'#10 + +'"H c #84867F",'#10'"I c #7B9DC7",'#10'"J c #779CC6",'#10'"K c #848685",'#10 + +'"L c #5F86B7",'#10'"M c #4A77AF",'#10'"N c #73777B",'#10'"O c #868C87",'#10 + +'"P c #8E8C67",'#10'"Q c #737B85",'#10'"R c #3567A5",'#10'"S c #6F7785",'#10 + +'"T c #878D84",'#10'"U c #8C8D7F",'#10'"V c #B5B7B7",'#10'"W c #BDBDC7",'#10 + +'"X c #A5A5A5",'#10'"Y c #8C8E85",'#10'"Z c #676763",'#10'"0 c #979D94",'#10 + +'"1 c #9C9D96",'#10'"2 c #9D9E96",'#10'"3 c #FFFFFF",'#10'".......,,-......"' + +','#10'"......,--,......",'#10'".....,-*a-,.....",'#10'"....,-bcde-,....",' + +#10'"...,-fghijk-,...",'#10'"..,-lmnoopqr-,..",'#10'".,-stuvvvvvwx-,.",'#10 + +'",-yzuwwwwwwwww-,",'#10'".-wAAAAwBCDCDE-.",'#10'".AEAFGHwCIDJCEA.",'#10'".A' + +'EAKKKwBLDMNEA.",'#10'".AvAOOPwQRDRSEA.",'#10'".AvATTUwVWjWXEA.",'#10'".AvAY' + +'YYwtttttEA.",'#10'".AEZ012EEEEEE3A.",'#10'".AAAAAAAAAAAAAA."}'#10#6'Layout' + +#7#10'blGlyphTop'#9'NumGlyphs'#2#0#7'OnClick'#7#16'IndexButtonClick'#8'ShowH' + +'int'#9#14'ParentShowHint'#8#0#0#12'TSpeedButton'#10'BackButton'#4'Left'#2'@' + +#6'Height'#2'*'#4'Hint'#6#4'Back'#3'Top'#2#4#5'Width'#2'0'#7'Caption'#6#4'Ba' + +'ck'#5'Color'#7#9'clBtnFace'#7'Enabled'#8#10'Glyph.Data'#10'T'#8#0#0'P'#8#0#0 + +'/* XPM */'#10'static char *graphic[] = {'#10'"16 16 94 2",'#10'".. c None",' + +#10'"., c #3D7704",'#10'".- c #4E8718",'#10'".* c #3B7304",'#10'".a c #5E972' + +'D",'#10'".b c #CEEFAF",'#10'".c c #3D7707",'#10'".d c #7BAD4A",'#10'".e c #' + +'CFEFB7",'#10'".f c #D6F7BD",'#10'".g c #3B7704",'#10'".h c #94BF67",'#10'".' + +'i c #CEEFB5",'#10'".j c #B5E78D",'#10'".k c #D7EFBF",'#10'".l c #437F09",' + +#10'".m c #3F7709",'#10'".n c #A5CE86",'#10'".o c #CEE7AD",'#10'".p c #ADDE8' + +'5",'#10'".q c #AFDE7B",'#10'".r c #D6EFBD",'#10'".s c #D6EFB7",'#10'".t c #' + +'CFE7B5",'#10'".u c #CEE7AF",'#10'".v c #C7E7AD",'#10'".w c #3D7706",'#10'".' + +'x c #4B7F16",'#10'".y c #B7D795",'#10'".z c #BDDEA5",'#10'".A c #A5D67B",' + +#10'".B c #A5D777",'#10'".C c #A7DE77",'#10'".D c #A7DF77",'#10'".E c #A5DE7' + +'3",'#10'".F c #A5D66F",'#10'".G c #9CCF6B",'#10'".H c #97CF67",'#10'".I c #' + +'C7DFAD",'#10'".J c #5A8D29",'#10'".K c #BDD7A5",'#10'".L c #B5D695",'#10'".' + +'M c #9FCF6F",'#10'".N c #9ECF73",'#10'".O c #9FD673",'#10'".P c #A5D673",' + +#10'".Q c #A5D76F",'#10'".R c #9ED66B",'#10'".S c #9FCF6B",'#10'".T c #97CE6' + +'7",'#10'".U c #97C763",'#10'".V c #C6DEAF",'#10'".W c #5A8F25",'#10'".X c #' + +'A5CF84",'#10'".Y c #8FBF63",'#10'".Z c #84BF52",'#10'".0 c #94C65E",'#10'".' + +'1 c #84C64B",'#10'".2 c #77BD37",'#10'".3 c #6BB721",'#10'".4 c #5FAF0E",' + +#10'".5 c #63AF17",'#10'".6 c #6FB729",'#10'".7 c #77B53B",'#10'".8 c #477F1' + +'4",'#10'".9 c #97BF6B",'#10'".@ c #86B74F",'#10'".# c #529F08",'#10'".; c #' + +'56A708",'#10'".: c #56A709",'#10'".= c #57AD0A",'#10'".+ c #57A709",'#10'".' + +'% c #57A509",'#10'".$ c #52A508",'#10'".( c #4F9F06",'#10'".) c #A7CE7F",' + +#10'".[ c #3F770B",'#10'".] c #85B55A",'#10'",. c #8EBF63",'#10'",, c #56A50' + +'E",'#10'",- c #539F07",'#10'",* c #A7CF7F",'#10'",a c #A7CE7B",'#10'",b c #' + +'A7CF7B",'#10'",c c #A5CF7B",'#10'",d c #3B7705",'#10'",e c #77A74A",'#10'",' + +'f c #97C76F",'#10'",g c #5BA519",'#10'",h c #3F7B08",'#10'",i c #679C33",' + +#10'",j c #9FC773",'#10'",k c #538D21",'#10'",l c #9FC673",'#10'"...........' + +'........,............",'#10'".................-.*............",'#10'"......' + +'.......,.a.b.c............",'#10'"...........,.d.e.f.c............",'#10'".' + +'........g.h.i.j.k.l.*.*.*.*.g..",'#10'".......m.n.o.p.q.r.s.i.t.u.v.w..",' + +#10'".....x.y.z.A.B.C.D.E.F.G.H.I.w..",'#10'".g.J.K.L.M.N.O.P.Q.R.S.T.U.V.w.' + +'.",'#10'".g.W.X.Y.Z.0.1.2.3.4.5.6.7.z.w..",'#10'"...g.8.9.@.#.;.:.=.+.%.$.(' + +'.).*..",'#10'".......[.],.,,,-,*,a,b,c,c.).*..",'#10'"........,d,e,f,g.),h.' + +'c.c.c.c.g..",'#10'"...........g,i,j.).*............",'#10'".............g,k' + ,',l.*............",'#10'"...............g.8.*............",'#10'"...........' + +'........g............"}'#10#6'Layout'#7#10'blGlyphTop'#9'NumGlyphs'#2#0#7'O' + +'nClick'#7#15'BackButtonClick'#8'ShowHint'#9#14'ParentShowHint'#8#0#0#12'TSp' + +'eedButton'#13'ForwardButton'#4'Left'#2'x'#6'Height'#2'*'#4'Hint'#6#19'Go fo' + +'rward one page'#3'Top'#2#4#5'Width'#2'0'#7'Caption'#6#7'Forward'#5'Color'#7 + +#9'clBtnFace'#7'Enabled'#8#10'Glyph.Data'#10'$'#8#0#0' '#8#0#0'/* XPM */'#10 + +'static char *graphic[] = {'#10'"16 16 91 2",'#10'".. c None",'#10'"., c #3D' + +'7704",'#10'".- c #3B7304",'#10'".* c #467F12",'#10'".a c #C7E7A7",'#10'".b ' + +'c #5A9429",'#10'".c c #3B7704",'#10'".d c #D6EFBD",'#10'".e c #CFEFB7",'#10 + +'".f c #77A746",'#10'".g c #D6EFB7",'#10'".h c #B7E78F",'#10'".i c #8DBF63",' + +#10'".j c #BDD7A5",'#10'".k c #C7DFA7",'#10'".l c #C6E7AD",'#10'".m c #C7E7A' + +'F",'#10'".n c #CEE7AF",'#10'".o c #ADDE7B",'#10'".p c #AFDE85",'#10'".q c #' + +'A7CE7F",'#10'".r c #3D7708",'#10'".s c #C7DFAD",'#10'".t c #95C767",'#10'".' + +'u c #9DCE6B",'#10'".v c #9ED66F",'#10'".w c #A7D773",'#10'".x c #A7DF77",' + +#10'".y c #A7DE77",'#10'".z c #A7D67B",'#10'".A c #C7E7A5",'#10'".B c #B7D69' + +'7",'#10'".C c #477F13",'#10'".D c #C6DEA7",'#10'".E c #8FC663",'#10'".F c #' + +'97C763",'#10'".G c #9CCF67",'#10'".H c #9FCF6B",'#10'".I c #A5D66F",'#10'".' + +'J c #A5D773",'#10'".K c #A5D673",'#10'".L c #9ECF73",'#10'".M c #B5D794",' + +#10'".N c #BFD69F",'#10'".O c #578D25",'#10'".P c #BFD7A5",'#10'".Q c #77B54' + +'2",'#10'".R c #6FAF2D",'#10'".S c #63AD1A",'#10'".T c #5EAF13",'#10'".U c #' + +'6FB727",'#10'".V c #7BBF39",'#10'".W c #8DC64F",'#10'".X c #96CF67",'#10'".' + +'Y c #8CC65B",'#10'".Z c #8FC75F",'#10'".0 c #ADCF87",'#10'".1 c #5F972F",' + +#10'".2 c #A5CE7B",'#10'".3 c #529F09",'#10'".4 c #4F9F06",'#10'".5 c #52A50' + +'8",'#10'".6 c #57A509",'#10'".7 c #57AD0A",'#10'".8 c #56A709",'#10'".9 c #' + +'56A508",'#10'".@ c #7FB747",'#10'".# c #97C66F",'#10'".; c #4E841B",'#10'".' + +': c #9FC673",'#10'".= c #9CC677",'#10'".+ c #9DC777",'#10'".% c #9FCF77",' + +#10'".$ c #A5CE77",'#10'".( c #56A70A",'#10'".) c #57A50B",'#10'".[ c #8DBD5' + +'A",'#10'".] c #8DBD63",'#10'",. c #437B0F",'#10'",, c #427B0E",'#10'",- c #' + +'427B0D",'#10'",* c #437F0C",'#10'",a c #A5CF7B",'#10'",b c #5BA516",'#10'",' + +'c c #96C767",'#10'",d c #7FAF52",'#10'",e c #3D7707",'#10'",f c #9FC773",' + +#10'",g c #6FA53F",'#10'",h c #5E952B",'#10'",i c #4B8517",'#10'"...........' + +'..,..................",'#10'".............-.*................",'#10'"......' + +'.......-.a.b.,............",'#10'".............c.d.e.f.,..........",'#10'".' + +'..c.c.c.c.c.,.g.h.g.i.c........",'#10'"...-.j.k.l.m.n.g.o.p.n.q.r......",' + +#10'"...-.s.t.u.v.w.x.x.y.z.A.B.C....",'#10'"...-.D.E.F.G.H.v.I.J.K.L.M.N.O.' + +'c",'#10'"...-.P.Q.R.S.T.U.V.W.X.Y.Z.0.1.c",'#10'"...-.2.3.4.5.6.7.7.8.9.@.#' + +'.;.c..",'#10'"...-.2.:.=.+.%.$.(.).[.],.......",'#10'"...c,.,.,,,-,*,a,b,c,' + +'d,e........",'#10'".............-.2,f,g.c..........",'#10'".............-.:' + +',h.c............",'#10'".............-,i.c..............",'#10'"...........' + +'..c.................."}'#10#6'Layout'#7#10'blGlyphTop'#9'NumGlyphs'#2#0#7'O' + +'nClick'#7#18'ForwardButtonClick'#8'ShowHint'#9#14'ParentShowHint'#8#0#0#0#12 + +'TIpHtmlPanel'#3'IHP'#6'Height'#3#228#0#3'Top'#2'4'#5'Width'#3#144#1#5'Align' + +#7#8'alClient'#12'DataProvider'#7#12'DataProvider'#13'FixedTypeface'#6#11'Co' + +'urier New'#15'DefaultTypeFace'#6#7'default'#24'PrintSettings.MarginLeft'#5#0 + +#0#0#0#0#0#0#128#254'?'#23'PrintSettings.MarginTop'#5#0#0#0#0#0#0#0#128#254 + +'?'#25'PrintSettings.MarginRight'#5#0#0#0#0#0#0#0#128#254'?'#26'PrintSetting' + +'s.MarginBottom'#5#0#0#0#0#0#0#0#128#254'?'#14'OnDocumentOpen'#7#15'IHPDocum' + +'entOpen'#11'OnHotChange'#7#12'IHPHotChange'#0#0#10'TStatusBar'#10'StatusBar' + +'1'#6'Height'#2#20#3'Top'#3#24#1#5'Width'#3#144#1#6'Panels'#14#1#5'Width'#3#0 + +#2#0#0#11'SimplePanel'#8#0#0#19'TIpFileDataProvider'#12'DataProvider'#4'left' + +#2#12#3'top'#3#232#0#0#0#0 +]); diff --git a/examples/htmlhelp_ipro/htmlhelp2unit2.pas b/examples/htmlhelp_ipro/htmlhelp2unit2.pas new file mode 100644 index 0000000000..463adb3f7a --- /dev/null +++ b/examples/htmlhelp_ipro/htmlhelp2unit2.pas @@ -0,0 +1,126 @@ +unit HtmlHelp2Unit2; + +{$mode objfpc}{$H+} + +interface + +uses + Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ExtCtrls, LCLProc, + IpHtml, Buttons, helpintfs, lazhelpintf, ComCtrls, ipfilebroker, iputils; + +type + + { TForm2 } + + TForm2 = class(TForm) + IHP: TIpHtmlPanel; + DataProvider: TIpFileDataProvider; + Panel1: TPanel; + IndexButton: TSpeedButton; + BackButton: TSpeedButton; + ForwardButton: TSpeedButton; + StatusBar1: TStatusBar; + procedure BackButtonClick(Sender: TObject); + procedure ForwardButtonClick(Sender: TObject); + procedure IHPDocumentOpen(Sender: TObject); + procedure IHPHotChange(Sender: TObject); + procedure IndexButtonClick(Sender: TObject); + private + public + { public declarations } + procedure showURL(URL : String); + end; + +var + Form2: TForm2; + +procedure RegisterHelpViewer; + +implementation + +type +THTMLHelpViewer = class(THelpViewer) + private + public + constructor Create(TheOwner: TComponent); override; + function ShowNode(Node: THelpNode; var ErrMsg: string): TShowHelpResult; override; + //procedure Assign(Source: TPersistent); override; + //procedure Load(Storage: TConfigStorage); override; + //procedure Save(Storage: TConfigStorage); override; + //function GetLocalizedName: string; override; + published + property AutoRegister; + end; + +{ THTMLHelpViewer } + +constructor THTMLHelpViewer.Create(TheOwner: TComponent); +begin + inherited Create(TheOwner); + AddSupportedMimeType('text/html'); +end; + +function THTMLHelpViewer.ShowNode(Node: THelpNode; var ErrMsg: string): TShowHelpResult; +begin + DebugLn (Format('ShowNode: URL:"%s" ID:"%s" Context:"%d"',[Node.URL,Node.ID,Node.Context])); + Form2.ShowURL(Node.URL); + result := shrSuccess; +end; + +var Help_Viewer : THTMLHelpViewer = nil; + +procedure RegisterHelpViewer; +begin + if Help_Viewer = nil then + begin + Help_Viewer := THTMLHelpViewer.Create(nil); + Help_Viewer.RegisterSelf; + end; +end; + +{ TForm2 } + +procedure TForm2.IndexButtonClick(Sender: TObject); +begin + ShowURL('html/index.html'); +end; + +// Show URL of a link in Status Bar +procedure TForm2.IHPHotChange(Sender: TObject); +begin + StatusBar1.Panels[0].Text := IHP.HotURL; +end; + +procedure TForm2.BackButtonClick(Sender: TObject); +begin + IHP.GoBack; +end; + + +procedure TForm2.ForwardButtonClick(Sender: TObject); +begin + IHP.GoForward; +end; + +procedure TForm2.IHPDocumentOpen(Sender: TObject); +begin + BackButton.Enabled := IHP.canGoBack; + ForwardButton.Enabled := IHP.canGoForward; +end; + + +procedure TForm2.showURL(URL : String); +begin + Show; + //writeln ('ShowUrl ',ansiuppercase(URL)); + URL := expandLocalHtmlFileName (URL); + //writeln ('showURL: "',URL,'"'); + IHP.OpenURL(URL); +end; + + +initialization + {$I htmlhelp2unit2.lrs} + +end. + diff --git a/examples/htmlhelp_ipro/htmlhelp2viewer.lfm b/examples/htmlhelp_ipro/htmlhelp2viewer.lfm new file mode 100644 index 0000000000..c63aaace32 --- /dev/null +++ b/examples/htmlhelp_ipro/htmlhelp2viewer.lfm @@ -0,0 +1,267 @@ +object HelpViewerForm: THelpViewerForm + Left = 249 + Height = 300 + Top = 326 + Width = 400 + HorzScrollBar.Page = 399 + VertScrollBar.Page = 299 + Caption = 'Help' + object Panel1: TPanel + Height = 52 + Width = 400 + Align = alTop + TabOrder = 0 + object IndexButton: TSpeedButton + Left = 8 + Height = 42 + Hint = 'Index' + Top = 4 + Width = 48 + Caption = 'Index' + Color = clBtnFace + Glyph.Data = { + F40400002F2A2058504D202A2F0A7374617469632063686172202A6772617068 + 69635B5D203D207B0A2231362031362036302031222C0A222E2063204E6F6E65 + 222C0A222C20632023413530303030222C0A222D20632023454632393239222C + 0A222A20632023374234453441222C0A226120632023384335413541222C0A22 + 6220632023394435463542222C0A226320632023383438353836222C0A226420 + 632023394639463945222C0A226520632023433638453845222C0A2266206320 + 23394437373733222C0A226720632023384639343844222C0A22682063202342 + 4442444244222C0A226920632023433643364337222C0A226A20632023424642 + 464244222C0A226B20632023433641354135222C0A226C206320234137384438 + 46222C0A226D20632023394641353945222C0A226E2063202342464246424622 + 2C0A226F20632023444544454446222C0A227020632023444644464446222C0A + 227120632023443744374437222C0A227220632023434642354235222C0A2273 + 20632023413739463944222C0A227420632023413741374137222C0A22752063 + 2023444544454445222C0A227620632023454645464546222C0A227720632023 + 453745374537222C0A227820632023444544364436222C0A2279206320234237 + 42374235222C0A227A20632023413741374135222C0A22412063202335373537 + 3533222C0A224220632023373737423742222C0A224320632023373737423746 + 222C0A224420632023373737373737222C0A224520632023463746374637222C + 0A224620632023374638343742222C0A224720632023374638353746222C0A22 + 4820632023383438363746222C0A224920632023374239444337222C0A224A20 + 632023373739434336222C0A224B20632023383438363835222C0A224C206320 + 23354638364237222C0A224D20632023344137374146222C0A224E2063202337 + 3337373742222C0A224F20632023383638433837222C0A225020632023384538 + 433637222C0A225120632023373337423835222C0A2252206320233335363741 + 35222C0A225320632023364637373835222C0A22542063202338373844383422 + 2C0A225520632023384338443746222C0A225620632023423542374237222C0A + 225720632023424442444337222C0A225820632023413541354135222C0A2259 + 20632023384338453835222C0A225A20632023363736373633222C0A22302063 + 2023393739443934222C0A223120632023394339443936222C0A223220632023 + 394439453936222C0A223320632023464646464646222C0A222E2E2E2E2E2E2E + 2C2C2D2E2E2E2E2E2E222C0A222E2E2E2E2E2E2C2D2D2C2E2E2E2E2E2E222C0A + 222E2E2E2E2E2C2D2A612D2C2E2E2E2E2E222C0A222E2E2E2E2C2D626364652D + 2C2E2E2E2E222C0A222E2E2E2C2D666768696A6B2D2C2E2E2E222C0A222E2E2C + 2D6C6D6E6F6F7071722D2C2E2E222C0A222E2C2D737475767676767677782D2C + 2E222C0A222C2D797A757777777777777777772D2C222C0A222E2D7741414141 + 774243444344452D2E222C0A222E414541464748774349444A4345412E222C0A + 222E4145414B4B4B77424C444D4E45412E222C0A222E4176414F4F5077515244 + 525345412E222C0A222E4176415454557756576A575845412E222C0A222E4176 + 4159595977747474747445412E222C0A222E41455A3031324545454545453341 + 2E222C0A222E41414141414141414141414141412E227D0A + } + Layout = blGlyphTop + NumGlyphs = 0 + OnClick = IndexButtonClick + ShowHint = True + ParentShowHint = False + end + object BackButton: TSpeedButton + Left = 64 + Height = 42 + Hint = 'Back' + Top = 4 + Width = 48 + Caption = 'Back' + Color = clBtnFace + Enabled = False + Glyph.Data = { + 500800002F2A2058504D202A2F0A7374617469632063686172202A6772617068 + 69635B5D203D207B0A2231362031362039342032222C0A222E2E2063204E6F6E + 65222C0A222E2C20632023334437373034222C0A222E2D206320233445383731 + 38222C0A222E2A20632023334237333034222C0A222E61206320233545393732 + 44222C0A222E6220632023434545464146222C0A222E63206320233344373730 + 37222C0A222E6420632023374241443441222C0A222E65206320234346454642 + 37222C0A222E6620632023443646374244222C0A222E67206320233342373730 + 34222C0A222E6820632023393442463637222C0A222E69206320234345454642 + 35222C0A222E6A20632023423545373844222C0A222E6B206320234437454642 + 46222C0A222E6C20632023343337463039222C0A222E6D206320233346373730 + 39222C0A222E6E20632023413543453836222C0A222E6F206320234345453741 + 44222C0A222E7020632023414444453835222C0A222E71206320234146444537 + 42222C0A222E7220632023443645464244222C0A222E73206320234436454642 + 37222C0A222E7420632023434645374235222C0A222E75206320234345453741 + 46222C0A222E7620632023433745374144222C0A222E77206320233344373730 + 36222C0A222E7820632023344237463136222C0A222E79206320234237443739 + 35222C0A222E7A20632023424444454135222C0A222E41206320234135443637 + 42222C0A222E4220632023413544373737222C0A222E43206320234137444537 + 37222C0A222E4420632023413744463737222C0A222E45206320234135444537 + 33222C0A222E4620632023413544363646222C0A222E47206320233943434636 + 42222C0A222E4820632023393743463637222C0A222E49206320234337444641 + 44222C0A222E4A20632023354138443239222C0A222E4B206320234244443741 + 35222C0A222E4C20632023423544363935222C0A222E4D206320233946434636 + 46222C0A222E4E20632023394543463733222C0A222E4F206320233946443637 + 33222C0A222E5020632023413544363733222C0A222E51206320234135443736 + 46222C0A222E5220632023394544363642222C0A222E53206320233946434636 + 42222C0A222E5420632023393743453637222C0A222E55206320233937433736 + 33222C0A222E5620632023433644454146222C0A222E57206320233541384632 + 35222C0A222E5820632023413543463834222C0A222E59206320233846424636 + 33222C0A222E5A20632023383442463532222C0A222E30206320233934433635 + 45222C0A222E3120632023383443363442222C0A222E32206320233737424433 + 37222C0A222E3320632023364242373231222C0A222E34206320233546414630 + 45222C0A222E3520632023363341463137222C0A222E36206320233646423732 + 39222C0A222E3720632023373742353342222C0A222E38206320233437374631 + 34222C0A222E3920632023393742463642222C0A222E40206320233836423734 + 46222C0A222E2320632023353239463038222C0A222E3B206320233536413730 + 38222C0A222E3A20632023353641373039222C0A222E3D206320233537414430 + 41222C0A222E2B20632023353741373039222C0A222E25206320233537413530 + 39222C0A222E2420632023353241353038222C0A222E28206320233446394630 + 36222C0A222E2920632023413743453746222C0A222E5B206320233346373730 + 42222C0A222E5D20632023383542353541222C0A222C2E206320233845424636 + 33222C0A222C2C20632023353641353045222C0A222C2D206320233533394630 + 37222C0A222C2A20632023413743463746222C0A222C61206320234137434537 + 42222C0A222C6220632023413743463742222C0A222C63206320234135434637 + 42222C0A222C6420632023334237373035222C0A222C65206320233737413734 + 41222C0A222C6620632023393743373646222C0A222C67206320233542413531 + 39222C0A222C6820632023334637423038222C0A222C69206320233637394333 + 33222C0A222C6A20632023394643373733222C0A222C6B206320233533384432 + 31222C0A222C6C20632023394643363733222C0A222E2E2E2E2E2E2E2E2E2E2E + 2E2E2E2E2E2E2E2E2C2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E + 2E2E2E2E2E2E2E2E2E2E2D2E2A2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E + 2E2E2E2E2E2E2E2E2E2E2C2E612E622E632E2E2E2E2E2E2E2E2E2E2E2E222C0A + 222E2E2E2E2E2E2E2E2E2E2E2C2E642E652E662E632E2E2E2E2E2E2E2E2E2E2E + 2E222C0A222E2E2E2E2E2E2E2E2E672E682E692E6A2E6B2E6C2E2A2E2A2E2A2E + 2A2E672E2E222C0A222E2E2E2E2E2E2E6D2E6E2E6F2E702E712E722E732E692E + 742E752E762E772E2E222C0A222E2E2E2E2E782E792E7A2E412E422E432E442E + 452E462E472E482E492E772E2E222C0A222E672E4A2E4B2E4C2E4D2E4E2E4F2E + 502E512E522E532E542E552E562E772E2E222C0A222E672E572E582E592E5A2E + 302E312E322E332E342E352E362E372E7A2E772E2E222C0A222E2E2E672E382E + 392E402E232E3B2E3A2E3D2E2B2E252E242E282E292E2A2E2E222C0A222E2E2E + 2E2E2E2E5B2E5D2C2E2C2C2C2D2C2A2C612C622C632C632E292E2A2E2E222C0A + 222E2E2E2E2E2E2E2E2C642C652C662C672E292C682E632E632E632E632E672E + 2E222C0A222E2E2E2E2E2E2E2E2E2E2E672C692C6A2E292E2A2E2E2E2E2E2E2E + 2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E672C6B2C6C2E2A2E2E2E + 2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E672E382E + 2A2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E + 2E2E2E2E672E2E2E2E2E2E2E2E2E2E2E2E227D0A + } + Layout = blGlyphTop + NumGlyphs = 0 + OnClick = BackButtonClick + ShowHint = True + ParentShowHint = False + end + object ForwardButton: TSpeedButton + Left = 120 + Height = 42 + Hint = 'Go forward one page' + Top = 4 + Width = 48 + Caption = 'Forward' + Color = clBtnFace + Enabled = False + Glyph.Data = { + 200800002F2A2058504D202A2F0A7374617469632063686172202A6772617068 + 69635B5D203D207B0A2231362031362039312032222C0A222E2E2063204E6F6E + 65222C0A222E2C20632023334437373034222C0A222E2D206320233342373330 + 34222C0A222E2A20632023343637463132222C0A222E61206320234337453741 + 37222C0A222E6220632023354139343239222C0A222E63206320233342373730 + 34222C0A222E6420632023443645464244222C0A222E65206320234346454642 + 37222C0A222E6620632023373741373436222C0A222E67206320234436454642 + 37222C0A222E6820632023423745373846222C0A222E69206320233844424636 + 33222C0A222E6A20632023424444374135222C0A222E6B206320234337444641 + 37222C0A222E6C20632023433645374144222C0A222E6D206320234337453741 + 46222C0A222E6E20632023434545374146222C0A222E6F206320234144444537 + 42222C0A222E7020632023414644453835222C0A222E71206320234137434537 + 46222C0A222E7220632023334437373038222C0A222E73206320234337444641 + 44222C0A222E7420632023393543373637222C0A222E75206320233944434536 + 42222C0A222E7620632023394544363646222C0A222E77206320234137443737 + 33222C0A222E7820632023413744463737222C0A222E79206320234137444537 + 37222C0A222E7A20632023413744363742222C0A222E41206320234337453741 + 35222C0A222E4220632023423744363937222C0A222E43206320233437374631 + 33222C0A222E4420632023433644454137222C0A222E45206320233846433636 + 33222C0A222E4620632023393743373633222C0A222E47206320233943434636 + 37222C0A222E4820632023394643463642222C0A222E49206320234135443636 + 46222C0A222E4A20632023413544373733222C0A222E4B206320234135443637 + 33222C0A222E4C20632023394543463733222C0A222E4D206320234235443739 + 34222C0A222E4E20632023424644363946222C0A222E4F206320233537384432 + 35222C0A222E5020632023424644374135222C0A222E51206320233737423534 + 32222C0A222E5220632023364641463244222C0A222E53206320233633414431 + 41222C0A222E5420632023354541463133222C0A222E55206320233646423732 + 37222C0A222E5620632023374242463339222C0A222E57206320233844433634 + 46222C0A222E5820632023393643463637222C0A222E59206320233843433635 + 42222C0A222E5A20632023384643373546222C0A222E30206320234144434638 + 37222C0A222E3120632023354639373246222C0A222E32206320234135434537 + 42222C0A222E3320632023353239463039222C0A222E34206320233446394630 + 36222C0A222E3520632023353241353038222C0A222E36206320233537413530 + 39222C0A222E3720632023353741443041222C0A222E38206320233536413730 + 39222C0A222E3920632023353641353038222C0A222E40206320233746423734 + 37222C0A222E2320632023393743363646222C0A222E3B206320233445383431 + 42222C0A222E3A20632023394643363733222C0A222E3D206320233943433637 + 37222C0A222E2B20632023394443373737222C0A222E25206320233946434637 + 37222C0A222E2420632023413543453737222C0A222E28206320233536413730 + 41222C0A222E2920632023353741353042222C0A222E5B206320233844424435 + 41222C0A222E5D20632023384442443633222C0A222C2E206320233433374230 + 46222C0A222C2C20632023343237423045222C0A222C2D206320233432374230 + 44222C0A222C2A20632023343337463043222C0A222C61206320234135434637 + 42222C0A222C6220632023354241353136222C0A222C63206320233936433736 + 37222C0A222C6420632023374641463532222C0A222C65206320233344373730 + 37222C0A222C6620632023394643373733222C0A222C67206320233646413533 + 46222C0A222C6820632023354539353242222C0A222C69206320233442383531 + 37222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2C2E2E2E2E2E2E2E2E2E2E2E2E2E + 2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2D2E2A2E2E2E2E2E2E2E + 2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2D2E612E622E + 2C2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E632E + 642E652E662E2C2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E632E632E632E632E + 632E2C2E672E682E672E692E632E2E2E2E2E2E2E2E222C0A222E2E2E2D2E6A2E + 6B2E6C2E6D2E6E2E672E6F2E702E6E2E712E722E2E2E2E2E2E222C0A222E2E2E + 2D2E732E742E752E762E772E782E782E792E7A2E412E422E432E2E2E2E222C0A + 222E2E2E2D2E442E452E462E472E482E762E492E4A2E4B2E4C2E4D2E4E2E4F2E + 63222C0A222E2E2E2D2E502E512E522E532E542E552E562E572E582E592E5A2E + 302E312E63222C0A222E2E2E2D2E322E332E342E352E362E372E372E382E392E + 402E232E3B2E632E2E222C0A222E2E2E2D2E322E3A2E3D2E2B2E252E242E282E + 292E5B2E5D2C2E2E2E2E2E2E2E222C0A222E2E2E632C2E2C2E2C2C2C2D2C2A2C + 612C622C632C642C652E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E + 2E2E2D2E322C662C672E632E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E + 2E2E2E2E2E2E2D2E3A2C682E632E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E + 2E2E2E2E2E2E2E2E2E2E2D2C692E632E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A + 222E2E2E2E2E2E2E2E2E2E2E2E2E632E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E + 2E227D0A + } + Layout = blGlyphTop + NumGlyphs = 0 + OnClick = ForwardButtonClick + ShowHint = True + ParentShowHint = False + end + end + object IHP: TIpHtmlPanel + Height = 228 + Top = 52 + Width = 400 + Align = alClient + DataProvider = DataProvider + FixedTypeface = 'Courier New' + DefaultTypeFace = 'default' + PrintSettings.MarginLeft = 0.5 + PrintSettings.MarginTop = 0.5 + PrintSettings.MarginRight = 0.5 + PrintSettings.MarginBottom = 0.5 + OnDocumentOpen = IHPDocumentOpen + OnHotChange = IHPHotChange + end + object StatusBar1: TStatusBar + Height = 20 + Top = 280 + Width = 400 + Panels = < + item + Width = 512 + end> + SimplePanel = False + end + object DataProvider: TIpFileDataProvider + left = 12 + top = 232 + end +end diff --git a/examples/htmlhelp_ipro/htmlhelp2viewer.lrs b/examples/htmlhelp_ipro/htmlhelp2viewer.lrs new file mode 100644 index 0000000000..f93de42199 --- /dev/null +++ b/examples/htmlhelp_ipro/htmlhelp2viewer.lrs @@ -0,0 +1,119 @@ +{ This is an automatically generated lazarus resource file } + +LazarusResources.Add('THelpViewerForm','FORMDATA',[ + 'TPF0'#15'THelpViewerForm'#14'HelpViewerForm'#4'Left'#3#249#0#6'Height'#3','#1 + +#3'Top'#3'F'#1#5'Width'#3#144#1#18'HorzScrollBar.Page'#3#143#1#18'VertScroll' + +'Bar.Page'#3'+'#1#7'Caption'#6#4'Help'#0#6'TPanel'#6'Panel1'#6'Height'#2'4'#5 + +'Width'#3#144#1#5'Align'#7#5'alTop'#8'TabOrder'#2#0#0#12'TSpeedButton'#11'In' + +'dexButton'#4'Left'#2#8#6'Height'#2'*'#4'Hint'#6#5'Index'#3'Top'#2#4#5'Width' + +#2'0'#7'Caption'#6#5'Index'#5'Color'#7#9'clBtnFace'#10'Glyph.Data'#10#248#4#0 + +#0#244#4#0#0'/* XPM */'#10'static char *graphic[] = {'#10'"16 16 60 1",'#10 + +'". c None",'#10'", c #A50000",'#10'"- c #EF2929",'#10'"* c #7B4E4A",'#10'"a' + +' c #8C5A5A",'#10'"b c #9D5F5B",'#10'"c c #848586",'#10'"d c #9F9F9E",'#10'"' + +'e c #C68E8E",'#10'"f c #9D7773",'#10'"g c #8F948D",'#10'"h c #BDBDBD",'#10 + +'"i c #C6C6C7",'#10'"j c #BFBFBD",'#10'"k c #C6A5A5",'#10'"l c #A78D8F",'#10 + +'"m c #9FA59E",'#10'"n c #BFBFBF",'#10'"o c #DEDEDF",'#10'"p c #DFDFDF",'#10 + +'"q c #D7D7D7",'#10'"r c #CFB5B5",'#10'"s c #A79F9D",'#10'"t c #A7A7A7",'#10 + +'"u c #DEDEDE",'#10'"v c #EFEFEF",'#10'"w c #E7E7E7",'#10'"x c #DED6D6",'#10 + +'"y c #B7B7B5",'#10'"z c #A7A7A5",'#10'"A c #575753",'#10'"B c #777B7B",'#10 + +'"C c #777B7F",'#10'"D c #777777",'#10'"E c #F7F7F7",'#10'"F c #7F847B",'#10 + +'"G c #7F857F",'#10'"H c #84867F",'#10'"I c #7B9DC7",'#10'"J c #779CC6",'#10 + +'"K c #848685",'#10'"L c #5F86B7",'#10'"M c #4A77AF",'#10'"N c #73777B",'#10 + +'"O c #868C87",'#10'"P c #8E8C67",'#10'"Q c #737B85",'#10'"R c #3567A5",'#10 + +'"S c #6F7785",'#10'"T c #878D84",'#10'"U c #8C8D7F",'#10'"V c #B5B7B7",'#10 + +'"W c #BDBDC7",'#10'"X c #A5A5A5",'#10'"Y c #8C8E85",'#10'"Z c #676763",'#10 + +'"0 c #979D94",'#10'"1 c #9C9D96",'#10'"2 c #9D9E96",'#10'"3 c #FFFFFF",'#10 + +'".......,,-......",'#10'"......,--,......",'#10'".....,-*a-,.....",'#10'"..' + +'..,-bcde-,....",'#10'"...,-fghijk-,...",'#10'"..,-lmnoopqr-,..",'#10'".,-st' + +'uvvvvvwx-,.",'#10'",-yzuwwwwwwwww-,",'#10'".-wAAAAwBCDCDE-.",'#10'".AEAFGHw' + +'CIDJCEA.",'#10'".AEAKKKwBLDMNEA.",'#10'".AvAOOPwQRDRSEA.",'#10'".AvATTUwVWj' + +'WXEA.",'#10'".AvAYYYwtttttEA.",'#10'".AEZ012EEEEEE3A.",'#10'".AAAAAAAAAAAAA' + +'A."}'#10#6'Layout'#7#10'blGlyphTop'#9'NumGlyphs'#2#0#7'OnClick'#7#16'IndexB' + +'uttonClick'#8'ShowHint'#9#14'ParentShowHint'#8#0#0#12'TSpeedButton'#10'Back' + +'Button'#4'Left'#2'@'#6'Height'#2'*'#4'Hint'#6#4'Back'#3'Top'#2#4#5'Width'#2 + +'0'#7'Caption'#6#4'Back'#5'Color'#7#9'clBtnFace'#7'Enabled'#8#10'Glyph.Data' + +#10'T'#8#0#0'P'#8#0#0'/* XPM */'#10'static char *graphic[] = {'#10'"16 16 94' + +' 2",'#10'".. c None",'#10'"., c #3D7704",'#10'".- c #4E8718",'#10'".* c #3B' + +'7304",'#10'".a c #5E972D",'#10'".b c #CEEFAF",'#10'".c c #3D7707",'#10'".d ' + +'c #7BAD4A",'#10'".e c #CFEFB7",'#10'".f c #D6F7BD",'#10'".g c #3B7704",'#10 + +'".h c #94BF67",'#10'".i c #CEEFB5",'#10'".j c #B5E78D",'#10'".k c #D7EFBF",' + +#10'".l c #437F09",'#10'".m c #3F7709",'#10'".n c #A5CE86",'#10'".o c #CEE7A' + +'D",'#10'".p c #ADDE85",'#10'".q c #AFDE7B",'#10'".r c #D6EFBD",'#10'".s c #' + +'D6EFB7",'#10'".t c #CFE7B5",'#10'".u c #CEE7AF",'#10'".v c #C7E7AD",'#10'".' + +'w c #3D7706",'#10'".x c #4B7F16",'#10'".y c #B7D795",'#10'".z c #BDDEA5",' + +#10'".A c #A5D67B",'#10'".B c #A5D777",'#10'".C c #A7DE77",'#10'".D c #A7DF7' + +'7",'#10'".E c #A5DE73",'#10'".F c #A5D66F",'#10'".G c #9CCF6B",'#10'".H c #' + +'97CF67",'#10'".I c #C7DFAD",'#10'".J c #5A8D29",'#10'".K c #BDD7A5",'#10'".' + +'L c #B5D695",'#10'".M c #9FCF6F",'#10'".N c #9ECF73",'#10'".O c #9FD673",' + +#10'".P c #A5D673",'#10'".Q c #A5D76F",'#10'".R c #9ED66B",'#10'".S c #9FCF6' + +'B",'#10'".T c #97CE67",'#10'".U c #97C763",'#10'".V c #C6DEAF",'#10'".W c #' + +'5A8F25",'#10'".X c #A5CF84",'#10'".Y c #8FBF63",'#10'".Z c #84BF52",'#10'".' + +'0 c #94C65E",'#10'".1 c #84C64B",'#10'".2 c #77BD37",'#10'".3 c #6BB721",' + +#10'".4 c #5FAF0E",'#10'".5 c #63AF17",'#10'".6 c #6FB729",'#10'".7 c #77B53' + +'B",'#10'".8 c #477F14",'#10'".9 c #97BF6B",'#10'".@ c #86B74F",'#10'".# c #' + +'529F08",'#10'".; c #56A708",'#10'".: c #56A709",'#10'".= c #57AD0A",'#10'".' + +'+ c #57A709",'#10'".% c #57A509",'#10'".$ c #52A508",'#10'".( c #4F9F06",' + +#10'".) c #A7CE7F",'#10'".[ c #3F770B",'#10'".] c #85B55A",'#10'",. c #8EBF6' + +'3",'#10'",, c #56A50E",'#10'",- c #539F07",'#10'",* c #A7CF7F",'#10'",a c #' + +'A7CE7B",'#10'",b c #A7CF7B",'#10'",c c #A5CF7B",'#10'",d c #3B7705",'#10'",' + +'e c #77A74A",'#10'",f c #97C76F",'#10'",g c #5BA519",'#10'",h c #3F7B08",' + +#10'",i c #679C33",'#10'",j c #9FC773",'#10'",k c #538D21",'#10'",l c #9FC67' + +'3",'#10'"...................,............",'#10'".................-.*......' + +'......",'#10'".............,.a.b.c............",'#10'"...........,.d.e.f.c.' + +'...........",'#10'".........g.h.i.j.k.l.*.*.*.*.g..",'#10'".......m.n.o.p.q' + +'.r.s.i.t.u.v.w..",'#10'".....x.y.z.A.B.C.D.E.F.G.H.I.w..",'#10'".g.J.K.L.M.' + +'N.O.P.Q.R.S.T.U.V.w..",'#10'".g.W.X.Y.Z.0.1.2.3.4.5.6.7.z.w..",'#10'"...g.8' + +'.9.@.#.;.:.=.+.%.$.(.).*..",'#10'".......[.],.,,,-,*,a,b,c,c.).*..",'#10'".' + +'.......,d,e,f,g.),h.c.c.c.c.g..",'#10'"...........g,i,j.).*............",' + ,#10'".............g,k,l.*............",'#10'"...............g.8.*...........' + +'.",'#10'"...................g............"}'#10#6'Layout'#7#10'blGlyphTop'#9 + +'NumGlyphs'#2#0#7'OnClick'#7#15'BackButtonClick'#8'ShowHint'#9#14'ParentShow' + +'Hint'#8#0#0#12'TSpeedButton'#13'ForwardButton'#4'Left'#2'x'#6'Height'#2'*'#4 + +'Hint'#6#19'Go forward one page'#3'Top'#2#4#5'Width'#2'0'#7'Caption'#6#7'For' + +'ward'#5'Color'#7#9'clBtnFace'#7'Enabled'#8#10'Glyph.Data'#10'$'#8#0#0' '#8#0 + +#0'/* XPM */'#10'static char *graphic[] = {'#10'"16 16 91 2",'#10'".. c None' + +'",'#10'"., c #3D7704",'#10'".- c #3B7304",'#10'".* c #467F12",'#10'".a c #C' + +'7E7A7",'#10'".b c #5A9429",'#10'".c c #3B7704",'#10'".d c #D6EFBD",'#10'".e' + +' c #CFEFB7",'#10'".f c #77A746",'#10'".g c #D6EFB7",'#10'".h c #B7E78F",'#10 + +'".i c #8DBF63",'#10'".j c #BDD7A5",'#10'".k c #C7DFA7",'#10'".l c #C6E7AD",' + +#10'".m c #C7E7AF",'#10'".n c #CEE7AF",'#10'".o c #ADDE7B",'#10'".p c #AFDE8' + +'5",'#10'".q c #A7CE7F",'#10'".r c #3D7708",'#10'".s c #C7DFAD",'#10'".t c #' + +'95C767",'#10'".u c #9DCE6B",'#10'".v c #9ED66F",'#10'".w c #A7D773",'#10'".' + +'x c #A7DF77",'#10'".y c #A7DE77",'#10'".z c #A7D67B",'#10'".A c #C7E7A5",' + +#10'".B c #B7D697",'#10'".C c #477F13",'#10'".D c #C6DEA7",'#10'".E c #8FC66' + +'3",'#10'".F c #97C763",'#10'".G c #9CCF67",'#10'".H c #9FCF6B",'#10'".I c #' + +'A5D66F",'#10'".J c #A5D773",'#10'".K c #A5D673",'#10'".L c #9ECF73",'#10'".' + +'M c #B5D794",'#10'".N c #BFD69F",'#10'".O c #578D25",'#10'".P c #BFD7A5",' + +#10'".Q c #77B542",'#10'".R c #6FAF2D",'#10'".S c #63AD1A",'#10'".T c #5EAF1' + +'3",'#10'".U c #6FB727",'#10'".V c #7BBF39",'#10'".W c #8DC64F",'#10'".X c #' + +'96CF67",'#10'".Y c #8CC65B",'#10'".Z c #8FC75F",'#10'".0 c #ADCF87",'#10'".' + +'1 c #5F972F",'#10'".2 c #A5CE7B",'#10'".3 c #529F09",'#10'".4 c #4F9F06",' + +#10'".5 c #52A508",'#10'".6 c #57A509",'#10'".7 c #57AD0A",'#10'".8 c #56A70' + +'9",'#10'".9 c #56A508",'#10'".@ c #7FB747",'#10'".# c #97C66F",'#10'".; c #' + +'4E841B",'#10'".: c #9FC673",'#10'".= c #9CC677",'#10'".+ c #9DC777",'#10'".' + +'% c #9FCF77",'#10'".$ c #A5CE77",'#10'".( c #56A70A",'#10'".) c #57A50B",' + +#10'".[ c #8DBD5A",'#10'".] c #8DBD63",'#10'",. c #437B0F",'#10'",, c #427B0' + +'E",'#10'",- c #427B0D",'#10'",* c #437F0C",'#10'",a c #A5CF7B",'#10'",b c #' + +'5BA516",'#10'",c c #96C767",'#10'",d c #7FAF52",'#10'",e c #3D7707",'#10'",' + +'f c #9FC773",'#10'",g c #6FA53F",'#10'",h c #5E952B",'#10'",i c #4B8517",' + +#10'".............,..................",'#10'".............-.*...............' + +'.",'#10'".............-.a.b.,............",'#10'".............c.d.e.f.,....' + +'......",'#10'"...c.c.c.c.c.,.g.h.g.i.c........",'#10'"...-.j.k.l.m.n.g.o.p.' + +'n.q.r......",'#10'"...-.s.t.u.v.w.x.x.y.z.A.B.C....",'#10'"...-.D.E.F.G.H.v' + +'.I.J.K.L.M.N.O.c",'#10'"...-.P.Q.R.S.T.U.V.W.X.Y.Z.0.1.c",'#10'"...-.2.3.4.' + +'5.6.7.7.8.9.@.#.;.c..",'#10'"...-.2.:.=.+.%.$.(.).[.],.......",'#10'"...c,.' + +',.,,,-,*,a,b,c,d,e........",'#10'".............-.2,f,g.c..........",'#10'".' + +'............-.:,h.c............",'#10'".............-,i.c..............",' + +#10'".............c.................."}'#10#6'Layout'#7#10'blGlyphTop'#9'Num' + +'Glyphs'#2#0#7'OnClick'#7#18'ForwardButtonClick'#8'ShowHint'#9#14'ParentShow' + +'Hint'#8#0#0#0#12'TIpHtmlPanel'#3'IHP'#6'Height'#3#228#0#3'Top'#2'4'#5'Width' + +#3#144#1#5'Align'#7#8'alClient'#12'DataProvider'#7#12'DataProvider'#13'Fixed' + +'Typeface'#6#11'Courier New'#15'DefaultTypeFace'#6#7'default'#24'PrintSettin' + +'gs.MarginLeft'#5#0#0#0#0#0#0#0#128#254'?'#23'PrintSettings.MarginTop'#5#0#0 + +#0#0#0#0#0#128#254'?'#25'PrintSettings.MarginRight'#5#0#0#0#0#0#0#0#128#254 + +'?'#26'PrintSettings.MarginBottom'#5#0#0#0#0#0#0#0#128#254'?'#14'OnDocumentO' + +'pen'#7#15'IHPDocumentOpen'#11'OnHotChange'#7#12'IHPHotChange'#0#0#10'TStatu' + +'sBar'#10'StatusBar1'#6'Height'#2#20#3'Top'#3#24#1#5'Width'#3#144#1#6'Panels' + +#14#1#5'Width'#3#0#2#0#0#11'SimplePanel'#8#0#0#19'TIpFileDataProvider'#12'Da' + +'taProvider'#4'left'#2#12#3'top'#3#232#0#0#0#0 +]); diff --git a/examples/htmlhelp_ipro/htmlhelp2viewer.pas b/examples/htmlhelp_ipro/htmlhelp2viewer.pas new file mode 100644 index 0000000000..05b83a573a --- /dev/null +++ b/examples/htmlhelp_ipro/htmlhelp2viewer.pas @@ -0,0 +1,152 @@ +{ + *************************************************************************** + * * + * 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 . You can also * + * obtain it by writing to the Free Software Foundation, * + * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + * * + *************************************************************************** + + Abstract: + This example implements a help viewer using the turbo power + ipro browser component. + + procedure RegisterHelpViewer; + + need to be called to register this viewer. The sample calls it in the + OnCreate of the main form. +} + +unit HtmlHelp2Viewer; + +{$mode objfpc}{$H+} + +interface + +uses + Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ExtCtrls, LCLProc, + IpHtml, Buttons, helpintfs, lazhelpintf, ComCtrls, ipfilebroker, iputils; + +type + + { THelpViewerForm } + + THelpViewerForm = class(TForm) + IHP: TIpHtmlPanel; + DataProvider: TIpFileDataProvider; + Panel1: TPanel; + IndexButton: TSpeedButton; + BackButton: TSpeedButton; + ForwardButton: TSpeedButton; + StatusBar1: TStatusBar; + procedure BackButtonClick(Sender: TObject); + procedure ForwardButtonClick(Sender: TObject); + procedure IHPDocumentOpen(Sender: TObject); + procedure IHPHotChange(Sender: TObject); + procedure IndexButtonClick(Sender: TObject); + private + public + { public declarations } + procedure showURL(URL : String); + end; + +var + HelpViewerForm: THelpViewerForm; + +procedure RegisterHelpViewer; + +implementation + +type +THTMLHelpViewer = class(THelpViewer) + private + public + constructor Create(TheOwner: TComponent); override; + function ShowNode(Node: THelpNode; var ErrMsg: string): TShowHelpResult; override; + published + property AutoRegister; + end; + +{ THTMLHelpViewer } + +constructor THTMLHelpViewer.Create(TheOwner: TComponent); +begin + inherited Create(TheOwner); + AddSupportedMimeType('text/html'); +end; + +function THTMLHelpViewer.ShowNode(Node: THelpNode; var ErrMsg: string): TShowHelpResult; +begin + DebugLn (Format('THTMLHelpViewer.ShowNode: URL:"%s" ID:"%s" Context:"%d"',[Node.URL,Node.ID,Node.Context])); + HelpViewerForm.ShowURL(Node.URL); + result := shrSuccess; // we should return a "better" result ;-) +end; + +var Help_Viewer : THTMLHelpViewer = nil; + +procedure RegisterHelpViewer; +begin + if Help_Viewer = nil then // if not already done + begin + Help_Viewer := THTMLHelpViewer.Create(nil); // create the viewer and + Help_Viewer.RegisterSelf; // register it in the help system + end; +end; + +{ THelpViewerForm } + +procedure THelpViewerForm.IndexButtonClick(Sender: TObject); +begin + ShowHelpOrErrorForKeyword('','HTML/index.html'); // HTML is case sensitive +end; + +// Show URL of a link in Status Bar +procedure THelpViewerForm.IHPHotChange(Sender: TObject); +begin + StatusBar1.Panels[0].Text := IHP.HotURL; +end; + +procedure THelpViewerForm.BackButtonClick(Sender: TObject); +begin + IHP.GoBack; +end; + + +procedure THelpViewerForm.ForwardButtonClick(Sender: TObject); +begin + IHP.GoForward; +end; + + +procedure THelpViewerForm.IHPDocumentOpen(Sender: TObject); +begin + BackButton.Enabled := IHP.canGoBack; + ForwardButton.Enabled := IHP.canGoForward; +end; + + +procedure THelpViewerForm.showURL(URL : String); +begin + Show; + URL := expandLocalHtmlFileName (URL); + IHP.OpenURL(URL); + BringToFront; // needed if already open and another help is shown +end; + + +initialization + {$I htmlhelp2viewer.lrs} + +end. + diff --git a/examples/htmlhelp_ipro/htmlhelpsample.lpi b/examples/htmlhelp_ipro/htmlhelpsample.lpi new file mode 100644 index 0000000000..27284f1d77 --- /dev/null +++ b/examples/htmlhelp_ipro/htmlhelpsample.lpi @@ -0,0 +1,79 @@ + + + + + + + + + + + + </General> + <PublishOptions> + <Version Value="2"/> + <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/> + <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/> + </PublishOptions> + <RunParams> + <local> + <FormatVersion Value="1"/> + <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/> + </local> + </RunParams> + <RequiredPackages Count="2"> + <Item1> + <PackageName Value="TurboPowerIPro"/> + <MinVersion Major="1" Valid="True"/> + </Item1> + <Item2> + <PackageName Value="LCL"/> + </Item2> + </RequiredPackages> + <Units Count="3"> + <Unit0> + <Filename Value="htmlhelpsample.lpr"/> + <IsPartOfProject Value="True"/> + <UnitName Value="HTMLHelpSample"/> + </Unit0> + <Unit1> + <Filename Value="htmlhelp2unit1.pas"/> + <ComponentName Value="Form1"/> + <IsPartOfProject Value="True"/> + <ResourceFilename Value="htmlhelp2unit1.lrs"/> + <UnitName Value="HtmlHelp2Unit1"/> + </Unit1> + <Unit2> + <Filename Value="htmlhelp2viewer.pas"/> + <ComponentName Value="HelpViewerForm"/> + <IsPartOfProject Value="True"/> + <ResourceFilename Value="htmlhelp2viewer.lrs"/> + <UnitName Value="HtmlHelp2Viewer"/> + </Unit2> + </Units> + </ProjectOptions> + <CompilerOptions> + <Version Value="5"/> + <SearchPaths> + <SrcPath Value="$(LazarusDir)/lcl/;$(LazarusDir)/lcl/interfaces/$(LCLWidgetType)/"/> + </SearchPaths> + <CodeGeneration> + <Generate Value="Faster"/> + </CodeGeneration> + <Linking> + <Options> + <Win32> + <GraphicApplication Value="True"/> + </Win32> + </Options> + </Linking> + <Other> + <Verbosity> + <ShowHintsForUnusedUnitsInMainSrc Value="True"/> + </Verbosity> + <CustomOptions Value="-WC +"/> + <CompilerPath Value="$(CompPath)"/> + </Other> + </CompilerOptions> +</CONFIG> diff --git a/examples/htmlhelp_ipro/htmlhelpsample.lpr b/examples/htmlhelp_ipro/htmlhelpsample.lpr new file mode 100644 index 0000000000..a84e0b1407 --- /dev/null +++ b/examples/htmlhelp_ipro/htmlhelpsample.lpr @@ -0,0 +1,20 @@ +program HTMLHelpSample; + +{$mode objfpc}{$H+} + +uses + {$IFDEF UNIX}{$IFDEF UseCThreads} + cthreads, + {$ENDIF}{$ENDIF} + Interfaces, // this includes the LCL widgetset + Forms + { add your units here }, HtmlHelp2Unit1, TurboPowerIPro, HtmlHelp2Viewer; + +begin + Application.Title:='htmlhelp1'; + Application.Initialize; + Application.CreateForm(TForm1, Form1); + Application.CreateForm(THelpViewerForm, HelpViewerForm); + Application.Run; +end. + diff --git a/examples/htmlhelp_ipro/htmlhelpsample.lps b/examples/htmlhelp_ipro/htmlhelpsample.lps new file mode 100644 index 0000000000..b8a1453f72 --- /dev/null +++ b/examples/htmlhelp_ipro/htmlhelpsample.lps @@ -0,0 +1,187 @@ +<?xml version="1.0"?> +<CONFIG> + <ProjectSession> + <PathDelim Value="/"/> + <Version Value="5"/> + <Units Count="23"> + <Unit0> + <Filename Value="htmlhelpsample.lpr"/> + <IsPartOfProject Value="True"/> + <UnitName Value="HTMLHelpSample"/> + <CursorPos X="28" Y="6"/> + <TopLine Value="1"/> + <EditorIndex Value="2"/> + <UsageCount Value="61"/> + <Loaded Value="True"/> + </Unit0> + <Unit1> + <Filename Value="htmlhelp2unit1.pas"/> + <ComponentName Value="Form1"/> + <IsPartOfProject Value="True"/> + <ResourceFilename Value="htmlhelp2unit1.lrs"/> + <UnitName Value="HtmlHelp2Unit1"/> + <CursorPos X="78" Y="65"/> + <TopLine Value="32"/> + <EditorIndex Value="0"/> + <UsageCount Value="61"/> + <Loaded Value="True"/> + </Unit1> + <Unit2> + <Filename Value="htmlhelp2viewer.pas"/> + <ComponentName Value="HelpViewerForm"/> + <IsPartOfProject Value="True"/> + <ResourceFilename Value="htmlhelp2viewer.lrs"/> + <UnitName Value="HtmlHelp2Viewer"/> + <CursorPos X="26" Y="36"/> + <TopLine Value="12"/> + <EditorIndex Value="1"/> + <UsageCount Value="61"/> + <Bookmarks Count="1"> + <Item0 X="3" Y="117" ID="1"/> + </Bookmarks> + <Loaded Value="True"/> + </Unit2> + <Unit3> + <Filename Value="../../../../WinPrj/fd/helptest/html/edit1.html"/> + <UsageCount Value="58"/> + </Unit3> + <Unit4> + <Filename Value="../../../../WinPrj/fd/helptest/html/edit2.html"/> + <UsageCount Value="58"/> + </Unit4> + <Unit5> + <Filename Value="../../../../WinPrj/fd/helptest/html/index.html"/> + <UsageCount Value="58"/> + </Unit5> + <Unit6> + <Filename Value="../../../../WinPrj/fd/helptest/Ipfilebroker.pas"/> + <UnitName Value="Ipfilebroker"/> + <CursorPos X="1" Y="294"/> + <TopLine Value="275"/> + <UsageCount Value="22"/> + </Unit6> + <Unit7> + <Filename Value="../../lcl/lazhelphtml.pas"/> + <UnitName Value="LazHelpHTML"/> + <CursorPos X="12" Y="129"/> + <TopLine Value="118"/> + <UsageCount Value="27"/> + </Unit7> + <Unit8> + <Filename Value="../../lcl/lazhelpintf.pas"/> + <UnitName Value="LazHelpIntf"/> + <CursorPos X="1" Y="1270"/> + <TopLine Value="1259"/> + <UsageCount Value="27"/> + </Unit8> + <Unit9> + <Filename Value="../../lcl/helpintfs.pas"/> + <UnitName Value="HelpIntfs"/> + <CursorPos X="1" Y="324"/> + <TopLine Value="313"/> + <UsageCount Value="27"/> + </Unit9> + <Unit10> + <Filename Value="../../../fpc/cvssrc/fpc/rtl/objpas/classes/classesh.inc"/> + <CursorPos X="3" Y="97"/> + <TopLine Value="86"/> + <UsageCount Value="27"/> + </Unit10> + <Unit11> + <Filename Value="iphtml.pas"/> + <UnitName Value="IpHtml"/> + <CursorPos X="1" Y="17448"/> + <TopLine Value="17436"/> + <UsageCount Value="27"/> + </Unit11> + <Unit12> + <Filename Value="../../../../WinPrj/fd/helptest/Ipbroker.pas"/> + <UnitName Value="IpBroker"/> + <CursorPos X="1" Y="2626"/> + <TopLine Value="2618"/> + <UsageCount Value="11"/> + </Unit12> + <Unit13> + <Filename Value="../../../../WinPrj/fd/helptest/ipcache.pas"/> + <UnitName Value="IpCache"/> + <CursorPos X="12" Y="396"/> + <TopLine Value="385"/> + <UsageCount Value="10"/> + </Unit13> + <Unit14> + <Filename Value="../../../../WinPrj/fd/helptest/IpHttp.pas"/> + <UnitName Value="IpHttp"/> + <CursorPos X="60" Y="43"/> + <TopLine Value="23"/> + <UsageCount Value="10"/> + </Unit14> + <Unit15> + <Filename Value="../../../../WinPrj/fd/helptest/IpCookie.pas"/> + <UnitName Value="IpCookie"/> + <CursorPos X="11" Y="599"/> + <TopLine Value="588"/> + <UsageCount Value="10"/> + </Unit15> + <Unit16> + <Filename Value="iputils.pas"/> + <UnitName Value="IpUtils"/> + <CursorPos X="70" Y="242"/> + <TopLine Value="228"/> + <UsageCount Value="13"/> + </Unit16> + <Unit17> + <Filename Value="../../../../WinPrj/fd/helptest/IpSock.pas"/> + <UnitName Value="IpSock"/> + <CursorPos X="33" Y="10028"/> + <TopLine Value="10017"/> + <UsageCount Value="10"/> + </Unit17> + <Unit18> + <Filename Value="Ipfilebroker.pas"/> + <UnitName Value="Ipfilebroker"/> + <CursorPos X="35" Y="130"/> + <TopLine Value="126"/> + <UsageCount Value="11"/> + </Unit18> + <Unit19> + <Filename Value="turbopoweripro.pas"/> + <UnitName Value="TurboPowerIPro"/> + <CursorPos X="69" Y="10"/> + <TopLine Value="2"/> + <UsageCount Value="11"/> + </Unit19> + <Unit20> + <Filename Value="../../lcl/lclproc.pas"/> + <UnitName Value="LCLProc"/> + <CursorPos X="37" Y="187"/> + <TopLine Value="184"/> + <UsageCount Value="11"/> + </Unit20> + <Unit21> + <Filename Value="../../lcl/include/customform.inc"/> + <CursorPos X="1" Y="326"/> + <TopLine Value="315"/> + <UsageCount Value="10"/> + </Unit21> + <Unit22> + <Filename Value="../../components/turbopower_ipro/iphtml.pas"/> + <UnitName Value="IpHtml"/> + <CursorPos X="1" Y="16382"/> + <TopLine Value="16371"/> + <UsageCount Value="10"/> + </Unit22> + </Units> + <General> + <ActiveEditorIndexAtStart Value="1"/> + </General> + <JumpHistory Count="0" HistoryIndex="-1"/> + </ProjectSession> + <Debugging> + <Watches Count="1"> + <Item1> + <Expression Value="URL"/> + <Enabled Value="False"/> + </Item1> + </Watches> + </Debugging> +</CONFIG>