1
0
mirror of https://github.com/moparisthebest/Simba synced 2024-11-24 18:22:25 -05:00

Added kind-of experimental 'firefox-search'.

Will finish it later.

git-svn-id: http://www.villavu.com/repositories/merlijn/mufasa@184 3f818213-9676-44b0-a9b4-5e4c4e03d09d
This commit is contained in:
Raymond 2009-11-03 17:23:34 +00:00
parent 2381c4814b
commit 707cfb814a
7 changed files with 3370 additions and 3112 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,150 +1,149 @@
LazarusResources.Add('TScriptFrame','FORMDATA',[ LazarusResources.Add('TScriptFrame','FORMDATA',[
'TPF0'#12'TScriptFrame'#11'ScriptFrame'#4'Left'#2#0#6'Height'#3','#1#3'Top'#2 'TPF0'#12'TScriptFrame'#11'ScriptFrame'#4'Left'#2#0#6'Height'#3','#1#3'Top'#2
+#0#5'Width'#3#144#1#12'ClientHeight'#3','#1#11'ClientWidth'#3#144#1#8'TabOrd' +#0#5'Width'#3#144#1#12'ClientHeight'#3','#1#11'ClientWidth'#3#144#1#8'TabOrd'
+'er'#2#0#10'DesignLeft'#3':'#3#9'DesignTop'#3'c'#1#0#8'TSynEdit'#7'SynEdit'#4 +'er'#2#0#10'DesignLeft'#3'D'#3#9'DesignTop'#3#153#1#0#8'TSynEdit'#7'SynEdit'
+'Left'#2#0#6'Height'#3','#1#3'Top'#2#0#5'Width'#3#144#1#5'Align'#7#8'alClien' +#4'Left'#2#0#6'Height'#3','#1#3'Top'#2#0#5'Width'#3#144#1#5'Align'#7#8'alCli'
+'t'#11'Font.Height'#2#243#9'Font.Name'#6#11'Courier New'#10'Font.Pitch'#7#7 +'ent'#11'Font.Height'#2#243#9'Font.Name'#6#11'Courier New'#10'Font.Pitch'#7#7
+'fpFixed'#12'Font.Quality'#7#16'fqNonAntialiased'#11'ParentColor'#8#10'Paren' +'fpFixed'#12'Font.Quality'#7#16'fqNonAntialiased'#11'ParentColor'#8#10'Paren'
+'tFont'#8#8'TabOrder'#2#0#24'BookMarkOptions.OnChange'#13#12'Gutter.Width'#2 +'tFont'#8#8'TabOrder'#2#0#12'Gutter.Width'#2'9'#19'Gutter.MouseActions'#14#1
+'='#19'Gutter.MouseActions'#14#1#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7 +#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7#6'mbLeft'#10'ClickCount'#7#5'cc'
+#6'mbLeft'#10'ClickCount'#7#5'ccAny'#8'ClickDir'#7#6'cdDown'#7'Command'#2#13 +'Any'#8'ClickDir'#7#6'cdDown'#7'Command'#2#13#9'MoveCaret'#8#6'Option'#2#0#8
+#9'MoveCaret'#8#6'Option'#2#0#8'Priority'#2#0#0#1#5'Shift'#11#0#9'ShiftMask' +'Priority'#2#0#0#1#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7#7'mbRight'#10
+#11#0#6'Button'#7#7'mbRight'#10'ClickCount'#7#8'ccSingle'#8'ClickDir'#7#4'cd' +'ClickCount'#7#8'ccSingle'#8'ClickDir'#7#4'cdUp'#7'Command'#2#12#9'MoveCaret'
+'Up'#7'Command'#2#12#9'MoveCaret'#8#6'Option'#2#0#8'Priority'#2#0#0#0#11'Hig' +#8#6'Option'#2#0#8'Priority'#2#0#0#0#11'Highlighter'#7#17'SynFreePascalSyn1'
+'hlighter'#7#17'SynFreePascalSyn1'#10'Keystrokes'#14#1#7'Command'#7#4'ecUp'#8 +#10'Keystrokes'#14#1#7'Command'#7#4'ecUp'#8'ShortCut'#2'&'#0#1#7'Command'#7#7
+'ShortCut'#2'&'#0#1#7'Command'#7#7'ecSelUp'#8'ShortCut'#3'& '#0#1#7'Command' +'ecSelUp'#8'ShortCut'#3'& '#0#1#7'Command'#7#10'ecScrollUp'#8'ShortCut'#3'&@'
+#7#10'ecScrollUp'#8'ShortCut'#3'&@'#0#1#7'Command'#7#6'ecDown'#8'ShortCut'#2 +#0#1#7'Command'#7#6'ecDown'#8'ShortCut'#2'('#0#1#7'Command'#7#9'ecSelDown'#8
+'('#0#1#7'Command'#7#9'ecSelDown'#8'ShortCut'#3'( '#0#1#7'Command'#7#12'ecSc' +'ShortCut'#3'( '#0#1#7'Command'#7#12'ecScrollDown'#8'ShortCut'#3'(@'#0#1#7'C'
+'rollDown'#8'ShortCut'#3'(@'#0#1#7'Command'#7#6'ecLeft'#8'ShortCut'#2'%'#0#1 +'ommand'#7#6'ecLeft'#8'ShortCut'#2'%'#0#1#7'Command'#7#9'ecSelLeft'#8'ShortC'
+#7'Command'#7#9'ecSelLeft'#8'ShortCut'#3'% '#0#1#7'Command'#7#10'ecWordLeft' +'ut'#3'% '#0#1#7'Command'#7#10'ecWordLeft'#8'ShortCut'#3'%@'#0#1#7'Command'#7
+#8'ShortCut'#3'%@'#0#1#7'Command'#7#13'ecSelWordLeft'#8'ShortCut'#3'%`'#0#1#7 +#13'ecSelWordLeft'#8'ShortCut'#3'%`'#0#1#7'Command'#7#7'ecRight'#8'ShortCut'
+'Command'#7#7'ecRight'#8'ShortCut'#2''''#0#1#7'Command'#7#10'ecSelRight'#8'S' +#2''''#0#1#7'Command'#7#10'ecSelRight'#8'ShortCut'#3''' '#0#1#7'Command'#7#11
+'hortCut'#3''' '#0#1#7'Command'#7#11'ecWordRight'#8'ShortCut'#3'''@'#0#1#7'C' +'ecWordRight'#8'ShortCut'#3'''@'#0#1#7'Command'#7#14'ecSelWordRight'#8'Short'
+'ommand'#7#14'ecSelWordRight'#8'ShortCut'#3'''`'#0#1#7'Command'#7#10'ecPageD' +'Cut'#3'''`'#0#1#7'Command'#7#10'ecPageDown'#8'ShortCut'#2'"'#0#1#7'Command'
+'own'#8'ShortCut'#2'"'#0#1#7'Command'#7#13'ecSelPageDown'#8'ShortCut'#3'" '#0 +#7#13'ecSelPageDown'#8'ShortCut'#3'" '#0#1#7'Command'#7#12'ecPageBottom'#8'S'
+#1#7'Command'#7#12'ecPageBottom'#8'ShortCut'#3'"@'#0#1#7'Command'#7#15'ecSel' +'hortCut'#3'"@'#0#1#7'Command'#7#15'ecSelPageBottom'#8'ShortCut'#3'"`'#0#1#7
+'PageBottom'#8'ShortCut'#3'"`'#0#1#7'Command'#7#8'ecPageUp'#8'ShortCut'#2'!' +'Command'#7#8'ecPageUp'#8'ShortCut'#2'!'#0#1#7'Command'#7#11'ecSelPageUp'#8
+#0#1#7'Command'#7#11'ecSelPageUp'#8'ShortCut'#3'! '#0#1#7'Command'#7#9'ecPag' +'ShortCut'#3'! '#0#1#7'Command'#7#9'ecPageTop'#8'ShortCut'#3'!@'#0#1#7'Comma'
+'eTop'#8'ShortCut'#3'!@'#0#1#7'Command'#7#12'ecSelPageTop'#8'ShortCut'#3'!`' +'nd'#7#12'ecSelPageTop'#8'ShortCut'#3'!`'#0#1#7'Command'#7#11'ecLineStart'#8
+#0#1#7'Command'#7#11'ecLineStart'#8'ShortCut'#2'$'#0#1#7'Command'#7#14'ecSel' +'ShortCut'#2'$'#0#1#7'Command'#7#14'ecSelLineStart'#8'ShortCut'#3'$ '#0#1#7
+'LineStart'#8'ShortCut'#3'$ '#0#1#7'Command'#7#11'ecEditorTop'#8'ShortCut'#3 +'Command'#7#11'ecEditorTop'#8'ShortCut'#3'$@'#0#1#7'Command'#7#14'ecSelEdito'
+'$@'#0#1#7'Command'#7#14'ecSelEditorTop'#8'ShortCut'#3'$`'#0#1#7'Command'#7#9 +'rTop'#8'ShortCut'#3'$`'#0#1#7'Command'#7#9'ecLineEnd'#8'ShortCut'#2'#'#0#1#7
+'ecLineEnd'#8'ShortCut'#2'#'#0#1#7'Command'#7#12'ecSelLineEnd'#8'ShortCut'#3 +'Command'#7#12'ecSelLineEnd'#8'ShortCut'#3'# '#0#1#7'Command'#7#14'ecEditorB'
+'# '#0#1#7'Command'#7#14'ecEditorBottom'#8'ShortCut'#3'#@'#0#1#7'Command'#7 +'ottom'#8'ShortCut'#3'#@'#0#1#7'Command'#7#17'ecSelEditorBottom'#8'ShortCut'
+#17'ecSelEditorBottom'#8'ShortCut'#3'#`'#0#1#7'Command'#7#12'ecToggleMode'#8 +#3'#`'#0#1#7'Command'#7#12'ecToggleMode'#8'ShortCut'#2'-'#0#1#7'Command'#7#6
+'ShortCut'#2'-'#0#1#7'Command'#7#6'ecCopy'#8'ShortCut'#3'-@'#0#1#7'Command'#7 +'ecCopy'#8'ShortCut'#3'-@'#0#1#7'Command'#7#7'ecPaste'#8'ShortCut'#3'- '#0#1
+#7'ecPaste'#8'ShortCut'#3'- '#0#1#7'Command'#7#12'ecDeleteChar'#8'ShortCut'#2 +#7'Command'#7#12'ecDeleteChar'#8'ShortCut'#2'.'#0#1#7'Command'#7#5'ecCut'#8
+'.'#0#1#7'Command'#7#5'ecCut'#8'ShortCut'#3'. '#0#1#7'Command'#7#16'ecDelete' +'ShortCut'#3'. '#0#1#7'Command'#7#16'ecDeleteLastChar'#8'ShortCut'#2#8#0#1#7
+'LastChar'#8'ShortCut'#2#8#0#1#7'Command'#7#16'ecDeleteLastChar'#8'ShortCut' +'Command'#7#16'ecDeleteLastChar'#8'ShortCut'#3#8' '#0#1#7'Command'#7#16'ecDe'
+#3#8' '#0#1#7'Command'#7#16'ecDeleteLastWord'#8'ShortCut'#3#8'@'#0#1#7'Comma' +'leteLastWord'#8'ShortCut'#3#8'@'#0#1#7'Command'#7#6'ecUndo'#8'ShortCut'#4#8
+'nd'#7#6'ecUndo'#8'ShortCut'#4#8#128#0#0#0#1#7'Command'#7#6'ecRedo'#8'ShortC' +#128#0#0#0#1#7'Command'#7#6'ecRedo'#8'ShortCut'#4#8#160#0#0#0#1#7'Command'#7
+'ut'#4#8#160#0#0#0#1#7'Command'#7#11'ecLineBreak'#8'ShortCut'#2#13#0#1#7'Com' +#11'ecLineBreak'#8'ShortCut'#2#13#0#1#7'Command'#7#11'ecSelectAll'#8'ShortCu'
+'mand'#7#11'ecSelectAll'#8'ShortCut'#3'A@'#0#1#7'Command'#7#6'ecCopy'#8'Shor' +'t'#3'A@'#0#1#7'Command'#7#6'ecCopy'#8'ShortCut'#3'C@'#0#1#7'Command'#7#13'e'
+'tCut'#3'C@'#0#1#7'Command'#7#13'ecBlockIndent'#8'ShortCut'#3'I`'#0#1#7'Comm' +'cBlockIndent'#8'ShortCut'#3'I`'#0#1#7'Command'#7#11'ecLineBreak'#8'ShortCut'
+'and'#7#11'ecLineBreak'#8'ShortCut'#3'M@'#0#1#7'Command'#7#15'ecBlockUninden' +#3'M@'#0#1#7'Command'#7#15'ecBlockUnindent'#8'ShortCut'#3'U`'#0#1#7'Command'
+'t'#8'ShortCut'#3'U`'#0#1#7'Command'#7#7'ecPaste'#8'ShortCut'#3'V@'#0#1#7'Co' +#7#7'ecPaste'#8'ShortCut'#3'V@'#0#1#7'Command'#7#5'ecCut'#8'ShortCut'#3'X@'#0
+'mmand'#7#5'ecCut'#8'ShortCut'#3'X@'#0#1#7'Command'#7#12'ecDeleteLine'#8'Sho' +#1#7'Command'#7#12'ecDeleteLine'#8'ShortCut'#3'Y@'#0#1#7'Command'#7#11'ecDel'
+'rtCut'#3'Y@'#0#1#7'Command'#7#11'ecDeleteEOL'#8'ShortCut'#3'Y`'#0#1#7'Comma' +'eteEOL'#8'ShortCut'#3'Y`'#0#1#7'Command'#7#6'ecUndo'#8'ShortCut'#3'Z@'#0#1#7
+'nd'#7#6'ecUndo'#8'ShortCut'#3'Z@'#0#1#7'Command'#7#6'ecRedo'#8'ShortCut'#3 +'Command'#7#6'ecRedo'#8'ShortCut'#3'Z`'#0#1#7'Command'#7#13'ecGotoMarker0'#8
+'Z`'#0#1#7'Command'#7#13'ecGotoMarker0'#8'ShortCut'#3'0@'#0#1#7'Command'#7#13 +'ShortCut'#3'0@'#0#1#7'Command'#7#13'ecGotoMarker1'#8'ShortCut'#3'1@'#0#1#7
+'ecGotoMarker1'#8'ShortCut'#3'1@'#0#1#7'Command'#7#13'ecGotoMarker2'#8'Short' +'Command'#7#13'ecGotoMarker2'#8'ShortCut'#3'2@'#0#1#7'Command'#7#13'ecGotoMa'
+'Cut'#3'2@'#0#1#7'Command'#7#13'ecGotoMarker3'#8'ShortCut'#3'3@'#0#1#7'Comma' +'rker3'#8'ShortCut'#3'3@'#0#1#7'Command'#7#13'ecGotoMarker4'#8'ShortCut'#3'4'
+'nd'#7#13'ecGotoMarker4'#8'ShortCut'#3'4@'#0#1#7'Command'#7#13'ecGotoMarker5' +'@'#0#1#7'Command'#7#13'ecGotoMarker5'#8'ShortCut'#3'5@'#0#1#7'Command'#7#13
+#8'ShortCut'#3'5@'#0#1#7'Command'#7#13'ecGotoMarker6'#8'ShortCut'#3'6@'#0#1#7 +'ecGotoMarker6'#8'ShortCut'#3'6@'#0#1#7'Command'#7#13'ecGotoMarker7'#8'Short'
+'Command'#7#13'ecGotoMarker7'#8'ShortCut'#3'7@'#0#1#7'Command'#7#13'ecGotoMa' +'Cut'#3'7@'#0#1#7'Command'#7#13'ecGotoMarker8'#8'ShortCut'#3'8@'#0#1#7'Comma'
+'rker8'#8'ShortCut'#3'8@'#0#1#7'Command'#7#13'ecGotoMarker9'#8'ShortCut'#3'9' +'nd'#7#13'ecGotoMarker9'#8'ShortCut'#3'9@'#0#1#7'Command'#7#12'ecSetMarker0'
+'@'#0#1#7'Command'#7#12'ecSetMarker0'#8'ShortCut'#3'0`'#0#1#7'Command'#7#12 +#8'ShortCut'#3'0`'#0#1#7'Command'#7#12'ecSetMarker1'#8'ShortCut'#3'1`'#0#1#7
+'ecSetMarker1'#8'ShortCut'#3'1`'#0#1#7'Command'#7#12'ecSetMarker2'#8'ShortCu' +'Command'#7#12'ecSetMarker2'#8'ShortCut'#3'2`'#0#1#7'Command'#7#12'ecSetMark'
+'t'#3'2`'#0#1#7'Command'#7#12'ecSetMarker3'#8'ShortCut'#3'3`'#0#1#7'Command' +'er3'#8'ShortCut'#3'3`'#0#1#7'Command'#7#12'ecSetMarker4'#8'ShortCut'#3'4`'#0
+#7#12'ecSetMarker4'#8'ShortCut'#3'4`'#0#1#7'Command'#7#12'ecSetMarker5'#8'Sh' +#1#7'Command'#7#12'ecSetMarker5'#8'ShortCut'#3'5`'#0#1#7'Command'#7#12'ecSet'
+'ortCut'#3'5`'#0#1#7'Command'#7#12'ecSetMarker6'#8'ShortCut'#3'6`'#0#1#7'Com' +'Marker6'#8'ShortCut'#3'6`'#0#1#7'Command'#7#12'ecSetMarker7'#8'ShortCut'#3
+'mand'#7#12'ecSetMarker7'#8'ShortCut'#3'7`'#0#1#7'Command'#7#12'ecSetMarker8' +'7`'#0#1#7'Command'#7#12'ecSetMarker8'#8'ShortCut'#3'8`'#0#1#7'Command'#7#12
+#8'ShortCut'#3'8`'#0#1#7'Command'#7#12'ecSetMarker9'#8'ShortCut'#3'9`'#0#1#7 +'ecSetMarker9'#8'ShortCut'#3'9`'#0#1#7'Command'#7#12'EcFoldLevel1'#8'ShortCu'
+'Command'#7#12'EcFoldLevel1'#8'ShortCut'#4'1'#160#0#0#0#1#7'Command'#7#12'Ec' +'t'#4'1'#160#0#0#0#1#7'Command'#7#12'EcFoldLevel2'#8'ShortCut'#4'2'#160#0#0#0
+'FoldLevel2'#8'ShortCut'#4'2'#160#0#0#0#1#7'Command'#7#12'EcFoldLevel1'#8'Sh' +#1#7'Command'#7#12'EcFoldLevel1'#8'ShortCut'#4'3'#160#0#0#0#1#7'Command'#7#12
+'ortCut'#4'3'#160#0#0#0#1#7'Command'#7#12'EcFoldLevel1'#8'ShortCut'#4'4'#160 +'EcFoldLevel1'#8'ShortCut'#4'4'#160#0#0#0#1#7'Command'#7#12'EcFoldLevel1'#8
,#0#0#0#1#7'Command'#7#12'EcFoldLevel1'#8'ShortCut'#4'5'#160#0#0#0#1#7'Comman' ,'ShortCut'#4'5'#160#0#0#0#1#7'Command'#7#12'EcFoldLevel6'#8'ShortCut'#4'6'
+'d'#7#12'EcFoldLevel6'#8'ShortCut'#4'6'#160#0#0#0#1#7'Command'#7#12'EcFoldLe' +#160#0#0#0#1#7'Command'#7#12'EcFoldLevel7'#8'ShortCut'#4'7'#160#0#0#0#1#7'Co'
+'vel7'#8'ShortCut'#4'7'#160#0#0#0#1#7'Command'#7#12'EcFoldLevel8'#8'ShortCut' +'mmand'#7#12'EcFoldLevel8'#8'ShortCut'#4'8'#160#0#0#0#1#7'Command'#7#12'EcFo'
+#4'8'#160#0#0#0#1#7'Command'#7#12'EcFoldLevel9'#8'ShortCut'#4'9'#160#0#0#0#1 +'ldLevel9'#8'ShortCut'#4'9'#160#0#0#0#1#7'Command'#7#12'EcFoldLevel0'#8'Shor'
+#7'Command'#7#12'EcFoldLevel0'#8'ShortCut'#4'0'#160#0#0#0#1#7'Command'#7#13 +'tCut'#4'0'#160#0#0#0#1#7'Command'#7#13'EcFoldCurrent'#8'ShortCut'#4'-'#160#0
+'EcFoldCurrent'#8'ShortCut'#4'-'#160#0#0#0#1#7'Command'#7#15'EcUnFoldCurrent' +#0#0#1#7'Command'#7#15'EcUnFoldCurrent'#8'ShortCut'#4'+'#160#0#0#0#1#7'Comma'
+#8'ShortCut'#4'+'#160#0#0#0#1#7'Command'#7#18'EcToggleMarkupWord'#8'ShortCut' +'nd'#7#18'EcToggleMarkupWord'#8'ShortCut'#4'M'#128#0#0#0#1#7'Command'#7#14'e'
+#4'M'#128#0#0#0#1#7'Command'#7#14'ecNormalSelect'#8'ShortCut'#3'N`'#0#1#7'Co' +'cNormalSelect'#8'ShortCut'#3'N`'#0#1#7'Command'#7#14'ecColumnSelect'#8'Shor'
+'mmand'#7#14'ecColumnSelect'#8'ShortCut'#3'C`'#0#1#7'Command'#7#12'ecLineSel' +'tCut'#3'C`'#0#1#7'Command'#7#12'ecLineSelect'#8'ShortCut'#3'L`'#0#1#7'Comma'
+'ect'#8'ShortCut'#3'L`'#0#1#7'Command'#7#5'ecTab'#8'ShortCut'#2#9#0#1#7'Comm' +'nd'#7#5'ecTab'#8'ShortCut'#2#9#0#1#7'Command'#7#10'ecShiftTab'#8'ShortCut'#3
+'and'#7#10'ecShiftTab'#8'ShortCut'#3#9' '#0#1#7'Command'#7#14'ecMatchBracket' +#9' '#0#1#7'Command'#7#14'ecMatchBracket'#8'ShortCut'#3'B`'#0#1#7'Command'#7
+#8'ShortCut'#3'B`'#0#1#7'Command'#7#10'ecColSelUp'#8'ShortCut'#4'&'#160#0#0#0 +#10'ecColSelUp'#8'ShortCut'#4'&'#160#0#0#0#1#7'Command'#7#12'ecColSelDown'#8
+#1#7'Command'#7#12'ecColSelDown'#8'ShortCut'#4'('#160#0#0#0#1#7'Command'#7#12 +'ShortCut'#4'('#160#0#0#0#1#7'Command'#7#12'ecColSelLeft'#8'ShortCut'#4'%'
+'ecColSelLeft'#8'ShortCut'#4'%'#160#0#0#0#1#7'Command'#7#13'ecColSelRight'#8 +#160#0#0#0#1#7'Command'#7#13'ecColSelRight'#8'ShortCut'#4''''#160#0#0#0#1#7
+'ShortCut'#4''''#160#0#0#0#1#7'Command'#7#16'ecColSelPageDown'#8'ShortCut'#4 +'Command'#7#16'ecColSelPageDown'#8'ShortCut'#4'"'#160#0#0#0#1#7'Command'#7#18
+'"'#160#0#0#0#1#7'Command'#7#18'ecColSelPageBottom'#8'ShortCut'#4'"'#224#0#0 +'ecColSelPageBottom'#8'ShortCut'#4'"'#224#0#0#0#1#7'Command'#7#14'ecColSelPa'
+#0#1#7'Command'#7#14'ecColSelPageUp'#8'ShortCut'#4'!'#160#0#0#0#1#7'Command' +'geUp'#8'ShortCut'#4'!'#160#0#0#0#1#7'Command'#7#15'ecColSelPageTop'#8'Short'
+#7#15'ecColSelPageTop'#8'ShortCut'#4'!'#224#0#0#0#1#7'Command'#7#17'ecColSel' +'Cut'#4'!'#224#0#0#0#1#7'Command'#7#17'ecColSelLineStart'#8'ShortCut'#4'$'
+'LineStart'#8'ShortCut'#4'$'#160#0#0#0#1#7'Command'#7#15'ecColSelLineEnd'#8 +#160#0#0#0#1#7'Command'#7#15'ecColSelLineEnd'#8'ShortCut'#4'#'#160#0#0#0#1#7
+'ShortCut'#4'#'#160#0#0#0#1#7'Command'#7#17'ecColSelEditorTop'#8'ShortCut'#4 +'Command'#7#17'ecColSelEditorTop'#8'ShortCut'#4'$'#224#0#0#0#1#7'Command'#7
+'$'#224#0#0#0#1#7'Command'#7#20'ecColSelEditorBottom'#8'ShortCut'#4'#'#224#0 +#20'ecColSelEditorBottom'#8'ShortCut'#4'#'#224#0#0#0#0#12'MouseActions'#14#1
+#0#0#0#12'MouseActions'#14#1#5'Shift'#11#0#9'ShiftMask'#11#7'ssShift'#5'ssAl' +#5'Shift'#11#0#9'ShiftMask'#11#7'ssShift'#5'ssAlt'#0#6'Button'#7#6'mbLeft'#10
+'t'#0#6'Button'#7#6'mbLeft'#10'ClickCount'#7#8'ccSingle'#8'ClickDir'#7#6'cdD' +'ClickCount'#7#8'ccSingle'#8'ClickDir'#7#6'cdDown'#7'Command'#2#1#9'MoveCare'
+'own'#7'Command'#2#1#9'MoveCaret'#9#6'Option'#2#0#8'Priority'#2#0#0#1#5'Shif' +'t'#9#6'Option'#2#0#8'Priority'#2#0#0#1#5'Shift'#11#7'ssShift'#0#9'ShiftMask'
+'t'#11#7'ssShift'#0#9'ShiftMask'#11#7'ssShift'#5'ssAlt'#0#6'Button'#7#6'mbLe' +#11#7'ssShift'#5'ssAlt'#0#6'Button'#7#6'mbLeft'#10'ClickCount'#7#8'ccSingle'
+'ft'#10'ClickCount'#7#8'ccSingle'#8'ClickDir'#7#6'cdDown'#7'Command'#2#1#9'M' +#8'ClickDir'#7#6'cdDown'#7'Command'#2#1#9'MoveCaret'#9#6'Option'#2#1#8'Prior'
+'oveCaret'#9#6'Option'#2#1#8'Priority'#2#0#0#1#5'Shift'#11#5'ssAlt'#0#9'Shif' +'ity'#2#0#0#1#5'Shift'#11#5'ssAlt'#0#9'ShiftMask'#11#7'ssShift'#5'ssAlt'#0#6
+'tMask'#11#7'ssShift'#5'ssAlt'#0#6'Button'#7#6'mbLeft'#10'ClickCount'#7#8'cc' +'Button'#7#6'mbLeft'#10'ClickCount'#7#8'ccSingle'#8'ClickDir'#7#6'cdDown'#7
+'Single'#8'ClickDir'#7#6'cdDown'#7'Command'#2#3#9'MoveCaret'#9#6'Option'#2#0 +'Command'#2#3#9'MoveCaret'#9#6'Option'#2#0#8'Priority'#2#0#0#1#5'Shift'#11#7
+#8'Priority'#2#0#0#1#5'Shift'#11#7'ssShift'#5'ssAlt'#0#9'ShiftMask'#11#7'ssS' +'ssShift'#5'ssAlt'#0#9'ShiftMask'#11#7'ssShift'#5'ssAlt'#0#6'Button'#7#6'mbL'
+'hift'#5'ssAlt'#0#6'Button'#7#6'mbLeft'#10'ClickCount'#7#8'ccSingle'#8'Click' +'eft'#10'ClickCount'#7#8'ccSingle'#8'ClickDir'#7#6'cdDown'#7'Command'#2#3#9
+'Dir'#7#6'cdDown'#7'Command'#2#3#9'MoveCaret'#9#6'Option'#2#1#8'Priority'#2#0 +'MoveCaret'#9#6'Option'#2#1#8'Priority'#2#0#0#1#5'Shift'#11#0#9'ShiftMask'#11
+#0#1#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7#7'mbRight'#10'ClickCount'#7 +#0#6'Button'#7#7'mbRight'#10'ClickCount'#7#8'ccSingle'#8'ClickDir'#7#4'cdUp'
+#8'ccSingle'#8'ClickDir'#7#4'cdUp'#7'Command'#2#12#9'MoveCaret'#8#6'Option'#2 +#7'Command'#2#12#9'MoveCaret'#8#6'Option'#2#0#8'Priority'#2#0#0#1#5'Shift'#11
+#0#8'Priority'#2#0#0#1#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7#6'mbLeft' +#0#9'ShiftMask'#11#0#6'Button'#7#6'mbLeft'#10'ClickCount'#7#8'ccDouble'#8'Cl'
+#10'ClickCount'#7#8'ccDouble'#8'ClickDir'#7#6'cdDown'#7'Command'#2#6#9'MoveC' +'ickDir'#7#6'cdDown'#7'Command'#2#6#9'MoveCaret'#9#6'Option'#2#0#8'Priority'
+'aret'#9#6'Option'#2#0#8'Priority'#2#0#0#1#5'Shift'#11#0#9'ShiftMask'#11#0#6 +#2#0#0#1#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7#6'mbLeft'#10'ClickCount'
+'Button'#7#6'mbLeft'#10'ClickCount'#7#8'ccTriple'#8'ClickDir'#7#6'cdDown'#7 +#7#8'ccTriple'#8'ClickDir'#7#6'cdDown'#7'Command'#2#7#9'MoveCaret'#9#6'Optio'
+'Command'#2#7#9'MoveCaret'#9#6'Option'#2#0#8'Priority'#2#0#0#1#5'Shift'#11#0 +'n'#2#0#8'Priority'#2#0#0#1#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7#6'mb'
+#9'ShiftMask'#11#0#6'Button'#7#6'mbLeft'#10'ClickCount'#7#6'ccQuad'#8'ClickD' +'Left'#10'ClickCount'#7#6'ccQuad'#8'ClickDir'#7#6'cdDown'#7'Command'#2#8#9'M'
+'ir'#7#6'cdDown'#7'Command'#2#8#9'MoveCaret'#9#6'Option'#2#0#8'Priority'#2#0 +'oveCaret'#9#6'Option'#2#0#8'Priority'#2#0#0#1#5'Shift'#11#0#9'ShiftMask'#11
+#0#1#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7#8'mbMiddle'#10'ClickCount'#7 +#0#6'Button'#7#8'mbMiddle'#10'ClickCount'#7#8'ccSingle'#8'ClickDir'#7#6'cdDo'
+#8'ccSingle'#8'ClickDir'#7#6'cdDown'#7'Command'#2#10#9'MoveCaret'#9#6'Option' +'wn'#7'Command'#2#10#9'MoveCaret'#9#6'Option'#2#0#8'Priority'#2#0#0#1#5'Shif'
+#2#0#8'Priority'#2#0#0#1#5'Shift'#11#6'ssCtrl'#0#9'ShiftMask'#11#7'ssShift'#5 +'t'#11#6'ssCtrl'#0#9'ShiftMask'#11#7'ssShift'#5'ssAlt'#6'ssCtrl'#0#6'Button'
+'ssAlt'#6'ssCtrl'#0#6'Button'#7#6'mbLeft'#10'ClickCount'#7#8'ccSingle'#8'Cli' +#7#6'mbLeft'#10'ClickCount'#7#8'ccSingle'#8'ClickDir'#7#4'cdUp'#7'Command'#2
+'ckDir'#7#4'cdUp'#7'Command'#2#11#9'MoveCaret'#8#6'Option'#2#0#8'Priority'#2 +#11#9'MoveCaret'#8#6'Option'#2#0#8'Priority'#2#0#0#0#15'MouseSelActions'#14#1
+#0#0#0#15'MouseSelActions'#14#1#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7#6 +#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7#6'mbLeft'#10'ClickCount'#7#8'cc'
+'mbLeft'#10'ClickCount'#7#8'ccSingle'#8'ClickDir'#7#6'cdDown'#7'Command'#2#9 +'Single'#8'ClickDir'#7#6'cdDown'#7'Command'#2#9#9'MoveCaret'#8#6'Option'#2#0
+#9'MoveCaret'#8#6'Option'#2#0#8'Priority'#2#0#0#0#13'Lines.Strings'#1#6#12'p' +#8'Priority'#2#0#0#0#13'Lines.Strings'#1#6#12'program new;'#6#5'begin'#6#4'e'
+'rogram new;'#6#5'begin'#6#4'end.'#0#21'BracketHighlightStyle'#7#8'sbhsBoth' +'nd.'#0#21'BracketHighlightStyle'#7#8'sbhsBoth'#8'OnChange'#7#13'SynEditChan'
+#8'OnChange'#7#13'SynEditChange'#16'OnProcessCommand'#7#21'SynEditProcessCom' +'ge'#16'OnProcessCommand'#7#21'SynEditProcessCommand'#19'OnSpecialLineColors'
+'mand'#19'OnSpecialLineColors'#7#24'SynEditSpecialLineColors'#0#18'TSynGutte' +#7#24'SynEditSpecialLineColors'#0#18'TSynGutterPartList'#0#0#15'TSynGutterMa'
+'rPartList'#0#0#15'TSynGutterMarks'#0#5'Width'#2#23#0#0#20'TSynGutterLineNum' +'rks'#0#5'Width'#2#23#0#0#20'TSynGutterLineNumber'#0#5'Width'#2#17#12'MouseA'
+'ber'#0#5'Width'#2#21#12'MouseActions'#14#0#21'MarkupInfo.Background'#7#9'cl' +'ctions'#14#0#21'MarkupInfo.Background'#7#9'clBtnFace'#21'MarkupInfo.Foregro'
+'BtnFace'#21'MarkupInfo.Foreground'#7#6'clNone'#10'DigitCount'#2#2#30'ShowOn' +'und'#7#6'clNone'#10'DigitCount'#2#2#30'ShowOnlyLineNumbersMultiplesOf'#2#1#9
+'lyLineNumbersMultiplesOf'#2#1#9'ZeroStart'#8#12'LeadingZeros'#8#0#0#17'TSyn' +'ZeroStart'#8#12'LeadingZeros'#8#0#0#17'TSynGutterChanges'#0#5'Width'#2#4#13
+'GutterChanges'#0#5'Width'#2#4#13'ModifiedColor'#4#252#233#0#0#10'SavedColor' +'ModifiedColor'#4#252#233#0#0#10'SavedColor'#7#7'clGreen'#0#0#19'TSynGutterS'
+#7#7'clGreen'#0#0#19'TSynGutterSeparator'#0#5'Width'#2#2#0#0#21'TSynGutterCo' +'eparator'#0#5'Width'#2#2#0#0#21'TSynGutterCodeFolding'#0#12'MouseActions'#14
+'deFolding'#0#12'MouseActions'#14#1#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button' +#1#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7#7'mbRight'#10'ClickCount'#7#8
+#7#7'mbRight'#10'ClickCount'#7#8'ccSingle'#8'ClickDir'#7#4'cdUp'#7'Command'#2 +'ccSingle'#8'ClickDir'#7#4'cdUp'#7'Command'#2#16#9'MoveCaret'#8#6'Option'#2#0
+#16#9'MoveCaret'#8#6'Option'#2#0#8'Priority'#2#0#0#1#5'Shift'#11#0#9'ShiftMa' +#8'Priority'#2#0#0#1#5'Shift'#11#0#9'ShiftMask'#11#7'ssShift'#0#6'Button'#7#8
+'sk'#11#7'ssShift'#0#6'Button'#7#8'mbMiddle'#10'ClickCount'#7#5'ccAny'#8'Cli' +'mbMiddle'#10'ClickCount'#7#5'ccAny'#8'ClickDir'#7#6'cdDown'#7'Command'#2#14
+'ckDir'#7#6'cdDown'#7'Command'#2#14#9'MoveCaret'#8#6'Option'#2#0#8'Priority' +#9'MoveCaret'#8#6'Option'#2#0#8'Priority'#2#0#0#1#5'Shift'#11#7'ssShift'#0#9
+#2#0#0#1#5'Shift'#11#7'ssShift'#0#9'ShiftMask'#11#7'ssShift'#0#6'Button'#7#8 +'ShiftMask'#11#7'ssShift'#0#6'Button'#7#8'mbMiddle'#10'ClickCount'#7#5'ccAny'
,'mbMiddle'#10'ClickCount'#7#5'ccAny'#8'ClickDir'#7#6'cdDown'#7'Command'#2#14 ,#8'ClickDir'#7#6'cdDown'#7'Command'#2#14#9'MoveCaret'#8#6'Option'#2#1#8'Prio'
+#9'MoveCaret'#8#6'Option'#2#1#8'Priority'#2#0#0#1#5'Shift'#11#0#9'ShiftMask' +'rity'#2#0#0#1#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7#6'mbLeft'#10'Clic'
+#11#0#6'Button'#7#6'mbLeft'#10'ClickCount'#7#5'ccAny'#8'ClickDir'#7#6'cdDown' +'kCount'#7#5'ccAny'#8'ClickDir'#7#6'cdDown'#7'Command'#2#0#9'MoveCaret'#8#6
+#7'Command'#2#0#9'MoveCaret'#8#6'Option'#2#0#8'Priority'#2#0#0#0#21'MarkupIn' +'Option'#2#0#8'Priority'#2#0#0#0#21'MarkupInfo.Background'#7#6'clNone'#21'Ma'
+'fo.Background'#7#6'clNone'#21'MarkupInfo.Foreground'#7#6'clGray'#20'MouseAc' +'rkupInfo.Foreground'#7#6'clGray'#20'MouseActionsExpanded'#14#1#5'Shift'#11#0
+'tionsExpanded'#14#1#5'Shift'#11#0#9'ShiftMask'#11#0#6'Button'#7#6'mbLeft'#10 +#9'ShiftMask'#11#0#6'Button'#7#6'mbLeft'#10'ClickCount'#7#5'ccAny'#8'ClickDi'
+'ClickCount'#7#5'ccAny'#8'ClickDir'#7#6'cdDown'#7'Command'#2#14#9'MoveCaret' +'r'#7#6'cdDown'#7'Command'#2#14#9'MoveCaret'#8#6'Option'#2#0#8'Priority'#2#0
+#8#6'Option'#2#0#8'Priority'#2#0#0#0#21'MouseActionsCollapsed'#14#1#5'Shift' +#0#0#21'MouseActionsCollapsed'#14#1#5'Shift'#11#6'ssCtrl'#0#9'ShiftMask'#11#6
+#11#6'ssCtrl'#0#9'ShiftMask'#11#6'ssCtrl'#0#6'Button'#7#6'mbLeft'#10'ClickCo' +'ssCtrl'#0#6'Button'#7#6'mbLeft'#10'ClickCount'#7#5'ccAny'#8'ClickDir'#7#6'c'
+'unt'#7#5'ccAny'#8'ClickDir'#7#6'cdDown'#7'Command'#2#15#9'MoveCaret'#8#6'Op' +'dDown'#7'Command'#2#15#9'MoveCaret'#8#6'Option'#2#0#8'Priority'#2#0#0#1#5'S'
+'tion'#2#0#8'Priority'#2#0#0#1#5'Shift'#11#0#9'ShiftMask'#11#6'ssCtrl'#0#6'B' +'hift'#11#0#9'ShiftMask'#11#6'ssCtrl'#0#6'Button'#7#6'mbLeft'#10'ClickCount'
+'utton'#7#6'mbLeft'#10'ClickCount'#7#5'ccAny'#8'ClickDir'#7#6'cdDown'#7'Comm' +#7#5'ccAny'#8'ClickDir'#7#6'cdDown'#7'Command'#2#15#9'MoveCaret'#8#6'Option'
+'and'#2#15#9'MoveCaret'#8#6'Option'#2#1#8'Priority'#2#0#0#0#0#0#0#0#17'TSynF' +#2#1#8'Priority'#2#0#0#0#0#0#0#0#17'TSynFreePascalSyn'#17'SynFreePascalSyn1'
+'reePascalSyn'#17'SynFreePascalSyn1'#7'Enabled'#8#23'CommentAttri.Foreground' +#7'Enabled'#8#23'CommentAttri.Foreground'#7#6'clBlue'#18'CommentAttri.Style'
+#7#6'clBlue'#18'CommentAttri.Style'#11#6'fsBold'#0#26'IdentifierAttri.Foregr' +#11#6'fsBold'#0#26'IdentifierAttri.Foreground'#7#9'clDefault'#22'NumberAttri'
+'ound'#7#9'clDefault'#22'NumberAttri.Foreground'#7#6'clNavy'#22'StringAttri.' +'.Foreground'#7#6'clNavy'#22'StringAttri.Foreground'#7#6'clBlue'#22'SymbolAt'
+'Foreground'#7#6'clBlue'#22'SymbolAttri.Foreground'#7#5'clRed'#25'DirectiveA' +'tri.Foreground'#7#5'clRed'#25'DirectiveAttri.Foreground'#7#5'clRed'#20'Dire'
+'ttri.Foreground'#7#5'clRed'#20'DirectiveAttri.Style'#11#6'fsBold'#0#12'Comp' +'ctiveAttri.Style'#11#6'fsBold'#0#12'CompilerMode'#7#9'pcmObjFPC'#14'NestedC'
+'ilerMode'#7#9'pcmObjFPC'#14'NestedComments'#9#4'left'#3'@'#1#3'top'#2#16#0#0 +'omments'#9#4'left'#3'@'#1#3'top'#2#16#0#0#0
+#0 ]);
]);

View File

@ -1,192 +1,195 @@
{ {
This file is part of the Mufasa Macro Library (MML) This file is part of the Mufasa Macro Library (MML)
Copyright (c) 2009 by Raymond van Venetië and Merlijn Wajer Copyright (c) 2009 by Raymond van Venetië and Merlijn Wajer
MML is free software: you can redistribute it and/or modify MML is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or the Free Software Foundation, either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
MML is distributed in the hope that it will be useful, MML is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with MML. If not, see <http://www.gnu.org/licenses/>. along with MML. If not, see <http://www.gnu.org/licenses/>.
See the file COPYING, included in this distribution, See the file COPYING, included in this distribution,
for details about the copyright. for details about the copyright.
framescript for the Mufasa Macro Library framescript for the Mufasa Macro Library
} }
unit framescript; unit framescript;
{$mode objfpc}{$H+} {$mode objfpc}{$H+}
interface interface
uses uses
Classes, SysUtils, FileUtil, LResources, Forms, SynHighlighterPas, SynEdit, mmlpsthread,ComCtrls, SynEditKeyCmds, LCLType, SynEditMarkupSpecialLine, Graphics; Classes, SysUtils, FileUtil, LResources, Forms, SynHighlighterPas, SynEdit, mmlpsthread,ComCtrls, SynEditKeyCmds, LCLType, SynEditMarkupSpecialLine, Graphics;
type type
TScriptState = (ss_None,ss_Running,ss_Paused,ss_Stopping); TScriptState = (ss_None,ss_Running,ss_Paused,ss_Stopping);
{ {
ss_None: Means the script either hasn't been run yet, or it has ended (Succesfully or terminated) ss_None: Means the script either hasn't been run yet, or it has ended (Succesfully or terminated)
ss_Running: Means the script is running as we speak :-) ss_Running: Means the script is running as we speak :-)
ss_Paused: Means the script is currently in pause modus. ss_Paused: Means the script is currently in pause modus.
ss_Stopping: Means we've asked PS-Script politely to stop the script (next time we press the stop button we won't be that nice). ss_Stopping: Means we've asked PS-Script politely to stop the script (next time we press the stop button we won't be that nice).
} }
{ TScriptFrame } { TScriptFrame }
TScriptFrame = class(TFrame) TScriptFrame = class(TFrame)
SynEdit: TSynEdit; SynEdit: TSynEdit;
SynFreePascalSyn1: TSynFreePascalSyn; SynFreePascalSyn1: TSynFreePascalSyn;
procedure SynEditChange(Sender: TObject); procedure SynEditChange(Sender: TObject);
procedure SynEditProcessCommand(Sender: TObject; procedure SynEditProcessCommand(Sender: TObject;
var Command: TSynEditorCommand; var AChar: TUTF8Char; Data: pointer); var Command: TSynEditorCommand; var AChar: TUTF8Char; Data: pointer);
procedure SynEditSpecialLineColors(Sender: TObject; Line: integer; procedure SynEditSpecialLineColors(Sender: TObject; Line: integer;
var Special: boolean; var FG, BG: TColor); var Special: boolean; var FG, BG: TColor);
private private
OwnerPage : TPageControl; OwnerPage : TPageControl;
OwnerSheet : TTabSheet;//The owner TTabsheet -> For title setting OwnerSheet : TTabSheet;//The owner TTabsheet -> For title setting
public public
ScriptErrorLine : integer; //Highlight the error line! ScriptErrorLine : integer; //Highlight the error line!
ScriptFile : string;//The path to the saved/opened file currently in the SynEdit ScriptFile : string;//The path to the saved/opened file currently in the SynEdit
StartText : string;//The text synedit holds upon start/open/save StartText : string;//The text synedit holds upon start/open/save
ScriptName : string;//The name of the currently opened/saved file. ScriptName : string;//The name of the currently opened/saved file.
ScriptDefault : string;//The default script e.g. program new; begin end. ScriptDefault : string;//The default script e.g. program new; begin end.
ScriptChanged : boolean;//We need this for that little * (edited star). ScriptChanged : boolean;//We need this for that little * (edited star).
ScriptThread : TMMLPSThread;//Just one thread for now.. ScriptThread : TMMLPSThread;//Just one thread for now..
FScriptState : TScriptState;//Stores the ScriptState, if you want the Run/Pause/Start buttons to change accordingly, acces through Form1 FScriptState : TScriptState;//Stores the ScriptState, if you want the Run/Pause/Start buttons to change accordingly, acces through Form1
procedure undo; procedure undo;
procedure redo; procedure redo;
procedure ErrorThread(ErrorAtLine,ErrorPosition : integer; ErrorStr : string; ErrorType : TErrorType); procedure ErrorThread(ErrorAtLine,ErrorPosition : integer; ErrorStr : string; ErrorType : TErrorType);
procedure MakeActiveScriptFrame; procedure MakeActiveScriptFrame;
procedure ScriptThreadTerminate(Sender: TObject); procedure ScriptThreadTerminate(Sender: TObject);
constructor Create(TheOwner: TComponent); override; constructor Create(TheOwner: TComponent); override;
destructor Destroy; override; destructor Destroy; override;
{ public declarations } { public declarations }
end; end;
implementation implementation
uses uses
TestUnit; TestUnit;
{ TScriptFrame } { TScriptFrame }
procedure TScriptFrame.SynEditChange(Sender: TObject); procedure TScriptFrame.SynEditChange(Sender: TObject);
begin begin
ScriptErrorLine:= -1; ScriptErrorLine:= -1;
if not ScriptChanged then if not ScriptChanged then
begin; begin;
ScriptChanged:= True; ScriptChanged:= True;
Form1.Caption:= Format(WindowTitle,[ScriptName + '*']); Form1.Caption:= Format(WindowTitle,[ScriptName + '*']);
OwnerSheet.Caption:=ScriptName + '*'; OwnerSheet.Caption:=ScriptName + '*';
end; end;
end; end;
procedure TScriptFrame.SynEditProcessCommand(Sender: TObject; procedure TScriptFrame.SynEditProcessCommand(Sender: TObject;
var Command: TSynEditorCommand; var AChar: TUTF8Char; Data: pointer); var Command: TSynEditorCommand; var AChar: TUTF8Char; Data: pointer);
begin begin
if Command = ecUndo then if Command = ecUndo then
begin; begin;
Command:= ecNone; Command:= ecNone;
Self.Undo; Self.Undo;
end else end else
if Command = ecRedo then if Command = ecRedo then
begin; begin;
Command := ecNone; Command := ecNone;
Self.Redo; Self.Redo;
end; end;
end; end;
procedure TScriptFrame.SynEditSpecialLineColors(Sender: TObject; procedure TScriptFrame.SynEditSpecialLineColors(Sender: TObject;
Line: integer; var Special: boolean; var FG, BG: TColor); Line: integer; var Special: boolean; var FG, BG: TColor);
begin begin
if line = ScriptErrorLine then if line = ScriptErrorLine then
begin; begin;
Special := true; Special := true;
BG := $50a0ff; BG := $50a0ff;
FG := 0; FG := 0;
end; end;
end; end;
procedure TScriptFrame.undo; procedure TScriptFrame.undo;
begin begin
SynEdit.Undo; SynEdit.Undo;
if ScriptChanged then if ScriptChanged then
if SynEdit.Lines.Text = StartText then if SynEdit.Lines.Text = StartText then
begin; begin;
Form1.Caption:= format(WindowTitle,[ScriptName]); Form1.Caption:= format(WindowTitle,[ScriptName]);
OwnerSheet.Caption:= ScriptName; OwnerSheet.Caption:= ScriptName;
ScriptChanged := false; ScriptChanged := false;
end; end;
end; end;
procedure TScriptFrame.redo; procedure TScriptFrame.redo;
begin begin
SynEdit.Redo; SynEdit.Redo;
if ScriptChanged then if ScriptChanged then
if SynEdit.Lines.Text = StartText then if SynEdit.Lines.Text = StartText then
begin; begin;
Form1.Caption:= format(WindowTitle,[ScriptName]); Form1.Caption:= format(WindowTitle,[ScriptName]);
OwnerSheet.Caption := ScriptName; OwnerSheet.Caption := ScriptName;
ScriptChanged := false; ScriptChanged := false;
end; end;
end; end;
procedure TScriptFrame.ErrorThread(ErrorAtLine, ErrorPosition: integer; procedure TScriptFrame.ErrorThread(ErrorAtLine, ErrorPosition: integer;
ErrorStr: string; ErrorType: TErrorType); ErrorStr: string; ErrorType: TErrorType);
begin begin
MakeActiveScriptFrame; MakeActiveScriptFrame;
ScriptErrorLine:= ErrorAtLine; ScriptErrorLine:= ErrorAtLine;
SynEdit.Invalidate; SynEdit.Invalidate;
SynEdit.SelStart:= ErrorPosition; SynEdit.SelStart:= ErrorPosition;
Writeln(Format('Error: %s at line %d',[errorstr,erroratline])); Writeln(Format('Error: %s at line %d',[errorstr,erroratline]));
end; end;
procedure TScriptFrame.MakeActiveScriptFrame; procedure TScriptFrame.MakeActiveScriptFrame;
var var
i : integer; i : integer;
begin begin
for i := 0 to OwnerPage.PageCount - 1 do for i := 0 to OwnerPage.PageCount - 1 do
if OwnerPage.Pages[i] = OwnerSheet then if OwnerPage.Pages[i] = OwnerSheet then
begin; begin;
OwnerPage.TabIndex := i; OwnerPage.TabIndex := i;
OwnerSheet.SetFocus; OwnerSheet.SetFocus;
exit; exit;
end; end;
end; end;
procedure TScriptFrame.ScriptThreadTerminate(Sender: TObject); procedure TScriptFrame.ScriptThreadTerminate(Sender: TObject);
begin begin
FScriptState:= ss_None; FScriptState:= ss_None;
Form1.RefreshTab; Form1.RefreshTab;
end; end;
constructor TScriptFrame.Create(TheOwner: TComponent); constructor TScriptFrame.Create(TheOwner: TComponent);
begin begin
inherited Create(TheOwner); inherited Create(TheOwner);
OwnerSheet := TTabSheet(TheOwner); OwnerSheet := TTabSheet(TheOwner);
OwnerPage := TPageControl(OwnerSheet.Owner); OwnerPage := TPageControl(OwnerSheet.Owner);
StartText:= SynEdit.Lines.text; StartText:= SynEdit.Lines.text;
ScriptDefault:= StartText; ScriptDefault:= StartText;
ScriptName:= 'Untitled'; ScriptName:= 'Untitled';
ScriptChanged := false; ScriptChanged := false;
FScriptState:= ss_None; FScriptState:= ss_None;
ScriptErrorLine:= -1; ScriptErrorLine:= -1;
OwnerSheet.Caption:= ScriptName; OwnerSheet.Caption:= ScriptName;
end; SynEdit.IncrementColor.Background := $30D070;
SynEdit.HighlightAllColor.Background:= clYellow;
destructor TScriptFrame.Destroy; SynEdit.HighlightAllColor.Foreground:= clDefault;
begin end;
inherited Destroy;
end; destructor TScriptFrame.Destroy;
begin
initialization inherited Destroy;
{$I framescript.lrs} end;
end. initialization
{$I framescript.lrs}
end.

