delete chmmaker, it's already in lazarus/tools/

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2305 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
drewski207
2012-02-21 03:36:20 +00:00
parent 805dd75ea7
commit 8c1b4da5c8
8 changed files with 0 additions and 2438 deletions

View File

@ -1,112 +0,0 @@
<?xml version="1.0"?>
<CONFIG>
<ProjectOptions>
<Version Value="9"/>
<General>
<Flags>
<LRSInOutputDirectory Value="False"/>
</Flags>
<MainUnit Value="0"/>
<Title Value="chmmaker"/>
<ActiveWindowIndexAtStart Value="0"/>
</General>
<VersionInfo>
<Language Value=""/>
<CharSet Value=""/>
<StringTable ProductVersion=""/>
</VersionInfo>
<BuildModes Count="1">
<Item1 Name="default" Default="True"/>
</BuildModes>
<PublishOptions>
<Version Value="2"/>
<DestinationDirectory Value="$(ProjPath)/published/"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<UseExcludeFileFilter Value="True"/>
<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="LCL"/>
</Item1>
<Item2>
<PackageName Value="SynEdit"/>
<MinVersion Major="1" Valid="True"/>
</Item2>
</RequiredPackages>
<Units Count="4">
<Unit0>
<Filename Value="chmmaker.lpr"/>
<IsPartOfProject Value="True"/>
<UnitName Value="chmmaker"/>
<UsageCount Value="20"/>
</Unit0>
<Unit1>
<Filename Value="unit1.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="CHMForm"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="unit1"/>
<IsVisibleTab Value="True"/>
<EditorIndex Value="0"/>
<WindowIndex Value="0"/>
<TopLine Value="1"/>
<CursorPos X="1" Y="1"/>
<UsageCount Value="20"/>
<Loaded Value="True"/>
</Unit1>
<Unit2>
<Filename Value="chmsitemapeditor.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="SitemapEditForm"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="CHMSiteMapEditor"/>
<UsageCount Value="20"/>
</Unit2>
<Unit3>
<Filename Value="unit1.lfm"/>
<WindowIndex Value="0"/>
<TopLine Value="347"/>
<CursorPos X="43" Y="357"/>
<UsageCount Value="10"/>
<DefaultSyntaxHighlighter Value="LFM"/>
</Unit3>
</Units>
<JumpHistory Count="0" HistoryIndex="-1"/>
</ProjectOptions>
<CompilerOptions>
<Version Value="11"/>
<SearchPaths>
<OtherUnitFiles Value="/home/andrew/programming/fpc/packages/chm/src/"/>
</SearchPaths>
<Parsing>
<SyntaxOptions>
<UseAnsiStrings Value="False"/>
</SyntaxOptions>
</Parsing>
<CodeGeneration>
<Optimizations>
<VariablesInRegisters Value="True"/>
</Optimizations>
</CodeGeneration>
<Linking>
<Debugging>
<DebugInfoType Value="dsStabs"/>
</Debugging>
<Options>
<Win32>
<GraphicApplication Value="True"/>
</Win32>
</Options>
</Linking>
<Other>
<CompilerPath Value="$(CompPath)"/>
</Other>
</CompilerOptions>
</CONFIG>

View File

@ -1,20 +0,0 @@
program chmmaker;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}//{$IFDEF UseCThreads}
cthreads,
{$ENDIF}//{$ENDIF}
Interfaces, // this includes the LCL widgetset
Forms
{ add your units here }, unit1, CHMSiteMapEditor;
begin
Application.Initialize;
Application.CreateForm(TCHMForm, CHMForm);
Application.CreateForm(TSitemapEditForm, SitemapEditForm);
if ParamCount = 1 then CHMForm.OpenProject(ParamStr(1));
Application.Run;
end.

View File

@ -1,779 +0,0 @@
object SitemapEditForm: TSitemapEditForm
Left = 289
Height = 651
Top = 161
Width = 773
HelpContext = 0
ActiveControl = SitemapTree
Align = alNone
AllowDropFiles = False
AutoScroll = True
AutoSize = False
BorderIcons = [biSystemMenu, biMinimize, biMaximize]
BorderStyle = bsSizeable
Caption = 'Sitemap Editor'
ChildSizing.LeftRightSpacing = 0
ChildSizing.TopBottomSpacing = 0
ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0
ClientHeight = 651
ClientWidth = 773
DockSite = False
DragKind = dkDrag
DragMode = dmManual
Enabled = True
Font.Height = 0
Font.Style = []
FormStyle = fsNormal
ParentBiDiMode = True
ParentFont = False
Position = poDesigned
ShowInTaskBar = stAlways
UseDockManager = False
LCLVersion = '0.9.27'
WindowState = wsNormal
object Label3: TLabel
Left = 424
Height = 16
Top = 16
Width = 110
HelpContext = 0
Align = alNone
Alignment = taLeftJustify
AutoSize = True
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Caption = 'Global Properties'
DragCursor = crDrag
DragMode = dmManual
Enabled = True
Layout = tlTop
ParentBidiMode = True
ParentColor = False
ParentFont = True
ParentShowHint = True
ShowAccelChar = True
Transparent = True
Visible = True
WordWrap = False
OptimalFill = False
end
object Label4: TLabel
Left = 444
Height = 16
Top = 136
Width = 111
HelpContext = 0
Align = alNone
Alignment = taLeftJustify
AutoSize = True
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Caption = 'Foreground Color'
DragCursor = crDrag
DragMode = dmManual
Enabled = True
Layout = tlTop
ParentBidiMode = True
ParentColor = False
ParentFont = True
ParentShowHint = True
ShowAccelChar = True
Transparent = True
Visible = True
WordWrap = False
OptimalFill = False
end
object Label5: TLabel
Left = 444
Height = 16
Top = 176
Width = 114
HelpContext = 0
Align = alNone
Alignment = taLeftJustify
AutoSize = True
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Caption = 'Background Color'
DragCursor = crDrag
DragMode = dmManual
Enabled = True
Layout = tlTop
ParentBidiMode = True
ParentColor = False
ParentFont = True
ParentShowHint = True
ShowAccelChar = True
Transparent = True
Visible = True
WordWrap = False
OptimalFill = False
end
object ForegroundClrBtn: TColorButton
Left = 600
Height = 25
Top = 131
Width = 75
HelpContext = 0
Align = alNone
AllowAllUp = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
BorderWidth = 2
ButtonColorSize = 16
ButtonColor = clBlack
Color = clBtnFace
Down = False
Enabled = True
Flat = False
GroupIndex = 0
Layout = blGlyphLeft
Margin = -1
Spacing = 4
Transparent = True
Visible = True
ParentFont = True
ParentShowHint = True
end
object BackgroundClrBtn: TColorButton
Left = 600
Height = 25
Top = 171
Width = 75
HelpContext = 0
Align = alNone
AllowAllUp = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
BorderWidth = 2
ButtonColorSize = 16
ButtonColor = clNone
Color = clBtnFace
Down = False
Enabled = True
Flat = False
GroupIndex = 0
Layout = blGlyphLeft
Margin = -1
Spacing = 4
Transparent = True
Visible = True
ParentFont = True
ParentShowHint = True
end
object GroupBox1: TGroupBox
Left = 0
Height = 651
Top = 0
Width = 404
HelpContext = 0
Align = alLeft
AutoSize = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Caption = 'Sitemap Tree/List'
ChildSizing.LeftRightSpacing = 0
ChildSizing.TopBottomSpacing = 0
ChildSizing.HorizontalSpacing = 0
ChildSizing.VerticalSpacing = 0
ChildSizing.ControlsPerLine = 0
ClientHeight = 634
ClientWidth = 400
Ctl3D = False
DockSite = False
DragCursor = crDrag
DragKind = dkDrag
DragMode = dmManual
Enabled = True
ParentBidiMode = True
ParentColor = True
ParentCtl3D = True
ParentFont = True
ParentShowHint = True
TabOrder = 0
TabStop = False
Visible = True
object Label1: TLabel
Left = 11
Height = 16
Top = 467
Width = 116
HelpContext = 0
Align = alNone
Alignment = taLeftJustify
AutoSize = True
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Caption = 'Local link (in chm)'
DragCursor = crDrag
DragMode = dmManual
Enabled = False
Layout = tlTop
ParentBidiMode = True
ParentColor = False
ParentFont = True
ParentShowHint = True
ShowAccelChar = True
Transparent = True
Visible = True
WordWrap = False
OptimalFill = False
end
object Label2: TLabel
Left = 11
Height = 16
Top = 575
Width = 59
HelpContext = 0
Align = alNone
Alignment = taLeftJustify
AutoSize = True
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Caption = 'Add Item'
DragCursor = crDrag
DragMode = dmManual
Enabled = True
Layout = tlTop
ParentBidiMode = True
ParentColor = False
ParentFont = True
ParentShowHint = True
ShowAccelChar = True
Transparent = True
Visible = True
WordWrap = False
OptimalFill = False
end
object SitemapTree: TTreeView
Tag = 0
Left = 0
Height = 405
Top = 0
Width = 400
HelpContext = 0
Align = alTop
AutoExpand = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
BackgroundColor = clWindow
BorderStyle = bsSingle
BorderWidth = 0
Ctl3D = False
DefaultItemHeight = 17
DragKind = dkDrag
DragCursor = crDrag
DragMode = dmManual
Enabled = True
ExpandSignType = tvestPlusMinus
HideSelection = True
HotTrack = False
Indent = 15
ParentCtl3D = True
ParentFont = True
ParentShowHint = True
ReadOnly = False
RightClickSelect = False
RowSelect = False
ScrollBars = ssBoth
SelectionColor = clHighlight
ShowButtons = True
ShowLines = True
ShowRoot = True
SortType = stNone
TabOrder = 0
ToolTips = True
Visible = True
OnCustomCreateItem = SitemapTreeCustomCreateItem
OnSelectionChanged = SitemapTreeSelectionChanged
Options = [tvoAutoItemHeight, tvoHideSelection, tvoKeepCollapsedNodes, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips]
TreeLineColor = clWindowFrame
TreeLinePenStyle = psPattern
ExpandSignColor = clWindowFrame
end
object DescriptionEdit: TLabeledEdit
Left = 11
Height = 25
Top = 435
Width = 292
HelpContext = 0
AutoSelect = False
AutoSize = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
CharCase = ecNormal
DragCursor = crDrag
DragMode = dmManual
EchoMode = emNormal
EditLabel.AnchorSideLeft.Control = DescriptionEdit
EditLabel.AnchorSideBottom.Control = DescriptionEdit
EditLabel.Left = 11
EditLabel.Height = 16
EditLabel.Top = 416
EditLabel.Width = 73
EditLabel.HelpContext = 0
EditLabel.Caption = 'Description'
EditLabel.DragCursor = crDrag
EditLabel.DragMode = dmManual
EditLabel.ParentColor = False
EditLabel.ParentFont = True
EditLabel.ParentShowHint = True
EditLabel.ShowAccelChar = True
EditLabel.Layout = tlTop
EditLabel.WordWrap = False
Enabled = False
LabelPosition = lpAbove
LabelSpacing = 3
MaxLength = -1
ParentColor = False
ParentFont = True
ParentShowHint = True
PasswordChar = #0
ReadOnly = False
TabOrder = 1
TabStop = True
Visible = True
OnChange = DescriptionEditChange
end
object DescFromTitleBtn: TButton
Left = 311
Height = 25
Top = 435
Width = 75
HelpContext = 0
Align = alNone
AutoSize = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.InnerBorder = 4
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Cancel = False
Caption = 'From Title'
Default = False
DragCursor = crDrag
DragMode = dmManual
Enabled = False
ParentBidiMode = True
ModalResult = 0
ParentFont = True
ParentShowHint = True
TabOrder = 2
TabStop = True
Visible = True
end
object LocalCombo: TComboBox
Left = 11
Height = 27
Top = 487
Width = 375
HelpContext = 0
TabStop = True
Align = alNone
ArrowKeysTraverseList = True
AutoComplete = False
AutoCompleteText = [cbactEndOfLineComplete, cbactSearchAscending]
AutoDropDown = False
AutoSelect = False
AutoSize = True
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
CharCase = ecNormal
Ctl3D = False
DragCursor = crDrag
DragMode = dmManual
DropDownCount = 8
Enabled = False
ItemHeight = 0
ItemIndex = -1
ItemWidth = 0
MaxLength = 0
OnChange = LocalComboChange
OnKeyUp = LocalComboKeyUp
ParentBidiMode = True
ParentColor = False
ParentCtl3D = True
ParentFont = True
ParentShowHint = True
Sorted = False
Style = csDropDown
TabOrder = 3
Visible = True
end
object URLEdit: TLabeledEdit
Left = 11
Height = 25
Top = 539
Width = 375
HelpContext = 0
AutoSelect = False
AutoSize = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
CharCase = ecNormal
DragCursor = crDrag
DragMode = dmManual
EchoMode = emNormal
EditLabel.AnchorSideLeft.Control = URLEdit
EditLabel.AnchorSideBottom.Control = URLEdit
EditLabel.Left = 11
EditLabel.Height = 16
EditLabel.Top = 520
EditLabel.Width = 66
EditLabel.HelpContext = 0
EditLabel.Caption = 'URL (http)'
EditLabel.DragCursor = crDrag
EditLabel.DragMode = dmManual
EditLabel.ParentColor = False
EditLabel.ParentFont = True
EditLabel.ParentShowHint = True
EditLabel.ShowAccelChar = True
EditLabel.Layout = tlTop
EditLabel.WordWrap = False
Enabled = False
LabelPosition = lpAbove
LabelSpacing = 3
MaxLength = -1
ParentColor = False
ParentFont = True
ParentShowHint = True
PasswordChar = #0
ReadOnly = False
TabOrder = 4
TabStop = True
Visible = True
OnChange = URLEditChange
end
object BeforeBtn: TButton
Left = 90
Height = 25
Top = 571
Width = 75
HelpContext = 0
Align = alNone
AutoSize = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.InnerBorder = 4
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Cancel = False
Caption = 'Before'
Default = False
DragCursor = crDrag
DragMode = dmManual
Enabled = False
ParentBidiMode = True
ModalResult = 0
OnClick = BeforeBtnClick
ParentFont = True
ParentShowHint = True
TabOrder = 5
TabStop = True
Visible = True
end
object AfterBtn: TButton
Left = 170
Height = 25
Top = 571
Width = 75
HelpContext = 0
Align = alNone
AutoSize = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.InnerBorder = 4
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Cancel = False
Caption = 'After'
Default = False
DragCursor = crDrag
DragMode = dmManual
Enabled = True
ParentBidiMode = True
ModalResult = 0
OnClick = AfterBtnClick
ParentFont = True
ParentShowHint = True
TabOrder = 6
TabStop = True
Visible = True
end
object SubItemBtn: TButton
Left = 90
Height = 25
Top = 601
Width = 155
HelpContext = 0
Align = alNone
AutoSize = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.InnerBorder = 4
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Cancel = False
Caption = 'Subitem'
Default = False
DragCursor = crDrag
DragMode = dmManual
Enabled = False
ParentBidiMode = True
ModalResult = 0
OnClick = SubItemBtnClick
ParentFont = True
ParentShowHint = True
TabOrder = 7
TabStop = True
Visible = True
end
object DeleteBtn: TButton
Left = 11
Height = 25
Top = 601
Width = 75
HelpContext = 0
Align = alNone
AutoSize = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.InnerBorder = 4
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Cancel = False
Caption = 'Delete'
Default = False
DragCursor = crDrag
DragMode = dmManual
Enabled = True
ParentBidiMode = True
ModalResult = 0
OnClick = DeleteBtnClick
ParentFont = True
ParentShowHint = True
TabOrder = 8
TabStop = True
Visible = True
end
end
object FontEdit: TLabeledEdit
Left = 444
Height = 25
Top = 72
Width = 232
HelpContext = 0
AutoSelect = False
AutoSize = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
CharCase = ecNormal
DragCursor = crDrag
DragMode = dmManual
EchoMode = emNormal
EditLabel.AnchorSideLeft.Control = FontEdit
EditLabel.AnchorSideBottom.Control = FontEdit
EditLabel.Left = 444
EditLabel.Height = 16
EditLabel.Top = 53
EditLabel.Width = 29
EditLabel.HelpContext = 0
EditLabel.Caption = 'Font'
EditLabel.DragCursor = crDrag
EditLabel.DragMode = dmManual
EditLabel.ParentColor = False
EditLabel.ParentFont = True
EditLabel.ParentShowHint = True
EditLabel.ShowAccelChar = True
EditLabel.Layout = tlTop
EditLabel.WordWrap = False
Enabled = True
LabelPosition = lpAbove
LabelSpacing = 3
MaxLength = -1
ParentColor = False
ParentFont = True
ParentShowHint = True
PasswordChar = #0
ReadOnly = False
TabOrder = 1
TabStop = True
Visible = True
end
object FolderViewCheck: TCheckBox
Left = 444
Height = 22
Top = 212
Width = 129
HelpContext = 0
Align = alNone
AllowGrayed = False
AutoSize = True
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Caption = 'Use Folder Icons'
Checked = False
DragCursor = crDrag
DragKind = dkDrag
DragMode = dmManual
Enabled = True
ParentColor = True
ParentFont = True
ParentShowHint = True
ParentBidiMode = True
State = cbUnchecked
TabOrder = 2
TabStop = True
UseOnChange = False
Visible = True
end
object SaveBtn: TButton
Left = 560
Height = 25
Top = 616
Width = 75
HelpContext = 0
Align = alNone
AutoSize = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.InnerBorder = 4
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Cancel = False
Caption = 'Save'
Default = False
DragCursor = crDrag
DragMode = dmManual
Enabled = True
ParentBidiMode = True
ModalResult = 1
OnClick = SaveBtnClick
ParentFont = True
ParentShowHint = True
TabOrder = 3
TabStop = True
Visible = True
end
object CancelBtn: TButton
Left = 652
Height = 25
Top = 616
Width = 75
HelpContext = 0
Align = alNone
AutoSize = False
BorderSpacing.Left = 0
BorderSpacing.Top = 0
BorderSpacing.Right = 0
BorderSpacing.Bottom = 0
BorderSpacing.Around = 0
BorderSpacing.InnerBorder = 4
BorderSpacing.CellAlignHorizontal = ccaFill
BorderSpacing.CellAlignVertical = ccaFill
Cancel = False
Caption = 'Cancel'
Default = False
DragCursor = crDrag
DragMode = dmManual
Enabled = True
ParentBidiMode = True
ModalResult = 2
OnClick = CancelBtnClick
ParentFont = True
ParentShowHint = True
TabOrder = 4
TabStop = True
Visible = True
end
end

