mirror of
https://github.com/levinsv/pgadmin3.git
synced 2026-05-15 06:05:49 -06:00
support single quote for PreviewHtml
This commit is contained in:
parent
613c392361
commit
9571d4527a
2 changed files with 22 additions and 3 deletions
|
|
@ -193,6 +193,23 @@ public:
|
|||
if (event.GetKeyCode() == WXK_HOME) htmlWindow->ScrollPages(-1000);
|
||||
if (event.GetKeyCode() == WXK_END) htmlWindow->ScrollPages(1000);
|
||||
//std::cout << "key code " << event.GetKeyCode() << " " << std::endl;
|
||||
if (event.GetKeyCode() == 'C') {
|
||||
|
||||
if (hist.size()>0 && wxTheClipboard->Open())
|
||||
{
|
||||
wxString h=hist[hist.size()-1];
|
||||
// Добавляем данные (можно добавить несколько форматов, если нужно)
|
||||
wxDataObjectComposite* dataobj = new wxDataObjectComposite();
|
||||
dataobj->Add(new wxHTMLDataObject(h));
|
||||
wxTheClipboard->SetData(dataobj);
|
||||
wxTheClipboard->Close();
|
||||
}
|
||||
else
|
||||
{
|
||||
wxLogError("No open clipboard.");
|
||||
}
|
||||
|
||||
}
|
||||
if (event.GetKeyCode() == 'S') {
|
||||
wxSize clientSize = this->GetClientSize();
|
||||
// Создаём битмап того же размера
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ wxString PreviewHtml::Preview(const wxString& txt, fmtpreview type) {
|
|||
int flag = 0;
|
||||
tokens.clear();
|
||||
bool quote = false;
|
||||
wxUniChar prevchar;
|
||||
wxUniChar prevchar,quotechar;
|
||||
int startstr = -1;
|
||||
while (pos < len) {
|
||||
c = tmpstr[pos++];
|
||||
|
|
@ -130,18 +130,20 @@ wxString PreviewHtml::Preview(const wxString& txt, fmtpreview type) {
|
|||
html+=c;
|
||||
continue;
|
||||
}
|
||||
bool isquote = c == '"';
|
||||
if (!quote && (c=='"' || c=='\'')) quotechar = c;
|
||||
bool isquote = c == quotechar;
|
||||
if (quote) {
|
||||
if (prevchar == c && isquote) {
|
||||
// repeat quote
|
||||
prevchar = '\0';
|
||||
continue;
|
||||
}
|
||||
if (prevchar == '"' && !isquote) {
|
||||
if (prevchar == quotechar && !isquote) {
|
||||
// end quote string
|
||||
wxString tmp = tmpstr.Mid(startstr, pos - startstr - 1);
|
||||
saveTokenIfNotEmpty(tmp, PREVIEW_QUOTE);
|
||||
quote = false;
|
||||
quotechar='\0';
|
||||
}
|
||||
else {
|
||||
prevchar = c;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue