mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-05-15 14:16:07 -06:00
CtrlCore: WriteClipboardHTML (thanks omari)
git-svn-id: svn://ultimatepp.org/upp/trunk@12846 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
parent
18171cca3b
commit
3e4d44a2d8
2 changed files with 31 additions and 0 deletions
|
|
@ -296,4 +296,33 @@ const char *ClipFmtsRTF()
|
|||
return sClipFmtsRTF;
|
||||
}
|
||||
|
||||
void WriteClipboardHTML(const String& html)
|
||||
{
|
||||
String data;
|
||||
|
||||
data =
|
||||
"Version:0.9\n"
|
||||
"StartHTML:#000001#\n"
|
||||
"EndHTML:#000002#\n"
|
||||
"StartFragment:#000003#\n"
|
||||
"EndFragment:#000004#\n"
|
||||
"StartSelection:#000003#\n"
|
||||
"EndSelection:#000004#\n"
|
||||
"<HTML>\n"
|
||||
"<!--StartFragment -->"
|
||||
"<!--EndFragment -->\n"
|
||||
"</HTML>\n"
|
||||
;
|
||||
|
||||
data.Replace("#000001#", Sprintf("%08u", data.Find("<HTML>") + 6));
|
||||
int start = data.Find("<!--StartFragment -->") + 21;
|
||||
data.Replace("#000003#", Sprintf("%08u", start));
|
||||
data.Replace("#000004#", Sprintf("%08u", data.Find("<!--EndFragment -->") + html.GetCount()));
|
||||
data.Replace("#000002#", Sprintf("%08u", data.Find("</HTML>") + html.GetCount()));
|
||||
|
||||
data.Insert(start, html);
|
||||
|
||||
WriteClipboard("HTML Format", data);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1667,6 +1667,8 @@ String EncodeRTF(const RichText& richtext, byte charset, int dot_page_width)
|
|||
String EncodeRTF(const RichText& richtext);
|
||||
RichText ParseRTF(const char *rtf);
|
||||
|
||||
void WriteClipboardHTML(const String& html);
|
||||
|
||||
#include <CtrlCore/TopWindow.h>
|
||||
|
||||
#include GUIPLATFORM_INCLUDE_AFTER
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue