diff options
-rw-r--r-- | win32/ScintillaWin.cxx | 11 | ||||
-rw-r--r-- | win32/makefile | 8 | ||||
-rw-r--r-- | win32/scintilla.mak | 4 |
3 files changed, 15 insertions, 8 deletions
diff --git a/win32/ScintillaWin.cxx b/win32/ScintillaWin.cxx index e93d6ef4b..9476b93bd 100644 --- a/win32/ScintillaWin.cxx +++ b/win32/ScintillaWin.cxx @@ -140,7 +140,7 @@ public: */ class ScintillaWin : public ScintillaBase { - + bool lastKeyDownConsumed; bool capturedMouse; @@ -177,7 +177,6 @@ class ScintillaWin : virtual void StartDrag(); sptr_t WndPaint(uptr_t wParam); sptr_t HandleComposition(uptr_t wParam, sptr_t lParam); - virtual sptr_t WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam); virtual sptr_t DefWndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam); virtual void SetTicking(bool on); virtual void SetMouseCapture(bool on); @@ -212,6 +211,9 @@ class ScintillaWin : void FullPaint(); public: + // Public for benefit of Scintilla_DirectFunction + virtual sptr_t WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam); + /// Implement IUnknown STDMETHODIMP QueryInterface(REFIID riid, PVOID *ppv); STDMETHODIMP_(ULONG)AddRef(); @@ -1935,6 +1937,11 @@ sptr_t ScintillaWin::DirectFunction( return sci->WndProc(iMessage, wParam, lParam); } +extern "C" __declspec(dllexport) sptr_t __stdcall Scintilla_DirectFunction( + ScintillaWin *sci, UINT iMessage, uptr_t wParam, sptr_t lParam) { + return sci->WndProc(iMessage, wParam, lParam); +} + sptr_t PASCAL ScintillaWin::SWndProc( HWND hWnd, UINT iMessage, WPARAM wParam, sptr_t lParam) { //Platform::DebugPrintf("S W:%x M:%x WP:%x L:%x\n", hWnd, iMessage, wParam, lParam); diff --git a/win32/makefile b/win32/makefile index 5464740f0..0a7b5203b 100644 --- a/win32/makefile +++ b/win32/makefile @@ -49,16 +49,16 @@ SOBJS = ScintillaWin.o ScintillaBase.o Editor.o Document.o \ ContractionState.o CellBuffer.o CallTip.o \ ScintRes.o PlatWin.o KeyMap.o Indicator.o LineMarker.o RESearch.o \ Style.o ViewStyle.o AutoComplete.o UniConversion.o PropSet.o -$(COMPONENT): $(SOBJS) - $(DLLWRAP) --target i386-mingw32 -o $@ $(SOBJS) $(LDFLAGS) -s --relocatable +$(COMPONENT): $(SOBJS) Scintilla.def + $(DLLWRAP) --add-stdcall-alias --target i386-mingw32 -o $@ $(SOBJS) $(LDFLAGS) -s --relocatable LOBJS = ScintillaWinL.o ScintillaBaseL.o Editor.o Document.o \ ContractionState.o CellBuffer.o CallTip.o \ ScintRes.o PlatWin.o KeyMap.o Indicator.o LineMarker.o RESearch.o \ Style.o ViewStyle.o AutoComplete.o UniConversion.o KeyWords.o \ DocumentAccessor.o PropSet.o ExternalLexer.o StyleContext.o $(LEXOBJS) -$(LEXCOMPONENT): $(LOBJS) - $(DLLWRAP) --target i386-mingw32 -o $@ $(LOBJS) $(LDFLAGS) -s --relocatable +$(LEXCOMPONENT): $(LOBJS) Scintilla.def + $(DLLWRAP) --add-stdcall-alias --target i386-mingw32 -o $@ $(LOBJS) $(LDFLAGS) -s --relocatable # Automatically generate dependencies for most files with "make deps" include deps.mak diff --git a/win32/scintilla.mak b/win32/scintilla.mak index 1888224d7..5b9b5b8a5 100644 --- a/win32/scintilla.mak +++ b/win32/scintilla.mak @@ -159,10 +159,10 @@ $(DIR_O)\ScintRes.res : ScintRes.rc !IF "$(VENDOR)"=="MICROSOFT" $(COMPONENT): $(SOBJS) $(DIR_O)\ScintRes.res - $(LD) $(LDFLAGS) -DLL -OUT:$@ $** $(LIBS) + $(LD) $(LDFLAGS) -DEF:Scintilla.def -DLL -OUT:$@ $** $(LIBS) $(LEXCOMPONENT): $(LOBJS) $(DIR_O)\ScintRes.res - $(LD) $(LDFLAGS) -DLL -OUT:$@ $** $(LIBS) + $(LD) $(LDFLAGS) -DEF:Scintilla.def -DLL -OUT:$@ $** $(LIBS) !ELSE |