View File

@ -7,7 +7,7 @@
<TargetFileExt Value=""/> <TargetFileExt Value=""/>
<Title Value="Mufasa Stand Alone"/> <Title Value="Mufasa Stand Alone"/>
<UseXPManifest Value="True"/> <UseXPManifest Value="True"/>
<ActiveEditorIndexAtStart Value="6"/> <ActiveEditorIndexAtStart Value="24"/>
</General> </General>
<VersionInfo> <VersionInfo>
<ProjectVersion Value=""/> <ProjectVersion Value=""/>
@ -33,7 +33,7 @@
<PackageName Value="LCL"/> <PackageName Value="LCL"/>
</Item2> </Item2>
</RequiredPackages> </RequiredPackages>
<Units Count="198"> <Units Count="204">
<Unit0> <Unit0>
<Filename Value="project1.lpr"/> <Filename Value="project1.lpr"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
@ -168,8 +168,8 @@
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<UnitName Value="TestUnit"/> <UnitName Value="TestUnit"/>
<CursorPos X="75" Y="255"/> <CursorPos X="18" Y="615"/>
<TopLine Value="255"/> <TopLine Value="610"/>
<EditorIndex Value="0"/> <EditorIndex Value="0"/>
<UsageCount Value="202"/> <UsageCount Value="202"/>
<Loaded Value="True"/> <Loaded Value="True"/>
@ -226,8 +226,8 @@
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<UnitName Value="Client"/> <UnitName Value="Client"/>
<CursorPos X="26" Y="44"/> <CursorPos X="26" Y="44"/>
<TopLine Value="31"/> <TopLine Value="26"/>
<EditorIndex Value="7"/> <EditorIndex Value="18"/>
<UsageCount Value="201"/> <UsageCount Value="201"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit26> </Unit26>
@ -260,7 +260,7 @@
<UnitName Value="Window"/> <UnitName Value="Window"/>
<CursorPos X="39" Y="312"/> <CursorPos X="39" Y="312"/>
<TopLine Value="306"/> <TopLine Value="306"/>
<EditorIndex Value="2"/> <EditorIndex Value="13"/>
<UsageCount Value="201"/> <UsageCount Value="201"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit30> </Unit30>
@ -276,8 +276,8 @@
<UnitName Value="windowutil"/> <UnitName Value="windowutil"/>
<CursorPos X="29" Y="29"/> <CursorPos X="29" Y="29"/>
<TopLine Value="24"/> <TopLine Value="24"/>
<EditorIndex Value="3"/> <EditorIndex Value="14"/>
<UsageCount Value="33"/> <UsageCount Value="35"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit32> </Unit32>
<Unit33> <Unit33>
@ -285,8 +285,8 @@
<UnitName Value="Input"/> <UnitName Value="Input"/>
<CursorPos X="19" Y="229"/> <CursorPos X="19" Y="229"/>
<TopLine Value="225"/> <TopLine Value="225"/>
<EditorIndex Value="10"/> <EditorIndex Value="21"/>
<UsageCount Value="57"/> <UsageCount Value="59"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit33> </Unit33>
<Unit34> <Unit34>
@ -295,7 +295,7 @@
<UnitName Value="finder"/> <UnitName Value="finder"/>
<CursorPos X="50" Y="19"/> <CursorPos X="50" Y="19"/>
<TopLine Value="19"/> <TopLine Value="19"/>
<EditorIndex Value="8"/> <EditorIndex Value="19"/>
<UsageCount Value="201"/> <UsageCount Value="201"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit34> </Unit34>
@ -319,8 +319,8 @@
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<UnitName Value="mmlpsthread"/> <UnitName Value="mmlpsthread"/>
<CursorPos X="29" Y="349"/> <CursorPos X="29" Y="349"/>
<TopLine Value="318"/> <TopLine Value="308"/>
<EditorIndex Value="4"/> <EditorIndex Value="15"/>
<UsageCount Value="202"/> <UsageCount Value="202"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit37> </Unit37>
@ -381,16 +381,18 @@
<Unit46> <Unit46>
<Filename Value="../../../lazarus/components/synedit/synedit.pp"/> <Filename Value="../../../lazarus/components/synedit/synedit.pp"/>
<UnitName Value="SynEdit"/> <UnitName Value="SynEdit"/>
<CursorPos X="19" Y="6368"/> <CursorPos X="44" Y="965"/>
<TopLine Value="6343"/> <TopLine Value="954"/>
<EditorIndex Value="9"/>
<UsageCount Value="13"/> <UsageCount Value="13"/>
<Loaded Value="True"/>
</Unit46> </Unit46>
<Unit47> <Unit47>
<Filename Value="../../Units/MMLAddon/PSInc/pscompile.inc"/> <Filename Value="../../Units/MMLAddon/PSInc/pscompile.inc"/>
<CursorPos X="48" Y="96"/> <CursorPos X="67" Y="97"/>
<TopLine Value="87"/> <TopLine Value="87"/>
<EditorIndex Value="11"/> <EditorIndex Value="22"/>
<UsageCount Value="79"/> <UsageCount Value="81"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit47> </Unit47>
<Unit48> <Unit48>
@ -411,7 +413,7 @@
<UnitName Value="bitmaps"/> <UnitName Value="bitmaps"/>
<CursorPos X="44" Y="692"/> <CursorPos X="44" Y="692"/>
<TopLine Value="666"/> <TopLine Value="666"/>
<EditorIndex Value="9"/> <EditorIndex Value="20"/>
<UsageCount Value="200"/> <UsageCount Value="200"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit50> </Unit50>
@ -584,8 +586,8 @@
<Filename Value="../../Units/MMLAddon/PSInc/Wrappers/other.inc"/> <Filename Value="../../Units/MMLAddon/PSInc/Wrappers/other.inc"/>
<CursorPos X="1" Y="1"/> <CursorPos X="1" Y="1"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<EditorIndex Value="12"/> <EditorIndex Value="23"/>
<UsageCount Value="23"/> <UsageCount Value="25"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit76> </Unit76>
<Unit77> <Unit77>
@ -733,7 +735,7 @@
<UnitName Value="colourpicker"/> <UnitName Value="colourpicker"/>
<CursorPos X="18" Y="100"/> <CursorPos X="18" Y="100"/>
<TopLine Value="96"/> <TopLine Value="96"/>
<EditorIndex Value="1"/> <EditorIndex Value="12"/>
<UsageCount Value="201"/> <UsageCount Value="201"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit98> </Unit98>
@ -794,7 +796,7 @@
<UnitName Value="dtmutil"/> <UnitName Value="dtmutil"/>
<CursorPos X="32" Y="18"/> <CursorPos X="32" Y="18"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<UsageCount Value="191"/> <UsageCount Value="196"/>
</Unit106> </Unit106>
<Unit107> <Unit107>
<Filename Value="../../../cogat/Units/CogatUnits/compmaths.pas"/> <Filename Value="../../../cogat/Units/CogatUnits/compmaths.pas"/>
@ -836,7 +838,7 @@
<UnitName Value="mmath"/> <UnitName Value="mmath"/>
<CursorPos X="32" Y="42"/> <CursorPos X="32" Y="42"/>
<TopLine Value="16"/> <TopLine Value="16"/>
<UsageCount Value="171"/> <UsageCount Value="176"/>
</Unit112> </Unit112>
<Unit113> <Unit113>
<Filename Value="../../../Documents/fpc/rtl/objpas/types.pp"/> <Filename Value="../../../Documents/fpc/rtl/objpas/types.pp"/>
@ -870,10 +872,10 @@
<Filename Value="../../Units/MMLCore/ocr.pas"/> <Filename Value="../../Units/MMLCore/ocr.pas"/>
<IsPartOfProject Value="True"/> <IsPartOfProject Value="True"/>
<UnitName Value="ocr"/> <UnitName Value="ocr"/>
<CursorPos X="36" Y="692"/> <CursorPos X="19" Y="91"/>
<TopLine Value="674"/> <TopLine Value="75"/>
<EditorIndex Value="6"/> <EditorIndex Value="17"/>
<UsageCount Value="141"/> <UsageCount Value="146"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit117> </Unit117>
<Unit118> <Unit118>
@ -889,7 +891,7 @@
<UnitName Value="project"/> <UnitName Value="project"/>
<CursorPos X="46" Y="15"/> <CursorPos X="46" Y="15"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<UsageCount Value="138"/> <UsageCount Value="143"/>
</Unit119> </Unit119>
<Unit120> <Unit120>
<Filename Value="../../../FPC/FPCCheckout/rtl/inc/heap.inc"/> <Filename Value="../../../FPC/FPCCheckout/rtl/inc/heap.inc"/>
@ -1003,7 +1005,7 @@
<UnitName Value="web"/> <UnitName Value="web"/>
<CursorPos X="90" Y="16"/> <CursorPos X="90" Y="16"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<UsageCount Value="66"/> <UsageCount Value="71"/>
</Unit137> </Unit137>
<Unit138> <Unit138>
<Filename Value="../../../lazarus/lcl/lazhelphtml.pas"/> <Filename Value="../../../lazarus/lcl/lazhelphtml.pas"/>
@ -1050,9 +1052,11 @@
<Unit144> <Unit144>
<Filename Value="../../../lazarus/ide/editoroptions.pp"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<UnitName Value="EditorOptions"/> <UnitName Value="EditorOptions"/>
<CursorPos X="45" Y="284"/> <CursorPos X="24" Y="286"/>
<TopLine Value="274"/> <TopLine Value="274"/>
<UsageCount Value="8"/> <EditorIndex Value="1"/>
<UsageCount Value="11"/>
<Loaded Value="True"/>
</Unit144> </Unit144>
<Unit145> <Unit145>
<Filename Value="../../../lazarus/ide/frames/editor_color_options.pas"/> <Filename Value="../../../lazarus/ide/frames/editor_color_options.pas"/>
@ -1077,9 +1081,11 @@
<HasResources Value="True"/> <HasResources Value="True"/>
<ResourceBaseClass Value="Form"/> <ResourceBaseClass Value="Form"/>
<UnitName Value="SourceEditor"/> <UnitName Value="SourceEditor"/>
<CursorPos X="24" Y="5054"/> <CursorPos X="37" Y="5085"/>
<TopLine Value="5033"/> <TopLine Value="5069"/>
<UsageCount Value="9"/> <EditorIndex Value="7"/>
<UsageCount Value="11"/>
<Loaded Value="True"/>
</Unit147> </Unit147>
<Unit148> <Unit148>
<Filename Value="../../../lazarus/ide/checklfmdlg.pas"/> <Filename Value="../../../lazarus/ide/checklfmdlg.pas"/>
@ -1094,9 +1100,11 @@
<Unit149> <Unit149>
<Filename Value="../../../lazarus/ide/main.pp"/> <Filename Value="../../../lazarus/ide/main.pp"/>
<UnitName Value="Main"/> <UnitName Value="Main"/>
<CursorPos X="3" Y="3039"/> <CursorPos X="17" Y="1871"/>
<TopLine Value="3032"/> <TopLine Value="1860"/>
<UsageCount Value="9"/> <EditorIndex Value="4"/>
<UsageCount Value="11"/>
<Loaded Value="True"/>
</Unit149> </Unit149>
<Unit150> <Unit150>
<Filename Value="../../../lazarus/ide/buildfiledlg.pas"/> <Filename Value="../../../lazarus/ide/buildfiledlg.pas"/>
@ -1202,10 +1210,10 @@
<ComponentName Value="ScriptFrame"/> <ComponentName Value="ScriptFrame"/>
<ResourceBaseClass Value="Frame"/> <ResourceBaseClass Value="Frame"/>
<UnitName Value="framescript"/> <UnitName Value="framescript"/>
<CursorPos X="24" Y="32"/> <CursorPos X="45" Y="174"/>
<TopLine Value="32"/> <TopLine Value="171"/>
<EditorIndex Value="13"/> <EditorIndex Value="24"/>
<UsageCount Value="59"/> <UsageCount Value="64"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit162> </Unit162>
<Unit163> <Unit163>
@ -1286,9 +1294,11 @@
<Unit174> <Unit174>
<Filename Value="../../../lazarus/ide/keymapping.pp"/> <Filename Value="../../../lazarus/ide/keymapping.pp"/>
<UnitName Value="KeyMapping"/> <UnitName Value="KeyMapping"/>
<CursorPos X="18" Y="77"/> <CursorPos X="23" Y="2427"/>
<TopLine Value="72"/> <TopLine Value="2419"/>
<UsageCount Value="9"/> <EditorIndex Value="2"/>
<UsageCount Value="11"/>
<Loaded Value="True"/>
</Unit174> </Unit174>
<Unit175> <Unit175>
<Filename Value="../../../lazarus/ide/basedebugmanager.pas"/> <Filename Value="../../../lazarus/ide/basedebugmanager.pas"/>
@ -1428,137 +1438,191 @@
<Filename Value="../../Units/MMLAddon/PSInc/Wrappers/ocr.inc"/> <Filename Value="../../Units/MMLAddon/PSInc/Wrappers/ocr.inc"/>
<CursorPos X="33" Y="4"/> <CursorPos X="33" Y="4"/>
<TopLine Value="1"/> <TopLine Value="1"/>
<EditorIndex Value="5"/> <EditorIndex Value="16"/>
<UsageCount Value="14"/> <UsageCount Value="16"/>
<Loaded Value="True"/> <Loaded Value="True"/>
</Unit196> </Unit196>
<Unit197> <Unit197>
<Filename Value="../../../../Documents/lazarus/lcl/interfaces/gtk/gtkwidgetset.inc"/> <Filename Value="../../../Documents/lazarus/lcl/interfaces/gtk/gtkwidgetset.inc"/>
<CursorPos X="1" Y="1291"/> <CursorPos X="1" Y="1291"/>
<TopLine Value="1276"/> <TopLine Value="1276"/>
<UsageCount Value="10"/> <UsageCount Value="10"/>
</Unit197> </Unit197>
<Unit198>
<Filename Value="../../../lazarus/ide/lazarusidestrconsts.pas"/>
<UnitName Value="LazarusIDEStrConsts"/>
<CursorPos X="3" Y="1407"/>
<TopLine Value="1396"/>
<EditorIndex Value="3"/>
<UsageCount Value="11"/>
<Loaded Value="True"/>
</Unit198>
<Unit199>
<Filename Value="../../../lazarus/ide/mainbar.pas"/>
<UnitName Value="MainBar"/>
<CursorPos X="12" Y="166"/>
<TopLine Value="155"/>
<EditorIndex Value="5"/>
<UsageCount Value="11"/>
<Loaded Value="True"/>
</Unit199>
<Unit200>
<Filename Value="../../../lazarus/ide/mainbase.pas"/>
<UnitName Value="MainBase"/>
<CursorPos X="8" Y="892"/>
<TopLine Value="881"/>
<EditorIndex Value="6"/>
<UsageCount Value="11"/>
<Loaded Value="True"/>
</Unit200>
<Unit201>
<Filename Value="../../../lazarus/components/synedit/syneditmarkuphighall.pp"/>
<UnitName Value="SynEditMarkupHighAll"/>
<CursorPos X="26" Y="22"/>
<TopLine Value="1"/>
<EditorIndex Value="11"/>
<UsageCount Value="11"/>
<Loaded Value="True"/>
</Unit201>
<Unit202>
<Filename Value="../../../lazarus/components/synedit/syneditmarkup.pp"/>
<UnitName Value="SynEditMarkup"/>
<CursorPos X="1" Y="1"/>
<TopLine Value="145"/>
<EditorIndex Value="8"/>
<UsageCount Value="11"/>
<Loaded Value="True"/>
</Unit202>
<Unit203>
<Filename Value="../../../lazarus/components/synedit/syneditmiscclasses.pp"/>
<UnitName Value="SynEditMiscClasses"/>
<CursorPos X="3" Y="193"/>
<TopLine Value="182"/>
<EditorIndex Value="10"/>
<UsageCount Value="10"/>
<Loaded Value="True"/>
</Unit203>
</Units> </Units>
<JumpHistory Count="30" HistoryIndex="29"> <JumpHistory Count="30" HistoryIndex="29">
<Position1> <Position1>
<Filename Value="../../Units/MMLCore/ocr.pas"/> <Filename Value="../../../lazarus/ide/sourceeditor.pp"/>
<Caret Line="669" Column="45" TopLine="654"/> <Caret Line="6887" Column="27" TopLine="6876"/>
</Position1> </Position1>
<Position2> <Position2>
<Filename Value="../../Units/MMLAddon/mmlpsthread.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="152" Column="31" TopLine="146"/> <Caret Line="3680" Column="41" TopLine="3666"/>
</Position2> </Position2>
<Position3> <Position3>
<Filename Value="../../Units/MMLAddon/mmlpsthread.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="247" Column="21" TopLine="232"/> <Caret Line="2432" Column="53" TopLine="2394"/>
</Position3> </Position3>
<Position4> <Position4>
<Filename Value="testunit.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="264" Column="7" TopLine="242"/> <Caret Line="3680" Column="30" TopLine="3666"/>
</Position4> </Position4>
<Position5> <Position5>
<Filename Value="testunit.pas"/> <Filename Value="../../../lazarus/components/synedit/synedit.pp"/>
<Caret Line="265" Column="18" TopLine="250"/> <Caret Line="1093" Column="22" TopLine="1082"/>
</Position5> </Position5>
<Position6> <Position6>
<Filename Value="../../Units/MMLAddon/mmlpsthread.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="158" Column="50" TopLine="142"/> <Caret Line="3680" Column="12" TopLine="3669"/>
</Position6> </Position6>
<Position7> <Position7>
<Filename Value="../../Units/MMLAddon/mmlpsthread.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="246" Column="21" TopLine="231"/> <Caret Line="3737" Column="40" TopLine="3737"/>
</Position7> </Position7>
<Position8> <Position8>
<Filename Value="../../Units/MMLCore/ocr.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="67" Column="42" TopLine="55"/> <Caret Line="3816" Column="17" TopLine="3784"/>
</Position8> </Position8>
<Position9> <Position9>
<Filename Value="../../Units/MMLCore/bitmaps.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="491" Column="36" TopLine="479"/> <Caret Line="3680" Column="15" TopLine="3669"/>
</Position9> </Position9>
<Position10> <Position10>
<Filename Value="../../Units/MMLCore/window.pas"/> <Filename Value="../../../lazarus/ide/sourceeditor.pp"/>
<Caret Line="48" Column="32" TopLine="33"/> <Caret Line="2" Column="61" TopLine="1"/>
</Position10> </Position10>
<Position11> <Position11>
<Filename Value="../../Units/MMLCore/window.pas"/> <Filename Value="../../../lazarus/ide/sourceeditor.pp"/>
<Caret Line="49" Column="37" TopLine="33"/> <Caret Line="5079" Column="19" TopLine="5066"/>
</Position11> </Position11>
<Position12> <Position12>
<Filename Value="../../Units/MMLCore/window.pas"/> <Filename Value="../../../lazarus/components/synedit/synedit.pp"/>
<Caret Line="72" Column="78" TopLine="57"/> <Caret Line="880" Column="60" TopLine="869"/>
</Position12> </Position12>
<Position13> <Position13>
<Filename Value="../../Units/MMLCore/window.pas"/> <Filename Value="testunit.pas"/>
<Caret Line="130" Column="35" TopLine="115"/> <Caret Line="541" Column="43" TopLine="531"/>
</Position13> </Position13>
<Position14> <Position14>
<Filename Value="../../Units/MMLCore/window.pas"/> <Filename Value="testunit.pas"/>
<Caret Line="132" Column="45" TopLine="115"/> <Caret Line="615" Column="18" TopLine="610"/>
</Position14> </Position14>
<Position15> <Position15>
<Filename Value="../../Units/MMLCore/window.pas"/> <Filename Value="../../../lazarus/components/synedit/synedit.pp"/>
<Caret Line="262" Column="20" TopLine="247"/> <Caret Line="880" Column="59" TopLine="869"/>
</Position15> </Position15>
<Position16> <Position16>
<Filename Value="../../Units/MMLCore/window.pas"/> <Filename Value="../../../lazarus/components/synedit/synedit.pp"/>
<Caret Line="264" Column="19" TopLine="247"/> <Caret Line="1985" Column="13" TopLine="1983"/>
</Position16> </Position16>
<Position17> <Position17>
<Filename Value="../../Units/MMLCore/window.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="313" Column="52" TopLine="297"/> <Caret Line="922" Column="15" TopLine="911"/>
</Position17> </Position17>
<Position18> <Position18>
<Filename Value="../../Units/MMLCore/windowutil.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="19" Column="38" TopLine="4"/> <Caret Line="2432" Column="89" TopLine="2424"/>
</Position18> </Position18>
<Position19> <Position19>
<Filename Value="../../Units/MMLCore/window.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="313" Column="43" TopLine="297"/> <Caret Line="465" Column="9" TopLine="439"/>
</Position19> </Position19>
<Position20> <Position20>
<Filename Value="../../Units/MMLCore/client.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="44" Column="26" TopLine="31"/> <Caret Line="2432" Column="33" TopLine="2421"/>
</Position20> </Position20>
<Position21> <Position21>
<Filename Value="../../Units/MMLCore/finder.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="58" Column="33" TopLine="39"/> <Caret Line="3680" Column="14" TopLine="3669"/>
</Position21> </Position21>
<Position22> <Position22>
<Filename Value="../../Units/MMLCore/ocr.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="673" Column="10" TopLine="656"/> <Caret Line="922" Column="15" TopLine="911"/>
</Position22> </Position22>
<Position23> <Position23>
<Filename Value="../../Units/MMLCore/bitmaps.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="74" Column="24" TopLine="59"/> <Caret Line="3680" Column="76" TopLine="3669"/>
</Position23> </Position23>
<Position24> <Position24>
<Filename Value="../../Units/MMLCore/bitmaps.pas"/> <Filename Value="../../../lazarus/components/synedit/synedit.pp"/>
<Caret Line="758" Column="14" TopLine="748"/> <Caret Line="1113" Column="20" TopLine="1102"/>
</Position24> </Position24>
<Position25> <Position25>
<Filename Value="../../Units/MMLCore/bitmaps.pas"/> <Filename Value="../../../lazarus/components/synedit/synedit.pp"/>
<Caret Line="74" Column="24" TopLine="62"/> <Caret Line="965" Column="44" TopLine="954"/>
</Position25> </Position25>
<Position26> <Position26>
<Filename Value="../../Units/MMLCore/ocr.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="673" Column="24" TopLine="656"/> <Caret Line="3680" Column="76" TopLine="3669"/>
</Position26> </Position26>
<Position27> <Position27>
<Filename Value="../../Units/MMLCore/bitmaps.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="70" Column="23" TopLine="55"/> <Caret Line="162" Column="7" TopLine="151"/>
</Position27> </Position27>
<Position28> <Position28>
<Filename Value="../../Units/MMLCore/bitmaps.pas"/> <Filename Value="framescript.pas"/>
<Caret Line="71" Column="23" TopLine="55"/> <Caret Line="32" Column="24" TopLine="32"/>
</Position28> </Position28>
<Position29> <Position29>
<Filename Value="../../Units/MMLCore/bitmaps.pas"/> <Filename Value="../../../lazarus/ide/editoroptions.pp"/>
<Caret Line="671" Column="24" TopLine="666"/> <Caret Line="285" Column="1" TopLine="280"/>
</Position29> </Position29>
<Position30> <Position30>
<Filename Value="../../Units/MMLCore/ocr.pas"/> <Filename Value="framescript.pas"/>
<Caret Line="698" Column="13" TopLine="672"/> <Caret Line="182" Column="1" TopLine="166"/>
</Position30> </Position30>
</JumpHistory> </JumpHistory>
</ProjectOptions> </ProjectOptions>

