ide: fpdoceditwindow: use TSynEdit instead of TMemo

git-svn-id: trunk@54887 -
This commit is contained in:
ondrej 2017-05-12 21:10:09 +00:00
parent 56f3c227b7
commit eeb433a615
2 changed files with 415 additions and 197 deletions

View File

@ -1,40 +1,40 @@
object FPDocEditor: TFPDocEditor
Left = 327
Height = 156
Top = 397
Width = 753
Left = 1026
Height = 326
Top = 746
Width = 840
ActiveControl = PageControl
Caption = 'FPDoc editor'
ClientHeight = 156
ClientWidth = 753
ClientHeight = 326
ClientWidth = 840
KeyPreview = True
OnCreate = FormCreate
OnDestroy = FormDestroy
OnKeyDown = FormKeyDown
OnShow = FormShow
LCLVersion = '1.1'
LCLVersion = '1.9.0.0'
object PageControl: TPageControl
Left = 33
Height = 156
Left = 32
Height = 326
Top = 0
Width = 720
ActivePage = SeeAlsoTabSheet
Width = 808
ActivePage = DescrTabSheet
Align = alClient
TabIndex = 4
TabIndex = 2
TabOrder = 0
TabPosition = tpBottom
OnChange = PageControlChange
object ShortTabSheet: TTabSheet
Caption = 'ShortTabSheet'
ClientHeight = 117
ClientWidth = 714
ClientHeight = 128
ClientWidth = 713
object LinkLabel: TLabel
AnchorSideTop.Control = LinkEdit
AnchorSideTop.Side = asrCenter
Left = 6
Height = 16
Top = 27
Width = 60
Height = 15
Top = 29
Width = 50
BorderSpacing.Top = 6
Caption = 'LinkLabel'
ParentColor = False
@ -44,9 +44,9 @@ object FPDocEditor: TFPDocEditor
AnchorSideTop.Control = ShortEdit
AnchorSideTop.Side = asrCenter
Left = 6
Height = 16
Top = 3
Width = 67
Height = 15
Top = 4
Width = 56
BorderSpacing.Left = 6
Caption = 'ShortLabel'
ParentColor = False
@ -56,16 +56,15 @@ object FPDocEditor: TFPDocEditor
AnchorSideLeft.Side = asrBottom
AnchorSideRight.Control = ShortTabSheet
AnchorSideRight.Side = asrBottom
Left = 79
Height = 22
Left = 68
Height = 23
Top = 0
Width = 633
Width = 643
Anchors = [akTop, akLeft, akRight]
AutoSelect = False
BorderSpacing.Left = 6
BorderSpacing.Right = 2
OnChange = ShortEditChange
OnEditingDone = ShortEditEditingDone
TabOrder = 0
Text = 'ShortEdit'
end
@ -73,9 +72,9 @@ object FPDocEditor: TFPDocEditor
AnchorSideTop.Control = LinkEdit
AnchorSideTop.Side = asrBottom
Left = 6
Height = 20
Top = 52
Width = 107
Height = 25
Top = 54
Width = 96
AutoSize = True
BorderSpacing.Around = 6
Caption = 'CreateButton'
@ -89,17 +88,16 @@ object FPDocEditor: TFPDocEditor
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = ShortTabSheet
AnchorSideRight.Side = asrBottom
Left = 72
Height = 22
Top = 24
Width = 640
Left = 62
Height = 23
Top = 25
Width = 649
Anchors = [akTop, akLeft, akRight]
AutoSelect = False
BorderSpacing.Left = 6
BorderSpacing.Top = 2
BorderSpacing.Right = 2
OnChange = LinkEditChange
OnEditingDone = LinkEditEditingDone
TabOrder = 2
Text = 'LinkEdit'
end
@ -107,10 +105,10 @@ object FPDocEditor: TFPDocEditor
AnchorSideTop.Control = CreateButton
AnchorSideRight.Control = ShortTabSheet
AnchorSideRight.Side = asrBottom
Left = 588
Height = 20
Top = 52
Width = 126
Left = 598
Height = 25
Top = 54
Width = 115
Anchors = [akTop, akRight]
AutoSize = True
Caption = 'OpenXMLButton'
@ -122,13 +120,13 @@ object FPDocEditor: TFPDocEditor
end
object InheritedTabSheet: TTabSheet
Caption = 'InheritedTabSheet'
ClientHeight = 117
ClientWidth = 714
ClientHeight = 298
ClientWidth = 800
object InheritedShortLabel: TLabel
Left = 0
Height = 16
Height = 15
Top = 2
Width = 714
Width = 800
Align = alTop
BorderSpacing.Top = 2
Caption = 'InheritedShortLabel'
@ -141,9 +139,9 @@ object FPDocEditor: TFPDocEditor
AnchorSideRight.Control = InheritedTabSheet
AnchorSideRight.Side = asrBottom
Left = 0
Height = 22
Top = 20
Width = 714
Height = 23
Top = 19
Width = 800
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 2
ReadOnly = True
@ -154,9 +152,9 @@ object FPDocEditor: TFPDocEditor
AnchorSideTop.Control = InheritedShortEdit
AnchorSideTop.Side = asrBottom
Left = 0
Height = 20
Height = 25
Top = 48
Width = 176
Width = 153
AutoSize = True
BorderSpacing.Around = 6
Caption = 'MoveToInheritedButton'
@ -168,10 +166,10 @@ object FPDocEditor: TFPDocEditor
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = MoveToInheritedButton
AnchorSideTop.Side = asrCenter
Left = 186
Height = 20
Left = 163
Height = 25
Top = 48
Width = 191
Width = 165
AutoSize = True
BorderSpacing.Left = 10
Caption = 'CopyFromInheritedButton'
@ -182,10 +180,10 @@ object FPDocEditor: TFPDocEditor
AnchorSideLeft.Control = CopyFromInheritedButton
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = CopyFromInheritedButton
Left = 387
Height = 20
Left = 338
Height = 25
Top = 48
Width = 194
Width = 167
AutoSize = True
BorderSpacing.Left = 10
Caption = 'AddLinkToInheritedButton'
@ -195,50 +193,116 @@ object FPDocEditor: TFPDocEditor
end
object DescrTabSheet: TTabSheet
Caption = 'DescrTabSheet'
ClientHeight = 117
ClientWidth = 714
object DescrMemo: TMemo
ClientHeight = 298
ClientWidth = 800
inline DescrMemo: TSynEdit
Left = 0
Height = 89
Top = 24
Width = 712
Height = 269
Top = 25
Width = 798
Align = alClient
BorderSpacing.Right = 2
BorderSpacing.Bottom = 4
Font.Height = -11
Font.Name = 'Courier New'
ParentColor = False
ParentFont = False
TabOrder = 0
Gutter.Visible = False
Gutter.Width = 55
Gutter.MouseActions = <>
RightGutter.Width = 0
RightGutter.MouseActions = <>
Highlighter = SynXMLSyn1
Keystrokes = <>
MouseActions = <>
MouseTextActions = <>
MouseSelActions = <>
Lines.Strings = (
'DescrMemo'
)
OnChange = DescrMemoChange
OnEditingDone = DescrMemoEditingDone
VisibleSpecialChars = [vscSpace, vscTabAtLast]
ScrollBars = ssAutoBoth
TabOrder = 0
SelectedColor.BackPriority = 50
SelectedColor.ForePriority = 50
SelectedColor.FramePriority = 50
SelectedColor.BoldPriority = 50
SelectedColor.ItalicPriority = 50
SelectedColor.UnderlinePriority = 50
SelectedColor.StrikeOutPriority = 50
BracketHighlightStyle = sbhsBoth
BracketMatchColor.Background = clNone
BracketMatchColor.Foreground = clNone
BracketMatchColor.Style = [fsBold]
FoldedCodeColor.Background = clNone
FoldedCodeColor.Foreground = clGray
FoldedCodeColor.FrameColor = clGray
MouseLinkColor.Background = clNone
MouseLinkColor.Foreground = clBlue
LineHighlightColor.Background = clNone
LineHighlightColor.Foreground = clNone
OnChange = DescrMemoChange
inline SynLeftGutterPartList1: TSynGutterPartList
object SynGutterMarks1: TSynGutterMarks
Width = 24
MouseActions = <>
end
object SynGutterLineNumber1: TSynGutterLineNumber
Width = 15
MouseActions = <>
MarkupInfo.Background = clBtnFace
MarkupInfo.Foreground = clNone
DigitCount = 2
ShowOnlyLineNumbersMultiplesOf = 1
ZeroStart = False
LeadingZeros = False
end
object SynGutterChanges1: TSynGutterChanges
Width = 4
MouseActions = <>
ModifiedColor = 59900
SavedColor = clGreen
end
object SynGutterSeparator1: TSynGutterSeparator
Width = 2
MouseActions = <>
MarkupInfo.Background = clWhite
MarkupInfo.Foreground = clGray
end
object SynGutterCodeFolding1: TSynGutterCodeFolding
MouseActions = <>
MarkupInfo.Background = clNone
MarkupInfo.Foreground = clGray
MouseActionsExpanded = <>
MouseActionsCollapsed = <>
end
end
end
object ShortPanel: TPanel
Left = 0
Height = 24
Height = 25
Top = 0
Width = 714
Width = 800
Align = alTop
Alignment = taLeftJustify
AutoSize = True
Caption = 'Short'
ClientHeight = 24
ClientWidth = 714
ClientHeight = 25
ClientWidth = 800
TabOrder = 1
object DescrShortEdit: TEdit
AnchorSideLeft.Control = ShortPanel
AnchorSideRight.Side = asrBottom
Left = 61
Height = 22
Height = 23
Top = 1
Width = 650
Width = 736
Align = alRight
Anchors = [akTop, akLeft, akRight, akBottom]
AutoSelect = False
BorderSpacing.Left = 60
BorderSpacing.Right = 2
OnChange = ShortEditChange
OnEditingDone = ShortEditEditingDone
ReadOnly = True
TabOrder = 0
Text = 'DescrShortEdit'
@ -247,58 +311,191 @@ object FPDocEditor: TFPDocEditor
end
object ErrorsTabSheet: TTabSheet
Caption = 'ErrorsTabSheet'
ClientHeight = 117
ClientWidth = 714
object ErrorsMemo: TMemo
ClientHeight = 128
ClientWidth = 713
inline ErrorsMemo: TSynEdit
Left = 0
Height = 113
Height = 124
Top = 0
Width = 712
Width = 711
Align = alClient
BorderSpacing.Right = 2
BorderSpacing.Bottom = 4
Font.Height = -11
Font.Name = 'Courier New'
ParentColor = False
ParentFont = False
TabOrder = 0
Gutter.Visible = False
Gutter.Width = 55
Gutter.MouseActions = <>
RightGutter.Width = 0
RightGutter.MouseActions = <>
Highlighter = SynXMLSyn1
Keystrokes = <>
MouseActions = <>
MouseTextActions = <>
MouseSelActions = <>
Lines.Strings = (
'ErrorsMemo'
)
OnChange = ErrorsMemoChange
OnEditingDone = ErrorsMemoEditingDone
VisibleSpecialChars = [vscSpace, vscTabAtLast]
ScrollBars = ssAutoBoth
TabOrder = 0
SelectedColor.BackPriority = 50
SelectedColor.ForePriority = 50
SelectedColor.FramePriority = 50
SelectedColor.BoldPriority = 50
SelectedColor.ItalicPriority = 50
SelectedColor.UnderlinePriority = 50
SelectedColor.StrikeOutPriority = 50
BracketHighlightStyle = sbhsBoth
BracketMatchColor.Background = clNone
BracketMatchColor.Foreground = clNone
BracketMatchColor.Style = [fsBold]
FoldedCodeColor.Background = clNone
FoldedCodeColor.Foreground = clGray
FoldedCodeColor.FrameColor = clGray
MouseLinkColor.Background = clNone
MouseLinkColor.Foreground = clBlue
LineHighlightColor.Background = clNone
LineHighlightColor.Foreground = clNone
OnChange = ErrorsMemoChange
inline SynLeftGutterPartList1: TSynGutterPartList
object SynGutterMarks1: TSynGutterMarks
Width = 24
MouseActions = <>
end
object SynGutterLineNumber1: TSynGutterLineNumber
Width = 15
MouseActions = <>
MarkupInfo.Background = clBtnFace
MarkupInfo.Foreground = clNone
DigitCount = 2
ShowOnlyLineNumbersMultiplesOf = 1
ZeroStart = False
LeadingZeros = False
end
object SynGutterChanges1: TSynGutterChanges
Width = 4
MouseActions = <>
ModifiedColor = 59900
SavedColor = clGreen
end
object SynGutterSeparator1: TSynGutterSeparator
Width = 2
MouseActions = <>
MarkupInfo.Background = clWhite
MarkupInfo.Foreground = clGray
end
object SynGutterCodeFolding1: TSynGutterCodeFolding
MouseActions = <>
MarkupInfo.Background = clNone
MarkupInfo.Foreground = clGray
MouseActionsExpanded = <>
MouseActionsCollapsed = <>
end
end
end
end
object SeeAlsoTabSheet: TTabSheet
Caption = 'SeeAlsoTabSheet'
ClientHeight = 117
ClientWidth = 714
object SeeAlsoMemo: TMemo
ClientHeight = 128
ClientWidth = 713
inline SeeAlsoMemo: TSynEdit
Left = 0
Height = 117
Height = 128
Top = 0
Width = 714
Width = 713
Align = alClient
Font.Height = -11
Font.Name = 'Courier New'
ParentColor = False
ParentFont = False
TabOrder = 0
Gutter.Visible = False
Gutter.Width = 55
Gutter.MouseActions = <>
RightGutter.Width = 0
RightGutter.MouseActions = <>
Highlighter = SynXMLSyn1
Keystrokes = <>
MouseActions = <>
MouseTextActions = <>
MouseSelActions = <>
Lines.Strings = (
'SeeAlsoMemo'
)
OnChange = SeeAlsoMemoChange
OnEditingDone = SeeAlsoMemoEditingDone
VisibleSpecialChars = [vscSpace, vscTabAtLast]
ScrollBars = ssAutoBoth
TabOrder = 0
SelectedColor.BackPriority = 50
SelectedColor.ForePriority = 50
SelectedColor.FramePriority = 50
SelectedColor.BoldPriority = 50
SelectedColor.ItalicPriority = 50
SelectedColor.UnderlinePriority = 50
SelectedColor.StrikeOutPriority = 50
BracketHighlightStyle = sbhsBoth
BracketMatchColor.Background = clNone
BracketMatchColor.Foreground = clNone
BracketMatchColor.Style = [fsBold]
FoldedCodeColor.Background = clNone
FoldedCodeColor.Foreground = clGray
FoldedCodeColor.FrameColor = clGray
MouseLinkColor.Background = clNone
MouseLinkColor.Foreground = clBlue
LineHighlightColor.Background = clNone
LineHighlightColor.Foreground = clNone
OnChange = SeeAlsoMemoChange
inline SynLeftGutterPartList1: TSynGutterPartList
object SynGutterMarks1: TSynGutterMarks
Width = 24
MouseActions = <>
end
object SynGutterLineNumber1: TSynGutterLineNumber
Width = 15
MouseActions = <>
MarkupInfo.Background = clBtnFace
MarkupInfo.Foreground = clNone
DigitCount = 2
ShowOnlyLineNumbersMultiplesOf = 1
ZeroStart = False
LeadingZeros = False
end
object SynGutterChanges1: TSynGutterChanges
Width = 4
MouseActions = <>
ModifiedColor = 59900
SavedColor = clGreen
end
object SynGutterSeparator1: TSynGutterSeparator
Width = 2
MouseActions = <>
MarkupInfo.Background = clWhite
MarkupInfo.Foreground = clGray
end
object SynGutterCodeFolding1: TSynGutterCodeFolding
MouseActions = <>
MarkupInfo.Background = clNone
MarkupInfo.Foreground = clGray
MouseActionsExpanded = <>
MouseActionsCollapsed = <>
end
end
end
end
object ExampleTabSheet: TTabSheet
Caption = 'ExampleTabSheet'
ClientHeight = 122
ClientWidth = 687
ClientHeight = 128
ClientWidth = 713
object ExampleEdit: TEdit
Left = 0
Height = 21
Height = 23
Top = 0
Width = 686
Width = 711
Align = alTop
AutoSelect = False
BorderSpacing.Right = 2
OnChange = ExampleEditChange
OnEditingDone = ExampleEditEditingDone
TabOrder = 0
Text = 'ExampleEdit'
end
@ -307,10 +504,10 @@ object FPDocEditor: TFPDocEditor
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = ExampleTabSheet
AnchorSideRight.Side = asrBottom
Left = 549
Height = 23
Top = 27
Width = 133
Left = 563
Height = 25
Top = 29
Width = 144
Anchors = [akTop, akRight]
AutoSize = True
BorderSpacing.Around = 6
@ -321,17 +518,17 @@ object FPDocEditor: TFPDocEditor
end
object TopicSheet: TTabSheet
Caption = 'Topics'
ClientHeight = 122
ClientWidth = 687
ClientHeight = 128
ClientWidth = 713
object Panel1: TPanel
Left = 518
Height = 99
Left = 543
Height = 128
Top = 0
Width = 170
Align = alRight
BorderSpacing.Left = 5
BevelOuter = bvNone
ClientHeight = 99
ClientHeight = 128
ClientWidth = 170
TabOrder = 0
object Panel2: TPanel
@ -346,10 +543,10 @@ object FPDocEditor: TFPDocEditor
ClientWidth = 170
TabOrder = 0
object NewTopicButton: TButton
Left = 100
Left = 120
Height = 25
Top = 0
Width = 70
Width = 50
Align = alRight
AutoSize = True
Caption = 'New'
@ -360,7 +557,7 @@ object FPDocEditor: TFPDocEditor
Left = 0
Height = 25
Top = 0
Width = 95
Width = 115
Align = alClient
BorderSpacing.Right = 5
OnEnter = TopicControlEnter
@ -369,7 +566,7 @@ object FPDocEditor: TFPDocEditor
end
object TopicListBox: TListBox
Left = 0
Height = 69
Height = 98
Top = 30
Width = 170
Align = alClient
@ -377,56 +574,125 @@ object FPDocEditor: TFPDocEditor
ItemHeight = 0
OnClick = TopicListBoxClick
OnEnter = TopicControlEnter
Options = [lboDrawFocusRect]
TabOrder = 1
end
end
object Panel3: TPanel
Left = 0
Height = 99
Height = 128
Top = 0
Width = 513
Width = 538
Align = alClient
BevelOuter = bvNone
ClientHeight = 99
ClientWidth = 513
ClientHeight = 128
ClientWidth = 538
TabOrder = 1
object TopicShort: TEdit
Left = 0
Height = 22
Height = 23
Top = 0
Width = 513
Width = 538
Align = alTop
AutoSelect = False
OnChange = TopicDescrChange
OnEnter = TopicControlEnter
TabOrder = 0
end
object TopicDescr: TMemo
inline TopicDescr: TSynEdit
Left = 0
Height = 72
Top = 27
Width = 513
Height = 100
Top = 28
Width = 538
Align = alClient
BorderSpacing.Top = 5
OnChange = TopicDescrChange
OnEnter = TopicControlEnter
Font.Height = -11
Font.Name = 'Courier New'
ParentColor = False
ParentFont = False
TabOrder = 1
OnEnter = TopicControlEnter
Gutter.Visible = False
Gutter.Width = 55
Gutter.MouseActions = <>
RightGutter.Width = 0
RightGutter.MouseActions = <>
Highlighter = SynXMLSyn1
Keystrokes = <>
MouseActions = <>
MouseTextActions = <>
MouseSelActions = <>
VisibleSpecialChars = [vscSpace, vscTabAtLast]
SelectedColor.BackPriority = 50
SelectedColor.ForePriority = 50
SelectedColor.FramePriority = 50
SelectedColor.BoldPriority = 50
SelectedColor.ItalicPriority = 50
SelectedColor.UnderlinePriority = 50
SelectedColor.StrikeOutPriority = 50
BracketHighlightStyle = sbhsBoth
BracketMatchColor.Background = clNone
BracketMatchColor.Foreground = clNone
BracketMatchColor.Style = [fsBold]
FoldedCodeColor.Background = clNone
FoldedCodeColor.Foreground = clGray
FoldedCodeColor.FrameColor = clGray
MouseLinkColor.Background = clNone
MouseLinkColor.Foreground = clBlue
LineHighlightColor.Background = clNone
LineHighlightColor.Foreground = clNone
OnChange = TopicDescrChange
inline SynLeftGutterPartList1: TSynGutterPartList
object SynGutterMarks1: TSynGutterMarks
Width = 24
MouseActions = <>
end
object SynGutterLineNumber1: TSynGutterLineNumber
Width = 15
MouseActions = <>
MarkupInfo.Background = clBtnFace
MarkupInfo.Foreground = clNone
DigitCount = 2
ShowOnlyLineNumbersMultiplesOf = 1
ZeroStart = False
LeadingZeros = False
end
object SynGutterChanges1: TSynGutterChanges
Width = 4
MouseActions = <>
ModifiedColor = 59900
SavedColor = clGreen
end
object SynGutterSeparator1: TSynGutterSeparator
Width = 2
MouseActions = <>
MarkupInfo.Background = clWhite
MarkupInfo.Foreground = clGray
end
object SynGutterCodeFolding1: TSynGutterCodeFolding
MouseActions = <>
MarkupInfo.Background = clNone
MarkupInfo.Foreground = clGray
MouseActionsExpanded = <>
MouseActionsCollapsed = <>
end
end
end
end
end
end
object LeftBtnPanel: TPanel
Left = 0
Height = 156
Height = 326
Top = 0
Width = 33
Width = 32
Align = alLeft
AutoSize = True
BevelOuter = bvNone
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 3
ClientHeight = 156
ClientWidth = 33
ClientHeight = 326
ClientWidth = 32
FullRepaint = False
ParentShowHint = False
ShowHint = True
@ -455,7 +721,7 @@ object FPDocEditor: TFPDocEditor
Left = 15
Height = 4
Top = 0
Width = 18
Width = 17
Constraints.MaxHeight = 23
Constraints.MaxWidth = 20
OnClick = FormatButtonClick
@ -463,7 +729,7 @@ object FPDocEditor: TFPDocEditor
object InsertVarTagButton: TSpeedButton
Tag = 5
Left = 0
Height = 20
Height = 19
Top = 4
Width = 4
Constraints.MaxHeight = 23
@ -473,7 +739,7 @@ object FPDocEditor: TFPDocEditor
object InsertParagraphSpeedButton: TSpeedButton
Tag = 6
Left = 4
Height = 20
Height = 19
Top = 4
Width = 11
Constraints.MaxHeight = 23
@ -483,9 +749,9 @@ object FPDocEditor: TFPDocEditor
end
object InsertLinkSpeedButton: TSpeedButton
Left = 15
Height = 20
Height = 19
Top = 4
Width = 18
Width = 17
Constraints.MaxHeight = 23
Constraints.MaxWidth = 20
Caption = 'Li'
@ -497,8 +763,8 @@ object FPDocEditor: TFPDocEditor
object InsertCodeTagButton: TSpeedButton
Tag = 3
Left = 0
Height = 20
Top = 24
Height = 19
Top = 23
Width = 4
Constraints.MaxHeight = 23
Constraints.MaxWidth = 20
@ -509,8 +775,8 @@ object FPDocEditor: TFPDocEditor
object InsertRemarkButton: TSpeedButton
Tag = 4
Left = 4
Height = 20
Top = 24
Height = 19
Top = 23
Width = 11
Constraints.MaxHeight = 23
Constraints.MaxWidth = 20
@ -521,9 +787,9 @@ object FPDocEditor: TFPDocEditor
object InsertPrintShortSpeedButton: TSpeedButton
Tag = 7
Left = 15
Height = 20
Top = 24
Width = 18
Height = 19
Top = 23
Width = 17
Constraints.MaxHeight = 23
Constraints.MaxWidth = 20
Caption = 'PS'
@ -535,7 +801,7 @@ object FPDocEditor: TFPDocEditor
Tag = 8
Left = 0
Height = 4
Top = 44
Top = 42
Width = 4
Constraints.MaxHeight = 23
Constraints.MaxWidth = 20
@ -547,8 +813,8 @@ object FPDocEditor: TFPDocEditor
AnchorSideLeft.Side = asrBottom
Left = 0
Height = 29
Top = 127
Width = 33
Top = 297
Width = 32
Align = alBottom
Caption = 'Save'
OnClick = SaveButtonClick
@ -558,7 +824,14 @@ object FPDocEditor: TFPDocEditor
Title = 'Open example file'
Filter = 'pascal file|*.pas; *.pp; *.p'
FilterIndex = 0
left = 240
top = 16
Left = 240
Top = 16
end
object SynXMLSyn1: TSynXMLSyn
DefaultFilter = 'XML Document (*.xml,*.xsd,*.xsl,*.xslt,*.dtd)|*.xml;*.xsd;*.xsl;*.xslt;*.dtd'
TextAttri.Style = []
WantBracesParsed = False
Left = 16
Top = 56
end
end

