// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) 1999 Vaclav Slavik
-// Licence: wxWindows Licence
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma implementation "htmltag.h"
#endif
wxHtmlTagsCache::wxHtmlTagsCache(const wxString& source)
{
const wxChar *src = source.c_str();
- int tg, stpos;
int lng = source.Length();
wxChar tagBuffer[256];
{
if (m_CacheSize % CACHE_INCREMENT == 0)
m_Cache = (wxHtmlCacheItem*) realloc(m_Cache, (m_CacheSize + CACHE_INCREMENT) * sizeof(wxHtmlCacheItem));
- tg = m_CacheSize++;
- m_Cache[tg].Key = stpos = pos++;
+ int tg = m_CacheSize++;
+ int stpos = pos++;
+ m_Cache[tg].Key = stpos;
int i;
for ( i = 0;
src[pos] != wxT('>') && !wxIsspace(src[pos]);
i++, pos++ )
{
- tagBuffer[i] = wxToupper(src[pos]);
+ tagBuffer[i] = (wxChar)wxToupper(src[pos]);
}
tagBuffer[i] = _T('\0');
++pos;
if (src[pos] == '<')
++pos;
-
+
// see if it matches
int match_pos = 0;
while (pos < lng && match_pos < tag_len && src[pos] != '>' && src[pos] != '<') {
// Unicode build
if ((wxChar)wxToupper(src[pos]) == tagBuffer[match_pos]) {
++match_pos;
- }
+ }
else if (src[pos] == wxT(' ') || src[pos] == wxT('\n') ||
src[pos] == wxT('\r') || src[pos] == wxT('\t')) {
// need to skip over these
// found a match
if (match_pos == tag_len) {
pos = pos - tag_len - 3;
- stpos = pos;
break;
}
else {
bool wxHtmlTag::HasParam(const wxString& par) const
{
- return (m_ParamNames.Index(par, FALSE) != wxNOT_FOUND);
+ return (m_ParamNames.Index(par, false) != wxNOT_FOUND);
}
wxString wxHtmlTag::GetParam(const wxString& par, bool with_commas) const
{
- int index = m_ParamNames.Index(par, FALSE);
+ int index = m_ParamNames.Index(par, false);
if (index == wxNOT_FOUND)
return wxEmptyString;
if (with_commas)
{
wxString str = GetParam(par);
- if (str.IsEmpty()) return FALSE;
+ if (str.IsEmpty()) return false;
if (str.GetChar(0) == wxT('#'))
{
unsigned long tmp;
if (ScanParam(par, wxT("#%lX"), &tmp) != 1)
- return FALSE;
+ return false;
*clr = wxColour((unsigned char)((tmp & 0xFF0000) >> 16),
- (unsigned char)((tmp & 0x00FF00) >> 8),
- (unsigned char)(tmp & 0x0000FF));
- return TRUE;
+ (unsigned char)((tmp & 0x00FF00) >> 8),
+ (unsigned char)(tmp & 0x0000FF));
+ return true;
}
else
{
// Handle colours defined in HTML 4.0:
#define HTML_COLOUR(name,r,g,b) \
- if (str.IsSameAs(wxT(name), FALSE)) \
- { *clr = wxColour(r,g,b); return TRUE; }
+ if (str.IsSameAs(wxT(name), false)) \
+ { *clr = wxColour(r,g,b); return true; }
HTML_COLOUR("black", 0x00,0x00,0x00)
HTML_COLOUR("silver", 0xC0,0xC0,0xC0)
HTML_COLOUR("gray", 0x80,0x80,0x80)
#undef HTML_COLOUR
}
- return FALSE;
+ return false;
}
bool wxHtmlTag::GetParamAsInt(const wxString& par, int *clr) const
{
- if (!HasParam(par)) return FALSE;
+ if (!HasParam(par)) return false;
long i;
bool succ = GetParam(par).ToLong(&i);
*clr = (int)i;