View File

@ -1,245 +0,0 @@
{ This is an automatically generated lazarus resource file }
LazarusResources.Add('TSitemapEditForm','FORMDATA',[
'TPF0'#16'TSitemapEditForm'#15'SitemapEditForm'#4'Left'#3'!'#1#6'Height'#3#139
+#2#3'Top'#3#161#0#5'Width'#3#5#3#11'HelpContext'#2#0#13'ActiveControl'#7#11
+'SitemapTree'#5'Align'#7#6'alNone'#14'AllowDropFiles'#8#10'AutoScroll'#9#8'A'
+'utoSize'#8#11'BorderIcons'#11#12'biSystemMenu'#10'biMinimize'#10'biMaximize'
+#0#11'BorderStyle'#7#10'bsSizeable'#7'Caption'#6#14'Sitemap Editor'#28'Child'
+'Sizing.LeftRightSpacing'#2#0#28'ChildSizing.TopBottomSpacing'#2#0#29'ChildS'
+'izing.HorizontalSpacing'#2#0#27'ChildSizing.VerticalSpacing'#2#0#27'ChildSi'
+'zing.ControlsPerLine'#2#0#12'ClientHeight'#3#139#2#11'ClientWidth'#3#5#3#8
+'DockSite'#8#8'DragKind'#7#6'dkDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#9
+#11'Font.Height'#2#0#10'Font.Style'#11#0#9'FormStyle'#7#8'fsNormal'#14'Paren'
+'tBiDiMode'#9#10'ParentFont'#8#8'Position'#7#10'poDesigned'#13'ShowInTaskBar'
+#7#8'stAlways'#14'UseDockManager'#8#10'LCLVersion'#6#6'0.9.27'#11'WindowStat'
+'e'#7#8'wsNormal'#0#6'TLabel'#6'Label3'#4'Left'#3#168#1#6'Height'#2#16#3'Top'
+#2#16#5'Width'#2'n'#11'HelpContext'#2#0#5'Align'#7#6'alNone'#9'Alignment'#7
+#13'taLeftJustify'#8'AutoSize'#9#18'BorderSpacing.Left'#2#0#17'BorderSpacing'
+'.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0#20'Borde'
+'rSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'#31'Bo'
+'rderSpacing.CellAlignVertical'#7#7'ccaFill'#7'Caption'#6#17'Global Properti'
+'es'#10'DragCursor'#7#6'crDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#9#6'Lay'
+'out'#7#5'tlTop'#14'ParentBidiMode'#9#11'ParentColor'#8#10'ParentFont'#9#14
+'ParentShowHint'#9#13'ShowAccelChar'#9#11'Transparent'#9#7'Visible'#9#8'Word'
+'Wrap'#8#11'OptimalFill'#8#0#0#6'TLabel'#6'Label4'#4'Left'#3#188#1#6'Height'
+#2#16#3'Top'#3#136#0#5'Width'#2'o'#11'HelpContext'#2#0#5'Align'#7#6'alNone'#9
+'Alignment'#7#13'taLeftJustify'#8'AutoSize'#9#18'BorderSpacing.Left'#2#0#17
+'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'
+#2#0#20'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'cc'
+'aFill'#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#7'Caption'#6#16'For'
+'eground Color'#10'DragCursor'#7#6'crDrag'#8'DragMode'#7#8'dmManual'#7'Enabl'
+'ed'#9#6'Layout'#7#5'tlTop'#14'ParentBidiMode'#9#11'ParentColor'#8#10'Parent'
+'Font'#9#14'ParentShowHint'#9#13'ShowAccelChar'#9#11'Transparent'#9#7'Visibl'
+'e'#9#8'WordWrap'#8#11'OptimalFill'#8#0#0#6'TLabel'#6'Label5'#4'Left'#3#188#1
+#6'Height'#2#16#3'Top'#3#176#0#5'Width'#2'r'#11'HelpContext'#2#0#5'Align'#7#6
+'alNone'#9'Alignment'#7#13'taLeftJustify'#8'AutoSize'#9#18'BorderSpacing.Lef'
+'t'#2#0#17'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpaci'
+'ng.Bottom'#2#0#20'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizon'
+'tal'#7#7'ccaFill'#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#7'Captio'
+'n'#6#16'Background Color'#10'DragCursor'#7#6'crDrag'#8'DragMode'#7#8'dmManu'
+'al'#7'Enabled'#9#6'Layout'#7#5'tlTop'#14'ParentBidiMode'#9#11'ParentColor'#8
+#10'ParentFont'#9#14'ParentShowHint'#9#13'ShowAccelChar'#9#11'Transparent'#9
+#7'Visible'#9#8'WordWrap'#8#11'OptimalFill'#8#0#0#12'TColorButton'#16'Foregr'
+'oundClrBtn'#4'Left'#3'X'#2#6'Height'#2#25#3'Top'#3#131#0#5'Width'#2'K'#11'H'
+'elpContext'#2#0#5'Align'#7#6'alNone'#10'AllowAllUp'#8#18'BorderSpacing.Left'
+#2#0#17'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.'
+'Bottom'#2#0#20'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizontal'
+#7#7'ccaFill'#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#11'BorderWidt'
+'h'#2#2#15'ButtonColorSize'#2#16#11'ButtonColor'#7#7'clBlack'#5'Color'#7#9'c'
+'lBtnFace'#4'Down'#8#7'Enabled'#9#4'Flat'#8#10'GroupIndex'#2#0#6'Layout'#7#11
+'blGlyphLeft'#6'Margin'#2#255#7'Spacing'#2#4#11'Transparent'#9#7'Visible'#9
+#10'ParentFont'#9#14'ParentShowHint'#9#0#0#12'TColorButton'#16'BackgroundClr'
+'Btn'#4'Left'#3'X'#2#6'Height'#2#25#3'Top'#3#171#0#5'Width'#2'K'#11'HelpCont'
+'ext'#2#0#5'Align'#7#6'alNone'#10'AllowAllUp'#8#18'BorderSpacing.Left'#2#0#17
+'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'
+#2#0#20'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'cc'
+'aFill'#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#11'BorderWidth'#2#2
+#15'ButtonColorSize'#2#16#11'ButtonColor'#7#6'clNone'#5'Color'#7#9'clBtnFace'
+#4'Down'#8#7'Enabled'#9#4'Flat'#8#10'GroupIndex'#2#0#6'Layout'#7#11'blGlyphL'
+'eft'#6'Margin'#2#255#7'Spacing'#2#4#11'Transparent'#9#7'Visible'#9#10'Paren'
+'tFont'#9#14'ParentShowHint'#9#0#0#9'TGroupBox'#9'GroupBox1'#4'Left'#2#0#6'H'
+'eight'#3#139#2#3'Top'#2#0#5'Width'#3#148#1#11'HelpContext'#2#0#5'Align'#7#6
+'alLeft'#8'AutoSize'#8#18'BorderSpacing.Left'#2#0#17'BorderSpacing.Top'#2#0
+#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0#20'BorderSpacing.A'
+'round'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpacin'
+'g.CellAlignVertical'#7#7'ccaFill'#7'Caption'#6#17'Sitemap Tree/List'#28'Chi'
+'ldSizing.LeftRightSpacing'#2#0#28'ChildSizing.TopBottomSpacing'#2#0#29'Chil'
,'dSizing.HorizontalSpacing'#2#0#27'ChildSizing.VerticalSpacing'#2#0#27'Child'
+'Sizing.ControlsPerLine'#2#0#12'ClientHeight'#3'z'#2#11'ClientWidth'#3#144#1
+#5'Ctl3D'#8#8'DockSite'#8#10'DragCursor'#7#6'crDrag'#8'DragKind'#7#6'dkDrag'
+#8'DragMode'#7#8'dmManual'#7'Enabled'#9#14'ParentBidiMode'#9#11'ParentColor'
+#9#11'ParentCtl3D'#9#10'ParentFont'#9#14'ParentShowHint'#9#8'TabOrder'#2#0#7
+'TabStop'#8#7'Visible'#9#0#6'TLabel'#6'Label1'#4'Left'#2#11#6'Height'#2#16#3
+'Top'#3#211#1#5'Width'#2't'#11'HelpContext'#2#0#5'Align'#7#6'alNone'#9'Align'
+'ment'#7#13'taLeftJustify'#8'AutoSize'#9#18'BorderSpacing.Left'#2#0#17'Borde'
+'rSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0
+#20'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFil'
+'l'#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#7'Caption'#6#19'Local l'
+'ink (in chm)'#10'DragCursor'#7#6'crDrag'#8'DragMode'#7#8'dmManual'#7'Enable'
+'d'#8#6'Layout'#7#5'tlTop'#14'ParentBidiMode'#9#11'ParentColor'#8#10'ParentF'
+'ont'#9#14'ParentShowHint'#9#13'ShowAccelChar'#9#11'Transparent'#9#7'Visible'
+#9#8'WordWrap'#8#11'OptimalFill'#8#0#0#6'TLabel'#6'Label2'#4'Left'#2#11#6'He'
+'ight'#2#16#3'Top'#3'?'#2#5'Width'#2';'#11'HelpContext'#2#0#5'Align'#7#6'alN'
+'one'#9'Alignment'#7#13'taLeftJustify'#8'AutoSize'#9#18'BorderSpacing.Left'#2
+#0#17'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bo'
+'ttom'#2#0#20'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizontal'#7
+#7'ccaFill'#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#7'Caption'#6#8
+'Add Item'#10'DragCursor'#7#6'crDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#9
+#6'Layout'#7#5'tlTop'#14'ParentBidiMode'#9#11'ParentColor'#8#10'ParentFont'#9
+#14'ParentShowHint'#9#13'ShowAccelChar'#9#11'Transparent'#9#7'Visible'#9#8'W'
+'ordWrap'#8#11'OptimalFill'#8#0#0#9'TTreeView'#11'SitemapTree'#3'Tag'#2#0#4
+'Left'#2#0#6'Height'#3#149#1#3'Top'#2#0#5'Width'#3#144#1#11'HelpContext'#2#0
+#5'Align'#7#5'alTop'#10'AutoExpand'#8#18'BorderSpacing.Left'#2#0#17'BorderSp'
+'acing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0#20
+'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'
+#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#15'BackgroundColor'#7#8'cl'
+'Window'#11'BorderStyle'#7#8'bsSingle'#11'BorderWidth'#2#0#5'Ctl3D'#8#17'Def'
+'aultItemHeight'#2#17#8'DragKind'#7#6'dkDrag'#10'DragCursor'#7#6'crDrag'#8'D'
+'ragMode'#7#8'dmManual'#7'Enabled'#9#14'ExpandSignType'#7#14'tvestPlusMinus'
+#13'HideSelection'#9#8'HotTrack'#8#6'Indent'#2#15#11'ParentCtl3D'#9#10'Paren'
+'tFont'#9#14'ParentShowHint'#9#8'ReadOnly'#8#16'RightClickSelect'#8#9'RowSel'
+'ect'#8#10'ScrollBars'#7#6'ssBoth'#14'SelectionColor'#7#11'clHighlight'#11'S'
+'howButtons'#9#9'ShowLines'#9#8'ShowRoot'#9#8'SortType'#7#6'stNone'#8'TabOrd'
+'er'#2#0#8'ToolTips'#9#7'Visible'#9#18'OnCustomCreateItem'#7#27'SitemapTreeC'
+'ustomCreateItem'#18'OnSelectionChanged'#7#27'SitemapTreeSelectionChanged'#7
+'Options'#11#17'tvoAutoItemHeight'#16'tvoHideSelection'#21'tvoKeepCollapsedN'
+'odes'#14'tvoShowButtons'#12'tvoShowLines'#11'tvoShowRoot'#11'tvoToolTips'#0
+#13'TreeLineColor'#7#13'clWindowFrame'#16'TreeLinePenStyle'#7#9'psPattern'#15
+'ExpandSignColor'#7#13'clWindowFrame'#0#0#12'TLabeledEdit'#15'DescriptionEdi'
+'t'#4'Left'#2#11#6'Height'#2#25#3'Top'#3#179#1#5'Width'#3'$'#1#11'HelpContex'
+'t'#2#0#10'AutoSelect'#8#8'AutoSize'#8#18'BorderSpacing.Left'#2#0#17'BorderS'
+'pacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0#20
+'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'
+#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#8'CharCase'#7#8'ecNormal'
+#10'DragCursor'#7#6'crDrag'#8'DragMode'#7#8'dmManual'#8'EchoMode'#7#8'emNorm'
+'al EditLabel.AnchorSideLeft.Control'#7#15'DescriptionEdit"EditLabel.AnchorS'
+'ideBottom.Control'#7#15'DescriptionEdit'#14'EditLabel.Left'#2#11#16'EditLab'
+'el.Height'#2#16#13'EditLabel.Top'#3#160#1#15'EditLabel.Width'#2'I'#21'EditL'
+'abel.HelpContext'#2#0#17'EditLabel.Caption'#6#11'Description'#20'EditLabel.'
+'DragCursor'#7#6'crDrag'#18'EditLabel.DragMode'#7#8'dmManual'#21'EditLabel.P'
+'arentColor'#8#20'EditLabel.ParentFont'#9#24'EditLabel.ParentShowHint'#9#23
+'EditLabel.ShowAccelChar'#9#16'EditLabel.Layout'#7#5'tlTop'#18'EditLabel.Wor'
+'dWrap'#8#7'Enabled'#8#13'LabelPosition'#7#7'lpAbove'#12'LabelSpacing'#2#3#9
+'MaxLength'#2#255#11'ParentColor'#8#10'ParentFont'#9#14'ParentShowHint'#9#12
+'PasswordChar'#6#1#0#8'ReadOnly'#8#8'TabOrder'#2#1#7'TabStop'#9#7'Visible'#9
+#8'OnChange'#7#21'DescriptionEditChange'#0#0#7'TButton'#16'DescFromTitleBtn'
+#4'Left'#3'7'#1#6'Height'#2#25#3'Top'#3#179#1#5'Width'#2'K'#11'HelpContext'#2
+#0#5'Align'#7#6'alNone'#8'AutoSize'#8#18'BorderSpacing.Left'#2#0#17'BorderSp'
+'acing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0#20
+'BorderSpacing.Around'#2#0#25'BorderSpacing.InnerBorder'#2#4'!BorderSpacing.'
+'CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpacing.CellAlignVertical'#7#7'c'
,'caFill'#6'Cancel'#8#7'Caption'#6#10'From Title'#7'Default'#8#10'DragCursor'
+#7#6'crDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#8#14'ParentBidiMode'#9#11
+'ModalResult'#2#0#10'ParentFont'#9#14'ParentShowHint'#9#8'TabOrder'#2#2#7'Ta'
+'bStop'#9#7'Visible'#9#0#0#9'TComboBox'#10'LocalCombo'#4'Left'#2#11#6'Height'
+#2#27#3'Top'#3#231#1#5'Width'#3'w'#1#11'HelpContext'#2#0#7'TabStop'#9#5'Alig'
+'n'#7#6'alNone'#21'ArrowKeysTraverseList'#9#12'AutoComplete'#8#16'AutoComple'
+'teText'#11#22'cbactEndOfLineComplete'#20'cbactSearchAscending'#0#12'AutoDro'
+'pDown'#8#10'AutoSelect'#8#8'AutoSize'#9#18'BorderSpacing.Left'#2#0#17'Borde'
+'rSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0
+#20'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFil'
+'l'#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#8'CharCase'#7#8'ecNorma'
+'l'#5'Ctl3D'#8#10'DragCursor'#7#6'crDrag'#8'DragMode'#7#8'dmManual'#13'DropD'
+'ownCount'#2#8#7'Enabled'#8#10'ItemHeight'#2#0#9'ItemIndex'#2#255#9'ItemWidt'
+'h'#2#0#9'MaxLength'#2#0#8'OnChange'#7#16'LocalComboChange'#7'OnKeyUp'#7#15
+'LocalComboKeyUp'#14'ParentBidiMode'#9#11'ParentColor'#8#11'ParentCtl3D'#9#10
+'ParentFont'#9#14'ParentShowHint'#9#6'Sorted'#8#5'Style'#7#10'csDropDown'#8
+'TabOrder'#2#3#7'Visible'#9#0#0#12'TLabeledEdit'#7'URLEdit'#4'Left'#2#11#6'H'
+'eight'#2#25#3'Top'#3#27#2#5'Width'#3'w'#1#11'HelpContext'#2#0#10'AutoSelect'
+#8#8'AutoSize'#8#18'BorderSpacing.Left'#2#0#17'BorderSpacing.Top'#2#0#19'Bor'
+'derSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2#0#20'BorderSpacing.Around'
+#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpacing.CellA'
+'lignVertical'#7#7'ccaFill'#8'CharCase'#7#8'ecNormal'#10'DragCursor'#7#6'crD'
+'rag'#8'DragMode'#7#8'dmManual'#8'EchoMode'#7#8'emNormal EditLabel.AnchorSid'
+'eLeft.Control'#7#7'URLEdit"EditLabel.AnchorSideBottom.Control'#7#7'URLEdit'
+#14'EditLabel.Left'#2#11#16'EditLabel.Height'#2#16#13'EditLabel.Top'#3#8#2#15
+'EditLabel.Width'#2'B'#21'EditLabel.HelpContext'#2#0#17'EditLabel.Caption'#6
+#10'URL (http)'#20'EditLabel.DragCursor'#7#6'crDrag'#18'EditLabel.DragMode'#7
+#8'dmManual'#21'EditLabel.ParentColor'#8#20'EditLabel.ParentFont'#9#24'EditL'
+'abel.ParentShowHint'#9#23'EditLabel.ShowAccelChar'#9#16'EditLabel.Layout'#7
+#5'tlTop'#18'EditLabel.WordWrap'#8#7'Enabled'#8#13'LabelPosition'#7#7'lpAbov'
+'e'#12'LabelSpacing'#2#3#9'MaxLength'#2#255#11'ParentColor'#8#10'ParentFont'
+#9#14'ParentShowHint'#9#12'PasswordChar'#6#1#0#8'ReadOnly'#8#8'TabOrder'#2#4
+#7'TabStop'#9#7'Visible'#9#8'OnChange'#7#13'URLEditChange'#0#0#7'TButton'#9
+'BeforeBtn'#4'Left'#2'Z'#6'Height'#2#25#3'Top'#3';'#2#5'Width'#2'K'#11'HelpC'
+'ontext'#2#0#5'Align'#7#6'alNone'#8'AutoSize'#8#18'BorderSpacing.Left'#2#0#17
+'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'
+#2#0#20'BorderSpacing.Around'#2#0#25'BorderSpacing.InnerBorder'#2#4'!BorderS'
+'pacing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpacing.CellAlignVertical'
+#7#7'ccaFill'#6'Cancel'#8#7'Caption'#6#6'Before'#7'Default'#8#10'DragCursor'
+#7#6'crDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#8#14'ParentBidiMode'#9#11
+'ModalResult'#2#0#7'OnClick'#7#14'BeforeBtnClick'#10'ParentFont'#9#14'Parent'
+'ShowHint'#9#8'TabOrder'#2#5#7'TabStop'#9#7'Visible'#9#0#0#7'TButton'#8'Afte'
+'rBtn'#4'Left'#3#170#0#6'Height'#2#25#3'Top'#3';'#2#5'Width'#2'K'#11'HelpCon'
+'text'#2#0#5'Align'#7#6'alNone'#8'AutoSize'#8#18'BorderSpacing.Left'#2#0#17
+'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'
+#2#0#20'BorderSpacing.Around'#2#0#25'BorderSpacing.InnerBorder'#2#4'!BorderS'
+'pacing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpacing.CellAlignVertical'
+#7#7'ccaFill'#6'Cancel'#8#7'Caption'#6#5'After'#7'Default'#8#10'DragCursor'#7
+#6'crDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#9#14'ParentBidiMode'#9#11'Mo'
+'dalResult'#2#0#7'OnClick'#7#13'AfterBtnClick'#10'ParentFont'#9#14'ParentSho'
+'wHint'#9#8'TabOrder'#2#6#7'TabStop'#9#7'Visible'#9#0#0#7'TButton'#10'SubIte'
+'mBtn'#4'Left'#2'Z'#6'Height'#2#25#3'Top'#3'Y'#2#5'Width'#3#155#0#11'HelpCon'
+'text'#2#0#5'Align'#7#6'alNone'#8'AutoSize'#8#18'BorderSpacing.Left'#2#0#17
+'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'
+#2#0#20'BorderSpacing.Around'#2#0#25'BorderSpacing.InnerBorder'#2#4'!BorderS'
+'pacing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpacing.CellAlignVertical'
+#7#7'ccaFill'#6'Cancel'#8#7'Caption'#6#7'Subitem'#7'Default'#8#10'DragCursor'
+#7#6'crDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#8#14'ParentBidiMode'#9#11
+'ModalResult'#2#0#7'OnClick'#7#15'SubItemBtnClick'#10'ParentFont'#9#14'Paren'
+'tShowHint'#9#8'TabOrder'#2#7#7'TabStop'#9#7'Visible'#9#0#0#7'TButton'#9'Del'
+'eteBtn'#4'Left'#2#11#6'Height'#2#25#3'Top'#3'Y'#2#5'Width'#2'K'#11'HelpCont'
+'ext'#2#0#5'Align'#7#6'alNone'#8'AutoSize'#8#18'BorderSpacing.Left'#2#0#17'B'
+'orderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'#2
+#0#20'BorderSpacing.Around'#2#0#25'BorderSpacing.InnerBorder'#2#4'!BorderSpa'
,'cing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpacing.CellAlignVertical'#7
+#7'ccaFill'#6'Cancel'#8#7'Caption'#6#6'Delete'#7'Default'#8#10'DragCursor'#7
+#6'crDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#9#14'ParentBidiMode'#9#11'Mo'
+'dalResult'#2#0#7'OnClick'#7#14'DeleteBtnClick'#10'ParentFont'#9#14'ParentSh'
+'owHint'#9#8'TabOrder'#2#8#7'TabStop'#9#7'Visible'#9#0#0#0#12'TLabeledEdit'#8
+'FontEdit'#4'Left'#3#188#1#6'Height'#2#25#3'Top'#2'H'#5'Width'#3#232#0#11'He'
+'lpContext'#2#0#10'AutoSelect'#8#8'AutoSize'#8#18'BorderSpacing.Left'#2#0#17
+'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20'BorderSpacing.Bottom'
+#2#0#20'BorderSpacing.Around'#2#0'!BorderSpacing.CellAlignHorizontal'#7#7'cc'
+'aFill'#31'BorderSpacing.CellAlignVertical'#7#7'ccaFill'#8'CharCase'#7#8'ecN'
+'ormal'#10'DragCursor'#7#6'crDrag'#8'DragMode'#7#8'dmManual'#8'EchoMode'#7#8
+'emNormal EditLabel.AnchorSideLeft.Control'#7#8'FontEdit"EditLabel.AnchorSid'
+'eBottom.Control'#7#8'FontEdit'#14'EditLabel.Left'#3#188#1#16'EditLabel.Heig'
+'ht'#2#16#13'EditLabel.Top'#2'5'#15'EditLabel.Width'#2#29#21'EditLabel.HelpC'
+'ontext'#2#0#17'EditLabel.Caption'#6#4'Font'#20'EditLabel.DragCursor'#7#6'cr'
+'Drag'#18'EditLabel.DragMode'#7#8'dmManual'#21'EditLabel.ParentColor'#8#20'E'
+'ditLabel.ParentFont'#9#24'EditLabel.ParentShowHint'#9#23'EditLabel.ShowAcce'
+'lChar'#9#16'EditLabel.Layout'#7#5'tlTop'#18'EditLabel.WordWrap'#8#7'Enabled'
+#9#13'LabelPosition'#7#7'lpAbove'#12'LabelSpacing'#2#3#9'MaxLength'#2#255#11
+'ParentColor'#8#10'ParentFont'#9#14'ParentShowHint'#9#12'PasswordChar'#6#1#0
+#8'ReadOnly'#8#8'TabOrder'#2#1#7'TabStop'#9#7'Visible'#9#0#0#9'TCheckBox'#15
+'FolderViewCheck'#4'Left'#3#188#1#6'Height'#2#22#3'Top'#3#212#0#5'Width'#3
+#129#0#11'HelpContext'#2#0#5'Align'#7#6'alNone'#11'AllowGrayed'#8#8'AutoSize'
+#9#18'BorderSpacing.Left'#2#0#17'BorderSpacing.Top'#2#0#19'BorderSpacing.Rig'
+'ht'#2#0#20'BorderSpacing.Bottom'#2#0#20'BorderSpacing.Around'#2#0'!BorderSp'
+'acing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpacing.CellAlignVertical'
+#7#7'ccaFill'#7'Caption'#6#16'Use Folder Icons'#7'Checked'#8#10'DragCursor'#7
+#6'crDrag'#8'DragKind'#7#6'dkDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#9#11
+'ParentColor'#9#10'ParentFont'#9#14'ParentShowHint'#9#14'ParentBidiMode'#9#5
+'State'#7#11'cbUnchecked'#8'TabOrder'#2#2#7'TabStop'#9#11'UseOnChange'#8#7'V'
+'isible'#9#0#0#7'TButton'#7'SaveBtn'#4'Left'#3'0'#2#6'Height'#2#25#3'Top'#3
+'h'#2#5'Width'#2'K'#11'HelpContext'#2#0#5'Align'#7#6'alNone'#8'AutoSize'#8#18
+'BorderSpacing.Left'#2#0#17'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2
+#0#20'BorderSpacing.Bottom'#2#0#20'BorderSpacing.Around'#2#0#25'BorderSpacin'
+'g.InnerBorder'#2#4'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'#31'Bord'
+'erSpacing.CellAlignVertical'#7#7'ccaFill'#6'Cancel'#8#7'Caption'#6#4'Save'#7
+'Default'#8#10'DragCursor'#7#6'crDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#9
+#14'ParentBidiMode'#9#11'ModalResult'#2#1#7'OnClick'#7#12'SaveBtnClick'#10'P'
+'arentFont'#9#14'ParentShowHint'#9#8'TabOrder'#2#3#7'TabStop'#9#7'Visible'#9
+#0#0#7'TButton'#9'CancelBtn'#4'Left'#3#140#2#6'Height'#2#25#3'Top'#3'h'#2#5
+'Width'#2'K'#11'HelpContext'#2#0#5'Align'#7#6'alNone'#8'AutoSize'#8#18'Borde'
+'rSpacing.Left'#2#0#17'BorderSpacing.Top'#2#0#19'BorderSpacing.Right'#2#0#20
+'BorderSpacing.Bottom'#2#0#20'BorderSpacing.Around'#2#0#25'BorderSpacing.Inn'
+'erBorder'#2#4'!BorderSpacing.CellAlignHorizontal'#7#7'ccaFill'#31'BorderSpa'
+'cing.CellAlignVertical'#7#7'ccaFill'#6'Cancel'#8#7'Caption'#6#6'Cancel'#7'D'
+'efault'#8#10'DragCursor'#7#6'crDrag'#8'DragMode'#7#8'dmManual'#7'Enabled'#9
+#14'ParentBidiMode'#9#11'ModalResult'#2#2#7'OnClick'#7#14'CancelBtnClick'#10
+'ParentFont'#9#14'ParentShowHint'#9#8'TabOrder'#2#4#7'TabStop'#9#7'Visible'#9
+#0#0#0
]);

View File

@ -1,317 +0,0 @@
unit CHMSiteMapEditor;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, chmsitemap,
ComCtrls, ExtCtrls, StdCtrls, Buttons;
type
{ TSitemapEditForm }
TSitemapEditForm = class(TForm)
BeforeBtn: TButton;
AfterBtn: TButton;
DeleteBtn: TButton;
CancelBtn: TButton;
SaveBtn: TButton;
FolderViewCheck: TCheckBox;
ForegroundClrBtn: TColorButton;
BackgroundClrBtn: TColorButton;
Label3: TLabel;
FontEdit: TLabeledEdit;
Label4: TLabel;
Label5: TLabel;
SubItemBtn: TButton;
Label2: TLabel;
URLEdit: TLabeledEdit;
LocalCombo: TComboBox;
DescFromTitleBtn: TButton;
GroupBox1: TGroupBox;
Label1: TLabel;
DescriptionEdit: TLabeledEdit;
SitemapTree: TTreeView;
procedure AfterBtnClick(Sender: TObject);
procedure BeforeBtnClick(Sender: TObject);
procedure CancelBtnClick(Sender: TObject);
procedure DeleteBtnClick(Sender: TObject);
procedure DescriptionEditChange(Sender: TObject);
procedure LocalComboChange(Sender: TObject);
procedure LocalComboKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState
);
procedure SaveBtnClick(Sender: TObject);
procedure SitemapTreeCustomCreateItem(Sender: TCustomTreeView;
var ATreeNode: TTreenode);
procedure SitemapTreeSelectionChanged(Sender: TObject);
procedure SubItemBtnClick(Sender: TObject);
procedure URLEditChange(Sender: TObject);
private
{ private declarations }
FStream: TStream;
FSiteMapType: TSiteMapType;
procedure InitControls;
public
{ public declarations }
procedure LoadFromStream(AStream: TStream);
function Execute(AStream: TStream; SiteType: TSiteMapType; AvailableLinks: TStrings): Boolean;
end;
var
SitemapEditForm: TSitemapEditForm;
implementation
uses
LCLType;
type
{ TChmTreeNode }
TChmTreeNode = class(TTreeNode)
private
FLocal: String;
FURL: String;
public
property URL: String read FURL write FURL;
property Local: String read FLocal write FLocal;
end;
{ TSitemapEditForm }
procedure TSitemapEditForm.CancelBtnClick(Sender: TObject);
begin
end;
procedure TSitemapEditForm.DeleteBtnClick(Sender: TObject);
begin
SitemapTree.Selected.DeleteChildren;
SitemapTree.Selected.Delete;
end;
procedure TSitemapEditForm.DescriptionEditChange(Sender: TObject);
begin
if SitemapTree.Selected = nil then Exit;
TChmTreeNode(SitemapTree.Selected).Text := DescriptionEdit.Text;
end;
procedure TSitemapEditForm.LocalComboChange(Sender: TObject);
begin
if SitemapTree.Selected = nil then Exit;
TChmTreeNode(SitemapTree.Selected).Local := LocalCombo.Text;
end;
procedure TSitemapEditForm.LocalComboKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
I: Integer;
FLine: String;
FLength: Integer;
begin
case Key of
VK_BACK,
VK_DELETE,
VK_LEFT,
VK_RIGHT,
VK_SHIFT,
VK_CONTROL,
VK_UP,
VK_DOWN,
VK_END,
VK_HOME: Exit;
end;
FLength := Length(LocalCombo.Text);
for I := 0 to LocalCombo.Items.Count-1 do begin
FLine := Copy(LocalCombo.Items.Strings[I],1, FLength);
if CompareStr(FLine, LocalCombo.Text) = 0 then
begin
LocalCombo.Text := LocalCombo.Items.Strings[I];
LocalCombo.SelStart := FLength;
Application.ProcessMessages;
LocalCombo.SelLength := Length(LocalCombo.Text) - FLength;
TChmTreeNode(SitemapTree.Selected).Local := LocalCombo.Text;
end;
end;
end;
procedure TSitemapEditForm.SaveBtnClick(Sender: TObject);
procedure AddItem(TreeNode: TChmTreeNode; ChmItems: TChmSiteMapItems);
var
ChmItem: TChmSiteMapItem;
I: Integer;
begin
ChmItem := ChmItems.NewItem;
ChmItem.Text := TreeNode.Text;
ChmItem.URL := TreeNode.URL;
ChmItem.Local := TreeNode.Local;
for I := 0 to TreeNode.Count-1 do begin
AddItem(TChmTreeNode(TreeNode.Items[I]), ChmItem.Children);
end;
end;
var
ChmSitemap: TChmSiteMap;
I: Integer;
begin
ChmSitemap := TChmSiteMap.Create(FSiteMapType);
for I := 0 to SitemapTree.Items.Count-1 do
if SitemapTree.Items.Item[I].Parent = nil then
AddItem(TChmTreeNode(SitemapTree.Items.Item[I]), ChmSitemap.Items);
ChmSiteMap.ForegroundColor := LongInt(ForegroundClrBtn.ButtonColor);
ChmSiteMap.BackgroundColor := LongInt(BackgroundClrBtn.ButtonColor);
ChmSiteMap.UseFolderImages := FolderViewCheck.Checked;
ChmSiteMap.Font := FontEdit.Text;
FStream.Position := 0;
ChmSitemap.SaveToStream(FStream);
ChmSitemap.Free;
end;
procedure TSitemapEditForm.BeforeBtnClick(Sender: TObject);
var
Item: TTreeNode;
begin
Item := SitemapTree.Items.Insert(SitemapTree.Selected, 'Untitled');
Item.Selected := True;
SitemapTreeSelectionChanged(Sender);
end;
procedure TSitemapEditForm.AfterBtnClick(Sender: TObject);
var
Item: TTreeNode;
begin
Item := SitemapTree.Items.Add(SitemapTree.Selected, 'Untitled');
Item.Selected := True;
SitemapTreeSelectionChanged(Sender);
end;
procedure TSitemapEditForm.SitemapTreeCustomCreateItem(Sender: TCustomTreeView;
var ATreeNode: TTreenode);
begin
ATreeNode := TChmTreeNode.Create(TTreeView(Sender).Items);
end;
procedure TSitemapEditForm.SitemapTreeSelectionChanged(Sender: TObject);
var
Value: Boolean;
Item: TChmTreeNode;
begin
Value := SitemapTree.Selected <> nil;
DeleteBtn.Enabled := Value;
BeforeBtn.Enabled := Value and (SitemapTree.Selected.Parent = nil) and (SitemapTree.Selected.Index <> 0);
SubItemBtn.Enabled := Value and (FSiteMapType = stTOC);
Label1.Enabled := Value;
DescFromTitleBtn.Enabled := Value;
DescriptionEdit.Enabled := Value;
LocalCombo.Enabled := Value;
URLEdit.Enabled := Value;
if Value then begin
Item := TChmTreeNode(SitemapTree.Selected);
DescriptionEdit.Text := Item.Text;
LocalCombo.Text := Item.Local;
URLEdit.Text := Item.URL;
end
else begin
DescriptionEdit.Text := '';
LocalCombo.Text := '';
URLEdit.Text := '';
end;
end;
procedure TSitemapEditForm.SubItemBtnClick(Sender: TObject);
var
Item : TTreeNode;
begin
Item := SitemapTree.Items.AddChild(SitemapTree.Selected, 'Untitled');
Item.Selected := True;
SitemapTreeSelectionChanged(Sender);
end;
procedure TSitemapEditForm.URLEditChange(Sender: TObject);
begin
if SitemapTree.Selected = nil then Exit;
TChmTreeNode(SitemapTree.Selected).URL := URLEdit.Text;
end;
procedure TSitemapEditForm.InitControls;
var
Value: Boolean;
begin
Value := (FSiteMapType = stTOC);
SubItemBtn.Enabled := Value;
FolderViewCheck.Enabled := Value;
ForegroundClrBtn.Enabled := Value;
BackgroundClrBtn.Enabled := Value;
Label4.Enabled := Value;
Label5.Enabled := Value;
end;
procedure TSitemapEditForm.LoadFromStream(AStream: TStream);
procedure AddItems(Items: TChmSiteMapItems; ParentItem: TTreeNode);
var
TreeNode: TChmTreeNode;
ChmItem: TChmSiteMapItem;
I: Integer;
begin
for I := 0 to Items.Count-1 do begin
ChmItem := Items.Item[I];
TreeNode := TChmTreeNode(SitemapTree.Items.AddChild(ParentItem, ChmItem.Text));
TreeNode.Local := ChmItem.Local;
TreeNode.URL := ChmItem.URL;
AddItems(ChmItem.Children, TreeNode);
end;
end;
var
ChmSiteMap: TChmSiteMap;
begin
ChmSiteMap := TChmSiteMap.Create(FSiteMapType);
AStream. Position := 0;
if AStream.Size > 0 then;
ChmSiteMap.LoadFromStream(AStream);
SitemapTree.Items.Clear;
AddItems(ChmSiteMap.Items, nil);
ForegroundClrBtn.ButtonColor := TColor(ChmSiteMap.ForegroundColor);
BackgroundClrBtn.ButtonColor := TColor(ChmSiteMap.BackgroundColor);
FolderViewCheck.Checked := ChmSiteMap.UseFolderImages;
FontEdit.Text := ChmSiteMap.Font;
//ChmSiteMap.Free;
end;
function TSitemapEditForm.Execute(AStream: TStream; SiteType: TSiteMapType;
AvailableLinks: TStrings): Boolean;
begin
FStream := AStream;
AStream.Position := 0;
FSiteMapType := SiteType;
InitControls;
LoadFromStream(AStream);
LocalCombo.Items.Assign(AvailableLinks);
ShowModal;
while ModalResult = mrNone do
Application.HandleMessage;
Result := ModalResult = mrOK;
end;
initialization
{$I chmsitemapeditor.lrs}
end.

