git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16790
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
if (currentPos != anchor) {
SelectionText st;
CopySelectionRange(&st);
if (currentPos != anchor) {
SelectionText st;
CopySelectionRange(&st);
- wxTheClipboard->Open();
- wxTheClipboard->UsePrimarySelection();
- wxString text = stc2wx(st.s, st.len);
- wxTheClipboard->SetData(new wxTextDataObject(text));
- wxTheClipboard->Close();
+ if (wxTheClipboard->Open()) {
+ wxTheClipboard->UsePrimarySelection();
+ wxString text = stc2wx(st.s, st.len);
+ wxTheClipboard->SetData(new wxTextDataObject(text));
+ wxTheClipboard->Close();
+ }
ClearSelection();
wxTextDataObject data;
ClearSelection();
wxTextDataObject data;
- wxTheClipboard->Open();
- wxTheClipboard->UsePrimarySelection();
- gotData = wxTheClipboard->GetData(data);
- wxTheClipboard->Close();
+ if (wxTheClipboard->Open()) {
+ wxTheClipboard->UsePrimarySelection();
+ gotData = wxTheClipboard->GetData(data);
+ wxTheClipboard->Close();
+ }
if (gotData) {
wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(data.GetText());
int len = strlen(buf);
if (gotData) {
wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(data.GetText());
int len = strlen(buf);
bool ScintillaWX::CanPaste() {
bool canPaste = FALSE;
bool ScintillaWX::CanPaste() {
bool canPaste = FALSE;
- if (! wxTheClipboard->IsOpened()) {
+ if ( (didOpen = !wxTheClipboard->IsOpened()) )
+
+ if (wxTheClipboard->IsOpened()) {
wxTheClipboard->UsePrimarySelection();
canPaste = wxTheClipboard->IsSupported(wxUSE_UNICODE ? wxDF_UNICODETEXT : wxDF_TEXT);
wxTheClipboard->UsePrimarySelection();
canPaste = wxTheClipboard->IsSupported(wxUSE_UNICODE ? wxDF_UNICODETEXT : wxDF_TEXT);
- wxTheClipboard->Close();
+ if (didOpen)
+ wxTheClipboard->Close();
if (currentPos != anchor) {
SelectionText st;
CopySelectionRange(&st);
if (currentPos != anchor) {
SelectionText st;
CopySelectionRange(&st);
- wxTheClipboard->Open();
- wxTheClipboard->UsePrimarySelection();
- wxString text = stc2wx(st.s, st.len);
- wxTheClipboard->SetData(new wxTextDataObject(text));
- wxTheClipboard->Close();
+ if (wxTheClipboard->Open()) {
+ wxTheClipboard->UsePrimarySelection();
+ wxString text = stc2wx(st.s, st.len);
+ wxTheClipboard->SetData(new wxTextDataObject(text));
+ wxTheClipboard->Close();
+ }
ClearSelection();
wxTextDataObject data;
ClearSelection();
wxTextDataObject data;
- wxTheClipboard->Open();
- wxTheClipboard->UsePrimarySelection();
- gotData = wxTheClipboard->GetData(data);
- wxTheClipboard->Close();
+ if (wxTheClipboard->Open()) {
+ wxTheClipboard->UsePrimarySelection();
+ gotData = wxTheClipboard->GetData(data);
+ wxTheClipboard->Close();
+ }
if (gotData) {
wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(data.GetText());
int len = strlen(buf);
if (gotData) {
wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(data.GetText());
int len = strlen(buf);
bool ScintillaWX::CanPaste() {
bool canPaste = FALSE;
bool ScintillaWX::CanPaste() {
bool canPaste = FALSE;
- if (! wxTheClipboard->IsOpened()) {
+ if ( (didOpen = !wxTheClipboard->IsOpened()) )
+
+ if (wxTheClipboard->IsOpened()) {
wxTheClipboard->UsePrimarySelection();
canPaste = wxTheClipboard->IsSupported(wxUSE_UNICODE ? wxDF_UNICODETEXT : wxDF_TEXT);
wxTheClipboard->UsePrimarySelection();
canPaste = wxTheClipboard->IsSupported(wxUSE_UNICODE ? wxDF_UNICODETEXT : wxDF_TEXT);
- wxTheClipboard->Close();
+ if (didOpen)
+ wxTheClipboard->Close();