20080720 release: updated list of controls for DfmToLfm converter.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@510 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
MacPgmr
2008-07-20 20:44:11 +00:00
parent 9f181dc51d
commit 25a4ed79d5
4 changed files with 113 additions and 63 deletions

View File

@@ -47,11 +47,13 @@ var
FnStr : string; FnStr : string;
FnPos : Integer; FnPos : Integer;
FnRef : string; FnRef : string;
PrevInStr : string;
TopicStr : string; TopicStr : string;
TopicMapped : Boolean; TopicMapped : Boolean;
BuildStr : string;
TopicPos : Integer;
FootIdx : Integer; FootIdx : Integer;
LinkPos : Integer; LinkPos : Integer;
NextLinkPos : Integer;
UnlinkPos : Integer; UnlinkPos : Integer;
begin begin
@@ -208,7 +210,8 @@ begin
WriteLn(NewFileVar, '-->'); WriteLn(NewFileVar, '-->');
end end
else if Pos('class=Topictitle', InStr) > 0 then {Found a topic?} else if (Pos('class=Topictitle', InStr) > 0) or
(Pos('class=Topic>', InStr) > 0) then {Found a topic?}
begin begin
{Get footnote number _ftnXX} {Get footnote number _ftnXX}
FnPos := Pos('#_', InStr) + 1; FnPos := Pos('#_', InStr) + 1;
@@ -233,12 +236,22 @@ begin
Write(NewFileVar, '<a name="', TopicStr, '"></a>'); Write(NewFileVar, '<a name="', TopicStr, '"></a>');
end; end;
end; end;
Write(NewFileVar, Copy(InStr, 1, 20)); {Save part of 1st topic line} {Save part of 1st topic line}
repeat {Skip over rest of topic lines} if Pos('class=Topictitle', InStr) > 0 then
PrevInStr := InStr; Write(NewFileVar, Copy(InStr, 1, Pos('class=Topictitle>', InStr)+16))
else
Write(NewFileVar, Copy(InStr, 1, Pos('class=Topic>', InStr)+11));
BuildStr := InStr;
repeat {Get rest of topic lines}
ReadLn(OldFileVar, InStr); ReadLn(OldFileVar, InStr);
if InStr <> '' then
BuildStr := BuildStr + ' ' + InStr;
until InStr = ''; until InStr = '';
WriteLn(NewFileVar, Copy(PrevInStr, 36, MaxInt)); {Save part of last topic line} TopicPos := Length(BuildStr);
repeat
Dec(TopicPos);
until (TopicPos = 0) or (BuildStr[TopicPos] = '>');
WriteLn(NewFileVar, Copy(BuildStr, TopicPos+2, MaxInt));
end end
else if CompareText(InStr, '<div><br clear=all>') = 0 then {Found footnotes?} else if CompareText(InStr, '<div><br clear=all>') = 0 then {Found footnotes?}
@@ -254,26 +267,45 @@ begin
LinkPos := Pos('<u>', InStr); LinkPos := Pos('<u>', InStr);
if LinkPos > 0 then {Line contains link?} if LinkPos > 0 then {Line contains link?}
begin begin
PrevInStr := InStr; BuildStr := InStr;
ReadLn(OldFileVar, InStr); {Get next line too} repeat {Link may span lines, so get rest of paragraph}
InStr := PrevInStr + ' ' + InStr; {Combine} ReadLn(OldFileVar, InStr);
for FootIdx := 0 to Footnotes.Count -1 do if InStr <> '' then
BuildStr := BuildStr + ' ' + InStr;
until InStr = '';
InStr := BuildStr;
while LinkPos > 0 do
begin begin
TopicStr := Footnotes.ValueFromIndex[FootIdx]; NextLinkPos := Pos('<u>', Copy(InStr, LinkPos+1, MaxInt));
if Pos(TopicStr, InStr) > 0 then if NextLinkPos = 0 then
NextLinkPos := Length(InStr) + 1
else
Inc(NextLinkPos, LinkPos);
BuildStr := '';
for FootIdx := 0 to Footnotes.Count - 1 do
begin begin
UnlinkPos := Pos('</u>', InStr); TopicStr := Footnotes.ValueFromIndex[FootIdx];
Write(NewFileVar, Copy(InStr, 1, LinkPos-1), if (Pos(TopicStr, InStr) > LinkPos) and
'<a href="#'); (Pos(TopicStr, InStr) < NextLinkPos) then
if MapSection.Values[TopicStr] <> '' then begin
Write(NewFileVar, MapSection.Values[TopicStr]) BuildStr := Copy(InStr, 1, LinkPos-1) + '<a href="#';
else if MapSection.Values[TopicStr] <> '' then
Write(NewFileVar, TopicStr); BuildStr := BuildStr + MapSection.Values[TopicStr]
WriteLn(NewFileVar, '">', else
Copy(InStr, LinkPos+3, UnlinkPos-LinkPos-3), '</a>', BuildStr := BuildStr + TopicStr;
Copy(InStr, UnlinkPos+4, MaxInt)); UnlinkPos := Pos('</u>', InStr);
BuildStr := BuildStr + '">' +
Copy(InStr, LinkPos+3, UnlinkPos-LinkPos-3) + '</a>' +
Copy(InStr, UnlinkPos+4, MaxInt);
InStr := BuildStr;
LinkPos := Pos('<u>', InStr);
Break;
end;
end; end;
if BuildStr = '' then
Break;
end; end;
WriteLn(NewFileVar, InStr);
end end
else else
WriteLn(NewFileVar, InStr); WriteLn(NewFileVar, InStr);

View File

@@ -54,15 +54,15 @@ const
HELP_CONTEXT = 1; HELP_CONTEXT = 1;
HELP_QUIT = 2; HELP_QUIT = 2;
{$IFDEF MSWINDOWS} {LCL doesn't have TApplication.HelpCommand, so call Win API}
function DoHelpCommand(Command : Word; function DoHelpCommand(Command : Word;
Data : LongInt) : Boolean; Data : LongInt) : Boolean;
begin begin
{$IFDEF MSWINDOWS} {LCL doesn't have TApplication.HelpCommand, so call Win API}
Result := WinHelp(Application.MainForm.Handle, Result := WinHelp(Application.MainForm.Handle,
PChar(Application.HelpFile), PChar(Application.HelpFile),
Command, Data); Command, Data);
{$ENDIF}
end; {DoHelpCommand} end; {DoHelpCommand}
{$ENDIF}
{THelpUtilManager} {THelpUtilManager}

View File

@@ -32,6 +32,11 @@
<A name="Whats_New"></A><H3>What's New</H3> <A name="Whats_New"></A><H3>What's New</H3>
<UL> <UL>
<LI>20080720 release:
<UL>
<LI>Updated list of controls for DfmToLfm converter.
<LI>Updated CvtHelp.pas help converter.
</UL>
<LI>20080301 release: <LI>20080301 release:
<UL> <UL>
<LI>Expanded notes to help users who are new to Lazarus. <LI>Expanded notes to help users who are new to Lazarus.
@@ -341,7 +346,7 @@ also be able to output version information to a Lazarus .lpi file.<P>
<A HREF="http://wiki.lazarus.freepascal.org/Deploying_Your_Application">http://wiki.lazarus.freepascal.org/Deploying_Your_Application</A><P> <A HREF="http://wiki.lazarus.freepascal.org/Deploying_Your_Application">http://wiki.lazarus.freepascal.org/Deploying_Your_Application</A><P>
<P> <P>
<HR> <HR>
Last updated: March 1, 2008 Last updated: July 20, 2008
<P> <P>
</BODY> </BODY>

View File

@@ -25,38 +25,38 @@ ImeMode=
ImeName= ImeName=
OEMConvert= OEMConvert=
TextHeight= TextHeight=
TRadioGroup.TabOrder= ;TRadioGroup.TabOrder=
TBitBtn.ParentFont= ;TBitBtn.ParentFont=
TCheckBox.Font.Charset= ;TCheckBox.Font.Charset=
TCheckBox.Font.Color= ;TCheckBox.Font.Color=
TCheckBox.Font.Height= ;TCheckBox.Font.Height=
TCheckBox.Font.Name= ;TCheckBox.Font.Name=
TCheckBox.Font.Style= ;TCheckBox.Font.Style=
TCheckBox.ParentFont= ;TCheckBox.ParentFont=
TCheckGroup.Font.Charset= ;TCheckGroup.Font.Charset=
TCheckGroup.Font.Color= ;TCheckGroup.Font.Color=
TCheckGroup.Font.Height= ;TCheckGroup.Font.Height=
TCheckGroup.Font.Name= ;TCheckGroup.Font.Name=
TCheckGroup.Font.Style= ;TCheckGroup.Font.Style=
TCheckGroup.ParentFont= ;TCheckGroup.ParentFont=
TCheckListBox.Font.Charset= ;TCheckListBox.Font.Charset=
TCheckListBox.Font.Color= ;TCheckListBox.Font.Color=
TCheckListBox.Font.Height= ;TCheckListBox.Font.Height=
TCheckListBox.Font.Name= ;TCheckListBox.Font.Name=
TCheckListBox.Font.Style= ;TCheckListBox.Font.Style=
TCheckListBox.ParentFont= ;TCheckListBox.ParentFont=
TRadioButton.Font.Charset= ;TRadioButton.Font.Charset=
TRadioButton.Font.Color= ;TRadioButton.Font.Color=
TRadioButton.Font.Height= ;TRadioButton.Font.Height=
TRadioButton.Font.Name= ;TRadioButton.Font.Name=
TRadioButton.Font.Style= ;TRadioButton.Font.Style=
TRadioButton.ParentFont= ;TRadioButton.ParentFont=
TRadioGroup.Font.Charset= ;TRadioGroup.Font.Charset=
TRadioGroup.Font.Color= ;TRadioGroup.Font.Color=
TRadioGroup.Font.Height= ;TRadioGroup.Font.Height=
TRadioGroup.Font.Name= ;TRadioGroup.Font.Name=
TRadioGroup.Font.Style= ;TRadioGroup.Font.Style=
TRadioGroup.ParentFont= ;TRadioGroup.ParentFont=
TBevel.Font.Charset= TBevel.Font.Charset=
TBevel.Font.Color= TBevel.Font.Color=
TBevel.Font.Height= TBevel.Font.Height=
@@ -78,6 +78,7 @@ TLabeledEdit.Font.Color=
TLabeledEdit.Font.Height= TLabeledEdit.Font.Height=
TLabeledEdit.Font.Name= TLabeledEdit.Font.Name=
TLabeledEdit.Font.Style= TLabeledEdit.Font.Style=
TListBox.ScrollWidth=
; When -p switch is used with DfmToLfm, don't try to add parent's font ; When -p switch is used with DfmToLfm, don't try to add parent's font
@@ -86,24 +87,36 @@ TLabeledEdit.Font.Style=
[NoFont] [NoFont]
TMainMenu= TMainMenu=
TMenuItem= TMenuItem=
TPopupMenu=
TScrollBar= TScrollBar=
TImage= TImage=
TTabSheet= TTabSheet=
TCheckBox= ;TCheckBox=
TCheckGroup= ;TCheckGroup=
TCheckListBox= ;TCheckListBox=
TRadioButton= ;TRadioButton=
TRadioGroup= ;TRadioGroup=
TActionList= TActionList=
TShape= TShape=
TBevel= TBevel=
TNotebook= TNotebook=
TLabeledEdit= TLabeledEdit=
TProgressBar=
TSplitter= TSplitter=
TTimer=
TOpenDialog=
TSaveDialog=
TFindDialog=
TPrintDialog=
TPrinterSetupDialog=
TOvcController= TOvcController=
TOvcSpinner= TOvcSpinner=
TOvcTCCheckBox= TOvcTCCheckBox=
TOvcTCBitmap= TOvcTCBitmap=
TOvcTCGlyphs= TOvcTCGlyphs=
TOvcTCIcon= TOvcTCIcon=
TWPRichText=
TFrameViewer=
THTMLViewer=