View File

@ -1,380 +0,0 @@
object CHMForm: TCHMForm
Left = 786
Height = 511
Top = 299
Width = 611
ActiveControl = FileListBox
AutoScroll = True
Caption = 'Compiled HTML Help Project - [Made with Freepascal]'
ClientHeight = 488
ClientWidth = 611
Menu = MainMenu1
OnClose = FormClose
OnCreate = FormCreate
ShowInTaskBar = stAlways
LCLVersion = '0.9.29'
Visible = True
object StatusBar1: TStatusBar
Left = 0
Height = 19
Top = 469
Width = 611
Panels = <>
end
object GroupBox1: TGroupBox
Left = 0
Height = 469
Top = 0
Width = 268
Align = alLeft
Caption = 'Files'
ClientHeight = 452
ClientWidth = 264
TabOrder = 0
object FileListBox: TListBox
Left = 0
Height = 318
Top = 0
Width = 264
Align = alClient
ItemHeight = 0
OnDrawItem = FileListBoxDrawItem
Sorted = True
Style = lbOwnerDrawFixed
TabOrder = 0
TopIndex = -1
end
object Panel2: TPanel
Left = 0
Height = 134
Top = 318
Width = 264
Align = alBottom
ClientHeight = 134
ClientWidth = 264
TabOrder = 1
object Label4: TLabel
Left = 16
Height = 48
Top = 85
Width = 232
Align = alBottom
AutoSize = False
BorderSpacing.Left = 15
BorderSpacing.Right = 15
Caption = 'All files must be in the project file directory or a subdirectory.'
ParentColor = False
WordWrap = True
end
object AddFilesBtn: TButton
Left = 11
Height = 25
Top = 3
Width = 81
BorderSpacing.InnerBorder = 4
Caption = 'Add Files'
OnClick = AddFilesBtnClick
TabOrder = 0
end
object RemoveFilesBtn: TButton
Left = 94
Height = 25
Top = 3
Width = 156
BorderSpacing.InnerBorder = 4
Caption = 'Remove Selected'
OnClick = RemoveFilesBtnClick
TabOrder = 1
end
object AutoAddLinksBtn: TButton
Left = 11
Height = 25
Top = 59
Width = 239
BorderSpacing.InnerBorder = 4
Caption = 'Auto add HREF files'
Enabled = False
OnClick = AutoAddLinksBtnClick
TabOrder = 2
end
object AddAllBtn: TButton
Left = 11
Height = 25
Top = 32
Width = 239
BorderSpacing.InnerBorder = 4
Caption = 'Add all files in Project Directory'
OnClick = AddAllBtnClick
TabOrder = 3
end
end
end
object Panel1: TPanel
Left = 268
Height = 469
Top = 0
Width = 343
Align = alClient
ClientHeight = 469
ClientWidth = 343
TabOrder = 1
object Label1: TLabel
Left = 11
Height = 16
Top = 11
Width = 110
Caption = 'Table of Contents'
ParentColor = False
end
object Label2: TLabel
Left = 11
Height = 16
Top = 59
Width = 34
Caption = 'Index'
ParentColor = False
end
object Label3: TLabel
Left = 11
Height = 16
Top = 168
Width = 136
Caption = 'Compile time options:'
ParentColor = False
end
object Label5: TLabel
Left = 11
Height = 16
Top = 108
Width = 81
Caption = 'Default Page'
ParentColor = False
end
object Label6: TLabel
Left = 12
Height = 16
Top = 356
Width = 85
Caption = 'CHM filename'
ParentColor = False
end
object TOCEdit: TFileNameEdit
Left = 10
Height = 23
Top = 31
Width = 203
OnAcceptFileName = TOCEditAcceptFileName
DialogOptions = []
Filter = 'Table of Contents Files(*.hhc)|*.hhc|All files|*'
FilterIndex = 0
HideDirectories = False
ButtonWidth = 23
NumGlyphs = 1
AutoSelect = False
AutoSize = False
MaxLength = 0
TabOrder = 0
end
object IndexEdit: TFileNameEdit
Left = 10
Height = 23
Top = 79
Width = 203
OnAcceptFileName = IndexEditAcceptFileName
DialogOptions = []
Filter = 'Index Files(*.hhk)|*.hhk|All Files|*'
FilterIndex = 0
HideDirectories = False
ButtonWidth = 23
NumGlyphs = 1
AutoSelect = False
AutoSize = False
MaxLength = 0
TabOrder = 1
end
object TOCEditBtn: TButton
Left = 247
Height = 23
Top = 31
Width = 51
BorderSpacing.InnerBorder = 4
Caption = 'Edit'
OnClick = TOCEditBtnClick
TabOrder = 2
end
object IndexEditBtn: TButton
Left = 247
Height = 23
Top = 80
Width = 51
BorderSpacing.InnerBorder = 4
Caption = 'Edit'
OnClick = IndexEditBtnClick
TabOrder = 3
end
object FollowLinksCheck: TCheckBox
Left = 19
Height = 34
Top = 201
Width = 202
Caption = 'Parse *.htm* files to include '#10'linked pages and images'
Enabled = False
TabOrder = 4
end
object CreateSearchableCHMCheck: TCheckBox
Left = 20
Height = 22
Hint = 'Only indexes files added to the project'#10'not files automatically added.'
Top = 240
Width = 182
Caption = 'Create a searchable chm'
ParentShowHint = False
ShowHint = True
TabOrder = 5
end
object DefaultPageCombo: TComboBox
Left = 11
Height = 29
Top = 128
Width = 287
AutoSelect = False
ItemHeight = 0
Style = csDropDownList
TabOrder = 6
end
object CompileBtn: TButton
AnchorSideLeft.Side = asrBottom
AnchorSideRight.Control = CompileViewBtn
Left = 97
Height = 35
Top = 420
Width = 69
Anchors = [akRight, akBottom]
AutoSize = True
BorderSpacing.Right = 9
BorderSpacing.InnerBorder = 4
Caption = 'Compile'
OnClick = CompileBtnClick
TabOrder = 7
end
object CompileViewBtn: TButton
AnchorSideLeft.Control = CompileBtn
AnchorSideLeft.Side = asrBottom
Left = 175
Height = 35
Top = 420
Width = 129
Anchors = [akRight, akBottom]
AutoSize = True
BorderSpacing.Right = 13
BorderSpacing.InnerBorder = 4
Caption = 'Compile and View'
OnClick = CompileViewBtnClick
TabOrder = 8
end
object ChmFileNameEdit: TFileNameEdit
Left = 11
Height = 23
Top = 380
Width = 270
OnAcceptFileName = ChmFileNameEditAcceptFileName
DialogKind = dkSave
DialogTitle = 'Save CHM as...'
DialogOptions = []
Filter = 'Compressed HTML Help Files|*.chm'
FilterIndex = 0
HideDirectories = False
ButtonWidth = 23
NumGlyphs = 1
AutoSelect = False
AutoSize = False
MaxLength = 0
TabOrder = 9
end
object CreateBinaryIndexCkeckBox: TCheckBox
Left = 21
Height = 22
Top = 272
Width = 145
Caption = 'Create Binary Index'
TabOrder = 10
end
end
object OpenDialog1: TOpenDialog
Filter = 'Help File Project(*.hfp)|*.hfp'
FilterIndex = 0
Options = [ofFileMustExist, ofEnableSizing, ofViewDetail]
left = 8
top = 16
end
object SaveDialog1: TSaveDialog
Filter = 'Help File Project(*.hfp)|*.hfp'
FilterIndex = 0
left = 36
top = 15
end
object MainMenu1: TMainMenu
left = 68
top = 15
object MenuItem1: TMenuItem
Caption = 'Project'
object ProjNewItem: TMenuItem
Caption = 'New'
OnClick = ProjNewItemClick
end
object ProjOpenItem: TMenuItem
Caption = 'Open'
OnClick = ProjOpenItemClick
end
object MenuItem9: TMenuItem
Caption = '-'
end
object ProjSaveItem: TMenuItem
Caption = 'Save'
OnClick = ProjSaveItemClick
end
object ProjSaveAsItem: TMenuItem
Caption = 'Save as'
OnClick = ProjSaveAsItemClick
end
object ProjCloseItem: TMenuItem
Caption = 'Close'
OnClick = ProjCloseItemClick
end
object MenuItem12: TMenuItem
Caption = '-'
end
object ProjQuitItem: TMenuItem
Caption = 'Quit Program'
OnClick = ProjQuitItemClick
end
end
object CompileItem: TMenuItem
Caption = 'Compile'
object CompileProjItem: TMenuItem
Caption = 'Compile Project'
end
object CompileOpenBttn: TMenuItem
Caption = 'Compile and Open chm'
end
end
object MenuItem3: TMenuItem
Caption = 'Help'
object HelpHelpItem: TMenuItem
Caption = 'Help'
end
object MenuItem5: TMenuItem
Caption = '-'
end
object HelpAboutItem: TMenuItem
Caption = 'About'
end
end
end
object OpenDialog2: TOpenDialog
FilterIndex = 0
Options = [ofAllowMultiSelect, ofEnableSizing, ofViewDetail]
left = 12
top = 304
end
end

