This commit is contained in:
EXetoC 2015-01-17 17:19:46 +01:00
commit 4a26d6be48

View file

@ -232,8 +232,8 @@ const # glutGet parameters.
GLUT_GAME_MODE_REFRESH_RATE* = 5 GLUT_GAME_MODE_REFRESH_RATE* = 5
GLUT_GAME_MODE_DISPLAY_CHANGED* = 6 # GLUT initialization sub-API. GLUT_GAME_MODE_DISPLAY_CHANGED* = 6 # GLUT initialization sub-API.
proc glutInit*(argcp: ptr cint, argv: pointer){.dynlib: dllname, {.push dynlib: dllname, importc.}
importc: "glutInit".} proc glutInit*(argcp: ptr cint, argv: pointer)
proc glutInit*() = proc glutInit*() =
## version that passes `argc` and `argc` implicitely. ## version that passes `argc` and `argc` implicitely.
@ -242,201 +242,125 @@ proc glutInit*() =
cmdCount {.importc: "cmdCount".}: cint cmdCount {.importc: "cmdCount".}: cint
glutInit(addr(cmdCount), addr(cmdLine)) glutInit(addr(cmdCount), addr(cmdLine))
proc glutInitDisplayMode*(mode: int16){.dynlib: dllname, proc glutInitDisplayMode*(mode: int16)
importc: "glutInitDisplayMode".} proc glutInitDisplayString*(str: cstring)
proc glutInitDisplayString*(str: cstring){.dynlib: dllname, proc glutInitWindowPosition*(x, y: int)
importc: "glutInitDisplayString".} proc glutInitWindowSize*(width, height: int)
proc glutInitWindowPosition*(x, y: int){.dynlib: dllname, proc glutMainLoop*()
importc: "glutInitWindowPosition".}
proc glutInitWindowSize*(width, height: int){.dynlib: dllname,
importc: "glutInitWindowSize".}
proc glutMainLoop*(){.dynlib: dllname, importc: "glutMainLoop".}
# GLUT window sub-API. # GLUT window sub-API.
proc glutCreateWindow*(title: cstring): int{.dynlib: dllname, proc glutCreateWindow*(title: cstring): int
importc: "glutCreateWindow".} proc glutCreateSubWindow*(win, x, y, width, height: int): int
proc glutCreateSubWindow*(win, x, y, width, height: int): int{.dynlib: dllname, proc glutDestroyWindow*(win: int)
importc: "glutCreateSubWindow".} proc glutPostRedisplay*()
proc glutDestroyWindow*(win: int){.dynlib: dllname, importc: "glutDestroyWindow".} proc glutPostWindowRedisplay*(win: int)
proc glutPostRedisplay*(){.dynlib: dllname, importc: "glutPostRedisplay".} proc glutSwapBuffers*()
proc glutPostWindowRedisplay*(win: int){.dynlib: dllname, proc glutSetWindow*(win: int)
importc: "glutPostWindowRedisplay".} proc glutSetWindowTitle*(title: cstring)
proc glutSwapBuffers*(){.dynlib: dllname, importc: "glutSwapBuffers".} proc glutSetIconTitle*(title: cstring)
proc glutGetWindow*(): int{.dynlib: dllname, importc: "glutGetWindow".} proc glutPositionWindow*(x, y: int)
proc glutSetWindow*(win: int){.dynlib: dllname, importc: "glutSetWindow".} proc glutReshapeWindow*(width, height: int)
proc glutSetWindowTitle*(title: cstring){.dynlib: dllname, proc glutPopWindow*()
importc: "glutSetWindowTitle".} proc glutPushWindow*()
proc glutSetIconTitle*(title: cstring){.dynlib: dllname, proc glutIconifyWindow*()
importc: "glutSetIconTitle".} proc glutShowWindow*()
proc glutPositionWindow*(x, y: int){.dynlib: dllname, proc glutHideWindow*()
importc: "glutPositionWindow".} proc glutFullScreen*()
proc glutReshapeWindow*(width, height: int){.dynlib: dllname, proc glutSetCursor*(cursor: int)
importc: "glutReshapeWindow".} proc glutWarpPointer*(x, y: int)
proc glutPopWindow*(){.dynlib: dllname, importc: "glutPopWindow".}
proc glutPushWindow*(){.dynlib: dllname, importc: "glutPushWindow".}
proc glutIconifyWindow*(){.dynlib: dllname, importc: "glutIconifyWindow".}
proc glutShowWindow*(){.dynlib: dllname, importc: "glutShowWindow".}
proc glutHideWindow*(){.dynlib: dllname, importc: "glutHideWindow".}
proc glutFullScreen*(){.dynlib: dllname, importc: "glutFullScreen".}
proc glutSetCursor*(cursor: int){.dynlib: dllname, importc: "glutSetCursor".}
proc glutWarpPointer*(x, y: int){.dynlib: dllname, importc: "glutWarpPointer".}
# GLUT overlay sub-API. # GLUT overlay sub-API.
proc glutEstablishOverlay*(){.dynlib: dllname, importc: "glutEstablishOverlay".} proc glutEstablishOverlay*()
proc glutRemoveOverlay*(){.dynlib: dllname, importc: "glutRemoveOverlay".} proc glutRemoveOverlay*()
proc glutUseLayer*(layer: TGLenum){.dynlib: dllname, importc: "glutUseLayer".} proc glutUseLayer*(layer: TGLenum)
proc glutPostOverlayRedisplay*(){.dynlib: dllname, proc glutPostOverlayRedisplay*()
importc: "glutPostOverlayRedisplay".} proc glutPostWindowOverlayRedisplay*(win: int)
proc glutPostWindowOverlayRedisplay*(win: int){.dynlib: dllname, proc glutShowOverlay*()
importc: "glutPostWindowOverlayRedisplay".} proc glutHideOverlay*()
proc glutShowOverlay*(){.dynlib: dllname, importc: "glutShowOverlay".}
proc glutHideOverlay*(){.dynlib: dllname, importc: "glutHideOverlay".}
# GLUT menu sub-API. # GLUT menu sub-API.
proc glutCreateMenu*(callback: TGlut1IntCallback): int{.dynlib: dllname, proc glutCreateMenu*(callback: TGlut1IntCallback): int
importc: "glutCreateMenu".} proc glutDestroyMenu*(menu: int)
proc glutDestroyMenu*(menu: int){.dynlib: dllname, importc: "glutDestroyMenu".} proc glutSetMenu*(menu: int)
proc glutGetMenu*(): int{.dynlib: dllname, importc: "glutGetMenu".} proc glutAddMenuEntry*(caption: cstring, value: int)
proc glutSetMenu*(menu: int){.dynlib: dllname, importc: "glutSetMenu".} proc glutAddSubMenu*(caption: cstring, submenu: int)
proc glutAddMenuEntry*(caption: cstring, value: int){.dynlib: dllname, proc glutChangeToMenuEntry*(item: int, caption: cstring, value: int)
importc: "glutAddMenuEntry".} proc glutChangeToSubMenu*(item: int, caption: cstring, submenu: int)
proc glutAddSubMenu*(caption: cstring, submenu: int){.dynlib: dllname, proc glutRemoveMenuItem*(item: int)
importc: "glutAddSubMenu".} proc glutAttachMenu*(button: int)
proc glutChangeToMenuEntry*(item: int, caption: cstring, value: int){. proc glutDetachMenu*(button: int)
dynlib: dllname, importc: "glutChangeToMenuEntry".}
proc glutChangeToSubMenu*(item: int, caption: cstring, submenu: int){.
dynlib: dllname, importc: "glutChangeToSubMenu".}
proc glutRemoveMenuItem*(item: int){.dynlib: dllname,
importc: "glutRemoveMenuItem".}
proc glutAttachMenu*(button: int){.dynlib: dllname, importc: "glutAttachMenu".}
proc glutDetachMenu*(button: int){.dynlib: dllname, importc: "glutDetachMenu".}
# GLUT window callback sub-API. # GLUT window callback sub-API.
proc glutDisplayFunc*(f: TGlutVoidCallback){.dynlib: dllname, proc glutDisplayFunc*(f: TGlutVoidCallback)
importc: "glutDisplayFunc".} proc glutReshapeFunc*(f: TGlut2IntCallback)
proc glutReshapeFunc*(f: TGlut2IntCallback){.dynlib: dllname, proc glutKeyboardFunc*(f: TGlut1Char2IntCallback)
importc: "glutReshapeFunc".} proc glutMouseFunc*(f: TGlut4IntCallback)
proc glutKeyboardFunc*(f: TGlut1Char2IntCallback){.dynlib: dllname, proc glutMotionFunc*(f: TGlut2IntCallback)
importc: "glutKeyboardFunc".} proc glutPassiveMotionFunc*(f: TGlut2IntCallback)
proc glutMouseFunc*(f: TGlut4IntCallback){.dynlib: dllname, proc glutEntryFunc*(f: TGlut1IntCallback)
importc: "glutMouseFunc".} proc glutVisibilityFunc*(f: TGlut1IntCallback)
proc glutMotionFunc*(f: TGlut2IntCallback){.dynlib: dllname, proc glutIdleFunc*(f: TGlutVoidCallback)
importc: "glutMotionFunc".} proc glutTimerFunc*(millis: int16, f: TGlut1IntCallback, value: int)
proc glutPassiveMotionFunc*(f: TGlut2IntCallback){.dynlib: dllname, proc glutMenuStateFunc*(f: TGlut1IntCallback)
importc: "glutPassiveMotionFunc".} proc glutSpecialFunc*(f: TGlut3IntCallback)
proc glutEntryFunc*(f: TGlut1IntCallback){.dynlib: dllname, proc glutSpaceballMotionFunc*(f: TGlut3IntCallback)
importc: "glutEntryFunc".} proc glutSpaceballRotateFunc*(f: TGlut3IntCallback)
proc glutVisibilityFunc*(f: TGlut1IntCallback){.dynlib: dllname, proc glutSpaceballButtonFunc*(f: TGlut2IntCallback)
importc: "glutVisibilityFunc".} proc glutButtonBoxFunc*(f: TGlut2IntCallback)
proc glutIdleFunc*(f: TGlutVoidCallback){.dynlib: dllname, proc glutDialsFunc*(f: TGlut2IntCallback)
importc: "glutIdleFunc".} proc glutTabletMotionFunc*(f: TGlut2IntCallback)
proc glutTimerFunc*(millis: int16, f: TGlut1IntCallback, value: int){. proc glutTabletButtonFunc*(f: TGlut4IntCallback)
dynlib: dllname, importc: "glutTimerFunc".} proc glutMenuStatusFunc*(f: TGlut3IntCallback)
proc glutMenuStateFunc*(f: TGlut1IntCallback){.dynlib: dllname, proc glutOverlayDisplayFunc*(f: TGlutVoidCallback)
importc: "glutMenuStateFunc".} proc glutWindowStatusFunc*(f: TGlut1IntCallback)
proc glutSpecialFunc*(f: TGlut3IntCallback){.dynlib: dllname, proc glutKeyboardUpFunc*(f: TGlut1Char2IntCallback)
importc: "glutSpecialFunc".} proc glutSpecialUpFunc*(f: TGlut3IntCallback)
proc glutSpaceballMotionFunc*(f: TGlut3IntCallback){.dynlib: dllname, proc glutJoystickFunc*(f: TGlut1UInt3IntCallback, pollInterval: int)
importc: "glutSpaceballMotionFunc".}
proc glutSpaceballRotateFunc*(f: TGlut3IntCallback){.dynlib: dllname,
importc: "glutSpaceballRotateFunc".}
proc glutSpaceballButtonFunc*(f: TGlut2IntCallback){.dynlib: dllname,
importc: "glutSpaceballButtonFunc".}
proc glutButtonBoxFunc*(f: TGlut2IntCallback){.dynlib: dllname,
importc: "glutButtonBoxFunc".}
proc glutDialsFunc*(f: TGlut2IntCallback){.dynlib: dllname,
importc: "glutDialsFunc".}
proc glutTabletMotionFunc*(f: TGlut2IntCallback){.dynlib: dllname,
importc: "glutTabletMotionFunc".}
proc glutTabletButtonFunc*(f: TGlut4IntCallback){.dynlib: dllname,
importc: "glutTabletButtonFunc".}
proc glutMenuStatusFunc*(f: TGlut3IntCallback){.dynlib: dllname,
importc: "glutMenuStatusFunc".}
proc glutOverlayDisplayFunc*(f: TGlutVoidCallback){.dynlib: dllname,
importc: "glutOverlayDisplayFunc".}
proc glutWindowStatusFunc*(f: TGlut1IntCallback){.dynlib: dllname,
importc: "glutWindowStatusFunc".}
proc glutKeyboardUpFunc*(f: TGlut1Char2IntCallback){.dynlib: dllname,
importc: "glutKeyboardUpFunc".}
proc glutSpecialUpFunc*(f: TGlut3IntCallback){.dynlib: dllname,
importc: "glutSpecialUpFunc".}
proc glutJoystickFunc*(f: TGlut1UInt3IntCallback, pollInterval: int){.
dynlib: dllname, importc: "glutJoystickFunc".}
# GLUT color index sub-API. # GLUT color index sub-API.
proc glutSetColor*(cell: int, red, green, blue: TGLfloat){.dynlib: dllname, proc glutSetColor*(cell: int, red, green, blue: TGLfloat)
importc: "glutSetColor".} proc glutGetColor*(ndx, component: int): TGLfloat
proc glutGetColor*(ndx, component: int): TGLfloat{.dynlib: dllname, proc glutCopyColormap*(win: int)
importc: "glutGetColor".}
proc glutCopyColormap*(win: int){.dynlib: dllname, importc: "glutCopyColormap".}
# GLUT state retrieval sub-API. # GLUT state retrieval sub-API.
proc glutGet*(t: TGLenum): int{.dynlib: dllname, importc: "glutGet".}
proc glutDeviceGet*(t: TGLenum): int{.dynlib: dllname, importc: "glutDeviceGet".}
# GLUT extension support sub-API # GLUT extension support sub-API
proc glutExtensionSupported*(name: cstring): int{.dynlib: dllname, proc glutExtensionSupported*(name: cstring): int
importc: "glutExtensionSupported".}
proc glutGetModifiers*(): int{.dynlib: dllname, importc: "glutGetModifiers".}
proc glutLayerGet*(t: TGLenum): int{.dynlib: dllname, importc: "glutLayerGet".}
# GLUT font sub-API # GLUT font sub-API
proc glutBitmapCharacter*(font: pointer, character: int){.dynlib: dllname, proc glutBitmapCharacter*(font: pointer, character: int)
importc: "glutBitmapCharacter".} proc glutBitmapWidth*(font: pointer, character: int): int
proc glutBitmapWidth*(font: pointer, character: int): int{.dynlib: dllname, proc glutStrokeCharacter*(font: pointer, character: int)
importc: "glutBitmapWidth".} proc glutStrokeWidth*(font: pointer, character: int): int
proc glutStrokeCharacter*(font: pointer, character: int){.dynlib: dllname, proc glutBitmapLength*(font: pointer, str: cstring): int
importc: "glutStrokeCharacter".} proc glutStrokeLength*(font: pointer, str: cstring): int
proc glutStrokeWidth*(font: pointer, character: int): int{.dynlib: dllname,
importc: "glutStrokeWidth".}
proc glutBitmapLength*(font: pointer, str: cstring): int{.dynlib: dllname,
importc: "glutBitmapLength".}
proc glutStrokeLength*(font: pointer, str: cstring): int{.dynlib: dllname,
importc: "glutStrokeLength".}
# GLUT pre-built models sub-API # GLUT pre-built models sub-API
proc glutWireSphere*(radius: TGLdouble, slices, stacks: TGLint){. proc glutWireSphere*(radius: TGLdouble, slices, stacks: TGLint)
dynlib: dllname, importc: "glutWireSphere".} proc glutSolidSphere*(radius: TGLdouble, slices, stacks: TGLint)
proc glutSolidSphere*(radius: TGLdouble, slices, stacks: TGLint){. proc glutWireCone*(base, height: TGLdouble, slices, stacks: TGLint)
dynlib: dllname, importc: "glutSolidSphere".} proc glutSolidCone*(base, height: TGLdouble, slices, stacks: TGLint)
proc glutWireCone*(base, height: TGLdouble, slices, stacks: TGLint){. proc glutWireCube*(size: TGLdouble)
dynlib: dllname, importc: "glutWireCone".} proc glutSolidCube*(size: TGLdouble)
proc glutSolidCone*(base, height: TGLdouble, slices, stacks: TGLint){. proc glutWireTorus*(innerRadius, outerRadius: TGLdouble, sides, rings: TGLint)
dynlib: dllname, importc: "glutSolidCone".} proc glutSolidTorus*(innerRadius, outerRadius: TGLdouble, sides, rings: TGLint)
proc glutWireCube*(size: TGLdouble){.dynlib: dllname, importc: "glutWireCube".} proc glutWireDodecahedron*()
proc glutSolidCube*(size: TGLdouble){.dynlib: dllname, importc: "glutSolidCube".} proc glutSolidDodecahedron*()
proc glutWireTorus*(innerRadius, outerRadius: TGLdouble, sides, rings: TGLint){. proc glutWireTeapot*(size: TGLdouble)
dynlib: dllname, importc: "glutWireTorus".} proc glutSolidTeapot*(size: TGLdouble)
proc glutSolidTorus*(innerRadius, outerRadius: TGLdouble, sides, rings: TGLint){. proc glutWireOctahedron*()
dynlib: dllname, importc: "glutSolidTorus".} proc glutSolidOctahedron*()
proc glutWireDodecahedron*(){.dynlib: dllname, importc: "glutWireDodecahedron".} proc glutWireTetrahedron*()
proc glutSolidDodecahedron*(){.dynlib: dllname, importc: "glutSolidDodecahedron".} proc glutSolidTetrahedron*()
proc glutWireTeapot*(size: TGLdouble){.dynlib: dllname, proc glutWireIcosahedron*()
importc: "glutWireTeapot".} proc glutSolidIcosahedron*()
proc glutSolidTeapot*(size: TGLdouble){.dynlib: dllname,
importc: "glutSolidTeapot".}
proc glutWireOctahedron*(){.dynlib: dllname, importc: "glutWireOctahedron".}
proc glutSolidOctahedron*(){.dynlib: dllname, importc: "glutSolidOctahedron".}
proc glutWireTetrahedron*(){.dynlib: dllname, importc: "glutWireTetrahedron".}
proc glutSolidTetrahedron*(){.dynlib: dllname, importc: "glutSolidTetrahedron".}
proc glutWireIcosahedron*(){.dynlib: dllname, importc: "glutWireIcosahedron".}
proc glutSolidIcosahedron*(){.dynlib: dllname, importc: "glutSolidIcosahedron".}
# GLUT video resize sub-API. # GLUT video resize sub-API.
proc glutVideoResizeGet*(param: TGLenum): int{.dynlib: dllname, proc glutVideoResizeGet*(param: TGLenum): int
importc: "glutVideoResizeGet".} proc glutSetupVideoResizing*()
proc glutSetupVideoResizing*(){.dynlib: dllname, proc glutStopVideoResizing*()
importc: "glutSetupVideoResizing".} proc glutVideoResize*(x, y, width, height: int)
proc glutStopVideoResizing*(){.dynlib: dllname, importc: "glutStopVideoResizing".} proc glutVideoPan*(x, y, width, height: int)
proc glutVideoResize*(x, y, width, height: int){.dynlib: dllname,
importc: "glutVideoResize".}
proc glutVideoPan*(x, y, width, height: int){.dynlib: dllname,
importc: "glutVideoPan".}
# GLUT debugging sub-API. # GLUT debugging sub-API.
proc glutReportErrors*(){.dynlib: dllname, importc: "glutReportErrors".} proc glutReportErrors*()
# GLUT device control sub-API. # GLUT device control sub-API.
proc glutIgnoreKeyRepeat*(ignore: int){.dynlib: dllname, proc glutIgnoreKeyRepeat*(ignore: int)
importc: "glutIgnoreKeyRepeat".} proc glutSetKeyRepeat*(repeatMode: int)
proc glutSetKeyRepeat*(repeatMode: int){.dynlib: dllname, proc glutForceJoystickFunc*()
importc: "glutSetKeyRepeat".}
proc glutForceJoystickFunc*(){.dynlib: dllname, importc: "glutForceJoystickFunc".}
# GLUT game mode sub-API. # GLUT game mode sub-API.
#example glutGameModeString('1280x1024:32@75'); #example glutGameModeString('1280x1024:32@75');
proc glutGameModeString*(AString: cstring){.dynlib: dllname, proc glutGameModeString*(AString: cstring)
importc: "glutGameModeString".} proc glutLeaveGameMode*()
proc glutEnterGameMode*(): int{.dynlib: dllname, importc: "glutEnterGameMode".} proc glutGameModeGet*(mode: TGLenum): int
proc glutLeaveGameMode*(){.dynlib: dllname, importc: "glutLeaveGameMode".}
proc glutGameModeGet*(mode: TGLenum): int{.dynlib: dllname,
importc: "glutGameModeGet".}
proc glutCloseFunc(cb: proc() {.cdecl.}) {.dynlib: dllname, importc.}
# implementation # implementation
{.pop.} # dynlib: dllname, importc