making wxHTML 8.3 compliant

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík 1999-10-02 18:19:46 +00:00
parent 47f631042b
commit 69941f0586
41 changed files with 331 additions and 321 deletions

View File

@ -1,5 +1,5 @@
#
# This file was automatically generated by tmake at 15:11, 1999/09/30
# This file was automatically generated by tmake at 20:06, 1999/10/02
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE UNX.T!
#
@ -555,19 +555,19 @@ PROTOCOL_HEADERS = \
protocol/protocol.h
HTML_HEADERS = \
html/forcelink.h \
html/forcelnk.h \
html/helpctrl.h \
html/helpdata.h \
html/helpfrm.h \
html/htmlcell.h \
html/htmldefs.h \
html/htmlfilter.h \
html/htmlparser.h \
html/htmlfilt.h \
html/htmlpars.h \
html/htmltag.h \
html/htmlwin.h \
html/htmlwinparser.h \
html/mod_templ.h \
html/version.h
html/m_templ.h \
html/version.h \
html/winpars.h
GTK_GENERICOBJS = \
busyinfo.o \
@ -1206,6 +1206,7 @@ MOTIF_GUIOBJS = \
dialog.o \
filedlg.o \
font.o \
fontenum.o \
frame.o \
gauge.o \
gdiobj.o \
@ -1261,6 +1262,7 @@ MOTIF_GUIDEPS = \
dialog.d \
filedlg.d \
font.d \
fontenum.d \
frame.d \
gauge.d \
gdiobj.d \
@ -1690,40 +1692,40 @@ HTMLOBJS = \
helpdata.o \
helpfrm.o \
htmlcell.o \
htmlfilter.o \
htmlparser.o \
htmlfilt.o \
htmlpars.o \
htmltag.o \
htmlwin.o \
htmlwinparser.o \
mod_fonts.o \
mod_hline.o \
mod_image.o \
mod_layout.o \
mod_links.o \
mod_list.o \
mod_pre.o \
mod_tables.o \
search.o
m_fonts.o \
m_hline.o \
m_image.o \
m_layout.o \
m_links.o \
m_list.o \
m_pre.o \
m_tables.o \
search.o \
winpars.o
HTMLDEPS = \
helpctrl.d \
helpdata.d \
helpfrm.d \
htmlcell.d \
htmlfilter.d \
htmlparser.d \
htmlfilt.d \
htmlpars.d \
htmltag.d \
htmlwin.d \
htmlwinparser.d \
mod_fonts.d \
mod_hline.d \
mod_image.d \
mod_layout.d \
mod_links.d \
mod_list.d \
mod_pre.d \
mod_tables.d \
search.d
m_fonts.d \
m_hline.d \
m_image.d \
m_layout.d \
m_links.d \
m_list.d \
m_pre.d \
m_tables.d \
search.d \
winpars.d
UNIXOBJS = \
gsocket.o \

View File

@ -392,19 +392,19 @@ helpdata.cpp H
helpfrm.cpp H
helpctrl.cpp H
htmlcell.cpp H
htmlfilter.cpp H
htmlparser.cpp H
htmlfilt.cpp H
htmlpars.cpp H
htmltag.cpp H
htmlwin.cpp H
htmlwinparser.cpp H
mod_fonts.cpp H
mod_hline.cpp H
mod_image.cpp H
mod_layout.cpp H
mod_links.cpp H
mod_list.cpp H
mod_pre.cpp H
mod_tables.cpp H
winpars.cpp H
m_fonts.cpp H
m_hline.cpp H
m_image.cpp H
m_layout.cpp H
m_links.cpp H
m_list.cpp H
m_pre.cpp H
m_tables.cpp H
search.cpp H
arrimpl.cpp W
@ -825,18 +825,18 @@ ftp.h P
http.h P
protocol.h P
forcelink.h L
forcelnk.h L
helpdata.h L
helpfrm.h L
helpctrl.h L
htmlcell.h L
htmldefs.h L
htmlfilter.h L
htmlparser.h L
htmlfilt.h L
htmlpars.h L
htmltag.h L
htmlwin.h L
htmlwinparser.h L
mod_templ.h L
winpars.h L
m_templ.h L
version.h L
caret.h N

View File

@ -1,9 +1,10 @@
/////////////////////////////////////////////////////////////////////////////
// Name: forcelink.h
// Name: forcelnk.h
// Purpose: see bellow
// Author: Vaclav Slavik
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
// RCS-ID: $Id$
// Copyright: (c) Vaclav Slavik
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/*
@ -36,8 +37,8 @@ See mod_*.cpp and htmlwin.cpp for example :-)
*/
#ifndef __FORCELINK_H__
#define __FORCELINK_H__
#ifndef _WX_FORCELNK_H_
#define _WX_FORCELNK_H_
@ -56,4 +57,4 @@ See mod_*.cpp and htmlwin.cpp for example :-)
_link_dummy_func_##module_name ();
#endif // __FORCELINK_H__
#endif // _WX_FORCELNK_H_

