#include "ScintillaWX.h"
+#include "ExternalLexer.h"
#include "wx/stc/stc.h"
#include "PlatWX.h"
if (currentPos != anchor) {
SelectionText st;
CopySelectionRange(&st);
- if (wxTheClipboard->Open()) {
- wxTheClipboard->UsePrimarySelection(FALSE);
- wxString text = stc2wx(st.s, st.len);
- wxTheClipboard->SetData(new wxTextDataObject(text));
- wxTheClipboard->Close();
- }
+ CopyToClipboard(st);
}
}
}
+void ScintillaWX::CopyToClipboard(const SelectionText& st) {
+ if (wxTheClipboard->Open()) {
+ wxTheClipboard->UsePrimarySelection(FALSE);
+ wxString text = stc2wx(st.s, st.len);
+ wxTheClipboard->SetData(new wxTextDataObject(text));
+ wxTheClipboard->Close();
+ }
+}
+
+
bool ScintillaWX::CanPaste() {
bool canPaste = FALSE;
bool didOpen;
- if ( (didOpen = !wxTheClipboard->IsOpened()) )
- wxTheClipboard->Open();
+ if (Editor::CanPaste()) {
+ if ( (didOpen = !wxTheClipboard->IsOpened()) )
+ wxTheClipboard->Open();
- if (wxTheClipboard->IsOpened()) {
- wxTheClipboard->UsePrimarySelection(FALSE);
- canPaste = wxTheClipboard->IsSupported(wxUSE_UNICODE ? wxDF_UNICODETEXT : wxDF_TEXT);
- if (didOpen)
- wxTheClipboard->Close();
+ if (wxTheClipboard->IsOpened()) {
+ wxTheClipboard->UsePrimarySelection(FALSE);
+ canPaste = wxTheClipboard->IsSupported(wxUSE_UNICODE ? wxDF_UNICODETEXT : wxDF_TEXT);
+ if (didOpen)
+ wxTheClipboard->Close();
+ }
}
return canPaste;
}
break;
}
+#ifdef SCI_LEXER
+ case SCI_LOADLEXERLIBRARY:
+ LexerManager::GetInstance()->Load((const char*)lParam);
+ break;
+#endif
default:
return ScintillaBase::WndProc(iMessage, wParam, lParam);
}