mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-08 14:18:17 +02:00
lhelp: fixed updating default title after filling content nodes
git-svn-id: branches/fixes_2_0@63532 -
This commit is contained in:
parent
90bde32386
commit
bee446707f
@ -31,6 +31,9 @@ uses
|
||||
// ChmHelp
|
||||
IpHtml, BaseContentProvider, FileContentProvider, ChmDataProvider, lhelpstrconsts;
|
||||
|
||||
const
|
||||
DefaultCHMContentTitle = '[unknown]';
|
||||
|
||||
type
|
||||
|
||||
{ TChmContentProvider }
|
||||
@ -288,6 +291,8 @@ begin
|
||||
if fUpdateURI <> '' then
|
||||
DoLoadUri(fUpdateURI);
|
||||
fUpdateURI:='';
|
||||
if Title=DefaultCHMContentTitle then
|
||||
UpdateTitle;
|
||||
end;
|
||||
end;
|
||||
|
||||
@ -764,7 +769,7 @@ begin
|
||||
NewTitle := '';
|
||||
while Item <> nil do
|
||||
begin
|
||||
if ITem.Text <> fActiveChmTitle then
|
||||
if Item.Text <> fActiveChmTitle then
|
||||
begin
|
||||
NewTitle:=NewTitle+Item.Text;
|
||||
if (Item.GetNextSibling <> nil)
|
||||
@ -778,7 +783,7 @@ begin
|
||||
NewTitle := FActiveChmTitle + ' [' + NewTitle + ']'
|
||||
else
|
||||
NewTitle := FActiveChmTitle;
|
||||
if NewTitle = '' then NewTitle := '[unknown]';
|
||||
if NewTitle = '' then NewTitle := DefaultCHMContentTitle;
|
||||
Title := NewTitle;
|
||||
end;
|
||||
|
||||
|
@ -629,7 +629,7 @@ begin
|
||||
if UrlReq.FileRequest.FileName <> '' then
|
||||
begin
|
||||
Url := 'file://'+UrlReq.FileRequest.FileName;
|
||||
Res := OpenUrl(URL+'://'+UrlReq.Url)
|
||||
Res := OpenUrl(URL+'://'+UrlReq.Url);
|
||||
end
|
||||
else
|
||||
begin
|
||||
@ -833,24 +833,24 @@ end;
|
||||
|
||||
procedure THelpForm.StopComms;
|
||||
begin
|
||||
if fInputIPC <> nil then
|
||||
begin
|
||||
if fInputIPC.Active then
|
||||
fInputIPC.Active := False;
|
||||
if fInputIPC <> nil then
|
||||
begin
|
||||
if fInputIPC.Active then
|
||||
fInputIPC.Active := False;
|
||||
|
||||
FreeAndNil(fInputIPC);
|
||||
IPCServer := nil;
|
||||
FreeAndNil(fInputIPCTimer);
|
||||
end;
|
||||
FreeAndNil(fInputIPC);
|
||||
IPCServer := nil;
|
||||
FreeAndNil(fInputIPCTimer);
|
||||
end;
|
||||
|
||||
if fOutputIPC <> nil then
|
||||
begin
|
||||
if fOutputIPC.Active then
|
||||
fOutputIPC.Active := False;
|
||||
if fOutputIPC <> nil then
|
||||
begin
|
||||
if fOutputIPC.Active then
|
||||
fOutputIPC.Active := False;
|
||||
|
||||
FreeAndNil(fOutputIPC);
|
||||
IPCClient := nil;
|
||||
end;
|
||||
FreeAndNil(fOutputIPC);
|
||||
IPCClient := nil;
|
||||
end;
|
||||
end;
|
||||
|
||||
function THelpForm.OpenURL(const AURL: String; AContext: THelpContext): DWord;
|
||||
@ -862,12 +862,12 @@ function THelpForm.OpenURL(const AURL: String; AContext: THelpContext): DWord;
|
||||
Result := Copy(AURL, 1, fPos+2);
|
||||
end;
|
||||
var
|
||||
fURLPrefix: String;
|
||||
fContentProvider: TBaseContentProviderClass;
|
||||
fRealContentProvider: TBaseContentProviderClass;
|
||||
fPage: TContentTab = nil;
|
||||
I: Integer;
|
||||
fIsNewPage: Boolean = false;
|
||||
fURLPrefix: String;
|
||||
fContentProvider: TBaseContentProviderClass;
|
||||
fRealContentProvider: TBaseContentProviderClass;
|
||||
fPage: TContentTab = nil;
|
||||
I: Integer;
|
||||
fIsNewPage: Boolean = false;
|
||||
begin
|
||||
Result := Ord(srInvalidURL);
|
||||
fURLPrefix := GetURLPrefix;
|
||||
@ -889,21 +889,21 @@ begin
|
||||
end;
|
||||
|
||||
if not fShowSepTabs then
|
||||
for I := 0 to PageControl.PageCount-1 do
|
||||
begin
|
||||
if fRealContentProvider.ClassName = TContentTab(PageControl.Pages[I]).ContentProvider.ClassName then
|
||||
for I := 0 to PageControl.PageCount-1 do
|
||||
begin
|
||||
fPage := TContentTab(PageControl.Pages[I]);
|
||||
if TContentTab(PageControl.Pages[I]).ContentProvider.LoadURL(AURL, AContext) then
|
||||
if fRealContentProvider.ClassName = TContentTab(PageControl.Pages[I]).ContentProvider.ClassName then
|
||||
begin
|
||||
PageControl.ActivePage := PageControl.Pages[I];
|
||||
Result := Ord(srSuccess);
|
||||
end
|
||||
else
|
||||
Result := Ord(srInvalidFile);
|
||||
Exit;
|
||||
fPage := TContentTab(PageControl.Pages[I]);
|
||||
if TContentTab(PageControl.Pages[I]).ContentProvider.LoadURL(AURL, AContext) then
|
||||
begin
|
||||
PageControl.ActivePage := PageControl.Pages[I];
|
||||
Result := Ord(srSuccess);
|
||||
end
|
||||
else
|
||||
Result := Ord(srInvalidFile);
|
||||
Exit;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
if fPage = nil then
|
||||
begin
|
||||
|
@ -239,10 +239,7 @@ begin
|
||||
end;
|
||||
{$IFDEF CHMLOADTIMES}
|
||||
DebugLn(['CHMLOADTIMES: ',Format('Loading chm files took %d ms',[DateTimeToTimeStamp(Now-StartTime).Time])]);
|
||||
|
||||
{$ENDIF}
|
||||
|
||||
|
||||
finally
|
||||
fHelpConnection.EndUpdate;
|
||||
CHMFiles.Free;
|
||||
|
Loading…
Reference in New Issue
Block a user