diff options
| author | Neil <nyamatongwe@gmail.com> | 2021-06-17 09:28:05 +1000 |
|---|---|---|
| committer | Neil <nyamatongwe@gmail.com> | 2021-06-17 09:28:05 +1000 |
| commit | 9e52243831ceffced1e9f0ef27041770fe13a85a (patch) | |
| tree | a14b3f24127e77c4c28e16e0b81e0a5dac929e2c /gtk/ScintillaGTK.cxx | |
| parent | 37edcd47eed457d80e353bccfe9e601578ccca33 (diff) | |
| download | scintilla-mirror-9e52243831ceffced1e9f0ef27041770fe13a85a.tar.gz | |
Add SciFnDirectStatus, a direct access function which also returns status so can
improve performance for client code that called SCI_GETSTATUS after every API to
check for failure.
Diffstat (limited to 'gtk/ScintillaGTK.cxx')
| -rwxr-xr-x | gtk/ScintillaGTK.cxx | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/gtk/ScintillaGTK.cxx b/gtk/ScintillaGTK.cxx index 93a952357..62f1e1e94 100755 --- a/gtk/ScintillaGTK.cxx +++ b/gtk/ScintillaGTK.cxx @@ -3100,7 +3100,16 @@ AtkObject *ScintillaGTK::GetAccessible(GtkWidget *widget) { sptr_t ScintillaGTK::DirectFunction( sptr_t ptr, unsigned int iMessage, uptr_t wParam, sptr_t lParam) { - return reinterpret_cast<ScintillaGTK *>(ptr)->WndProc(static_cast<Message>(iMessage), wParam, lParam); + ScintillaGTK *sci = reinterpret_cast<ScintillaGTK *>(ptr); + return sci->WndProc(static_cast<Message>(iMessage), wParam, lParam); +} + +sptr_t ScintillaGTK::DirectStatusFunction( + sptr_t ptr, unsigned int iMessage, uptr_t wParam, sptr_t lParam, int *pStatus) { + ScintillaGTK *sci = reinterpret_cast<ScintillaGTK *>(ptr); + const sptr_t returnValue = sci->WndProc(static_cast<Message>(iMessage), wParam, lParam); + *pStatus = static_cast<int>(sci->errorStatus); + return returnValue; } /* legacy name for scintilla_object_send_message */ |