View File

@ -4,8 +4,7 @@
// Notes: Based on htmlhelp.cpp, implementing a monolithic
// HTML Help controller class, by Vaclav Slavik
// Author: Harm van der Heijden and Vaclav Slavik
// Created:
// RCS-ID:
// RCS-ID: $Id$
// Copyright: (c) Harm van der Heijden and Vaclav Slavik
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
@ -16,7 +15,7 @@
#include "wx/defs.h"
#ifdef __GNUG__
#pragma interface "helpctrl.h"
#pragma interface
#endif
#if wxUSE_HTML

View File

@ -4,8 +4,7 @@
// Notes: Based on htmlhelp.cpp, implementing a monolithic
// HTML Help controller class, by Vaclav Slavik
// Author: Harm van der Heijden and Vaclav Slavik
// Created:
// RCS-ID:
// RCS-ID: $Id$
// Copyright: (c) Harm van der Heijden and Vaclav Slavik
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
@ -14,7 +13,7 @@
#define _WX_HELPDATA_H_
#ifdef __GNUG__
#pragma interface "helpdata.h"
#pragma interface
#endif
#include "wx/defs.h"

View File

@ -4,8 +4,7 @@
// Notes: Based on htmlhelp.cpp, implementing a monolithic
// HTML Help controller class, by Vaclav Slavik
// Author: Harm van der Heijden and Vaclav Slavik
// Created:
// RCS-ID:
// RCS-ID: $Id$
// Copyright: (c) Harm van der Heijden and Vaclav Slavik
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
@ -14,7 +13,7 @@
#define _WX_HELPFRM_H_
#ifdef __GNUG__
#pragma interface "helpfrm.h"
#pragma interface
#endif
#include "wx/defs.h"

View File

@ -3,16 +3,17 @@
// Purpose: wxHtmlCell class is used by wxHtmlWindow/wxHtmlWinParser
// as a basic visual element of HTML page
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __HTMLCELL_H__
#define __HTMLCELL_H__
#ifndef _WX_HTMLCELL_H_
#define _WX_HTMLCELL_H_
#ifdef __GNUG__
#pragma interface "htmlcell.h"
#pragma interface
#endif
#include "wx/defs.h"
@ -36,19 +37,6 @@ class wxHtmlContainerCell;
class WXDLLEXPORT wxHtmlCell : public wxObject
{
protected:
wxHtmlCell *m_Next;
// pointer to the next cell
wxHtmlContainerCell *m_Parent;
// pointer to parent cell
long m_Width, m_Height, m_Descent;
// dimensions of fragment
// m_Descent is used to position text&images..
long m_PosX, m_PosY;
// position where the fragment is drawn
wxString m_Link;
// destination address if this fragment is hypertext link, "" otherwise
public:
wxHtmlCell() : wxObject() {m_Next = NULL; m_Parent = NULL; m_Width = m_Height = m_Descent = 0;};
virtual ~wxHtmlCell() {if (m_Next) delete m_Next;};
@ -106,6 +94,21 @@ class WXDLLEXPORT wxHtmlCell : public wxObject
// Parent is pointer to wxHtmlWindow that generated the event
// HINT: if this handling is not enough for you you should use
// wxHtmlBinderCell
protected:
wxHtmlCell *m_Next;
// pointer to the next cell
wxHtmlContainerCell *m_Parent;
// pointer to parent cell
long m_Width, m_Height, m_Descent;
// dimensions of fragment
// m_Descent is used to position text&images..
long m_PosX, m_PosY;
// position where the fragment is drawn
wxString m_Link;
// destination address if this fragment is hypertext link, "" otherwise
};
@ -281,15 +284,7 @@ class WXDLLEXPORT wxHtmlWidgetCell : public wxHtmlCell
#endif // __HTMLCELL_H__
#endif
#endif // _WX_HTMLCELL_H_

View File

@ -2,13 +2,14 @@
// Name: htmldefs.h
// Purpose: constants for wxhtml library
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __HTMLDEFS_H__
#define __HTMLDEFS_H__
#ifndef _WX_HTMLDEFS_H_
#define _WX_HTMLDEFS_H_
#include "wx/defs.h"
@ -95,4 +96,4 @@
/* steps of array reallocation */
#endif
#endif
#endif

View File

@ -1,17 +1,18 @@
/////////////////////////////////////////////////////////////////////////////
// Name: htmlfilter.h
// Name: htmlfilt.h
// Purpose: filters
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __HTMLFILTER_H__
#define __HTMLFILTER_H__
#ifndef _WX_HTMLFILT_H_
#define _WX_HTMLFILT_H_
#ifdef __GNUG__
#pragma interface "htmlfilter.h"
#pragma interface
#endif
#include "wx/defs.h"
@ -65,7 +66,6 @@ class WXDLLEXPORT wxHtmlFilterPlainText : public wxHtmlFilter
#endif
#endif // _WX_HTMLFILT_H_
#endif // __HTMLFILTER_H__
#endif