View File

@ -1,107 +0,0 @@
LazarusResources.Add('TCHMForm','FORMDATA',[
'TPF0'#8'TCHMForm'#7'CHMForm'#4'Left'#3#18#3#6'Height'#3#255#1#3'Top'#3'+'#1#5
+'Width'#3'c'#2#13'ActiveControl'#7#11'FileListBox'#10'AutoScroll'#9#7'Captio'
+'n'#6'3Compiled HTML Help Project - [Made with Freepascal]'#12'ClientHeight'
+#3#232#1#11'ClientWidth'#3'c'#2#4'Menu'#7#9'MainMenu1'#7'OnClose'#7#9'FormCl'
+'ose'#8'OnCreate'#7#10'FormCreate'#13'ShowInTaskBar'#7#8'stAlways'#10'LCLVer'
+'sion'#6#6'0.9.29'#7'Visible'#9#0#10'TStatusBar'#10'StatusBar1'#4'Left'#2#0#6
+'Height'#2#19#3'Top'#3#213#1#5'Width'#3'c'#2#6'Panels'#14#0#0#0#9'TGroupBox'
+#9'GroupBox1'#4'Left'#2#0#6'Height'#3#213#1#3'Top'#2#0#5'Width'#3#12#1#5'Ali'
+'gn'#7#6'alLeft'#7'Caption'#6#5'Files'#12'ClientHeight'#3#196#1#11'ClientWid'
+'th'#3#8#1#8'TabOrder'#2#0#0#8'TListBox'#11'FileListBox'#4'Left'#2#0#6'Heigh'
+'t'#3'>'#1#3'Top'#2#0#5'Width'#3#8#1#5'Align'#7#8'alClient'#10'ItemHeight'#2
+#0#10'OnDrawItem'#7#19'FileListBoxDrawItem'#6'Sorted'#9#5'Style'#7#16'lbOwne'
+'rDrawFixed'#8'TabOrder'#2#0#8'TopIndex'#2#255#0#0#6'TPanel'#6'Panel2'#4'Lef'
+'t'#2#0#6'Height'#3#134#0#3'Top'#3'>'#1#5'Width'#3#8#1#5'Align'#7#8'alBottom'
+#12'ClientHeight'#3#134#0#11'ClientWidth'#3#8#1#8'TabOrder'#2#1#0#6'TLabel'#6
+'Label4'#4'Left'#2#16#6'Height'#2'0'#3'Top'#2'U'#5'Width'#3#232#0#5'Align'#7
+#8'alBottom'#8'AutoSize'#8#18'BorderSpacing.Left'#2#15#19'BorderSpacing.Righ'
+'t'#2#15#7'Caption'#6'BAll files must be in the project file directory or a '
+'subdirectory.'#11'ParentColor'#8#8'WordWrap'#9#0#0#7'TButton'#11'AddFilesBt'
+'n'#4'Left'#2#11#6'Height'#2#25#3'Top'#2#3#5'Width'#2'Q'#25'BorderSpacing.In'
+'nerBorder'#2#4#7'Caption'#6#9'Add Files'#7'OnClick'#7#16'AddFilesBtnClick'#8
+'TabOrder'#2#0#0#0#7'TButton'#14'RemoveFilesBtn'#4'Left'#2'^'#6'Height'#2#25
+#3'Top'#2#3#5'Width'#3#156#0#25'BorderSpacing.InnerBorder'#2#4#7'Caption'#6
+#15'Remove Selected'#7'OnClick'#7#19'RemoveFilesBtnClick'#8'TabOrder'#2#1#0#0
+#7'TButton'#15'AutoAddLinksBtn'#4'Left'#2#11#6'Height'#2#25#3'Top'#2';'#5'Wi'
+'dth'#3#239#0#25'BorderSpacing.InnerBorder'#2#4#7'Caption'#6#19'Auto add HRE'
+'F files'#7'Enabled'#8#7'OnClick'#7#20'AutoAddLinksBtnClick'#8'TabOrder'#2#2
+#0#0#7'TButton'#9'AddAllBtn'#4'Left'#2#11#6'Height'#2#25#3'Top'#2' '#5'Width'
+#3#239#0#25'BorderSpacing.InnerBorder'#2#4#7'Caption'#6'"Add all files in Pr'
+'oject Directory'#7'OnClick'#7#14'AddAllBtnClick'#8'TabOrder'#2#3#0#0#0#0#6
+'TPanel'#6'Panel1'#4'Left'#3#12#1#6'Height'#3#213#1#3'Top'#2#0#5'Width'#3'W'
+#1#5'Align'#7#8'alClient'#12'ClientHeight'#3#213#1#11'ClientWidth'#3'W'#1#8
+'TabOrder'#2#1#0#6'TLabel'#6'Label1'#4'Left'#2#11#6'Height'#2#16#3'Top'#2#11
+#5'Width'#2'n'#7'Caption'#6#17'Table of Contents'#11'ParentColor'#8#0#0#6'TL'
+'abel'#6'Label2'#4'Left'#2#11#6'Height'#2#16#3'Top'#2';'#5'Width'#2'"'#7'Cap'
+'tion'#6#5'Index'#11'ParentColor'#8#0#0#6'TLabel'#6'Label3'#4'Left'#2#11#6'H'
+'eight'#2#16#3'Top'#3#168#0#5'Width'#3#136#0#7'Caption'#6#21'Compile time op'
+'tions:'#11'ParentColor'#8#0#0#6'TLabel'#6'Label5'#4'Left'#2#11#6'Height'#2
+#16#3'Top'#2'l'#5'Width'#2'Q'#7'Caption'#6#12'Default Page'#11'ParentColor'#8
+#0#0#6'TLabel'#6'Label6'#4'Left'#2#12#6'Height'#2#16#3'Top'#3'd'#1#5'Width'#2
+'U'#7'Caption'#6#12'CHM filename'#11'ParentColor'#8#0#0#13'TFileNameEdit'#7
+'TOCEdit'#4'Left'#2#10#6'Height'#2#23#3'Top'#2#31#5'Width'#3#203#0#16'OnAcce'
+'ptFileName'#7#21'TOCEditAcceptFileName'#13'DialogOptions'#11#0#6'Filter'#6
+'0Table of Contents Files(*.hhc)|*.hhc|All files|*'#11'FilterIndex'#2#0#15'H'
+'ideDirectories'#8#11'ButtonWidth'#2#23#9'NumGlyphs'#2#1#10'AutoSelect'#8#8
+'AutoSize'#8#9'MaxLength'#2#0#8'TabOrder'#2#0#0#0#13'TFileNameEdit'#9'IndexE'
+'dit'#4'Left'#2#10#6'Height'#2#23#3'Top'#2'O'#5'Width'#3#203#0#16'OnAcceptFi'
+'leName'#7#23'IndexEditAcceptFileName'#13'DialogOptions'#11#0#6'Filter'#6'$I'
+'ndex Files(*.hhk)|*.hhk|All Files|*'#11'FilterIndex'#2#0#15'HideDirectories'
+#8#11'ButtonWidth'#2#23#9'NumGlyphs'#2#1#10'AutoSelect'#8#8'AutoSize'#8#9'Ma'
+'xLength'#2#0#8'TabOrder'#2#1#0#0#7'TButton'#10'TOCEditBtn'#4'Left'#3#247#0#6
+'Height'#2#23#3'Top'#2#31#5'Width'#2'3'#25'BorderSpacing.InnerBorder'#2#4#7
+'Caption'#6#4'Edit'#7'OnClick'#7#15'TOCEditBtnClick'#8'TabOrder'#2#2#0#0#7'T'
+'Button'#12'IndexEditBtn'#4'Left'#3#247#0#6'Height'#2#23#3'Top'#2'P'#5'Width'
+#2'3'#25'BorderSpacing.InnerBorder'#2#4#7'Caption'#6#4'Edit'#7'OnClick'#7#17
+'IndexEditBtnClick'#8'TabOrder'#2#3#0#0#9'TCheckBox'#16'FollowLinksCheck'#4
+'Left'#2#19#6'Height'#2'"'#3'Top'#3#201#0#5'Width'#3#202#0#7'Caption'#6'6Par'
+'se *.htm* files to include '#10'linked pages and images'#7'Enabled'#8#8'Tab'
+'Order'#2#4#0#0#9'TCheckBox'#24'CreateSearchableCHMCheck'#4'Left'#2#20#6'Hei'
+'ght'#2#22#4'Hint'#6'FOnly indexes files added to the project'#10'not files '
+'automatically added.'#3'Top'#3#240#0#5'Width'#3#182#0#7'Caption'#6#23'Creat'
+'e a searchable chm'#14'ParentShowHint'#8#8'ShowHint'#9#8'TabOrder'#2#5#0#0#9
+'TComboBox'#16'DefaultPageCombo'#4'Left'#2#11#6'Height'#2#29#3'Top'#3#128#0#5
+'Width'#3#31#1#10'AutoSelect'#8#10'ItemHeight'#2#0#5'Style'#7#14'csDropDownL'
,'ist'#8'TabOrder'#2#6#0#0#7'TButton'#10'CompileBtn'#19'AnchorSideLeft.Side'#7
+#9'asrBottom'#23'AnchorSideRight.Control'#7#14'CompileViewBtn'#4'Left'#2'a'#6
+'Height'#2'#'#3'Top'#3#164#1#5'Width'#2'E'#7'Anchors'#11#7'akRight'#8'akBott'
+'om'#0#8'AutoSize'#9#19'BorderSpacing.Right'#2#9#25'BorderSpacing.InnerBorde'
+'r'#2#4#7'Caption'#6#7'Compile'#7'OnClick'#7#15'CompileBtnClick'#8'TabOrder'
+#2#7#0#0#7'TButton'#14'CompileViewBtn'#22'AnchorSideLeft.Control'#7#10'Compi'
+'leBtn'#19'AnchorSideLeft.Side'#7#9'asrBottom'#4'Left'#3#175#0#6'Height'#2'#'
+#3'Top'#3#164#1#5'Width'#3#129#0#7'Anchors'#11#7'akRight'#8'akBottom'#0#8'Au'
+'toSize'#9#19'BorderSpacing.Right'#2#13#25'BorderSpacing.InnerBorder'#2#4#7
+'Caption'#6#16'Compile and View'#7'OnClick'#7#19'CompileViewBtnClick'#8'TabO'
+'rder'#2#8#0#0#13'TFileNameEdit'#15'ChmFileNameEdit'#4'Left'#2#11#6'Height'#2
+#23#3'Top'#3'|'#1#5'Width'#3#14#1#16'OnAcceptFileName'#7#29'ChmFileNameEditA'
+'cceptFileName'#10'DialogKind'#7#6'dkSave'#11'DialogTitle'#6#14'Save CHM as.'
+'..'#13'DialogOptions'#11#0#6'Filter'#6' Compressed HTML Help Files|*.chm'#11
+'FilterIndex'#2#0#15'HideDirectories'#8#11'ButtonWidth'#2#23#9'NumGlyphs'#2#1
+#10'AutoSelect'#8#8'AutoSize'#8#9'MaxLength'#2#0#8'TabOrder'#2#9#0#0#9'TChec'
+'kBox'#25'CreateBinaryIndexCkeckBox'#4'Left'#2#21#6'Height'#2#22#3'Top'#3#16
+#1#5'Width'#3#145#0#7'Caption'#6#19'Create Binary Index'#8'TabOrder'#2#10#0#0
+#0#11'TOpenDialog'#11'OpenDialog1'#6'Filter'#6#30'Help File Project(*.hfp)|*'
+'.hfp'#11'FilterIndex'#2#0#7'Options'#11#15'ofFileMustExist'#14'ofEnableSizi'
+'ng'#12'ofViewDetail'#0#4'left'#2#8#3'top'#2#16#0#0#11'TSaveDialog'#11'SaveD'
+'ialog1'#6'Filter'#6#30'Help File Project(*.hfp)|*.hfp'#11'FilterIndex'#2#0#4
+'left'#2'$'#3'top'#2#15#0#0#9'TMainMenu'#9'MainMenu1'#4'left'#2'D'#3'top'#2
+#15#0#9'TMenuItem'#9'MenuItem1'#7'Caption'#6#7'Project'#0#9'TMenuItem'#11'Pr'
+'ojNewItem'#7'Caption'#6#3'New'#7'OnClick'#7#16'ProjNewItemClick'#0#0#9'TMen'
+'uItem'#12'ProjOpenItem'#7'Caption'#6#4'Open'#7'OnClick'#7#17'ProjOpenItemCl'
+'ick'#0#0#9'TMenuItem'#9'MenuItem9'#7'Caption'#6#1'-'#0#0#9'TMenuItem'#12'Pr'
+'ojSaveItem'#7'Caption'#6#4'Save'#7'OnClick'#7#17'ProjSaveItemClick'#0#0#9'T'
+'MenuItem'#14'ProjSaveAsItem'#7'Caption'#6#7'Save as'#7'OnClick'#7#19'ProjSa'
+'veAsItemClick'#0#0#9'TMenuItem'#13'ProjCloseItem'#7'Caption'#6#5'Close'#7'O'
+'nClick'#7#18'ProjCloseItemClick'#0#0#9'TMenuItem'#10'MenuItem12'#7'Caption'
+#6#1'-'#0#0#9'TMenuItem'#12'ProjQuitItem'#7'Caption'#6#12'Quit Program'#7'On'
+'Click'#7#17'ProjQuitItemClick'#0#0#0#9'TMenuItem'#11'CompileItem'#7'Caption'
+#6#7'Compile'#0#9'TMenuItem'#15'CompileProjItem'#7'Caption'#6#15'Compile Pro'
+'ject'#0#0#9'TMenuItem'#15'CompileOpenBttn'#7'Caption'#6#20'Compile and Open'
+' chm'#0#0#0#9'TMenuItem'#9'MenuItem3'#7'Caption'#6#4'Help'#0#9'TMenuItem'#12
+'HelpHelpItem'#7'Caption'#6#4'Help'#0#0#9'TMenuItem'#9'MenuItem5'#7'Caption'
+#6#1'-'#0#0#9'TMenuItem'#13'HelpAboutItem'#7'Caption'#6#5'About'#0#0#0#0#11
+'TOpenDialog'#11'OpenDialog2'#11'FilterIndex'#2#0#7'Options'#11#18'ofAllowMu'
+'ltiSelect'#14'ofEnableSizing'#12'ofViewDetail'#0#4'left'#2#12#3'top'#3'0'#1
+#0#0#0
]);