View File

@ -1,12 +1,11 @@
object Form1: TForm1 object Form1: TForm1
Left = 278 Left = 448
Height = 553 Height = 557
Top = 235 Top = 192
Width = 723 Width = 731
ActiveControl = PageControl1
Caption = 'Action1' Caption = 'Action1'
ClientHeight = 528 ClientHeight = 537
ClientWidth = 723 ClientWidth = 731
Menu = MainMenu1 Menu = MainMenu1
OnClose = FormClose OnClose = FormClose
OnCreate = FormCreate OnCreate = FormCreate
@ -19,7 +18,7 @@ object Form1: TForm1
Left = 0 Left = 0
Height = 24 Height = 24
Top = 0 Top = 0
Width = 723 Width = 731
Caption = 'ToolBar1' Caption = 'ToolBar1'
Images = Mufasa_Image_List Images = Mufasa_Image_List
ParentShowHint = False ParentShowHint = False
@ -165,9 +164,9 @@ object Form1: TForm1
end end
object StatusBar: TStatusBar object StatusBar: TStatusBar
Left = 0 Left = 0
Height = 21 Height = 23
Top = 507 Top = 514
Width = 723 Width = 731
Panels = < Panels = <
item item
Width = 60 Width = 60
@ -183,19 +182,19 @@ object Form1: TForm1
end end
object PanelMemo: TPanel object PanelMemo: TPanel
Left = 0 Left = 0
Height = 147 Height = 154
Top = 360 Top = 360
Width = 723 Width = 731
Align = alBottom Align = alBottom
Anchors = [akTop, akLeft, akRight, akBottom] Anchors = [akTop, akLeft, akRight, akBottom]
ClientHeight = 147 ClientHeight = 154
ClientWidth = 723 ClientWidth = 731
TabOrder = 2 TabOrder = 2
object Memo1: TMemo object Memo1: TMemo
Left = 1 Left = 1
Height = 145 Height = 152
Top = 1 Top = 1
Width = 721 Width = 729
Align = alClient Align = alClient
Anchors = [akLeft, akRight, akBottom] Anchors = [akLeft, akRight, akBottom]
ScrollBars = ssAutoBoth ScrollBars = ssAutoBoth
@ -207,23 +206,67 @@ object Form1: TForm1
Left = 0 Left = 0
Height = 5 Height = 5
Top = 355 Top = 355
Width = 723 Width = 731
Align = alBottom Align = alBottom
ResizeAnchor = akBottom ResizeAnchor = akBottom
end end
object PageControl1: TPageControl object ScriptPanel: TPanel
Left = 0 Left = 0
Height = 331 Height = 331
Top = 24 Top = 24
Width = 723 Width = 731
Align = alClient Align = alClient
PopupMenu = TabPopup BevelOuter = bvNone
Caption = 'ScriptPanel'
ClientHeight = 331
ClientWidth = 731
TabOrder = 4 TabOrder = 4
OnChange = PageControl1Change object PageControl1: TPageControl
OnContextPopup = PageControl1ContextPopup Left = 0
OnDragDrop = PageControl1DragDrop Height = 304
OnDragOver = PageControl1DragOver Top = 0
OnMouseDown = PageControl1MouseDown Width = 731
Align = alClient
PopupMenu = TabPopup
TabOrder = 0
OnChange = PageControl1Change
OnContextPopup = PageControl1ContextPopup
OnDragDrop = PageControl1DragDrop
OnDragOver = PageControl1DragOver
OnMouseDown = PageControl1MouseDown
end
object SearchPanel: TPanel
Left = 0
Height = 27
Top = 304
Width = 731
Align = alBottom
BevelOuter = bvSpace
ClientHeight = 27
ClientWidth = 731
TabOrder = 1
Visible = False
object LabeledEditSearch: TLabeledEdit
Left = 104
Height = 21
Top = 6
Width = 174
EditLabel.AnchorSideLeft.Control = LabeledEditSearch
EditLabel.AnchorSideTop.Control = LabeledEditSearch
EditLabel.AnchorSideTop.Side = asrCenter
EditLabel.AnchorSideRight.Control = LabeledEditSearch
EditLabel.AnchorSideBottom.Control = LabeledEditSearch
EditLabel.Left = 73
EditLabel.Height = 14
EditLabel.Top = 9
EditLabel.Width = 28
EditLabel.Caption = 'Find: '
EditLabel.ParentColor = False
LabelPosition = lpLeft
TabOrder = 0
OnChange = EditSearchChange
end
end
end end
object MainMenu1: TMainMenu object MainMenu1: TMainMenu
left = 560 left = 560
@ -659,6 +702,42 @@ object Form1: TForm1
end end
object MenuItemCopy: TMenuItem object MenuItemCopy: TMenuItem
Caption = 'Copy' Caption = 'Copy'
Bitmap.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000064000000640000000000000000000000FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C57342C1C67545E6C87545FEC775
45F3C87545F3C77545F3C77545F3C87546F4C57444E8CA7F53F1FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C77949EDFCF3ECFFFAF1E8FFFAF0
E7FFFBF1E9FFFBF2EAFFFBF2EAFFFBF2EBFFFDF4EEFFCA8054F9FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CF8253FFEFF1E7FFFFE9D9FFFFEA
DBFFFFE9D9FFFFE7D7FFFFE5D2FFFFE2CBFFEFF2E8FFCE8156FFFFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CC8352FBFBF5EEFFFFE9D9FFFFEA
DBFFFFE9D9FFFFE7D7FFFFE5D2FFFFE2CBFFFBF6EFFFCC8355FEC7794AB9C879
4BCEC87545DDC77545D4C87545D4C77545D4CA8452FFFFF7F1FFFFE9D9FFFFEA
DBFFFFE9D9FFFFE7D7FFFFE5D2FFFFE2CBFFFFF7F1FFCB8555FEC87C4ED3FCF3
ECDEFAF1E8DEFAF0E7DEFBF1E9DEFBF2EADEE4BA91FFFFF7F0FFFFE7D5FFFDE7
D6FFFDE6D4FFFCE4D0FFFBE3CBFFFADCC2FFFEF3E8FFCC8656FECF8253DEEFF1
E7DEFFE9D9DEFFEADBDEFFE9D9DEFFE7D7DEE4BB91FFFFF7F2FFFEE7D5FFFEE7
D5FFFDE5D1FFFAE0CAFFF9DEC4FFF7D9BCFFFDF2E7FFCC8757FECC8352DBFBF5
EEDEFFE9D9DEFFEADBDEFFE9D9DEFFE7D7DEE4BB92FFFEF7F1FFFCE5D2FFFCE4
D1FFFBE2CCFFF9DDC4FFF6D7BBFFF3D1AFFFFAEFE4FFCC8758FECA8452DBFFF7
F1DEFFE9D9DEFFEADBDEFFE9D9DEFFE7D7DEE4BB92FFFEF6F0FFFCE2CDFFFCE3
CDFFFADFC8FFF7D9BCFFF5E9DDFFFAF3EBFFFBF8F3FFCA8353FECB8553DBFFF7
F0DEFFE7D5DEFDE7D6DEFDE6D4DEFCE4D0DEE4BB93FFFEF5EDFFFCDEC5FFFBE0
C7FFF9DCC2FFF5D3B4FFFEF9F3FFFAE2C4FFECC193FFC37D4893CB8654DBFFF7
F2DEFEE7D5DEFEE7D5DEFDE5D1DEFAE0CADEE5BE96FFFFFFFEFFFDF3E9FFFDF3
EAFFFCF2E8FFFAEFE3FFFAF2E7FFEABB88FFCF8555B3B4693D0CCB8655DBFEF7
F1DEFCE5D2DEFCE4D1DEFBE2CCDEF9DDC4DEEAC39DFFE6BF96FFE4BB92FFE4BB
92FFD1A06CF5D09E6DF6CC965FDAC479427EB2673C09FFFFFF00CB8655DBFEF6
F0DEFCE2CDDEFCE3CDDEFADFC8DEF7D9BCDEF5E9DDDEFAF3EBDEFBF8F3DECD95
65DCFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CB8656DAFEF5
EDDEFCDEC5DEFBE0C7DEF9DCC2DEF5D3B4DEFEF9F3DEFAE2C4DEECC193DEC37D
4880FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CA8554D0FFFF
FFDBFDF3E9DEFDF3EADEFCF2E8DEFAEFE3DEFAF2E7DEEABB88DECF85559CB469
3D0AFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C77947AACC86
55CECC8857DECB8856DBCC8856DBCB8757DBCA8350D0C479426EB2673C08FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
}
ImageIndex = 22 ImageIndex = 22
ShortCut = 16451 ShortCut = 16451
OnClick = MenuItemCopyClick OnClick = MenuItemCopyClick
@ -705,6 +784,14 @@ object Form1: TForm1
ShortCut = 16470 ShortCut = 16470
OnClick = MenuItemPasteClick OnClick = MenuItemPasteClick
end end
object MenuItemDivider4: TMenuItem
Caption = '-'
end
object MenuItemFind: TMenuItem
Caption = 'Find ..'
ShortCut = 16454
OnClick = MenuItemFindClick
end
end end
object MenuItemScript: TMenuItem object MenuItemScript: TMenuItem
Caption = 'Script' Caption = 'Script'

