]> git.saurik.com Git - wxWidgets.git/blobdiff - src/generic/helphtml.cpp
remove duplicate deletion
[wxWidgets.git] / src / generic / helphtml.cpp
index 6065eeef1263a4bdc68edad570eb81ab5ddacaba..06a69ad4b0d715044f60c77c66c0ac7d751631cd 100644 (file)
@@ -1,27 +1,44 @@
-/*-*- c++ -*-********************************************************
- * helphtml.cpp - base class for html help systems                  *
- *                                                                  *
- * (C) 1999 by Karsten Ballüder (Ballueder@usa.net)                 *
- *                                                                  *
- * $Id$
- *******************************************************************/
+/////////////////////////////////////////////////////////////////////////////
+// Name:        helphtml.cpp
+// Purpose:     base class for html help systems
+// Author:      Karsten Ballueder
+// Modified by:
+// Created:     04/01/98
+// RCS-ID:      $Id$
+// Copyright:   (c) Karsten Ballueder
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
 #ifdef __GNUG__
 #   pragma implementation "helphtml.h"
 #endif
 
-#include   "wx/setup.h"
-#include   "wx/helpbase.h"
-#include   "wx/generic/helpext.h"
-#include   "wx/string.h"
-#include   "wx/utils.h"
-#include   "wx/list.h"
-#include   "wx/intl.h"
-#include   <stdio.h>
-#include   <ctype.h>
-#include   <sys/stat.h>
-#include   <unistd.h>
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+    #pragma hdrstop
+#endif
+
+#ifndef WX_PRECOMP
+    #include "wx/setup.h"
+    #include "wx/string.h"
+    #include "wx/utils.h"
+    #include "wx/list.h"
+    #include "wx/intl.h"
+#endif
 
+#include "wx/helpbase.h"
+#include "wx/generic/helpext.h"
 
+#include <stdio.h>
+#include <ctype.h>
+#include <sys/stat.h>
+
+#ifndef __WINDOWS__
+    #include   <unistd.h>
+#endif
+
+#define CONTENTS_ID   0
 
 class wxExtHelpMapEntry : public wxObject
 {
@@ -104,6 +121,7 @@ wxHTMLHelpControllerBase::LoadFile(const wxString& ifile)
       else
          file = ifile;
 
+#if wxUSE_INTL
       // If a locale is set, look in file/localename, i.e.
       // If passed "/usr/local/myapp/help" and the current wxLocale is
       // set to be "de", then look in "/usr/local/myapp/help/de/"
@@ -125,6 +143,7 @@ wxHTMLHelpControllerBase::LoadFile(const wxString& ifile)
                file = newfile;
          }
       }
+#endif
 
       if(! wxDirExists(file))
          return FALSE;
@@ -180,8 +199,27 @@ wxHTMLHelpControllerBase::DisplayContents()
 {
    if(! m_NumOfEntries)
       return FALSE;
-   wxBusyCursor b; // display a busy cursor
-   return KeywordSearch("");
+
+   wxString contents;
+   wxNode *node = m_MapList->First();
+   wxExtHelpMapEntry *entry;
+   while(node)
+   {
+      entry = (wxExtHelpMapEntry *)node->Data();
+      if(entry->id == CONTENTS_ID)
+      {
+         contents = entry->url;
+         break;
+      }
+      node = node->Next();
+   }
+
+   bool rc = FALSE;
+   if(contents.Length() && wxFileExists(contents.BeforeLast('#')))
+      rc = DisplaySection(CONTENTS_ID);
+   
+   // if not found, open homemade toc:
+   return rc ? TRUE : KeywordSearch("");
 }
 
 bool