View File

@ -1,478 +0,0 @@
unit unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls,
Buttons, chmwriter, ComCtrls, chmsitemap, SynEdit, Menus, ExtCtrls, CheckLst,
EditBtn, chmfilewriter;
type
{ TCHMForm }
TCHMForm = class(TForm)
AddFilesBtn: TButton;
AutoAddLinksBtn: TButton;
AddAllBtn: TButton;
CreateBinaryIndexCkeckBox: TCheckBox;
CompileViewBtn: TButton;
CompileBtn: TButton;
DefaultPageCombo: TComboBox;
ChmFileNameEdit: TFileNameEdit;
FollowLinksCheck: TCheckBox;
CreateSearchableCHMCheck: TCheckBox;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
OpenDialog2: TOpenDialog;
RemoveFilesBtn: TButton;
TOCEditBtn: TButton;
IndexEditBtn: TButton;
IndexEdit: TFileNameEdit;
GroupBox1: TGroupBox;
FileListBox: TListBox;
Label1: TLabel;
Label2: TLabel;
MainMenu1: TMainMenu;
MenuItem1: TMenuItem;
ProjSaveItem: TMenuItem;
ProjSaveAsItem: TMenuItem;
MenuItem12: TMenuItem;
ProjQuitItem: TMenuItem;
CompileItem: TMenuItem;
CompileProjItem: TMenuItem;
CompileOpenBttn: TMenuItem;
ProjCloseItem: TMenuItem;
MenuItem3: TMenuItem;
HelpHelpItem: TMenuItem;
MenuItem5: TMenuItem;
HelpAboutItem: TMenuItem;
ProjNewItem: TMenuItem;
ProjOpenItem: TMenuItem;
MenuItem9: TMenuItem;
OpenDialog1: TOpenDialog;
Panel1: TPanel;
Panel2: TPanel;
SaveDialog1: TSaveDialog;
StatusBar1: TStatusBar;
TOCEdit: TFileNameEdit;
procedure AddAllBtnClick(Sender: TObject);
procedure AddFilesBtnClick(Sender: TObject);
procedure AutoAddLinksBtnClick(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure ChmFileNameEditAcceptFileName(Sender: TObject; var Value: String);
procedure CompileBtnClick(Sender: TObject);
procedure CompileViewBtnClick(Sender: TObject);
procedure FileListBoxDrawItem(Control: TWinControl; Index: Integer;
ARect: TRect; State: TOwnerDrawState);
procedure FormClose(Sender: TObject; var CloseAction: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure IndexEditAcceptFileName(Sender: TObject; var Value: String);
procedure IndexEditBtnClick(Sender: TObject);
procedure ProjCloseItemClick(Sender: TObject);
procedure ProjNewItemClick(Sender: TObject);
procedure ProjOpenItemClick(Sender: TObject);
procedure ProjQuitItemClick(Sender: TObject);
procedure ProjSaveAsItemClick(Sender: TObject);
procedure ProjSaveItemClick(Sender: TObject);
procedure RemoveFilesBtnClick(Sender: TObject);
procedure TOCEditAcceptFileName(Sender: TObject; var Value: String);
procedure TOCEditBtnClick(Sender: TObject);
private
FModified: Boolean;
procedure AddItems(AParentItem: TTreeNode; ChmItems: TChmSiteMapItems);
function GetModified: Boolean;
procedure Save(aAs: Boolean);
procedure CloseProject;
procedure AddFilesToProject(Strings: TStrings);
public
Project: TChmProject;
procedure OpenProject(AFileName: String);
property Modified: Boolean read GetModified write FModified;
end;
var
CHMForm: TCHMForm;
implementation
uses CHMSiteMapEditor, Process;
{ TCHMForm }
procedure TCHMForm.AddItems(AParentItem: TTreeNode; ChmItems: TChmSiteMapItems);
var
Item: TTreeNode;
I: Integer;
begin
{ for I := 0 to ChmItems.Count-1 do begin
Item := TreeView1.Items.AddChild(AParentItem, ChmItems.Item[I].Text);
AddItems(Item, ChmItems.Item[I].Children);
end;
} end;
procedure TCHMForm.Button1Click(Sender: TObject);
var
SiteMap: TChmSiteMap;
Stream: TMemoryStream;
begin
{SiteMap := TChmSiteMap.Create(stTOC);
OpenDialog1.InitialDir := GetCurrentDir;
if OpenDialog1.Execute = False then Exit;
SiteMap.LoadFromFile(OpenDialog1.FileName);
AddItems(nil, sitemap.Items);
Stream := TMemoryStream.Create;
Sitemap.SaveToStream(Stream);
Stream.Position := 0;
SynEdit1.Lines.LoadFromStream(Stream);
Stream.Free;
}
end;
procedure TCHMForm.AddFilesBtnClick(Sender: TObject);
begin
if OpenDialog2.Execute = False then exit;
Modified := True;
AddFilesToProject(OpenDialog2.Files);
end;
procedure TCHMForm.AddAllBtnClick(Sender: TObject);
var
Files: TStrings;
procedure AddDir(ADir: String);
var
SearchRec: TSearchRec;
FileName: String;
FPos: Integer;
begin
// WriteLn('Adding Dir: ', ADir);
if FindFirst(ADir+'*', faAnyFile or faDirectory, SearchRec) = 0 then begin
repeat
if (SearchRec.Attr and faDirectory) <> 0 then begin
FPos := Pos('.', SearchRec.Name);
if (FPos = 0) or (FPos > 2) then begin
AddDir(IncludeTrailingPathDelimiter(ADir+SearchRec.Name));
end;
end
else begin
FileName := ADir+SearchRec.Name;
FileName := ExtractRelativepath(Project.ProjectDir, FileName);
if Files.IndexOf(FileName) = -1 then
Files.Add(FileName);
end;
until FindNext(SearchRec) <> 0;
FindClose(SearchRec);
end;
end;
begin
if MessageDlg('This will add all files in the project'#10+
'Directory recursively. Do you want to continue?', mtConfirmation, [mbYes, mbNo],0) = mrNo then exit;
Modified := True;
Files := TStringList.Create;
Files.AddStrings(FileListBox.Items);
AddDir(Project.ProjectDir);
FileListBox.Items.Assign(Files);
Files.Free;
end;
procedure TCHMForm.AutoAddLinksBtnClick(Sender: TObject);
begin
Modified := True;
end;
procedure TCHMForm.Button2Click(Sender: TObject);
var
OutStream: TFileStream;
CHM: TChmWriter;
I: Integer;
begin
{
if OpenDialog1.Execute = False then Exit;
OutStream := TFileStream.Create('/home/andrew/test.chm', fmCreate or fmOpenWrite);
Chm := TChmWriter.Create(OutStream, False);
Chm.FilesToCompress.AddStrings(OpenDialog1.Files);
Chm.GetFileData := @GetData;
Chm.Title := 'test';
Chm.DefaultPage := 'index.html';
Chm.Execute;
OutStream.Free;
Chm.Free;
}
end;
procedure TCHMForm.ChmFileNameEditAcceptFileName(Sender: TObject; var Value: String);
begin
if ExtractFileExt(Value) = '' then Value := Value+'.chm';
end;
procedure TCHMForm.CompileBtnClick(Sender: TObject);
var
OutFile: TFileStream;
begin
if ChmFileNameEdit.FileName = '' then begin
MessageDlg('You must set a filename for the output CHM file!', mtError, [mbCancel], 0);
Exit;
end;
Save(False);
OutFile := TFileStream.Create(Project.OutputFileName, fmCreate or fmOpenWrite);
Project.WriteChm(OutFile);
OutFile.Free;
end;
procedure TCHMForm.CompileViewBtnClick(Sender: TObject);
var
Proc: TProcess;
begin
if ChmFileNameEdit.FileName = '' then begin
MessageDlg('You must set a filename for the output CHM file!', mtError, [mbCancel], 0);
Exit;
end;
CompileBtnClick(Sender);
// open
Proc := TProcess.Create(nil);
Proc.CommandLine := '/home/andrew/programming/lazarus/components/chmhelp/lhelp/lhelp '+ ChmFileNameEdit.FileName;
Proc.Execute;
Proc.Free;
// ...
end;
procedure TCHMForm.FileListBoxDrawItem(Control: TWinControl; Index: Integer;
ARect: TRect; State: TOwnerDrawState);
begin
if Pos('..', FileListBox.Items.Strings[Index]) > 0 then begin
// These items won't be added to the chm because they are not within the project dir
Dec(ARect.Right);
Dec(ARect.Bottom);
FileListBox.Canvas.Pen.Color := clRed;
FileListBox.Canvas.Frame(ARect);
end;
end;
procedure TCHMForm.FormClose(Sender: TObject; var CloseAction: TCloseAction);
var
MResult: Integer;
begin
if Modified then begin
MResult := MessageDlg('Project is modified would you like to save the changes?', mtConfirmation,
[mbYes, mbNo, mbCancel], 0);
case MResult of
mrYes: Save(False);
mrNo: CloseAction := caFree;
mrCancel: CloseAction := caNone;
end;
end;
end;
procedure TCHMForm.FormCreate(Sender: TObject);
begin
CloseProject;
end;
procedure TCHMForm.IndexEditAcceptFileName(Sender: TObject; var Value: String);
begin
Modified := True;
Value := ExtractRelativepath(Project.ProjectDir, Value);
Project.IndexFileName := Value;
end;
procedure TCHMForm.IndexEditBtnClick(Sender: TObject);
var
Stream: TStream;
FileName: String;
begin
FileName := IndexEdit.FileName;
if FileName = '' then begin
FileName := Project.ProjectDir+'_index.hhk'
end;
if FileExists(FileName) then begin
Stream := TFileStream.Create(FileName, fmOpenReadWrite);
end
else begin
Stream := TFileStream.Create(FileName, fmCreate or fmOpenReadWrite);
end;
if SitemapEditForm.Execute(Stream, stIndex, FileListBox.Items) then IndexEdit.FileName := FileName;
end;
procedure TCHMForm.ProjCloseItemClick(Sender: TObject);
begin
CloseProject;
end;
procedure TCHMForm.ProjNewItemClick(Sender: TObject);
begin
If SaveDialog1.Execute then begin
if FileExists(SaveDialog1.FileName)
and (MessageDlg('File Already Exists! Ovewrite?', mtWarning, [mbYes, mbNo],0) = mrNo) then Exit;
OpenProject(SaveDialog1.FileName);
Project.SaveToFile(SaveDialog1.FileName);
end;
end;
procedure TCHMForm.ProjOpenItemClick(Sender: TObject);
begin
if OpenDialog1.Execute then begin
CloseProject;
OpenProject(OpenDialog1.FileName);
end;
end;
procedure TCHMForm.ProjQuitItemClick(Sender: TObject);
begin
Close;
end;
procedure TCHMForm.ProjSaveAsItemClick(Sender: TObject);
begin
Save(True);
end;
procedure TCHMForm.ProjSaveItemClick(Sender: TObject);
begin
Save(False);
end;
procedure TCHMForm.RemoveFilesBtnClick(Sender: TObject);
var
I: Integer;
begin
Modified := True;
for I := FileListBox.Items.Count-1 downto 0 do
if FileListBox.Selected[I] then FileListBox.Items.Delete(I);
end;
procedure TCHMForm.TOCEditAcceptFileName(Sender: TObject; var Value: String);
begin
Modified := True;
end;
procedure TCHMForm.TOCEditBtnClick(Sender: TObject);
var
Stream: TStream;
FileName: String;
begin
FileName := TOCEdit.FileName;
if FileName = '' then begin
FileName := Project.ProjectDir+'_table_of_contents.hhc'
end;
if FileExists(FileName) then begin
Stream := TFileStream.Create(FileName, fmOpenReadWrite);
end
else begin
Stream := TFileStream.Create(FileName, fmCreate or fmOpenReadWrite);
end;
if SitemapEditForm.Execute(Stream, stTOC, FileListBox.Items) then TOCEdit.FileName := FileName;
end;
function TCHMForm.GetModified: Boolean;
begin
Result := (Project <> nil) and FModified;
end;
procedure TCHMForm.Save(aAs: Boolean);
var
SaveName: String;
begin
if aAs or (Project.FileName = '') then
if SaveDialog1.Execute then
Project.FileName := SaveDialog1.FileName;
Project.Files.Assign(FileListBox.Items);
Project.TableOfContentsFileName := TOCEdit.FileName;
Project.IndexFileName := IndexEdit.FileName;
Project.DefaultPage := DefaultPageCombo.Text;
Project.AutoFollowLinks := FollowLinksCheck.Checked;
Project.MakeSearchable := CreateSearchableCHMCheck.Checked;
Project.OutputFileName := ChmFileNameEdit.FileName;
Project.MakeBinaryIndex := CreateBinaryIndexCkeckBox.Checked;
Project.SaveToFile(Project.FileName);
Modified := False;
end;
procedure TCHMForm.CloseProject;
begin
FileListBox.Clear;
DefaultPageCombo.Clear;
TOCEdit.Clear;
IndexEdit.Clear;
GroupBox1.Enabled := False;
Panel1.Enabled := False;
CompileItem.Enabled := False;
ProjSaveAsItem.Enabled := False;
ProjSaveItem.Enabled := False;
ProjCloseItem.Enabled := False;
FollowLinksCheck.Checked := False;
CreateSearchableCHMCheck.Checked := False;
FreeAndNil(Project);
end;
procedure TCHMForm.OpenProject(AFileName: String);
begin
if not Assigned(Project) then Project := TChmProject.Create;
Project.LoadFromFile(AFileName);
GroupBox1.Enabled := True;
Panel1.Enabled := True;
CompileItem.Enabled := True;
ProjSaveAsItem.Enabled := True;
ProjSaveItem.Enabled := True;
ProjCloseItem.Enabled := True;
FileListBox.Items.AddStrings(Project.Files);
TOCEdit.FileName := Project.TableOfContentsFileName;
IndexEdit.FileName := Project.IndexFileName;
DefaultPageCombo.Items.Assign(FileListBox.Items);
DefaultPageCombo.Text := Project.DefaultPage;
FollowLinksCheck.Checked := Project.AutoFollowLinks;
CreateSearchableCHMCheck.Checked := Project.MakeSearchable;
ChmFileNameEdit.FileName := Project.OutputFileName;
CreateBinaryIndexCkeckBox.Checked := Project.MakeBinaryIndex;
end;
procedure TCHMForm.AddFilesToProject(Strings: TStrings);
var
ADir, BDir: String;
I: Integer;
RelativePath: String;
FileName: String;
NewFileName: String;
begin
Modified := True;
BDir := ExtractFilePath(Project.FileName);
for I := 0 to Strings.Count-1 do begin
FileName := Strings.Strings[I];
RelativePath := ExtractRelativepath(BDir, FileName);
if Pos('..', RelativePath) > 0 then
FileListBox.Items.AddObject(RelativePath, TObject(1))
else
FileListBox.Items.AddObject(RelativePath, TObject(0));
end;
end;
initialization
{$I unit1.lrs}
end.