File diff suppressed because it is too large Load Diff

View File

@ -35,10 +35,9 @@ uses
MufasaTypes, MufasaTypes,
mmlpsthread, mmlpsthread,
window, // for the comp picker and selector window, // for the comp picker and selector
colourpicker, framescript, colourpicker, framescript, windowselector, lcltype, ActnList, StdActns,
windowselector, SynEditKeyCmds, SynEditHighlighter, SynEditMarkupSpecialLine,SynEditMarkupHighAll,
lcltype, ActnList, StdActns SynEditMiscClasses, LMessages, Buttons;
, SynEditKeyCmds,SynEditHighlighter, SynEditMarkupSpecialLine, SynEditMiscClasses, LMessages;
type type
@ -73,9 +72,12 @@ type
ActionTabLast: TAction; ActionTabLast: TAction;
ActionTabNext: TAction; ActionTabNext: TAction;
ActionList: TActionList; ActionList: TActionList;
LabeledEditSearch: TLabeledEdit;
Memo1: TMemo; Memo1: TMemo;
MenuFile: TMenuItem; MenuFile: TMenuItem;
MenuEdit: TMenuItem; MenuEdit: TMenuItem;
MenuItemFind: TMenuItem;
MenuItemDivider4: TMenuItem;
MenuItemDivider3: TMenuItem; MenuItemDivider3: TMenuItem;
MenuItemCopy: TMenuItem; MenuItemCopy: TMenuItem;
MenuItemSaveAll: TMenuItem; MenuItemSaveAll: TMenuItem;
@ -87,6 +89,9 @@ type
MenuItemNewTab: TMenuItem; MenuItemNewTab: TMenuItem;
MenuItemDivider2: TMenuItem; MenuItemDivider2: TMenuItem;
MenuItemDivider: TMenuItem; MenuItemDivider: TMenuItem;
PageControl1: TPageControl;
SearchPanel: TPanel;
ScriptPanel: TPanel;
TabPopup: TPopupMenu; TabPopup: TPopupMenu;
TB_SaveAll: TToolButton; TB_SaveAll: TToolButton;
TrayDivider: TMenuItem; TrayDivider: TMenuItem;
@ -109,7 +114,6 @@ type
MainMenu1: TMainMenu; MainMenu1: TMainMenu;
MenuItemScript: TMenuItem; MenuItemScript: TMenuItem;
MenuItemRun: TMenuItem; MenuItemRun: TMenuItem;
PageControl1: TPageControl;
PanelMemo: TPanel; PanelMemo: TPanel;
SplitterMemoSynedit: TSplitter; SplitterMemoSynedit: TSplitter;
TrayPopup: TPopupMenu; TrayPopup: TPopupMenu;
@ -147,6 +151,7 @@ type
procedure ActionStopExecute(Sender: TObject); procedure ActionStopExecute(Sender: TObject);
procedure ActionTabLastExecute(Sender: TObject); procedure ActionTabLastExecute(Sender: TObject);
procedure ActionTabNextExecute(Sender: TObject); procedure ActionTabNextExecute(Sender: TObject);
procedure EditSearchChange(Sender: TObject);
procedure FormClose(Sender: TObject; var CloseAction: TCloseAction); procedure FormClose(Sender: TObject; var CloseAction: TCloseAction);
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject); procedure FormDestroy(Sender: TObject);
@ -155,6 +160,7 @@ type
procedure MenuItemCopyClick(Sender: TObject); procedure MenuItemCopyClick(Sender: TObject);
procedure MenuItemCutClick(Sender: TObject); procedure MenuItemCutClick(Sender: TObject);
procedure MenuItemExitClick(Sender: TObject); procedure MenuItemExitClick(Sender: TObject);
procedure MenuItemFindClick(Sender: TObject);
procedure MenuItemPasteClick(Sender: TObject); procedure MenuItemPasteClick(Sender: TObject);
procedure MenuItemShowClick(Sender: TObject); procedure MenuItemShowClick(Sender: TObject);
procedure MenuItemTabCloseClick(Sender: TObject); procedure MenuItemTabCloseClick(Sender: TObject);
@ -522,6 +528,15 @@ begin
PageControl1.TabIndex:= CurrIndex; PageControl1.TabIndex:= CurrIndex;
end; end;
procedure TForm1.EditSearchChange(Sender: TObject);
begin
Writeln(LabeledEditSearch.Text);
CurrScript.SynEdit.SelStart:= -1;
CurrScript.SynEdit.SearchReplaceEx(LabeledEditSearch.Text,'',[],point(0,0));
with CurrScript.SynEdit do
SetHighlightSearch(LabeledEditSearch.text,[]);
end;
procedure TForm1.FormClose(Sender: TObject; var CloseAction: TCloseAction); procedure TForm1.FormClose(Sender: TObject; var CloseAction: TCloseAction);
var var
i : integer; i : integer;
@ -573,12 +588,18 @@ end;
procedure TForm1.MenuItemCopyClick(Sender: TObject); procedure TForm1.MenuItemCopyClick(Sender: TObject);
begin begin
Self.Copy; if CurrScript.SynEdit.Focused then
Self.Copy
else if Memo1.Focused then
Memo1.CopyToClipboard;
end; end;
procedure TForm1.MenuItemCutClick(Sender: TObject); procedure TForm1.MenuItemCutClick(Sender: TObject);
begin begin
Self.Cut; if CurrScript.SynEdit.Focused then
Self.Cut
else if Memo1.Focused then
Memo1.CutToClipboard;
end; end;
procedure TForm1.MenuItemExitClick(Sender: TObject); procedure TForm1.MenuItemExitClick(Sender: TObject);
@ -586,11 +607,27 @@ begin
Self.Close; Self.Close;
end; end;
procedure TForm1.MenuItemFindClick(Sender: TObject);
begin
SearchPanel.Visible:= not SearchPanel.Visible;
with CurrScript.SynEdit do
begin;
UseIncrementalColor:= true;
if SearchPanel.Visible then
MarkupByClass[TSynEditMarkupHighlightAllCaret].TempDisable
else
MarkupByClass[TSynEditMarkupHighlightAllCaret].TempEnable;
end;
end;
procedure TForm1.MenuItemPasteClick(Sender: TObject); procedure TForm1.MenuItemPasteClick(Sender: TObject);
begin begin
Self.Paste; if CurrScript.SynEdit.Focused then
Self.Paste
else if Memo1.Focused then
Memo1.PasteFromClipboard;
end; end;