anchor.diff:    begin
       Name := 'PageControl1';
       SetPosition(0, 0, 222, 300);
  -    ActivePageIndex := 1;
  +    ActivePageIndex := 0;
       TabOrder := 0;
       Align := alLeft;
     end;
  
positive.code: //
  end;
  
  procedure TMainForm.MainFormCloseQuery(Sender: TObject; var CanClose: boolean);
  begin
    CloseFile;
  
negative.code:   { TODO -oGraeme : Implement me }
  end;
  
  procedure TMainForm.DisplayTopic;
  var
    text: PChar;
    ImageIndices: TList;
    LinkIndex: longint;
    Link: THelpLink;
    HelpFile: THelpFile;
    Topic: TTopic;
  Begin
    writeln('DisplayTopic >>>>');
    if tvContents.Selection = nil then
    begin
      ShowMessage('You must select a topic first by double clicking it.');
      Exit;  //==>
    end
    else
      Topic := TTopic(tvContents.Selection.Data);
    writeln('Got Topic from Treeview');
  
    Memo1.Lines.Clear;
    ImageIndices := TList.Create;
  
    writeln('Cleared memo...');
  
    HelpFile := TopicFile(Topic);
    if HelpFile = nil then
      raise Exception.Create('Failed to get active HelpFile from Topic');
  
    if HelpFile.HighlightWords <> nil then
      writeln('highlightwords is ok');
    Text := nil;
    writeln('Debug = ', Debug);
    if ImageIndices <> nil then
      writeln('ImageIndices initialized');
    Topic.GetText(HelpFile.HighlightWords,
                  Debug,
                  Text,
                  ImageIndices );
  
    { TODO -oGraeme : We do not support images yet }
    ImageIndices.Free;
  
    Memo1.Lines.Text := Text;
    StrDispose( Text );
  end;
  
  constructor TMainForm.Create(AOwner: TComponent);
  begin
    inherited Create(AOwner);
    OnShow  := @MainFormShow;
    Files := TList.Create;
    { TODO -oGraeme : Make Debug a menu option }
    Debug := False;
  end;
  
  destructor TMainForm.Destroy;
  