View File

@ -1,14 +1,15 @@
/////////////////////////////////////////////////////////////////////////////
// Name: htmlparser.h
// Name: htmlpars.h
// Purpose: wxHtmlParser class (generic parser)
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __HTMLPARSER_H__
#define __HTMLPARSER_H__
#ifndef _WX_HTMLPARS_H_
#define _WX_HTMLPARS_H_
#ifdef __GNUG__
#pragma interface
@ -17,8 +18,8 @@
#include "wx/defs.h"
#if wxUSE_HTML
#include <wx/html/htmltag.h>
#include <wx/filesys.h>
#include "wx/html/htmltag.h"
#include "wx/filesys.h"
class wxHtmlParser;
class wxHtmlTagHandler;
@ -35,25 +36,6 @@ class WXDLLEXPORT wxHtmlParser : public wxObject
{
DECLARE_ABSTRACT_CLASS(wxHtmlParser)
protected:
wxString m_Source;
// source being parsed
wxHtmlTagsCache *m_Cache;
// tags cache, used during parsing.
wxHashTable m_HandlersHash;
wxList m_HandlersList;
// handlers that handle particular tags. The table is accessed by
// key = tag's name.
// This attribute MUST be filled by derived class otherwise it would
// be empty and no tags would be recognized
// (see wxHtmlWinParser for details about filling it)
// m_HandlersHash is for random access based on knowledge of tag name (BR, P, etc.)
// it may (and often does) contain more references to one object
// m_HandlersList is list of all handlers and it is guaranteed to contain
// only one reference to each handler instance.
wxFileSystem *m_FS;
// class for opening files (file system)
public:
wxHtmlParser() : wxObject(), m_HandlersHash(wxKEY_STRING) {m_FS = NULL; m_Cache = NULL;}
virtual ~wxHtmlParser();
@ -115,6 +97,27 @@ class WXDLLEXPORT wxHtmlParser : public wxObject
// Default behavior is that it looks for proper handler in m_Handlers. The tag is
// ignored if no hander is found.
// Derived class is *responsible* for filling in m_Handlers table.
protected:
wxString m_Source;
// source being parsed
wxHtmlTagsCache *m_Cache;
// tags cache, used during parsing.
wxHashTable m_HandlersHash;
wxList m_HandlersList;
// handlers that handle particular tags. The table is accessed by
// key = tag's name.
// This attribute MUST be filled by derived class otherwise it would
// be empty and no tags would be recognized
// (see wxHtmlWinParser for details about filling it)
// m_HandlersHash is for random access based on knowledge of tag name (BR, P, etc.)
// it may (and often does) contain more references to one object
// m_HandlersList is list of all handlers and it is guaranteed to contain
// only one reference to each handler instance.
wxFileSystem *m_FS;
// class for opening files (file system)
};
@ -170,7 +173,6 @@ class WXDLLEXPORT wxHtmlTagHandler : public wxObject
#endif // __HTMLPARSER_H__
#endif
#endif // _WX_HTMLPARS_H_

View File

@ -2,13 +2,14 @@
// Name: htmltag.h
// Purpose: wxHtmlTag class (represents single tag)
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __HTMLTAG_H__
#define __HTMLTAG_H__
#ifndef _WX_HTMLTAG_H_
#define _WX_HTMLTAG_H_
#ifdef __GNUG__
#pragma interface
@ -71,18 +72,13 @@ class WXDLLEXPORT wxHtmlTag : public wxObject
{
DECLARE_CLASS(wxHtmlTag)
private:
wxString m_Name, m_Params;
int m_Begin, m_End1, m_End2;
bool m_Ending;
public:
wxHtmlTag(const wxString& source, int pos, int end_pos, wxHtmlTagsCache* cache);
// constructs wxHtmlTag object based on HTML tag.
// The tag begins (with '<' character) at position pos in source
// end_pos is position where parsing ends (usually end of document)
inline wxString GetName() const {return m_Name;};
inline wxString GetName() const {return m_Name;}
// Returns tag's name in uppercase.
bool HasParam(const wxString& par) const;
@ -106,34 +102,40 @@ class WXDLLEXPORT wxHtmlTag : public wxObject
// NOTE: unlike scanf family, this function only accepts
// *one* parameter !
inline const wxString& GetAllParams() const {return m_Params;};
inline const wxString& GetAllParams() const {return m_Params;}
// Returns string containing all params.
inline bool IsEnding() const {return m_Ending;};
inline bool IsEnding() const {return m_Ending;}
// return TRUE if this is ending tag (</something>) or FALSE
// if it isn't (<something>)
inline bool HasEnding() const {return m_End1 >= 0;};
inline bool HasEnding() const {return m_End1 >= 0;}
// return TRUE if this is ending tag (</something>) or FALSE
// if it isn't (<something>)
inline int GetBeginPos() const {return m_Begin;};
inline int GetBeginPos() const {return m_Begin;}
// returns beginning position of _internal_ block of text
// See explanation (returned value is marked with *):
// bla bla bla <MYTAG>* bla bla intenal text</MYTAG> bla bla
inline int GetEndPos1() const {return m_End1;};
inline int GetEndPos1() const {return m_End1;}
// returns ending position of _internal_ block of text.
// bla bla bla <MYTAG> bla bla intenal text*</MYTAG> bla bla
inline int GetEndPos2() const {return m_End2;};
inline int GetEndPos2() const {return m_End2;}
// returns end position 2 :
// bla bla bla <MYTAG> bla bla internal text</MYTAG>* bla bla
private:
wxString m_Name, m_Params;
int m_Begin, m_End1, m_End2;
bool m_Ending;
};
#endif // __HTMLTAG_H__
#endif
#endif // _WX_HTMLTAG_H_

