#ifndef VBUFINTERNAL_H #define VBUFINTERNAL_H #include #include "storage.h" #include "virtualBuffer.h" typedef struct { HWND hwnd; HINSTANCE backendHandle; VBufStorage_bufferNode_t* storageBuf; CRITICAL_SECTION* criticalSectionHandle; } VBufInternal_bufContainer_t; typedef LRESULT (*VBufInternal_func_t)(HWND hwnd, LPARAM lParam); LRESULT VBufInternal_isWindowPrepared(HWND hwnd, LPARAM lParam); LRESULT VBufInternal_prepareWindow(HWND hwnd, LPARAM lParam); LRESULT VBufInternal_unprepareWindow(HWND hwnd, LPARAM lParam); LRESULT VBufInternal_createBuffer(HWND hwnd, LPARAM lParam); LRESULT VBufInternal_destroyBuffer(HWND hwnd, LPARAM lParam); typedef struct { VBufInternal_bufContainer_t* bufContainer; int offset; int foundDocHandle; int foundID; } VBufInternal_lParam_getFieldIdentifierFromBufferOffset; LRESULT VBufInternal_getFieldIdentifierFromBufferOffset(HWND hwnd, LPARAM lParam); typedef struct { VBufInternal_bufContainer_t* bufContainer; int docHandle; int ID; int startOffset; int endOffset; } VBufInternal_lParam_getBufferOffsetsFromFieldIdentifier; LRESULT VBufInternal_getBufferOffsetsFromFieldIdentifier(HWND hwnd, LPARAM lParam); typedef struct { VBufInternal_bufContainer_t* bufContainer; int direction; int startOffset; VBuf_multyValueAttribute_t* attribs; int numAttribs; int foundDocHandle; int foundID; } VBufInternal_lParam_findBufferFieldIdentifierByProperties; LRESULT VBufInternal_findBufferFieldIdentifierByProperties(HWND hwnd, LPARAM lParam); LRESULT VBufInternal_getBufferTextLength(HWND hwnd, LPARAM lParam); LRESULT VBufInternal_getBufferFieldCount(HWND hwnd, LPARAM lParam); typedef struct { VBufInternal_bufContainer_t* bufContainer; wchar_t* text; int startOffset; int direction; int flags; } VBufInternal_lParam_findBufferText; LRESULT VBufInternal_findBufferText(HWND hwnd, LPARAM lParam); typedef struct { VBufInternal_bufContainer_t* bufContainer; int startOffset; int endOffset; wchar_t* text; } VBufInternal_lParam_getBufferTextByOffsets; LRESULT VBufInternal_getBufferTextByOffsets(HWND hwnd, LPARAM lParam); typedef struct { VBufInternal_bufContainer_t* bufContainer; int offset; wchar_t* text; } VBufInternal_lParam_getXMLContextAtBufferOffset; LRESULT VBufInternal_getXMLContextAtBufferOffset(HWND hwnd, LPARAM lParam); typedef struct { VBufInternal_bufContainer_t* bufContainer; int startOffset; int endOffset; wchar_t* text; } VBufInternal_lParam_getXMLBufferTextByOffsets; LRESULT VBufInternal_getXMLBufferTextByOffsets(HWND hwnd, LPARAM lParam); typedef struct { VBufInternal_bufContainer_t* bufContainer; int ID; int activationType; } VBufInternal_lParam_activateBufferFieldByID; LRESULT VBufInternal_activateBufferFieldByID(HWND hwnd, LPARAM lParam); typedef struct { VBufInternal_bufContainer_t* bufContainer; int offset; int maxLineLength; int useScreenLayout; int startOffset; int endOffset; } VBufInternal_lParam_getBufferLineOffsets; LRESULT VBufInternal_getBufferLineOffsets(HWND hwnd, LPARAM lParam); typedef struct { VBufInternal_bufContainer_t* bufContainer; int startOffset; int endOffset; } VBufInternal_lParam_getBufferSelectionOffsets; LRESULT VBufInternal_getBufferSelectionOffsets(HWND hwnd, LPARAM lParam); typedef struct { VBufInternal_bufContainer_t* bufContainer; int startOffset; int endOffset; } VBufInternal_lParam_setBufferSelectionOffsets; LRESULT VBufInternal_setBufferSelectionOffsets(HWND hwnd, LPARAM lParam); LRESULT CALLBACK VBufInternal_windowPreparationHook(int code, WPARAM wParam,LPARAM lParam); LRESULT CALLBACK VBufInternal_wndProc(HWND hwnd,UINT msg,WPARAM wParam,LPARAM lParam); #endif