X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d429e1874391e29f35e42f209e0a57f113790d58..19874feb47e6bf7faab318c525e1d77a19e9db57:/src/stc/ScintillaWX.cpp diff --git a/src/stc/ScintillaWX.cpp b/src/stc/ScintillaWX.cpp index bcb1c29b5b..565bfabb2c 100644 --- a/src/stc/ScintillaWX.cpp +++ b/src/stc/ScintillaWX.cpp @@ -21,6 +21,11 @@ #include "PlatWX.h" #include +#ifdef __WXMSW__ + // GetHwndOf() + #include +#endif + //---------------------------------------------------------------------- // Helper classes @@ -181,6 +186,11 @@ ScintillaWX::ScintillaWX(wxStyledTextCtrl* win) { stc = win; wheelRotation = 0; Initialise(); +#ifdef __WXMSW__ + sysCaretBitmap = 0; + sysCaretWidth = 0; + sysCaretHeight = 0; +#endif } @@ -631,6 +641,7 @@ long ScintillaWX::WndProc(unsigned int iMessage, unsigned long wParam, long lPar LexerManager::GetInstance()->Load((const char*)lParam); break; #endif + default: return ScintillaBase::WndProc(iMessage, wParam, lParam); } @@ -835,7 +846,7 @@ int ScintillaWX::DoKeyDown(const wxKeyEvent& evt, bool* consumed) bool shift = evt.ShiftDown(), ctrl = evt.ControlDown(), alt = evt.AltDown(); - + if (ctrl && key >= 1 && key <= 26) key += 'A' - 1; @@ -855,6 +866,7 @@ int ScintillaWX::DoKeyDown(const wxKeyEvent& evt, bool* consumed) case WXK_ESCAPE: key = SCK_ESCAPE; break; case WXK_BACK: key = SCK_BACK; break; case WXK_TAB: key = SCK_TAB; break; + case WXK_NUMPAD_ENTER: // fall through case WXK_RETURN: key = SCK_RETURN; break; case WXK_ADD: // fall through case WXK_NUMPAD_ADD: key = SCK_ADD; break; @@ -978,7 +990,9 @@ void ScintillaWX::DoDragLeave() { // Force the whole window to be repainted void ScintillaWX::FullPaint() { +#ifndef __WXMAC__ stc->Refresh(false); +#endif stc->Update(); }