diff options
Diffstat (limited to 'doc/TODO.txt')
-rw-r--r-- | doc/TODO.txt | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/doc/TODO.txt b/doc/TODO.txt new file mode 100644 index 000000000..294f16cd1 --- /dev/null +++ b/doc/TODO.txt @@ -0,0 +1,41 @@ +This list is probably completely out of date... +anyone the guts to remove it? :) +-mbien + +Random, somewhat old to-do list: + +- Non-const array types must be properly released with JNI_COMMIT in + order to see side effects if the array was copied. + +- Think about e.g. protected access for Impl classes + +- Fix glProgramStringARB and glGetProgramString{NV,ARB} so that they + use Strings and/or StringBuffers insteead of GLUbyte* and void* + +- figure out how to deal with WGL entry points: + WINGDIAPI HGLRC WINAPI wglCreateLayerContext(HDC, int); + WINGDIAPI BOOL WINAPI wglUseFontBitmapsA(HDC, DWORD, DWORD, DWORD); + WINGDIAPI BOOL WINAPI wglUseFontBitmapsW(HDC, DWORD, DWORD, DWORD); + see commented-out section in make/stub_includes/win32/wingdi.h + +- Need a disciplined mechanism for converting char* argument types. For + example, many C functions accept a "char*" argument with the semantic that + output data will be written into the buffer pointed to by the + argument. The type "const char*" is used when the argument's data will be + unchanged. Our system needs a new directive, such as + "ArgumentIsStringBuffer" to be used for type conversion in those cases + where the native code needs to write output into the "char*" argument. Not + sure how to handle this on the native side -- it may require hints to the + native code generator as to how large the StringBuffer's backing buffer + needs to be, so we can assert this condition before passing the backing + buffer to the C function we are wrapping. + +- Throw an exception if native calls to GetPrimitiveArrayCritical + return null. + +- Before emitting functions and constants, sort them first by + extension suffix (i.e., ARB, ATI, NV, etc) and then by name. This + will organize them in the file more logically. When writing the + code, the sort function can check the last substring that's all caps, + and treat this as the extension owner. Be careful though, some end + in "3D" and that's not an extension. |