Remove libwww dependency from CGroupHTML::addLink() signature
--HG-- branch : libxml2-html-parser
This commit is contained in:
parent
9fd524f9c6
commit
5d4cbdce26
3 changed files with 19 additions and 14 deletions
|
@ -228,7 +228,7 @@ namespace NLGUI
|
||||||
virtual void addText (const char * buf, int len);
|
virtual void addText (const char * buf, int len);
|
||||||
|
|
||||||
// A link has been parsed
|
// A link has been parsed
|
||||||
virtual void addLink (uint element_number, uint attribute_number, HTChildAnchor *anchor, const BOOL *present, const char **value);
|
virtual void addLink (uint element_number, const BOOL *present, const char **value);
|
||||||
|
|
||||||
// A new begin HTML element has been parsed (<IMG> for exemple)
|
// A new begin HTML element has been parsed (<IMG> for exemple)
|
||||||
virtual void beginElement (uint element_number, const BOOL *present, const char **value);
|
virtual void beginElement (uint element_number, const BOOL *present, const char **value);
|
||||||
|
@ -699,6 +699,7 @@ namespace NLGUI
|
||||||
void checkImageDownload();
|
void checkImageDownload();
|
||||||
void addImageDownload(const std::string &url, CViewBase *img);
|
void addImageDownload(const std::string &url, CViewBase *img);
|
||||||
std::string localImageName(const std::string &url);
|
std::string localImageName(const std::string &url);
|
||||||
|
std::string getAbsoluteUrl(const std::string &url);
|
||||||
|
|
||||||
bool isTrustedDomain(const std::string &domain);
|
bool isTrustedDomain(const std::string &domain);
|
||||||
void setImage(CViewBase *view, const std::string &file);
|
void setImage(CViewBase *view, const std::string &file);
|
||||||
|
|
|
@ -570,7 +570,7 @@ namespace NLGUI
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
|
|
||||||
void CGroupHTML::addLink (uint element_number, uint /* attribute_number */, HTChildAnchor *anchor, const BOOL *present, const char **value)
|
void CGroupHTML::addLink (uint element_number, const BOOL *present, const char **value)
|
||||||
{
|
{
|
||||||
if (_Browsing)
|
if (_Browsing)
|
||||||
{
|
{
|
||||||
|
@ -591,16 +591,8 @@ namespace NLGUI
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
HTAnchor * dest = HTAnchor_followMainLink((HTAnchor *) anchor);
|
// convert href from "?key=val" into "http://domain.com/?key=val"
|
||||||
if (dest)
|
_Link.push_back(getAbsoluteUrl(suri));
|
||||||
{
|
|
||||||
C3WSmartPtr uri = HTAnchor_address(dest);
|
|
||||||
_Link.push_back ((const char*)uri);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
_Link.push_back("");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
for(uint8 i = MY_HTML_A_ACCESSKEY; i < MY_HTML_A_Z_ACTION_SHORTCUT; i++)
|
for(uint8 i = MY_HTML_A_ACCESSKEY; i < MY_HTML_A_Z_ACTION_SHORTCUT; i++)
|
||||||
|
@ -4516,7 +4508,7 @@ namespace NLGUI
|
||||||
|
|
||||||
beginElement(element_number, &present[0], &value[0]);
|
beginElement(element_number, &present[0], &value[0]);
|
||||||
if (element_number == HTML_A)
|
if (element_number == HTML_A)
|
||||||
addLink(element_number, 0, NULL, &present[0], &value[0]);
|
addLink(element_number, &present[0], &value[0]);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -4650,6 +4642,15 @@ namespace NLGUI
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ***************************************************************************
|
||||||
|
std::string CGroupHTML::getAbsoluteUrl(const std::string &url)
|
||||||
|
{
|
||||||
|
if (HTURL_isAbsolute(url.c_str()))
|
||||||
|
return url;
|
||||||
|
|
||||||
|
return std::string(HTParse(url.c_str(), _URL.c_str(), PARSE_ALL));
|
||||||
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
// CGroupHTML::CStyleParams style;
|
// CGroupHTML::CStyleParams style;
|
||||||
// style.FontSize; // font-size: 10px;
|
// style.FontSize; // font-size: 10px;
|
||||||
|
|
|
@ -322,7 +322,10 @@ namespace NLGUI
|
||||||
const char ** value)
|
const char ** value)
|
||||||
{
|
{
|
||||||
// Do the work in the class
|
// Do the work in the class
|
||||||
me->Parent->addLink (element_number, attribute_number, anchor, present, value);
|
if (element_number == HTML_A)
|
||||||
|
{
|
||||||
|
me->Parent->addLink (element_number, present, value);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
|
|
Loading…
Reference in a new issue