Convert image tags to text using their alt attribute in wxHTML.
This is useful when copying wxHtmlWindow contents to clipboard, for example. Closes #14557. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -298,6 +298,11 @@ public:
|
|||||||
virtual wxHtmlLinkInfo *GetLink(int x = 0, int y = 0) const;
|
virtual wxHtmlLinkInfo *GetLink(int x = 0, int y = 0) const;
|
||||||
|
|
||||||
void SetImage(const wxImage& img);
|
void SetImage(const wxImage& img);
|
||||||
|
|
||||||
|
// If "alt" text is set, it will be used when converting this cell to text.
|
||||||
|
void SetAlt(const wxString& alt);
|
||||||
|
virtual wxString ConvertToText(wxHtmlSelection *sel) const;
|
||||||
|
|
||||||
#if wxUSE_GIF && wxUSE_TIMER
|
#if wxUSE_GIF && wxUSE_TIMER
|
||||||
void AdvanceAnimation(wxTimer *timer);
|
void AdvanceAnimation(wxTimer *timer);
|
||||||
virtual void Layout(int w);
|
virtual void Layout(int w);
|
||||||
@@ -320,6 +325,7 @@ private:
|
|||||||
double m_scale;
|
double m_scale;
|
||||||
wxHtmlImageMapCell *m_imageMap;
|
wxHtmlImageMapCell *m_imageMap;
|
||||||
wxString m_mapName;
|
wxString m_mapName;
|
||||||
|
wxString m_alt;
|
||||||
|
|
||||||
wxDECLARE_NO_COPY_CLASS(wxHtmlImageCell);
|
wxDECLARE_NO_COPY_CLASS(wxHtmlImageCell);
|
||||||
};
|
};
|
||||||
@@ -474,6 +480,16 @@ void wxHtmlImageCell::SetImage(const wxImage& img)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void wxHtmlImageCell::SetAlt(const wxString& alt)
|
||||||
|
{
|
||||||
|
m_alt = alt;
|
||||||
|
}
|
||||||
|
|
||||||
|
wxString wxHtmlImageCell::ConvertToText(wxHtmlSelection* WXUNUSED(sel)) const
|
||||||
|
{
|
||||||
|
return m_alt;
|
||||||
|
}
|
||||||
|
|
||||||
#if wxUSE_GIF && wxUSE_TIMER
|
#if wxUSE_GIF && wxUSE_TIMER
|
||||||
void wxHtmlImageCell::AdvanceAnimation(wxTimer *timer)
|
void wxHtmlImageCell::AdvanceAnimation(wxTimer *timer)
|
||||||
{
|
{
|
||||||
@@ -703,6 +719,7 @@ TAG_HANDLER_BEGIN(IMG, "IMG,MAP,AREA")
|
|||||||
al, mn);
|
al, mn);
|
||||||
m_WParser->ApplyStateToCell(cel);
|
m_WParser->ApplyStateToCell(cel);
|
||||||
cel->SetId(tag.GetParam(wxT("id"))); // may be empty
|
cel->SetId(tag.GetParam(wxT("id"))); // may be empty
|
||||||
|
cel->SetAlt(tag.GetParam(wxT("alt")));
|
||||||
m_WParser->GetContainer()->InsertCell(cel);
|
m_WParser->GetContainer()->InsertCell(cel);
|
||||||
if (str)
|
if (str)
|
||||||
delete str;
|
delete str;
|
||||||
|
Reference in New Issue
Block a user