View File

@ -2,13 +2,14 @@
// Name: htmlwin.h
// Purpose: wxHtmlWindow class for parsing & displaying HTML
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __HTMLWIN_H__
#define __HTMLWIN_H__
#ifndef _WX_HTMLWIN_H_
#define _WX_HTMLWIN_H_
#ifdef __GNUG__
#pragma interface
@ -17,14 +18,14 @@
#include "wx/defs.h"
#if wxUSE_HTML
#include <wx/window.h>
#include <wx/scrolwin.h>
#include <wx/config.h>
#include <wx/treectrl.h>
#include <wx/html/htmlwinparser.h>
#include <wx/html/htmlcell.h>
#include <wx/filesys.h>
#include <wx/html/htmlfilter.h>
#include "wx/window.h"
#include "wx/scrolwin.h"
#include "wx/config.h"
#include "wx/treectrl.h"
#include "wx/html/winpars.h"
#include "wx/html/htmlcell.h"
#include "wx/filesys.h"
#include "wx/html/htmlfilt.h"
//--------------------------------------------------------------------------------
@ -42,17 +43,17 @@
// item of history list
class WXDLLEXPORT HtmlHistoryItem : public wxObject
{
private:
wxString m_Page;
wxString m_Anchor;
int m_Pos;
public:
HtmlHistoryItem(const wxString& p, const wxString& a) {m_Page = p, m_Anchor = a, m_Pos = 0;}
int GetPos() const {return m_Pos;}
void SetPos(int p) {m_Pos = p;}
const wxString& GetPage() const {return m_Page;}
const wxString& GetAnchor() const {return m_Anchor;}
private:
wxString m_Page;
wxString m_Anchor;
int m_Pos;
};
#undef WXDLLEXPORTLOCAL
@ -69,34 +70,6 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
{
DECLARE_DYNAMIC_CLASS(wxHtmlWindow)
protected:
wxHtmlContainerCell *m_Cell;
// This is pointer to the first cell in parsed data.
// (Note: the first cell is usually top one = all other cells are sub-cells of this one)
wxHtmlWinParser *m_Parser;
// parser which is used to parse HTML input.
// Each wxHtmlWindow has it's own parser because sharing one global
// parser would be problematic (because of reentrancy)
wxString m_OpenedPage;
// contains name of actualy opened page or empty string if no page opened
wxString m_OpenedAnchor;
// contains name of current anchor within m_OpenedPage
wxFileSystem* m_FS;
// class for opening files (file system)
wxFrame *m_RelatedFrame;
wxString m_TitleFormat;
int m_RelatedStatusBar;
// frame in which page title should be displayed & number of it's statusbar
// reserved for usage with this html window
int m_Borders;
// borders (free space between text and window borders)
// defaults to 10 pixels.
int m_Style;
private:
bool m_tmpMouseMoved;
// a flag indicated if mouse moved
@ -215,14 +188,38 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
virtual wxHtmlFilter *GetDefaultFilter() {return new wxHtmlFilterPlainText;}
// returns new filter (will be stored into m_DefaultFilter variable)
protected:
wxHtmlContainerCell *m_Cell;
// This is pointer to the first cell in parsed data.
// (Note: the first cell is usually top one = all other cells are sub-cells of this one)
wxHtmlWinParser *m_Parser;
// parser which is used to parse HTML input.
// Each wxHtmlWindow has it's own parser because sharing one global
// parser would be problematic (because of reentrancy)
wxString m_OpenedPage;
// contains name of actualy opened page or empty string if no page opened
wxString m_OpenedAnchor;
// contains name of current anchor within m_OpenedPage
wxFileSystem* m_FS;
// class for opening files (file system)
wxFrame *m_RelatedFrame;
wxString m_TitleFormat;
int m_RelatedStatusBar;
// frame in which page title should be displayed & number of it's statusbar
// reserved for usage with this html window
int m_Borders;
// borders (free space between text and window borders)
// defaults to 10 pixels.
int m_Style;
DECLARE_EVENT_TABLE()
};
#endif // __HTMLWIN_H__
#endif
#endif // _WX_HTMLWIN_H_

View File

@ -1,9 +1,10 @@
/////////////////////////////////////////////////////////////////////////////
// Name: mod_templ.h
// Purpose: wxHtml tags module generic "template"
// Name: m_templ.h
// Purpose: Modules template file
// Author: Vaclav Slavik
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
// RCS-ID: $Id$
// Copyright: (c) Vaclav Slavik
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/*
@ -18,8 +19,8 @@ I STRONGLY recommend reading and understanding these macros!!
*/
#ifndef __MOD_TEMPL_H__
#define __MOD_TEMPL_H__
#ifndef _WX_M_TEMPL_H_
#define _WX_M_TEMPL_H_
#include "wx/defs.h"
#if wxUSE_HTML
@ -43,7 +44,7 @@ I STRONGLY recommend reading and understanding these macros!!
#include <wx/html/htmlwinparser.h>
#include "wx/html/winpars.h"
#define TAG_HANDLER_BEGIN(name,tags) \
@ -99,4 +100,4 @@ I STRONGLY recommend reading and understanding these macros!!
#endif
#endif
#endif

View File

@ -1,14 +1,15 @@
/////////////////////////////////////////////////////////////////////////////
// Name: htmlwinparser.h
// Name: winpars.h
// Purpose: wxHtmlWinParser class (parser to be used with wxHtmlWindow)
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __HTMLWINPARSER_H__
#define __HTMLWINPARSER_H__
#ifndef _WX_WINPARS_H_
#define _WX_WINPARS_H_
#ifdef __GNUG__
#pragma interface
@ -17,9 +18,9 @@
#include "wx/defs.h"
#if wxUSE_HTML
#include <wx/module.h>
#include <wx/html/htmlparser.h>
#include <wx/html/htmlcell.h>
#include "wx/module.h"
#include "wx/html/htmlpars.h"
#include "wx/html/htmlcell.h"
class wxHtmlWinParser;
class wxHtmlWinTagHandler;
@ -38,44 +39,6 @@ class WXDLLEXPORT wxHtmlWinParser : public wxHtmlParser
friend class wxHtmlWindow;
private:
wxWindow *m_Window;
// window we're parsing for
wxDC *m_DC;
// Device Context we're parsing for
static wxList m_Modules;
// list of tags modules (see wxHtmlTagsModule for details)
// This list is used to initialize m_Handlers member.
wxHtmlContainerCell *m_Container;
// actual container. See Open/CloseContainer for details.
int m_FontBold, m_FontItalic, m_FontUnderlined, m_FontFixed; // this is not TRUE,FALSE but 1,0, we need it for indexing
int m_FontSize; /* -2 to +4, 0 is default */
wxColour m_LinkColor;
wxColour m_ActualColor;
// basic font parameters.
wxString m_Link;
// actual hypertext link or empty string
bool m_UseLink;
// TRUE if m_Link is not empty
long m_CharHeight, m_CharWidth;
// average height of normal-sized text
int m_Align;
// actual alignment
wxFont *m_FontsTable[2][2][2][2][7];
// table of loaded fonts. 1st four indexes are 0 or 1, depending on on/off
// state of these flags (from left to right):
// [bold][italic][underlined][fixed_size]
// last index is font size : from 0 to 7 (remapped from html sizes -2 to +4)
// Note : this table covers all possible combinations of fonts, but not
// all of them are used, so many items in table are usually NULL.
int m_FontsSizes[7];
wxString m_FontFaceFixed, m_FontFaceNormal;
int m_ItalicModeFixed, m_ItalicModeNormal;
// html font sizes and faces of fixed and proportional fonts
public:
wxHtmlWinParser() : wxHtmlParser() {wxHtmlWinParser(NULL);}
wxHtmlWinParser(wxWindow *wnd);
@ -151,6 +114,42 @@ class WXDLLEXPORT wxHtmlWinParser : public wxHtmlParser
private:
bool m_tmpLastWasSpace;
// temporary variable used by AddText
wxWindow *m_Window;
// window we're parsing for
wxDC *m_DC;
// Device Context we're parsing for
static wxList m_Modules;
// list of tags modules (see wxHtmlTagsModule for details)
// This list is used to initialize m_Handlers member.
wxHtmlContainerCell *m_Container;
// actual container. See Open/CloseContainer for details.
int m_FontBold, m_FontItalic, m_FontUnderlined, m_FontFixed; // this is not TRUE,FALSE but 1,0, we need it for indexing
int m_FontSize; /* -2 to +4, 0 is default */
wxColour m_LinkColor;
wxColour m_ActualColor;
// basic font parameters.
wxString m_Link;
// actual hypertext link or empty string
bool m_UseLink;
// TRUE if m_Link is not empty
long m_CharHeight, m_CharWidth;
// average height of normal-sized text
int m_Align;
// actual alignment
wxFont *m_FontsTable[2][2][2][2][7];
// table of loaded fonts. 1st four indexes are 0 or 1, depending on on/off
// state of these flags (from left to right):
// [bold][italic][underlined][fixed_size]
// last index is font size : from 0 to 7 (remapped from html sizes -2 to +4)
// Note : this table covers all possible combinations of fonts, but not
// all of them are used, so many items in table are usually NULL.
int m_FontsSizes[7];
wxString m_FontFaceFixed, m_FontFaceNormal;
int m_ItalicModeFixed, m_ItalicModeNormal;
// html font sizes and faces of fixed and proportional fonts
};
@ -169,14 +168,14 @@ class WXDLLEXPORT wxHtmlWinTagHandler : public wxHtmlTagHandler
{
DECLARE_ABSTRACT_CLASS(wxHtmlWinTagHandler)
protected:
wxHtmlWinParser *m_WParser;
// same as m_Parser, but overcasted
public:
wxHtmlWinTagHandler() : wxHtmlTagHandler() {};
virtual void SetParser(wxHtmlParser *parser) {wxHtmlTagHandler::SetParser(parser); m_WParser = (wxHtmlWinParser*) parser;};
protected:
wxHtmlWinParser *m_WParser;
// same as m_Parser, but overcasted
};
@ -210,10 +209,10 @@ class WXDLLEXPORT wxHtmlTagsModule : public wxModule
};
#endif // __HTMLWINPARSER_H__
#endif
#endif // _WX_WINPARS_H_