View File

@ -37,7 +37,7 @@ uses
LCLProc, LResources, StdCtrls, Buttons, ComCtrls, Controls, Dialogs,
ExtCtrls, Forms, Graphics, LCLType,
// Synedit
SynEdit,
SynEdit, SynHighlighterXML,
// codetools
FileProcs, CodeCache, CodeToolManager,
CTXMLFixFragment,
@ -72,17 +72,18 @@ type
OpenXMLButton: TButton;
ShortPanel: TPanel;
DescrShortEdit: TEdit;
SynXMLSyn1: TSynXMLSyn;
TopicShort: TEdit;
TopicDescr: TMemo;
TopicDescr: TSynEdit;
Panel3: TPanel;
TopicListBox: TListBox;
NewTopicNameEdit: TEdit;
NewTopicButton: TButton;
CopyFromInheritedButton: TButton;
CreateButton: TButton;
DescrMemo: TMemo;
DescrMemo: TSynEdit;
DescrTabSheet: TTabSheet;
ErrorsMemo: TMemo;
ErrorsMemo: TSynEdit;
ErrorsTabSheet: TTabSheet;
ExampleEdit: TEdit;
ExampleTabSheet: TTabSheet;
@ -101,7 +102,7 @@ type
Panel1: TPanel;
Panel2: TPanel;
SaveButton: TSpeedButton;
SeeAlsoMemo: TMemo;
SeeAlsoMemo: TSynEdit;
MoveToInheritedButton: TButton;
OpenDialog: TOpenDialog;
PageControl: TPageControl;
@ -120,11 +121,8 @@ type
procedure CopyShortToDescrMenuItemClick(Sender: TObject);
procedure CreateButtonClick(Sender: TObject);
procedure DescrMemoChange(Sender: TObject);
procedure DescrMemoEditingDone(Sender: TObject);
procedure ErrorsMemoChange(Sender: TObject);
procedure ErrorsMemoEditingDone(Sender: TObject);
procedure ExampleEditChange(Sender: TObject);
procedure ExampleEditEditingDone(Sender: TObject);
procedure FormatButtonClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
@ -132,16 +130,13 @@ type
procedure FormShow(Sender: TObject);
procedure InsertLinkSpeedButtonClick(Sender: TObject);
procedure LinkEditChange(Sender: TObject);
procedure LinkEditEditingDone(Sender: TObject);
procedure MoveToInheritedButtonClick(Sender: TObject);
procedure NewTopicButtonClick(Sender: TObject);
procedure OpenXMLButtonClick(Sender: TObject);
procedure PageControlChange(Sender: TObject);
procedure SaveButtonClick(Sender: TObject);
procedure SeeAlsoMemoChange(Sender: TObject);
procedure SeeAlsoMemoEditingDone(Sender: TObject);
procedure ShortEditChange(Sender: TObject);
procedure ShortEditEditingDone(Sender: TObject);
procedure TopicControlEnter(Sender: TObject);
procedure TopicDescrChange(Sender: TObject);
procedure TopicListBoxClick(Sender: TObject);
@ -434,7 +429,7 @@ procedure TFPDocEditor.LinkEditChange(Sender: TObject);
begin
if fpdefReading in FFlags then exit;
if LinkEdit.Text<>FOldVisualValues[fpdiElementLink] then
SaveButton.Enabled:=true;
Modified:=true;
end;
procedure TFPDocEditor.ApplicationIdle(Sender: TObject; var Done: Boolean);
@ -570,13 +565,6 @@ begin
end;
procedure TFPDocEditor.SeeAlsoMemoChange(Sender: TObject);
begin
if fpdefReading in FFlags then exit;
if SeeAlsoMemo.Text<>FOldVisualValues[fpdiSeeAlso] then
SaveButton.Enabled:=true;
end;
procedure TFPDocEditor.SeeAlsoMemoEditingDone(Sender: TObject);
begin
if fpdefReading in FFlags then exit;
if SeeAlsoMemo.Text<>FOldVisualValues[fpdiSeeAlso] then
@ -590,24 +578,6 @@ var
begin
if fpdefReading in FFlags then exit;
//debugln(['TFPDocEditor.ShortEditChange ',DbgSName(Sender)]);
if Sender=DescrShortEdit then
NewShort:=DescrShortEdit.Text
else
NewShort:=ShortEdit.Text;
SaveButton.Enabled:=NewShort<>FOldVisualValues[fpdiShort];
// copy to the other edit
if Sender=DescrShortEdit then
ShortEdit.Text:=NewShort
else
DescrShortEdit.Text:=NewShort;
end;
procedure TFPDocEditor.ShortEditEditingDone(Sender: TObject);
var
NewShort: String;
begin
if fpdefReading in FFlags then exit;
//debugln(['TFPDocEditor.ShortEditEditingDone ',DbgSName(Sender)]);
if Sender=DescrShortEdit then
NewShort:=DescrShortEdit.Text
else
@ -1033,7 +1003,7 @@ begin
fpdiDescription:
begin
PageControl.ActivePage:=DescrTabSheet;
DescrMemo.CaretPos:=LineCol;
DescrMemo.CaretXY:=LineCol;
end;
fpdiErrors: PageControl.ActivePage:=ErrorsTabSheet;
fpdiSeeAlso: PageControl.ActivePage:=SeeAlsoTabSheet;
@ -1498,12 +1468,6 @@ begin
end;
procedure TFPDocEditor.ErrorsMemoChange(Sender: TObject);
begin
if fpdefReading in FFlags then exit;
SaveButton.Enabled:=ErrorsMemo.Text<>FOldVisualValues[fpdiErrors];
end;
procedure TFPDocEditor.ErrorsMemoEditingDone(Sender: TObject);
begin
if fpdefReading in FFlags then exit;
if ErrorsMemo.Text<>FOldVisualValues[fpdiErrors] then
@ -1511,12 +1475,6 @@ begin
end;
procedure TFPDocEditor.ExampleEditChange(Sender: TObject);
begin
if fpdefReading in FFlags then exit;
SaveButton.Enabled:=ExampleEdit.Text<>FOldVisualValues[fpdiExample];
end;
procedure TFPDocEditor.ExampleEditEditingDone(Sender: TObject);
begin
if fpdefReading in FFlags then exit;
if ExampleEdit.Text<>FOldVisualValues[fpdiExample] then
@ -1543,13 +1501,6 @@ begin
Result:=-1;
end;
procedure TFPDocEditor.LinkEditEditingDone(Sender: TObject);
begin
if fpdefReading in FFlags then exit;
if LinkEdit.Text<>FOldVisualValues[fpdiElementLink] then
Modified:=true;
end;
procedure TFPDocEditor.AddLinkToInheritedButtonClick(Sender: TObject);
var
i: LongInt;
@ -1623,12 +1574,6 @@ begin
end;
procedure TFPDocEditor.DescrMemoChange(Sender: TObject);
begin
if fpdefReading in FFlags then exit;
SaveButton.Enabled:=DescrMemo.Text<>FOldVisualValues[fpdiDescription];
end;
procedure TFPDocEditor.DescrMemoEditingDone(Sender: TObject);
begin
if fpdefReading in FFlags then exit;
if DescrMemo.Text<>FOldVisualValues[fpdiDescription] then