Fixed some compile errors (MSVC++ 6) and some very strange link errors when

building a DLL.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3627 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
1999-09-13 05:27:36 +00:00
parent e6a5dc94a4
commit f42b1601d6
7 changed files with 69 additions and 65 deletions

View File

@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
// Name: helpctrl.h // Name: helpctrl.h
// Purpose: wxHtmlHelpController // Purpose: wxHtmlHelpController
// Notes: Based on htmlhelp.cpp, implementing a monolithic // Notes: Based on htmlhelp.cpp, implementing a monolithic
// HTML Help controller class, by Vaclav Slavik // HTML Help controller class, by Vaclav Slavik
// Author: Harm van der Heijden and Vaclav Slavik // Author: Harm van der Heijden and Vaclav Slavik
// Created: // Created:
@@ -25,6 +25,8 @@
class WXDLLEXPORT wxHtmlHelpController : public wxEvtHandler class WXDLLEXPORT wxHtmlHelpController : public wxEvtHandler
{ {
DECLARE_DYNAMIC_CLASS(wxHtmlHelpController)
public: public:
wxHtmlHelpController(); wxHtmlHelpController();
virtual ~wxHtmlHelpController(); virtual ~wxHtmlHelpController();
@@ -32,8 +34,8 @@ public:
void SetTitleFormat(const wxString& format); void SetTitleFormat(const wxString& format);
void SetTempDir(const wxString& path) { m_helpData.SetTempDir(path); } void SetTempDir(const wxString& path) { m_helpData.SetTempDir(path); }
bool AddBook(const wxString& book, bool show_wait_msg = FALSE); bool AddBook(const wxString& book, bool show_wait_msg = FALSE);
bool Display(const wxString& x) { bool Display(const wxString& x) {
CreateHelpWindow(); return m_helpFrame->Display(x); CreateHelpWindow(); return m_helpFrame->Display(x);
} }
bool Display(int id) { bool Display(int id) {
CreateHelpWindow(); return m_helpFrame->Display(id); CreateHelpWindow(); return m_helpFrame->Display(id);
@@ -58,9 +60,9 @@ public:
virtual void ReadCustomization(wxConfigBase *cfg, const wxString& path = wxEmptyString); virtual void ReadCustomization(wxConfigBase *cfg, const wxString& path = wxEmptyString);
virtual void WriteCustomization(wxConfigBase *cfg, const wxString& path = wxEmptyString); virtual void WriteCustomization(wxConfigBase *cfg, const wxString& path = wxEmptyString);
virtual void CreateHelpWindow(bool show_progress = FALSE); virtual void CreateHelpWindow(bool show_progress = FALSE);
virtual void DestroyHelpWindow() { virtual void DestroyHelpWindow() {
//if (m_Config) WriteCustomization(m_Config, m_ConfigRoot); //if (m_Config) WriteCustomization(m_Config, m_ConfigRoot);
if (m_helpFrame) m_helpFrame->Destroy(); if (m_helpFrame) m_helpFrame->Destroy();
} }
protected: protected:
void OnCloseFrame(wxCloseEvent& evt) { m_helpFrame = NULL; evt.Skip(); } void OnCloseFrame(wxCloseEvent& evt) { m_helpFrame = NULL; evt.Skip(); }
@@ -72,6 +74,6 @@ protected:
DECLARE_EVENT_TABLE() DECLARE_EVENT_TABLE()
}; };
#endif #endif
#endif // _WX_HELPCTRL_H_ #endif // _WX_HELPCTRL_H_

View File

@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
// Name: helpdata.h // Name: helpdata.h
// Purpose: wxHtmlHelpData // Purpose: wxHtmlHelpData
// Notes: Based on htmlhelp.cpp, implementing a monolithic // Notes: Based on htmlhelp.cpp, implementing a monolithic
// HTML Help controller class, by Vaclav Slavik // HTML Help controller class, by Vaclav Slavik
// Author: Harm van der Heijden and Vaclav Slavik // Author: Harm van der Heijden and Vaclav Slavik
// Created: // Created:
@@ -33,7 +33,7 @@
class WXDLLEXPORT wxHtmlBookRecord : public wxObject class WXDLLEXPORT wxHtmlBookRecord : public wxObject
{ {
public: public:
wxHtmlBookRecord(const wxString& basepath, const wxString& title, wxHtmlBookRecord(const wxString& basepath, const wxString& title,
const wxString& start) { const wxString& start) {
m_BasePath = basepath; m_Title = title; m_Start = start; m_BasePath = basepath; m_Title = title; m_Start = start;
// for debugging, give the contents index obvious default values // for debugging, give the contents index obvious default values
@@ -45,11 +45,11 @@ public:
/* SetContentsRange: store in the bookrecord where in the index/contents lists the /* SetContentsRange: store in the bookrecord where in the index/contents lists the
* book's records are stored. This to facilitate searching in a specific book. * book's records are stored. This to facilitate searching in a specific book.
* This code will have to be revised when loading/removing books becomes dynamic. * This code will have to be revised when loading/removing books becomes dynamic.
* (as opposed to appending only) * (as opposed to appending only)
* Note that storing index range is pointless, because the index is alphab. sorted. */ * Note that storing index range is pointless, because the index is alphab. sorted. */
void SetContentsRange(int start, int end) { contents_start = start; contents_end = end; } void SetContentsRange(int start, int end) { contents_start = start; contents_end = end; }
GetContentsStart() const { return contents_start; } int GetContentsStart() const { return contents_start; }
GetContentsEnd() const { return contents_end; } int GetContentsEnd() const { return contents_end; }
protected: protected:
wxString m_BasePath; wxString m_BasePath;
wxString m_Title; wxString m_Title;
@@ -82,7 +82,7 @@ typedef struct
// This class takes input streams and scans them for occurence // This class takes input streams and scans them for occurence
// of keyword(s) // of keyword(s)
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
class wxSearchEngine : public wxObject class WXDLLEXPORT wxSearchEngine : public wxObject
{ {
private: private:
char *m_Keyword; char *m_Keyword;
@@ -90,7 +90,7 @@ private:
public: public:
wxSearchEngine() : wxObject() {m_Keyword = NULL;} wxSearchEngine() : wxObject() {m_Keyword = NULL;}
~wxSearchEngine() {if (m_Keyword) free(m_Keyword);} ~wxSearchEngine() {if (m_Keyword) free(m_Keyword);}
virtual void LookFor(const wxString& keyword); virtual void LookFor(const wxString& keyword);
// Sets the keyword we will be searching for // Sets the keyword we will be searching for
@@ -103,7 +103,7 @@ class wxHtmlHelpData;
// State information of a search action. I'd have prefered to make this a nested // State information of a search action. I'd have prefered to make this a nested
// class inside wxHtmlHelpData, but that's against coding standards :-( // class inside wxHtmlHelpData, but that's against coding standards :-(
// Never construct this class yourself, obtain a copy from // Never construct this class yourself, obtain a copy from
// wxHtmlHelpData::PrepareKeywordSearch(const wxString& key) // wxHtmlHelpData::PrepareKeywordSearch(const wxString& key)
class WXDLLEXPORT wxHtmlSearchStatus class WXDLLEXPORT wxHtmlSearchStatus
{ {
@@ -122,10 +122,10 @@ private:
wxHtmlHelpData* m_Data; wxHtmlHelpData* m_Data;
wxSearchEngine m_Engine; wxSearchEngine m_Engine;
wxString m_Keyword, m_Name, m_LastPage; wxString m_Keyword, m_Name, m_LastPage;
wxHtmlContentsItem* m_ContentsItem; wxHtmlContentsItem* m_ContentsItem;
bool m_Active; // search is not finished bool m_Active; // search is not finished
int m_CurIndex; // where we are now int m_CurIndex; // where we are now
int m_MaxIndex; // number of files we search int m_MaxIndex; // number of files we search
// For progress bar: 100*curindex/maxindex = % complete // For progress bar: 100*curindex/maxindex = % complete
}; };
@@ -138,21 +138,21 @@ class WXDLLEXPORT wxHtmlHelpData : public wxObject
public: public:
wxHtmlHelpData(); wxHtmlHelpData();
~wxHtmlHelpData(); ~wxHtmlHelpData();
void SetTempDir(const wxString& path); void SetTempDir(const wxString& path);
// Sets directory where temporary files are stored. // Sets directory where temporary files are stored.
// These temp files are index & contents file in binary (much faster to read) // These temp files are index & contents file in binary (much faster to read)
// form. These files are NOT deleted on program's exit. // form. These files are NOT deleted on program's exit.
bool AddBook(const wxString& book); bool AddBook(const wxString& book);
// Adds new book. 'book' is location of .htb file (stands for "html book"). // Adds new book. 'book' is location of .htb file (stands for "html book").
// See documentation for details on its format. // See documentation for details on its format.
// Returns success. // Returns success.
bool AddBookParam(const wxString& title, const wxString& contfile, bool AddBookParam(const wxString& title, const wxString& contfile,
const wxString& indexfile=wxEmptyString, const wxString& indexfile=wxEmptyString,
const wxString& deftopic=wxEmptyString, const wxString& deftopic=wxEmptyString,
const wxString& path=wxEmptyString); const wxString& path=wxEmptyString);
// Some accessing stuff // Some accessing stuff
wxString FindPageByName(const wxString& page); wxString FindPageByName(const wxString& page);
// returns URL of page on basis of (file)name // returns URL of page on basis of (file)name
@@ -164,10 +164,10 @@ public:
int GetContentsCnt() { return m_ContentsCnt; } int GetContentsCnt() { return m_ContentsCnt; }
wxHtmlContentsItem* GetIndex() { return m_Index; } wxHtmlContentsItem* GetIndex() { return m_Index; }
int GetIndexCnt() { return m_IndexCnt; } int GetIndexCnt() { return m_IndexCnt; }
protected: protected:
wxString m_TempPath; wxString m_TempPath;
wxHtmlBookRecArray m_BookRecords; wxHtmlBookRecArray m_BookRecords;
// each book has one record in this array // each book has one record in this array
wxHtmlContentsItem* m_Contents; wxHtmlContentsItem* m_Contents;
@@ -176,9 +176,9 @@ protected:
wxHtmlContentsItem* m_Index; wxHtmlContentsItem* m_Index;
int m_IndexCnt; int m_IndexCnt;
// list of index items // list of index items
protected: protected:
bool LoadMSProject(wxHtmlBookRecord *book, wxFileSystem& fsys, bool LoadMSProject(wxHtmlBookRecord *book, wxFileSystem& fsys,
const wxString& indexfile, const wxString& contentsfile); const wxString& indexfile, const wxString& contentsfile);
// Imports .hhp files (MS HTML Help Workshop) // Imports .hhp files (MS HTML Help Workshop)
bool LoadCachedBook(wxHtmlBookRecord *book, wxInputStream *f); bool LoadCachedBook(wxHtmlBookRecord *book, wxInputStream *f);

View File

@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
// Name: helpfrm.h // Name: helpfrm.h
// Purpose: wxHtmlHelpFrame // Purpose: wxHtmlHelpFrame
// Notes: Based on htmlhelp.cpp, implementing a monolithic // Notes: Based on htmlhelp.cpp, implementing a monolithic
// HTML Help controller class, by Vaclav Slavik // HTML Help controller class, by Vaclav Slavik
// Author: Harm van der Heijden and Vaclav Slavik // Author: Harm van der Heijden and Vaclav Slavik
// Created: // Created:
@@ -61,25 +61,25 @@ class WXDLLEXPORT wxHtmlHelpFrame : public wxFrame
public: public:
wxHtmlHelpFrame(wxHtmlHelpData* data = NULL) { Init(data); } wxHtmlHelpFrame(wxHtmlHelpData* data = NULL) { Init(data); }
wxHtmlHelpFrame(wxWindow* parent, int wxWindowID, wxHtmlHelpFrame(wxWindow* parent, int wxWindowID,
const wxString& title = wxEmptyString, const wxString& title = wxEmptyString,
int style = wxHF_DEFAULTSTYLE, wxHtmlHelpData* data = NULL); int style = wxHF_DEFAULTSTYLE, wxHtmlHelpData* data = NULL);
bool Create(wxWindow* parent, wxWindowID id, const wxString& title = wxEmptyString, bool Create(wxWindow* parent, wxWindowID id, const wxString& title = wxEmptyString,
int style = wxHF_DEFAULTSTYLE); int style = wxHF_DEFAULTSTYLE);
~wxHtmlHelpFrame(); ~wxHtmlHelpFrame();
wxHtmlHelpData* GetData() { return m_Data; } wxHtmlHelpData* GetData() { return m_Data; }
void SetTitleFormat(const wxString& format) { void SetTitleFormat(const wxString& format) {
if (m_HtmlWin) if (m_HtmlWin)
m_HtmlWin->SetRelatedFrame(this, format); m_HtmlWin->SetRelatedFrame(this, format);
m_TitleFormat = format; m_TitleFormat = format;
} }
// Sets format of title of the frame. Must contain exactly one "%s" // Sets format of title of the frame. Must contain exactly one "%s"
// (for title of displayed HTML page) // (for title of displayed HTML page)
bool Display(const wxString& x); bool Display(const wxString& x);
// Displays page x. If not found it will offect the user a choice of // Displays page x. If not found it will offect the user a choice of
// searching books. // searching books.
// Looking for the page runs in these steps: // Looking for the page runs in these steps:
// 1. try to locate file named x (if x is for example "doc/howto.htm") // 1. try to locate file named x (if x is for example "doc/howto.htm")
@@ -89,13 +89,13 @@ public:
bool Display(const int id); bool Display(const int id);
// Alternative version that works with numeric ID. // Alternative version that works with numeric ID.
// (uses extension to MS format, <param name="ID" value=id>, see docs) // (uses extension to MS format, <param name="ID" value=id>, see docs)
bool DisplayContents(); bool DisplayContents();
// Displays help window and focuses contents. // Displays help window and focuses contents.
bool DisplayIndex(); bool DisplayIndex();
// Displays help window and focuses index. // Displays help window and focuses index.
bool KeywordSearch(const wxString& keyword); bool KeywordSearch(const wxString& keyword);
// Searches for keyword. Returns TRUE and display page if found, return // Searches for keyword. Returns TRUE and display page if found, return
// FALSE otherwise // FALSE otherwise
@@ -136,7 +136,7 @@ public:
IMG_Folder, IMG_Folder,
IMG_Page IMG_Page
}; };
protected: protected:
wxHtmlHelpData* m_Data; wxHtmlHelpData* m_Data;
bool m_DataCreated; // m_Data created by frame, or supplied? bool m_DataCreated; // m_Data created by frame, or supplied?
@@ -150,17 +150,17 @@ protected:
wxListBox *m_IndexBox; wxListBox *m_IndexBox;
wxTextCtrl *m_SearchText; wxTextCtrl *m_SearchText;
wxButton *m_SearchButton; wxButton *m_SearchButton;
wxListBox *m_SearchList; wxListBox *m_SearchList;
wxChoice *m_SearchChoice; wxChoice *m_SearchChoice;
struct { struct WXDLLEXPORT _struct_Cfg {
long x, y, w, h; long x, y, w, h;
long sashpos; long sashpos;
bool navig_on; bool navig_on;
int style; // flags given to wxHtmlHelpFrame ctor int style; // flags given to wxHtmlHelpFrame ctor
wxString titleformat; wxString titleformat;
} m_Cfg; } m_Cfg;
// settings (window size, position, sash pos etc..) // settings (window size, position, sash pos etc..)
wxConfigBase *m_Config; wxConfigBase *m_Config;
wxString m_ConfigRoot; wxString m_ConfigRoot;
@@ -168,7 +168,7 @@ protected:
int m_ContentsPage; int m_ContentsPage;
int m_IndexPage; int m_IndexPage;
int m_SearchPage; int m_SearchPage;
protected: protected:
void Init(wxHtmlHelpData* data = NULL); void Init(wxHtmlHelpData* data = NULL);

View File

@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
// Name: helpctrl.cpp // Name: helpctrl.cpp
// Purpose: wxHtmlHelpController // Purpose: wxHtmlHelpController
// Notes: Based on htmlhelp.cpp, implementing a monolithic // Notes: Based on htmlhelp.cpp, implementing a monolithic
// HTML Help controller class, by Vaclav Slavik // HTML Help controller class, by Vaclav Slavik
// Author: Harm van der Heijden and Vaclav Slavik // Author: Harm van der Heijden and Vaclav Slavik
// Created: // Created:
@@ -29,6 +29,8 @@
#include "wx/wx.h" #include "wx/wx.h"
#include "wx/busyinfo.h" #include "wx/busyinfo.h"
IMPLEMENT_DYNAMIC_CLASS(wxHtmlHelpController, wxEvtHandler)
BEGIN_EVENT_TABLE(wxHtmlHelpController, wxEvtHandler) BEGIN_EVENT_TABLE(wxHtmlHelpController, wxEvtHandler)
EVT_CLOSE(wxHtmlHelpController::OnCloseFrame) EVT_CLOSE(wxHtmlHelpController::OnCloseFrame)
END_EVENT_TABLE() END_EVENT_TABLE()

View File

@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
// Name: helpdata.cpp // Name: helpdata.cpp
// Purpose: wxHtmlHelpData // Purpose: wxHtmlHelpData
// Notes: Based on htmlhelp.cpp, implementing a monolithic // Notes: Based on htmlhelp.cpp, implementing a monolithic
// HTML Help controller class, by Vaclav Slavik // HTML Help controller class, by Vaclav Slavik
// Author: Harm van der Heijden and Vaclav Slavik // Author: Harm van der Heijden and Vaclav Slavik
// Created: // Created:
@@ -141,7 +141,7 @@ bool HP_TagHandler::HandleTag(const wxHtmlTag& tag)
else { // "PARAM" else { // "PARAM"
if (m_Name == wxEmptyString && tag.GetParam("NAME") == "Name") m_Name = tag.GetParam("VALUE"); if (m_Name == wxEmptyString && tag.GetParam("NAME") == "Name") m_Name = tag.GetParam("VALUE");
if (tag.GetParam("NAME") == "Local") m_Page = tag.GetParam("VALUE"); if (tag.GetParam("NAME") == "Local") m_Page = tag.GetParam("VALUE");
if (tag.GetParam("NAME") == "ID") tag.ScanParam("VALUE", "%i", &m_ID); if (tag.GetParam("NAME") == "ID") tag.ScanParam("VALUE", "%i", &m_ID);
return FALSE; return FALSE;
} }
} }
@@ -168,7 +168,7 @@ void HP_TagHandler::ReadIn(wxHtmlContentsItem* array, int size)
IMPLEMENT_DYNAMIC_CLASS(wxHtmlHelpData, wxObject) IMPLEMENT_DYNAMIC_CLASS(wxHtmlHelpData, wxObject)
wxHtmlHelpData::wxHtmlHelpData() wxHtmlHelpData::wxHtmlHelpData()
{ {
m_TempPath = wxEmptyString; m_TempPath = wxEmptyString;
@@ -205,7 +205,7 @@ bool wxHtmlHelpData::LoadMSProject(wxHtmlBookRecord *book, wxFileSystem& fsys, c
char *buf; char *buf;
int sz; int sz;
wxString string; wxString string;
HP_Parser parser; HP_Parser parser;
HP_TagHandler *handler = new HP_TagHandler(book); HP_TagHandler *handler = new HP_TagHandler(book);
parser.AddTagHandler(handler); parser.AddTagHandler(handler);
@@ -338,15 +338,15 @@ void wxHtmlHelpData::SetTempDir(const wxString& path)
} }
bool wxHtmlHelpData::AddBookParam(const wxString& title, const wxString& contfile, bool wxHtmlHelpData::AddBookParam(const wxString& title, const wxString& contfile,
const wxString& indexfile, const wxString& deftopic, const wxString& indexfile, const wxString& deftopic,
const wxString& path) const wxString& path)
{ {
wxFileSystem fsys; wxFileSystem fsys;
wxFSFile *fi; wxFSFile *fi;
wxHtmlBookRecord *bookr; wxHtmlBookRecord *bookr;
wxString safetitle; wxString safetitle;
if (! path.IsEmpty()) if (! path.IsEmpty())
// workaround for bug in ChangePathTo(name, TRUE) // workaround for bug in ChangePathTo(name, TRUE)
fsys.ChangePathTo(path+"/gaga"); fsys.ChangePathTo(path+"/gaga");
@@ -389,7 +389,7 @@ bool wxHtmlHelpData::AddBookParam(const wxString& title, const wxString& contfil
m_BookRecords.Add(bookr); m_BookRecords.Add(bookr);
if (m_IndexCnt > 0) if (m_IndexCnt > 0)
qsort(m_Index, m_IndexCnt, sizeof(wxHtmlContentsItem), IndexCompareFunc); qsort(m_Index, m_IndexCnt, sizeof(wxHtmlContentsItem), IndexCompareFunc);
return TRUE; return TRUE;
} }
@@ -404,12 +404,12 @@ bool wxHtmlHelpData::AddBook(const wxString& book)
int sz; int sz;
char *buff, *lineptr; char *buff, *lineptr;
char linebuf[300]; char linebuf[300];
wxString title = _("noname"), wxString title = _("noname"),
safetitle, safetitle,
start = wxEmptyString, start = wxEmptyString,
contents = wxEmptyString, index = wxEmptyString; contents = wxEmptyString, index = wxEmptyString;
if (wxIsAbsolutePath(book)) bookFull = book; if (wxIsAbsolutePath(book)) bookFull = book;
else bookFull = wxGetCwd() + "/" + book; else bookFull = wxGetCwd() + "/" + book;
@@ -494,7 +494,7 @@ wxString wxHtmlHelpData::FindPageByName(const wxString& x)
} }
wxString wxHtmlHelpData::FindPageById(int id) wxString wxHtmlHelpData::FindPageById(int id)
{ {
int i; int i;
wxString url(wxEmptyString); wxString url(wxEmptyString);
@@ -513,7 +513,7 @@ wxString wxHtmlHelpData::FindPageById(int id)
//---------------------------------------------------------------------------------- //----------------------------------------------------------------------------------
wxHtmlSearchStatus::wxHtmlSearchStatus(wxHtmlHelpData* data, const wxString& keyword, wxHtmlSearchStatus::wxHtmlSearchStatus(wxHtmlHelpData* data, const wxString& keyword,
const wxString& book = wxEmptyString) const wxString& book)
{ {
m_Data = data; m_Data = data;
m_Keyword = keyword; m_Keyword = keyword;
@@ -529,7 +529,7 @@ wxHtmlSearchStatus::wxHtmlSearchStatus(wxHtmlHelpData* data, const wxString& key
break; break;
} }
// check; we won't crash if the book doesn't exist, but it's Bad Anyway. // check; we won't crash if the book doesn't exist, but it's Bad Anyway.
wxASSERT(bookr); wxASSERT(bookr);
} }
if (! bookr) { if (! bookr) {
// no book specified; search all books // no book specified; search all books
@@ -557,7 +557,7 @@ bool wxHtmlSearchStatus::Search()
m_ContentsItem = NULL; m_ContentsItem = NULL;
m_Name = wxEmptyString; m_Name = wxEmptyString;
file = fsys.OpenFile(m_Data->m_Contents[i].m_Book -> GetBasePath() + file = fsys.OpenFile(m_Data->m_Contents[i].m_Book -> GetBasePath() +
m_Data->m_Contents[i].m_Page); m_Data->m_Contents[i].m_Page);
if (file) { if (file) {
if (m_LastPage != file->GetLocation()) { if (m_LastPage != file->GetLocation()) {

View File

@@ -26,7 +26,7 @@
#include "wx/html/forcelink.h" #include "wx/html/forcelink.h"
#include "wx/html/mod_templ.h" #include "wx/html/mod_templ.h"
#include "wx/wxhtml.h"
#include "wx/image.h" #include "wx/image.h"
#include "wx/dynarray.h" #include "wx/dynarray.h"
@@ -140,12 +140,12 @@ wxString wxHtmlImageMapAreaCell::GetLink( int x, int y ) const
(coords[pointer] - yval)) >= wherex) ? 1 : 0; (coords[pointer] - yval)) >= wherex) ? 1 : 0;
} }
} }
while (pointer < end) while (pointer < end)
{ {
yval = coords[pointer]; yval = coords[pointer];
pointer += 2; pointer += 2;
if (yval >= wherey) if (yval >= wherey)
{ {
while((pointer < end) && (coords[pointer] >= wherey)) while((pointer < end) && (coords[pointer] >= wherey))
{ {

View File

@@ -25,7 +25,7 @@
#include <wx/html/forcelink.h> #include <wx/html/forcelink.h>
#include <wx/html/mod_templ.h> #include <wx/html/mod_templ.h>
#include <wx/wxhtml.h>
FORCE_LINK_ME(mod_links) FORCE_LINK_ME(mod_links)
@@ -34,16 +34,16 @@ class wxHtmlAnchorCell : public wxHtmlCell
{ {
private: private:
wxString m_AnchorName; wxString m_AnchorName;
public: public:
wxHtmlAnchorCell(const wxString& name) : wxHtmlCell() {m_AnchorName = name;} wxHtmlAnchorCell(const wxString& name) : wxHtmlCell() {m_AnchorName = name;}
virtual const wxHtmlCell* Find(int condition, const void* param) const virtual const wxHtmlCell* Find(int condition, const void* param) const
{ {
if ((condition == HTML_COND_ISANCHOR) && (m_AnchorName == (*((const wxString*)param)))) if ((condition == HTML_COND_ISANCHOR) && (m_AnchorName == (*((const wxString*)param))))
return this; return this;
else else
return wxHtmlCell::Find(condition, param); return wxHtmlCell::Find(condition, param);
} }
}; };
@@ -55,7 +55,7 @@ TAG_HANDLER_BEGIN(A, "A")
if (tag.HasParam("NAME")) { if (tag.HasParam("NAME")) {
m_WParser -> GetContainer() -> InsertCell(new wxHtmlAnchorCell(tag.GetParam("NAME"))); m_WParser -> GetContainer() -> InsertCell(new wxHtmlAnchorCell(tag.GetParam("NAME")));
} }
if (tag.HasParam("HREF")) { if (tag.HasParam("HREF")) {
wxString oldlnk = m_WParser -> GetLink(); wxString oldlnk = m_WParser -> GetLink();
wxColour oldclr = m_WParser -> GetActualColor(); wxColour oldclr = m_WParser -> GetActualColor();