View File

@ -2,12 +2,13 @@
// Name: wxhtml.h
// Purpose: wxHTML library for wxWindows
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __WXHTML_H__
#define __WXHTML_H__
#ifndef _WX_HTML_H_
#define _WX_HTML_H_
#ifdef __GNUG__
#pragma interface
@ -17,9 +18,9 @@
#include <wx/html/htmldefs.h>
#include <wx/html/htmltag.h>
#include <wx/html/htmlcell.h>
#include <wx/html/htmlparser.h>
#include <wx/html/htmlpars.h>
#include <wx/html/htmlwin.h>
#include <wx/html/htmlwinparser.h>
#include <wx/html/winpars.h>
#include <wx/filesys.h>
#include <wx/html/helpctrl.h>

View File

@ -36,7 +36,7 @@ TAG HANDER FOR 'MYBIND' TAG
*/
#include <wx/html/mod_templ.h>
#include <wx/html/m_templ.h>
TAG_HANDLER_BEGIN(MYBIND, "MYBIND")

View File

@ -4,14 +4,13 @@
// Notes: Based on htmlhelp.cpp, implementing a monolithic
// HTML Help controller class, by Vaclav Slavik
// Author: Harm van der Heijden and Vaclav Slavik
// Created:
// RCS-ID:
// RCS-ID: $Id$
// Copyright: (c) Harm van der Heijden and Vaclav Slavik
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "helpctrl.h"
#pragma implementation
#endif
// For compilers that support precompilation, includes "wx.h".
@ -61,7 +60,7 @@ bool wxHtmlHelpController::AddBook(const wxString& book, bool show_wait_msg)
{
wxBusyCursor cur;
#if wxUSE_BUSYINFO
wxBusyInfo* busy;
wxBusyInfo* busy = NULL;
wxString info;
if (show_wait_msg) {
info.Printf(_("Adding book %s"), book.c_str());

View File

@ -4,14 +4,13 @@
// Notes: Based on htmlhelp.cpp, implementing a monolithic
// HTML Help controller class, by Vaclav Slavik
// Author: Harm van der Heijden and Vaclav Slavik
// Created:
// RCS-ID:
// RCS-ID: $Id$
// Copyright: (c) Harm van der Heijden and Vaclav Slavik
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "helpdata.h"
#pragma implementation
#endif
// For compilers that support precompilation, includes "wx.h".
@ -33,7 +32,7 @@
#include "wx/tokenzr.h"
#include "wx/wfstream.h"
#include "wx/busyinfo.h"
#include "wx/html/htmlparser.h"
#include "wx/html/htmlpars.h"
#include "wx/html/htmldefs.h"
#include "wx/arrimpl.cpp"

View File

@ -4,14 +4,13 @@
// Notes: Based on htmlhelp.cpp, implementing a monolithic
// HTML Help controller class, by Vaclav Slavik
// Author: Harm van der Heijden and Vaclav Slavik
// Created:
// RCS-ID:
// RCS-ID: $Id$
// Copyright: (c) Harm van der Heijden and Vaclav Slavik
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "helpfrm.h"
#pragma implementation
#endif
// For compilers that support precompilation, includes "wx.h".

View File

@ -2,12 +2,13 @@
// Name: htmlcell.cpp
// Purpose: wxHtmlCell - basic element of HTML output
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "htmlcell.h"
#pragma implementation
#endif
#include "wx/wxprec.h"

View File

@ -1,14 +1,15 @@
/////////////////////////////////////////////////////////////////////////////
// Name: filter.cpp
// Name: htmlfilt.cpp
// Purpose: wxHtmlFilter - input filter for translating into HTML format
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation "htmlfilter.h"
#pragma implementation
#endif
#include "wx/wxprec.h"
@ -23,7 +24,7 @@
#include "wx/wx.h"
#endif
#include "wx/html/htmlfilter.h"
#include "wx/html/htmlfilt.h"
#include "wx/html/htmlwin.h"

View File

@ -1,7 +1,8 @@
/////////////////////////////////////////////////////////////////////////////
// Name: htmlparser.cpp
// Name: htmlpars.cpp
// Purpose: wxHtmlParser class (generic parser)
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
@ -24,11 +25,11 @@
#include <wx/wx.h>
#endif
#include <wx/tokenzr.h>
#include <wx/wfstream.h>
#include <wx/url.h>
#include <wx/html/htmldefs.h>
#include <wx/html/htmlparser.h>
#include "wx/tokenzr.h"
#include "wx/wfstream.h"
#include "wx/url.h"
#include "wx/html/htmldefs.h"
#include "wx/html/htmlpars.h"

View File

@ -2,6 +2,7 @@
// Name: htmltag.cpp
// Purpose: wxHtmlTag class (represents single tag)
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
@ -24,7 +25,7 @@
#include <wx/wx.h>
#endif
#include <wx/html/htmltag.h>
#include "wx/html/htmltag.h"
#include <stdio.h> // for vsscanf
#include <stdarg.h>

View File

@ -2,6 +2,7 @@
// Name: htmlwin.cpp
// Purpose: wxHtmlWindow class for parsing & displaying HTML (implementation)
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
@ -24,9 +25,9 @@
#include <wx/wx.h>
#endif
#include <wx/html/htmlwin.h>
#include "wx/html/htmlwin.h"
#include <wx/html/forcelink.h>
#include "wx/html/forcelnk.h"

View File

@ -2,6 +2,7 @@
// Name: mod_fonts.cpp
// Purpose: wxHtml module for fonts & colors of fonts
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
@ -23,8 +24,8 @@
#include <wx/wx.h>
#endif
#include <wx/html/forcelink.h>
#include <wx/html/mod_templ.h>
#include "wx/html/forcelnk.h"
#include "wx/html/m_templ.h"
FORCE_LINK_ME(mod_fonts)

View File

@ -2,6 +2,7 @@
// Name: mod_hline.cpp
// Purpose: wxHtml module for horizontal line (HR tag)
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
@ -25,10 +26,10 @@
#include <wx/html/forcelink.h>
#include <wx/html/mod_templ.h>
#include "wx/html/forcelnk.h"
#include "wx/html/m_templ.h"
#include <wx/html/htmlcell.h>
#include "wx/html/htmlcell.h"
FORCE_LINK_ME(mod_hline)

View File

@ -2,6 +2,7 @@
// Name: mod_image.cpp
// Purpose: wxHtml module for displaying images
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik, Joel Lucsy
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
@ -23,8 +24,8 @@
#include "wx/wx.h"
#endif
#include "wx/html/forcelink.h"
#include "wx/html/mod_templ.h"
#include "wx/html/forcelnk.h"
#include "wx/html/m_templ.h"
#include "wx/image.h"

View File

@ -2,6 +2,7 @@
// Name: mod_layout.cpp
// Purpose: wxHtml module for basic paragraphs/layout handling
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
@ -21,10 +22,10 @@
#endif
#include <wx/html/forcelink.h>
#include <wx/html/mod_templ.h>
#include "wx/html/forcelnk.h"
#include "wx/html/m_templ.h"
#include <wx/html/htmlwin.h>
#include "wx/html/htmlwin.h"
FORCE_LINK_ME(mod_layout)

View File

@ -2,6 +2,7 @@
// Name: mod_links.cpp
// Purpose: wxHtml module for links & anchors
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
@ -23,8 +24,8 @@
#endif
#include <wx/html/forcelink.h>
#include <wx/html/mod_templ.h>
#include "wx/html/forcelnk.h"
#include "wx/html/m_templ.h"
FORCE_LINK_ME(mod_links)

View File

@ -2,6 +2,7 @@
// Name: mod_list.cpp
// Purpose: wxHtml module for lists
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
@ -24,10 +25,10 @@
#endif
#include <wx/html/forcelink.h>
#include <wx/html/mod_templ.h>
#include "wx/html/forcelnk.h"
#include "wx/html/m_templ.h"
#include <wx/html/htmlcell.h>
#include "wx/html/htmlcell.h"
FORCE_LINK_ME(mod_list)

View File

@ -2,6 +2,7 @@
// Name: mod_pre.cpp
// Purpose: wxHtml module for <PRE> ... </PRE> tag (code citation)
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
@ -22,10 +23,10 @@
#endif
#include <wx/html/forcelink.h>
#include <wx/html/mod_templ.h>
#include "wx/html/forcelnk.h"
#include "wx/html/m_templ.h"
#include <wx/html/htmlcell.h>
#include "wx/html/htmlcell.h"
#include <wx/tokenzr.h>
FORCE_LINK_ME(mod_pre)

View File

@ -2,6 +2,7 @@
// Name: mod_tables.cpp
// Purpose: wxHtml module for tables
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
@ -29,10 +30,10 @@ REMARKS:
*/
#include <wx/html/forcelink.h>
#include <wx/html/mod_templ.h>
#include "wx/html/forcelnk.h"
#include "wx/html/m_templ.h"
#include <wx/html/htmlcell.h>
#include "wx/html/htmlcell.h"
FORCE_LINK_ME(mod_tables)

View File

@ -2,6 +2,7 @@
// Name: search.cpp
// Purpose: search engine
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////

View File

@ -1,7 +1,8 @@
/////////////////////////////////////////////////////////////////////////////
// Name: htmlwinparser.cpp
// Name: winpars.cpp
// Purpose: wxHtmlParser class (generic parser)
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
@ -24,9 +25,9 @@
#include <wx/wx.h>
#endif
#include <wx/html/htmldefs.h>
#include <wx/html/htmlwinparser.h>
#include <wx/html/htmlwin.h>
#include "wx/html/htmldefs.h"
#include "wx/html/winpars.h"
#include "wx/html/htmlwin.h"
//-----------------------------------------------------------------------------

View File

@ -1,6 +1,6 @@
# This file was automatically generated by tmake at 00:54, 1999/10/02
# This file was automatically generated by tmake at 20:06, 1999/10/02
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE B32.T!
#

View File

@ -1,6 +1,6 @@
# This file was automatically generated by tmake at 00:58, 1999/10/02
# This file was automatically generated by tmake at 20:06, 1999/10/02
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE BCC.T!
#

View File

@ -1,6 +1,6 @@
# This file was automatically generated by tmake at 20:00, 1999/10/01
# This file was automatically generated by tmake at 20:06, 1999/10/02
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE DOS.T!
#

View File

@ -1,5 +1,5 @@
# This file was automatically generated by tmake at 20:00, 1999/10/01
# This file was automatically generated by tmake at 20:06, 1999/10/02
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE G95.T!
#
@ -152,20 +152,20 @@ HTMLOBJS = \
$(HTMLDIR)/helpdata.$(OBJSUFF) \
$(HTMLDIR)/helpfrm.$(OBJSUFF) \
$(HTMLDIR)/htmlcell.$(OBJSUFF) \
$(HTMLDIR)/htmlfilter.$(OBJSUFF) \
$(HTMLDIR)/htmlparser.$(OBJSUFF) \
$(HTMLDIR)/htmlfilt.$(OBJSUFF) \
$(HTMLDIR)/htmlpars.$(OBJSUFF) \
$(HTMLDIR)/htmltag.$(OBJSUFF) \
$(HTMLDIR)/htmlwin.$(OBJSUFF) \
$(HTMLDIR)/htmlwinparser.$(OBJSUFF) \
$(HTMLDIR)/mod_fonts.$(OBJSUFF) \
$(HTMLDIR)/mod_hline.$(OBJSUFF) \
$(HTMLDIR)/mod_image.$(OBJSUFF) \
$(HTMLDIR)/mod_layout.$(OBJSUFF) \
$(HTMLDIR)/mod_links.$(OBJSUFF) \
$(HTMLDIR)/mod_list.$(OBJSUFF) \
$(HTMLDIR)/mod_pre.$(OBJSUFF) \
$(HTMLDIR)/mod_tables.$(OBJSUFF) \
$(HTMLDIR)/search.$(OBJSUFF)
$(HTMLDIR)/m_fonts.$(OBJSUFF) \
$(HTMLDIR)/m_hline.$(OBJSUFF) \
$(HTMLDIR)/m_image.$(OBJSUFF) \
$(HTMLDIR)/m_layout.$(OBJSUFF) \
$(HTMLDIR)/m_links.$(OBJSUFF) \
$(HTMLDIR)/m_list.$(OBJSUFF) \
$(HTMLDIR)/m_pre.$(OBJSUFF) \
$(HTMLDIR)/m_tables.$(OBJSUFF) \
$(HTMLDIR)/search.$(OBJSUFF) \
$(HTMLDIR)/winpars.$(OBJSUFF)
MSWOBJS = \
$(MSWDIR)/accel.$(OBJSUFF) \

View File

@ -1,6 +1,6 @@
# This file was automatically generated by tmake at 20:00, 1999/10/01
# This file was automatically generated by tmake at 20:06, 1999/10/02
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE SC.T!
# Symantec C++ makefile for the msw objects

View File

@ -1,4 +1,4 @@
# This file was automatically generated by tmake at 20:01, 1999/10/01
# This file was automatically generated by tmake at 20:06, 1999/10/02
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE VC.T!
# File: makefile.vc

View File

@ -1,6 +1,6 @@
# This file was automatically generated by tmake at 20:01, 1999/10/01
# This file was automatically generated by tmake at 20:06, 1999/10/02
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE WAT.T!
#!/binb/wmake.exe