make the GLUT example compile on bigbreak
This commit is contained in:
parent
5ee6d6a1e2
commit
6d89c7b1c1
2 changed files with 150 additions and 150 deletions
160
src/glu.nim
160
src/glu.nim
|
|
@ -4,41 +4,41 @@
|
||||||
# Sebastian Guenther (sg@freepascal.org) in 2002
|
# Sebastian Guenther (sg@freepascal.org) in 2002
|
||||||
# These units are free to use
|
# These units are free to use
|
||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
# Converted to Delphi by Tom Nuydens (tom@delphi3d.net)
|
# Converted to Delphi by Tom Nuydens (tom@delphi3d.net)
|
||||||
# For the latest updates, visit Delphi3D: http://www.delphi3d.net
|
# For the latest updates, visit Delphi3D: http://www.delphi3d.net
|
||||||
#******************************************************************************
|
#******************************************************************************
|
||||||
|
|
||||||
import opengl
|
import opengl
|
||||||
|
|
||||||
when defined(windows):
|
when defined(windows):
|
||||||
{.push, callconv: stdcall.}
|
{.push, callconv: stdcall.}
|
||||||
else:
|
else:
|
||||||
{.push, callconv: cdecl.}
|
{.push, callconv: cdecl.}
|
||||||
|
|
||||||
when defined(windows):
|
when defined(windows):
|
||||||
const
|
const
|
||||||
dllname = "glu32.dll"
|
dllname = "glu32.dll"
|
||||||
elif defined(macosx):
|
elif defined(macosx):
|
||||||
const
|
const
|
||||||
dllname = "/System/Library/Frameworks/OpenGL.framework/Libraries/libGLU.dylib"
|
dllname = "/System/Library/Frameworks/OpenGL.framework/Libraries/libGLU.dylib"
|
||||||
else:
|
else:
|
||||||
const
|
const
|
||||||
dllname = "libGLU.so.1"
|
dllname = "libGLU.so.1"
|
||||||
type
|
|
||||||
|
type
|
||||||
TViewPortArray* = array[0..3, TGLint]
|
TViewPortArray* = array[0..3, TGLint]
|
||||||
T16dArray* = array[0..15, TGLdouble]
|
T16dArray* = array[0..15, TGLdouble]
|
||||||
TCallBack* = proc ()
|
TCallBack* = proc ()
|
||||||
T3dArray* = array[0..2, TGLdouble]
|
T3dArray* = array[0..2, TGLdouble]
|
||||||
T4pArray* = array[0..3, Pointer]
|
T4pArray* = array[0..3, pointer]
|
||||||
T4fArray* = array[0..3, TGLfloat]
|
T4fArray* = array[0..3, TGLfloat]
|
||||||
PPointer* = ptr Pointer
|
|
||||||
|
|
||||||
type
|
type
|
||||||
GLUnurbs*{.final.} = object
|
GLUnurbs*{.final.} = object
|
||||||
PGLUnurbs* = ptr GLUnurbs
|
PGLUnurbs* = ptr GLUnurbs
|
||||||
GLUquadric*{.final.} = object
|
GLUquadric*{.final.} = object
|
||||||
PGLUquadric* = ptr GLUquadric
|
PGLUquadric* = ptr GLUquadric
|
||||||
GLUtesselator*{.final.} = object
|
GLUtesselator*{.final.} = object
|
||||||
PGLUtesselator* = ptr GLUtesselator # backwards compatibility:
|
PGLUtesselator* = ptr GLUtesselator # backwards compatibility:
|
||||||
GLUnurbsObj* = GLUnurbs
|
GLUnurbsObj* = GLUnurbs
|
||||||
PGLUnurbsObj* = PGLUnurbs
|
PGLUnurbsObj* = PGLUnurbs
|
||||||
|
|
@ -55,42 +55,42 @@ type
|
||||||
TGLUquadricObj* = GLUquadricObj
|
TGLUquadricObj* = GLUquadricObj
|
||||||
TGLUtesselatorObj* = GLUtesselatorObj
|
TGLUtesselatorObj* = GLUtesselatorObj
|
||||||
TGLUtriangulatorObj* = GLUtriangulatorObj
|
TGLUtriangulatorObj* = GLUtriangulatorObj
|
||||||
|
|
||||||
proc gluErrorString*(errCode: TGLenum): cstring{.dynlib: dllname,
|
proc gluErrorString*(errCode: TGLenum): cstring{.dynlib: dllname,
|
||||||
importc: "gluErrorString".}
|
importc: "gluErrorString".}
|
||||||
when defined(Windows):
|
when defined(Windows):
|
||||||
proc gluErrorUnicodeStringEXT*(errCode: TGLenum): ptr int16{.dynlib: dllname,
|
proc gluErrorUnicodeStringEXT*(errCode: TGLenum): ptr int16{.dynlib: dllname,
|
||||||
importc: "gluErrorUnicodeStringEXT".}
|
importc: "gluErrorUnicodeStringEXT".}
|
||||||
proc gluGetString*(name: TGLenum): cstring{.dynlib: dllname,
|
proc gluGetString*(name: TGLenum): cstring{.dynlib: dllname,
|
||||||
importc: "gluGetString".}
|
importc: "gluGetString".}
|
||||||
proc gluOrtho2D*(left, right, bottom, top: TGLdouble){.dynlib: dllname,
|
proc gluOrtho2D*(left, right, bottom, top: TGLdouble){.dynlib: dllname,
|
||||||
importc: "gluOrtho2D".}
|
importc: "gluOrtho2D".}
|
||||||
proc gluPerspective*(fovy, aspect, zNear, zFar: TGLdouble){.dynlib: dllname,
|
proc gluPerspective*(fovy, aspect, zNear, zFar: TGLdouble){.dynlib: dllname,
|
||||||
importc: "gluPerspective".}
|
importc: "gluPerspective".}
|
||||||
proc gluPickMatrix*(x, y, width, height: TGLdouble, viewport: var TViewPortArray){.
|
proc gluPickMatrix*(x, y, width, height: TGLdouble, viewport: var TViewPortArray){.
|
||||||
dynlib: dllname, importc: "gluPickMatrix".}
|
dynlib: dllname, importc: "gluPickMatrix".}
|
||||||
proc gluLookAt*(eyex, eyey, eyez, centerx, centery, centerz, upx, upy, upz: TGLdouble){.
|
proc gluLookAt*(eyex, eyey, eyez, centerx, centery, centerz, upx, upy, upz: TGLdouble){.
|
||||||
dynlib: dllname, importc: "gluLookAt".}
|
dynlib: dllname, importc: "gluLookAt".}
|
||||||
proc gluProject*(objx, objy, objz: TGLdouble,
|
proc gluProject*(objx, objy, objz: TGLdouble,
|
||||||
modelMatrix, projMatrix: var T16dArray,
|
modelMatrix, projMatrix: var T16dArray,
|
||||||
viewport: var TViewPortArray, winx, winy, winz: ptr TGLdouble): int{.
|
viewport: var TViewPortArray, winx, winy, winz: ptr TGLdouble): int{.
|
||||||
dynlib: dllname, importc: "gluProject".}
|
dynlib: dllname, importc: "gluProject".}
|
||||||
proc gluUnProject*(winx, winy, winz: TGLdouble,
|
proc gluUnProject*(winx, winy, winz: TGLdouble,
|
||||||
modelMatrix, projMatrix: var T16dArray,
|
modelMatrix, projMatrix: var T16dArray,
|
||||||
viewport: var TViewPortArray, objx, objy, objz: ptr TGLdouble): int{.
|
viewport: var TViewPortArray, objx, objy, objz: ptr TGLdouble): int{.
|
||||||
dynlib: dllname, importc: "gluUnProject".}
|
dynlib: dllname, importc: "gluUnProject".}
|
||||||
proc gluScaleImage*(format: TGLenum, widthin, heightin: TGLint, typein: TGLenum,
|
proc gluScaleImage*(format: TGLenum, widthin, heightin: TGLint, typein: TGLenum,
|
||||||
datain: Pointer, widthout, heightout: TGLint,
|
datain: pointer, widthout, heightout: TGLint,
|
||||||
typeout: TGLenum, dataout: Pointer): int{.dynlib: dllname,
|
typeout: TGLenum, dataout: pointer): int{.dynlib: dllname,
|
||||||
importc: "gluScaleImage".}
|
importc: "gluScaleImage".}
|
||||||
proc gluBuild1DMipmaps*(target: TGLenum, components, width: TGLint,
|
proc gluBuild1DMipmaps*(target: TGLenum, components, width: TGLint,
|
||||||
format, atype: TGLenum, data: Pointer): int{.
|
format, atype: TGLenum, data: pointer): int{.
|
||||||
dynlib: dllname, importc: "gluBuild1DMipmaps".}
|
dynlib: dllname, importc: "gluBuild1DMipmaps".}
|
||||||
proc gluBuild2DMipmaps*(target: TGLenum, components, width, height: TGLint,
|
proc gluBuild2DMipmaps*(target: TGLenum, components, width, height: TGLint,
|
||||||
format, atype: TGLenum, data: Pointer): int{.
|
format, atype: TGLenum, data: pointer): int{.
|
||||||
dynlib: dllname, importc: "gluBuild2DMipmaps".}
|
dynlib: dllname, importc: "gluBuild2DMipmaps".}
|
||||||
proc gluNewQuadric*(): PGLUquadric{.dynlib: dllname, importc: "gluNewQuadric".}
|
proc gluNewQuadric*(): PGLUquadric{.dynlib: dllname, importc: "gluNewQuadric".}
|
||||||
proc gluDeleteQuadric*(state: PGLUquadric){.dynlib: dllname,
|
proc gluDeleteQuadric*(state: PGLUquadric){.dynlib: dllname,
|
||||||
importc: "gluDeleteQuadric".}
|
importc: "gluDeleteQuadric".}
|
||||||
proc gluQuadricNormals*(quadObject: PGLUquadric, normals: TGLenum){.
|
proc gluQuadricNormals*(quadObject: PGLUquadric, normals: TGLenum){.
|
||||||
dynlib: dllname, importc: "gluQuadricNormals".}
|
dynlib: dllname, importc: "gluQuadricNormals".}
|
||||||
|
|
@ -100,12 +100,12 @@ proc gluQuadricOrientation*(quadObject: PGLUquadric, orientation: TGLenum){.
|
||||||
dynlib: dllname, importc: "gluQuadricOrientation".}
|
dynlib: dllname, importc: "gluQuadricOrientation".}
|
||||||
proc gluQuadricDrawStyle*(quadObject: PGLUquadric, drawStyle: TGLenum){.
|
proc gluQuadricDrawStyle*(quadObject: PGLUquadric, drawStyle: TGLenum){.
|
||||||
dynlib: dllname, importc: "gluQuadricDrawStyle".}
|
dynlib: dllname, importc: "gluQuadricDrawStyle".}
|
||||||
proc gluCylinder*(qobj: PGLUquadric, baseRadius, topRadius, height: TGLdouble,
|
proc gluCylinder*(qobj: PGLUquadric, baseRadius, topRadius, height: TGLdouble,
|
||||||
slices, stacks: TGLint){.dynlib: dllname,
|
slices, stacks: TGLint){.dynlib: dllname,
|
||||||
importc: "gluCylinder".}
|
importc: "gluCylinder".}
|
||||||
proc gluDisk*(qobj: PGLUquadric, innerRadius, outerRadius: TGLdouble,
|
proc gluDisk*(qobj: PGLUquadric, innerRadius, outerRadius: TGLdouble,
|
||||||
slices, loops: TGLint){.dynlib: dllname, importc: "gluDisk".}
|
slices, loops: TGLint){.dynlib: dllname, importc: "gluDisk".}
|
||||||
proc gluPartialDisk*(qobj: PGLUquadric, innerRadius, outerRadius: TGLdouble,
|
proc gluPartialDisk*(qobj: PGLUquadric, innerRadius, outerRadius: TGLdouble,
|
||||||
slices, loops: TGLint, startAngle, sweepAngle: TGLdouble){.
|
slices, loops: TGLint, startAngle, sweepAngle: TGLdouble){.
|
||||||
dynlib: dllname, importc: "gluPartialDisk".}
|
dynlib: dllname, importc: "gluPartialDisk".}
|
||||||
proc gluSphere*(qobj: PGLuquadric, radius: TGLdouble, slices, stacks: TGLint){.
|
proc gluSphere*(qobj: PGLuquadric, radius: TGLdouble, slices, stacks: TGLint){.
|
||||||
|
|
@ -113,51 +113,51 @@ proc gluSphere*(qobj: PGLuquadric, radius: TGLdouble, slices, stacks: TGLint){.
|
||||||
proc gluQuadricCallback*(qobj: PGLUquadric, which: TGLenum, fn: TCallBack){.
|
proc gluQuadricCallback*(qobj: PGLUquadric, which: TGLenum, fn: TCallBack){.
|
||||||
dynlib: dllname, importc: "gluQuadricCallback".}
|
dynlib: dllname, importc: "gluQuadricCallback".}
|
||||||
proc gluNewTess*(): PGLUtesselator{.dynlib: dllname, importc: "gluNewTess".}
|
proc gluNewTess*(): PGLUtesselator{.dynlib: dllname, importc: "gluNewTess".}
|
||||||
proc gluDeleteTess*(tess: PGLUtesselator){.dynlib: dllname,
|
proc gluDeleteTess*(tess: PGLUtesselator){.dynlib: dllname,
|
||||||
importc: "gluDeleteTess".}
|
importc: "gluDeleteTess".}
|
||||||
proc gluTessBeginPolygon*(tess: PGLUtesselator, polygon_data: Pointer){.
|
proc gluTessBeginPolygon*(tess: PGLUtesselator, polygon_data: pointer){.
|
||||||
dynlib: dllname, importc: "gluTessBeginPolygon".}
|
dynlib: dllname, importc: "gluTessBeginPolygon".}
|
||||||
proc gluTessBeginContour*(tess: PGLUtesselator){.dynlib: dllname,
|
proc gluTessBeginContour*(tess: PGLUtesselator){.dynlib: dllname,
|
||||||
importc: "gluTessBeginContour".}
|
importc: "gluTessBeginContour".}
|
||||||
proc gluTessVertex*(tess: PGLUtesselator, coords: var T3dArray, data: Pointer){.
|
proc gluTessVertex*(tess: PGLUtesselator, coords: var T3dArray, data: pointer){.
|
||||||
dynlib: dllname, importc: "gluTessVertex".}
|
dynlib: dllname, importc: "gluTessVertex".}
|
||||||
proc gluTessEndContour*(tess: PGLUtesselator){.dynlib: dllname,
|
proc gluTessEndContour*(tess: PGLUtesselator){.dynlib: dllname,
|
||||||
importc: "gluTessEndContour".}
|
importc: "gluTessEndContour".}
|
||||||
proc gluTessEndPolygon*(tess: PGLUtesselator){.dynlib: dllname,
|
proc gluTessEndPolygon*(tess: PGLUtesselator){.dynlib: dllname,
|
||||||
importc: "gluTessEndPolygon".}
|
importc: "gluTessEndPolygon".}
|
||||||
proc gluTessProperty*(tess: PGLUtesselator, which: TGLenum, value: TGLdouble){.
|
proc gluTessProperty*(tess: PGLUtesselator, which: TGLenum, value: TGLdouble){.
|
||||||
dynlib: dllname, importc: "gluTessProperty".}
|
dynlib: dllname, importc: "gluTessProperty".}
|
||||||
proc gluTessNormal*(tess: PGLUtesselator, x, y, z: TGLdouble){.dynlib: dllname,
|
proc gluTessNormal*(tess: PGLUtesselator, x, y, z: TGLdouble){.dynlib: dllname,
|
||||||
importc: "gluTessNormal".}
|
importc: "gluTessNormal".}
|
||||||
proc gluTessCallback*(tess: PGLUtesselator, which: TGLenum, fn: TCallBack){.
|
proc gluTessCallback*(tess: PGLUtesselator, which: TGLenum, fn: TCallBack){.
|
||||||
dynlib: dllname, importc: "gluTessCallback".}
|
dynlib: dllname, importc: "gluTessCallback".}
|
||||||
proc gluGetTessProperty*(tess: PGLUtesselator, which: TGLenum, value: ptr TGLdouble){.
|
proc gluGetTessProperty*(tess: PGLUtesselator, which: TGLenum, value: ptr TGLdouble){.
|
||||||
dynlib: dllname, importc: "gluGetTessProperty".}
|
dynlib: dllname, importc: "gluGetTessProperty".}
|
||||||
proc gluNewNurbsRenderer*(): PGLUnurbs{.dynlib: dllname,
|
proc gluNewNurbsRenderer*(): PGLUnurbs{.dynlib: dllname,
|
||||||
importc: "gluNewNurbsRenderer".}
|
importc: "gluNewNurbsRenderer".}
|
||||||
proc gluDeleteNurbsRenderer*(nobj: PGLUnurbs){.dynlib: dllname,
|
proc gluDeleteNurbsRenderer*(nobj: PGLUnurbs){.dynlib: dllname,
|
||||||
importc: "gluDeleteNurbsRenderer".}
|
importc: "gluDeleteNurbsRenderer".}
|
||||||
proc gluBeginSurface*(nobj: PGLUnurbs){.dynlib: dllname,
|
proc gluBeginSurface*(nobj: PGLUnurbs){.dynlib: dllname,
|
||||||
importc: "gluBeginSurface".}
|
importc: "gluBeginSurface".}
|
||||||
proc gluBeginCurve*(nobj: PGLUnurbs){.dynlib: dllname, importc: "gluBeginCurve".}
|
proc gluBeginCurve*(nobj: PGLUnurbs){.dynlib: dllname, importc: "gluBeginCurve".}
|
||||||
proc gluEndCurve*(nobj: PGLUnurbs){.dynlib: dllname, importc: "gluEndCurve".}
|
proc gluEndCurve*(nobj: PGLUnurbs){.dynlib: dllname, importc: "gluEndCurve".}
|
||||||
proc gluEndSurface*(nobj: PGLUnurbs){.dynlib: dllname, importc: "gluEndSurface".}
|
proc gluEndSurface*(nobj: PGLUnurbs){.dynlib: dllname, importc: "gluEndSurface".}
|
||||||
proc gluBeginTrim*(nobj: PGLUnurbs){.dynlib: dllname, importc: "gluBeginTrim".}
|
proc gluBeginTrim*(nobj: PGLUnurbs){.dynlib: dllname, importc: "gluBeginTrim".}
|
||||||
proc gluEndTrim*(nobj: PGLUnurbs){.dynlib: dllname, importc: "gluEndTrim".}
|
proc gluEndTrim*(nobj: PGLUnurbs){.dynlib: dllname, importc: "gluEndTrim".}
|
||||||
proc gluPwlCurve*(nobj: PGLUnurbs, count: TGLint, aarray: ptr TGLfloat,
|
proc gluPwlCurve*(nobj: PGLUnurbs, count: TGLint, aarray: ptr TGLfloat,
|
||||||
stride: TGLint, atype: TGLenum){.dynlib: dllname,
|
stride: TGLint, atype: TGLenum){.dynlib: dllname,
|
||||||
importc: "gluPwlCurve".}
|
importc: "gluPwlCurve".}
|
||||||
proc gluNurbsCurve*(nobj: PGLUnurbs, nknots: TGLint, knot: ptr TGLfloat,
|
proc gluNurbsCurve*(nobj: PGLUnurbs, nknots: TGLint, knot: ptr TGLfloat,
|
||||||
stride: TGLint, ctlarray: ptr TGLfloat, order: TGLint,
|
stride: TGLint, ctlarray: ptr TGLfloat, order: TGLint,
|
||||||
atype: TGLenum){.dynlib: dllname, importc: "gluNurbsCurve".}
|
atype: TGLenum){.dynlib: dllname, importc: "gluNurbsCurve".}
|
||||||
proc gluNurbsSurface*(nobj: PGLUnurbs, sknot_count: TGLint, sknot: ptr TGLfloat,
|
proc gluNurbsSurface*(nobj: PGLUnurbs, sknot_count: TGLint, sknot: ptr TGLfloat,
|
||||||
tknot_count: TGLint, tknot: ptr TGLfloat,
|
tknot_count: TGLint, tknot: ptr TGLfloat,
|
||||||
s_stride, t_stride: TGLint, ctlarray: ptr TGLfloat,
|
s_stride, t_stride: TGLint, ctlarray: ptr TGLfloat,
|
||||||
sorder, torder: TGLint, atype: TGLenum){.dynlib: dllname,
|
sorder, torder: TGLint, atype: TGLenum){.dynlib: dllname,
|
||||||
importc: "gluNurbsSurface".}
|
importc: "gluNurbsSurface".}
|
||||||
proc gluLoadSamplingMatrices*(nobj: PGLUnurbs,
|
proc gluLoadSamplingMatrices*(nobj: PGLUnurbs,
|
||||||
modelMatrix, projMatrix: var T16dArray,
|
modelMatrix, projMatrix: var T16dArray,
|
||||||
viewport: var TViewPortArray){.dynlib: dllname,
|
viewport: var TViewPortArray){.dynlib: dllname,
|
||||||
importc: "gluLoadSamplingMatrices".}
|
importc: "gluLoadSamplingMatrices".}
|
||||||
proc gluNurbsProperty*(nobj: PGLUnurbs, aproperty: TGLenum, value: TGLfloat){.
|
proc gluNurbsProperty*(nobj: PGLUnurbs, aproperty: TGLenum, value: TGLfloat){.
|
||||||
dynlib: dllname, importc: "gluNurbsProperty".}
|
dynlib: dllname, importc: "gluNurbsProperty".}
|
||||||
|
|
@ -170,20 +170,18 @@ type # gluQuadricCallback
|
||||||
GLUquadricErrorProc* = proc (p: TGLenum) # gluTessCallback
|
GLUquadricErrorProc* = proc (p: TGLenum) # gluTessCallback
|
||||||
GLUtessBeginProc* = proc (p: TGLenum)
|
GLUtessBeginProc* = proc (p: TGLenum)
|
||||||
GLUtessEdgeFlagProc* = proc (p: TGLboolean)
|
GLUtessEdgeFlagProc* = proc (p: TGLboolean)
|
||||||
GLUtessVertexProc* = proc (p: Pointer)
|
GLUtessVertexProc* = proc (p: pointer)
|
||||||
GLUtessEndProc* = proc ()
|
GLUtessEndProc* = proc ()
|
||||||
GLUtessErrorProc* = proc (p: TGLenum)
|
GLUtessErrorProc* = proc (p: TGLenum)
|
||||||
GLUtessCombineProc* = proc (p1: var T3dArray, p2: T4pArray, p3: T4fArray,
|
GLUtessCombineProc* = proc (p1: var T3dArray, p2: T4pArray, p3: T4fArray,
|
||||||
p4: PPointer)
|
p4: ptr pointer)
|
||||||
GLUtessBeginDataProc* = proc (p1: TGLenum, p2: Pointer)
|
GLUtessBeginDataProc* = proc (p1: TGLenum, p2: pointer)
|
||||||
GLUtessEdgeFlagDataProc* = proc (p1: TGLboolean, p2: Pointer)
|
GLUtessEdgeFlagDataProc* = proc (p1: TGLboolean, p2: pointer)
|
||||||
GLUtessVertexDataProc* = proc (p1, p2: Pointer)
|
GLUtessVertexDataProc* = proc (p1, p2: pointer)
|
||||||
GLUtessEndDataProc* = proc (p: Pointer)
|
GLUtessEndDataProc* = proc (p: pointer)
|
||||||
GLUtessErrorDataProc* = proc (p1: TGLenum, p2: Pointer)
|
GLUtessErrorDataProc* = proc (p1: TGLenum, p2: pointer)
|
||||||
GLUtessCombineDataProc* = proc (p1: var T3dArray, p2: var T4pArray,
|
GLUtessCombineDataProc* = proc (p1: var T3dArray, p2: var T4pArray,
|
||||||
p3: var T4fArray, p4: PPointer, p5: Pointer) #
|
p3: var T4fArray, p4: ptr pointer, p5: pointer) #
|
||||||
#
|
|
||||||
# gluNurbsCallback
|
|
||||||
GLUnurbsErrorProc* = proc (p: TGLenum) #*** Generic constants ****/
|
GLUnurbsErrorProc* = proc (p: TGLenum) #*** Generic constants ****/
|
||||||
|
|
||||||
const # Version
|
const # Version
|
||||||
|
|
@ -226,21 +224,21 @@ const # Version
|
||||||
GLU_TESS_COMBINE* = 100105 # void (CALLBACK*)(TGLdouble coords[3],
|
GLU_TESS_COMBINE* = 100105 # void (CALLBACK*)(TGLdouble coords[3],
|
||||||
# void *data[4],
|
# void *data[4],
|
||||||
# TGLfloat weight[4],
|
# TGLfloat weight[4],
|
||||||
# void **dataOut)
|
# void **dataOut)
|
||||||
GLU_TESS_BEGIN_DATA* = 100106 # void (CALLBACK*)(TGLenum type,
|
GLU_TESS_BEGIN_DATA* = 100106 # void (CALLBACK*)(TGLenum type,
|
||||||
# void *polygon_data)
|
# void *polygon_data)
|
||||||
GLU_TESS_VERTEX_DATA* = 100107 # void (CALLBACK*)(void *data,
|
GLU_TESS_VERTEX_DATA* = 100107 # void (CALLBACK*)(void *data,
|
||||||
# void *polygon_data)
|
# void *polygon_data)
|
||||||
GLU_TESS_END_DATA* = 100108 # void (CALLBACK*)(void *polygon_data)
|
GLU_TESS_END_DATA* = 100108 # void (CALLBACK*)(void *polygon_data)
|
||||||
GLU_TESS_ERROR_DATA* = 100109 # void (CALLBACK*)(TGLenum errno,
|
GLU_TESS_ERROR_DATA* = 100109 # void (CALLBACK*)(TGLenum errno,
|
||||||
# void *polygon_data)
|
# void *polygon_data)
|
||||||
GLU_TESS_EDGE_FLAG_DATA* = 100110 # void (CALLBACK*)(TGLboolean boundaryEdge,
|
GLU_TESS_EDGE_FLAG_DATA* = 100110 # void (CALLBACK*)(TGLboolean boundaryEdge,
|
||||||
# void *polygon_data)
|
# void *polygon_data)
|
||||||
GLU_TESS_COMBINE_DATA* = 100111 # void (CALLBACK*)(TGLdouble coords[3],
|
GLU_TESS_COMBINE_DATA* = 100111 # void (CALLBACK*)(TGLdouble coords[3],
|
||||||
# void *data[4],
|
# void *data[4],
|
||||||
# TGLfloat weight[4],
|
# TGLfloat weight[4],
|
||||||
# void **dataOut,
|
# void **dataOut,
|
||||||
# void *polygon_data)
|
# void *polygon_data)
|
||||||
# TessError
|
# TessError
|
||||||
GLU_TESS_ERROR1* = 100151
|
GLU_TESS_ERROR1* = 100151
|
||||||
GLU_TESS_ERROR2* = 100152
|
GLU_TESS_ERROR2* = 100152
|
||||||
|
|
@ -313,11 +311,11 @@ const # Version
|
||||||
GLU_NURBS_ERROR36* = 100286
|
GLU_NURBS_ERROR36* = 100286
|
||||||
GLU_NURBS_ERROR37* = 100287 #*** Backwards compatibility for old tesselator ****/
|
GLU_NURBS_ERROR37* = 100287 #*** Backwards compatibility for old tesselator ****/
|
||||||
|
|
||||||
proc gluBeginPolygon*(tess: PGLUtesselator){.dynlib: dllname,
|
proc gluBeginPolygon*(tess: PGLUtesselator){.dynlib: dllname,
|
||||||
importc: "gluBeginPolygon".}
|
importc: "gluBeginPolygon".}
|
||||||
proc gluNextContour*(tess: PGLUtesselator, atype: TGLenum){.dynlib: dllname,
|
proc gluNextContour*(tess: PGLUtesselator, atype: TGLenum){.dynlib: dllname,
|
||||||
importc: "gluNextContour".}
|
importc: "gluNextContour".}
|
||||||
proc gluEndPolygon*(tess: PGLUtesselator){.dynlib: dllname,
|
proc gluEndPolygon*(tess: PGLUtesselator){.dynlib: dllname,
|
||||||
importc: "gluEndPolygon".}
|
importc: "gluEndPolygon".}
|
||||||
const # Contours types -- obsolete!
|
const # Contours types -- obsolete!
|
||||||
GLU_CW* = 100120
|
GLU_CW* = 100120
|
||||||
|
|
|
||||||
140
src/glut.nim
140
src/glut.nim
|
|
@ -17,14 +17,14 @@
|
||||||
|
|
||||||
import opengl
|
import opengl
|
||||||
|
|
||||||
when defined(windows):
|
when defined(windows):
|
||||||
const
|
const
|
||||||
dllname = "glut32.dll"
|
dllname = "glut32.dll"
|
||||||
elif defined(macosx):
|
elif defined(macosx):
|
||||||
const
|
const
|
||||||
dllname = "/System/Library/Frameworks/GLUT.framework/GLUT"
|
dllname = "/System/Library/Frameworks/GLUT.framework/GLUT"
|
||||||
else:
|
else:
|
||||||
const
|
const
|
||||||
dllname = "libglut.so.3"
|
dllname = "libglut.so.3"
|
||||||
type
|
type
|
||||||
TGlutVoidCallback* = proc (){.cdecl.}
|
TGlutVoidCallback* = proc (){.cdecl.}
|
||||||
|
|
@ -35,7 +35,9 @@ type
|
||||||
TGlut1Char2IntCallback* = proc (c: int8, v1, v2: cint){.cdecl.}
|
TGlut1Char2IntCallback* = proc (c: int8, v1, v2: cint){.cdecl.}
|
||||||
TGlut1UInt3IntCallback* = proc (u, v1, v2, v3: cint){.cdecl.}
|
TGlut1UInt3IntCallback* = proc (u, v1, v2, v3: cint){.cdecl.}
|
||||||
|
|
||||||
const
|
{.deprecated: [Pointer: pointer].}
|
||||||
|
|
||||||
|
const
|
||||||
GLUT_API_VERSION* = 3
|
GLUT_API_VERSION* = 3
|
||||||
GLUT_XLIB_IMPLEMENTATION* = 12 # Display mode bit masks.
|
GLUT_XLIB_IMPLEMENTATION* = 12 # Display mode bit masks.
|
||||||
GLUT_RGB* = 0
|
GLUT_RGB* = 0
|
||||||
|
|
@ -92,7 +94,7 @@ const
|
||||||
GLUT_NORMAL* = 0
|
GLUT_NORMAL* = 0
|
||||||
GLUT_OVERLAY* = 1
|
GLUT_OVERLAY* = 1
|
||||||
|
|
||||||
when defined(Windows):
|
when defined(Windows):
|
||||||
const # Stroke font constants (use these in GLUT program).
|
const # Stroke font constants (use these in GLUT program).
|
||||||
GLUT_STROKE_ROMAN* = cast[Pointer](0)
|
GLUT_STROKE_ROMAN* = cast[Pointer](0)
|
||||||
GLUT_STROKE_MONO_ROMAN* = cast[Pointer](1) # Bitmap font constants (use these in GLUT program).
|
GLUT_STROKE_MONO_ROMAN* = cast[Pointer](1) # Bitmap font constants (use these in GLUT program).
|
||||||
|
|
@ -103,7 +105,7 @@ when defined(Windows):
|
||||||
GLUT_BITMAP_HELVETICA_10* = cast[Pointer](6)
|
GLUT_BITMAP_HELVETICA_10* = cast[Pointer](6)
|
||||||
GLUT_BITMAP_HELVETICA_12* = cast[Pointer](7)
|
GLUT_BITMAP_HELVETICA_12* = cast[Pointer](7)
|
||||||
GLUT_BITMAP_HELVETICA_18* = cast[Pointer](8)
|
GLUT_BITMAP_HELVETICA_18* = cast[Pointer](8)
|
||||||
else:
|
else:
|
||||||
var # Stroke font constants (use these in GLUT program).
|
var # Stroke font constants (use these in GLUT program).
|
||||||
GLUT_STROKE_ROMAN*: Pointer
|
GLUT_STROKE_ROMAN*: Pointer
|
||||||
GLUT_STROKE_MONO_ROMAN*: Pointer # Bitmap font constants (use these in GLUT program).
|
GLUT_STROKE_MONO_ROMAN*: Pointer # Bitmap font constants (use these in GLUT program).
|
||||||
|
|
@ -228,7 +230,7 @@ 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,
|
proc glutInit*(argcp: ptr cint, argv: pointer){.dynlib: dllname,
|
||||||
importc: "glutInit".}
|
importc: "glutInit".}
|
||||||
|
|
||||||
proc glutInit*() =
|
proc glutInit*() =
|
||||||
|
|
@ -238,34 +240,34 @@ 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){.dynlib: dllname,
|
||||||
importc: "glutInitDisplayMode".}
|
importc: "glutInitDisplayMode".}
|
||||||
proc glutInitDisplayString*(str: cstring){.dynlib: dllname,
|
proc glutInitDisplayString*(str: cstring){.dynlib: dllname,
|
||||||
importc: "glutInitDisplayString".}
|
importc: "glutInitDisplayString".}
|
||||||
proc glutInitWindowPosition*(x, y: int){.dynlib: dllname,
|
proc glutInitWindowPosition*(x, y: int){.dynlib: dllname,
|
||||||
importc: "glutInitWindowPosition".}
|
importc: "glutInitWindowPosition".}
|
||||||
proc glutInitWindowSize*(width, height: int){.dynlib: dllname,
|
proc glutInitWindowSize*(width, height: int){.dynlib: dllname,
|
||||||
importc: "glutInitWindowSize".}
|
importc: "glutInitWindowSize".}
|
||||||
proc glutMainLoop*(){.dynlib: dllname, importc: "glutMainLoop".}
|
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{.dynlib: dllname,
|
||||||
importc: "glutCreateWindow".}
|
importc: "glutCreateWindow".}
|
||||||
proc glutCreateSubWindow*(win, x, y, width, height: int): int{.dynlib: dllname,
|
proc glutCreateSubWindow*(win, x, y, width, height: int): int{.dynlib: dllname,
|
||||||
importc: "glutCreateSubWindow".}
|
importc: "glutCreateSubWindow".}
|
||||||
proc glutDestroyWindow*(win: int){.dynlib: dllname, importc: "glutDestroyWindow".}
|
proc glutDestroyWindow*(win: int){.dynlib: dllname, importc: "glutDestroyWindow".}
|
||||||
proc glutPostRedisplay*(){.dynlib: dllname, importc: "glutPostRedisplay".}
|
proc glutPostRedisplay*(){.dynlib: dllname, importc: "glutPostRedisplay".}
|
||||||
proc glutPostWindowRedisplay*(win: int){.dynlib: dllname,
|
proc glutPostWindowRedisplay*(win: int){.dynlib: dllname,
|
||||||
importc: "glutPostWindowRedisplay".}
|
importc: "glutPostWindowRedisplay".}
|
||||||
proc glutSwapBuffers*(){.dynlib: dllname, importc: "glutSwapBuffers".}
|
proc glutSwapBuffers*(){.dynlib: dllname, importc: "glutSwapBuffers".}
|
||||||
proc glutGetWindow*(): int{.dynlib: dllname, importc: "glutGetWindow".}
|
proc glutGetWindow*(): int{.dynlib: dllname, importc: "glutGetWindow".}
|
||||||
proc glutSetWindow*(win: int){.dynlib: dllname, importc: "glutSetWindow".}
|
proc glutSetWindow*(win: int){.dynlib: dllname, importc: "glutSetWindow".}
|
||||||
proc glutSetWindowTitle*(title: cstring){.dynlib: dllname,
|
proc glutSetWindowTitle*(title: cstring){.dynlib: dllname,
|
||||||
importc: "glutSetWindowTitle".}
|
importc: "glutSetWindowTitle".}
|
||||||
proc glutSetIconTitle*(title: cstring){.dynlib: dllname,
|
proc glutSetIconTitle*(title: cstring){.dynlib: dllname,
|
||||||
importc: "glutSetIconTitle".}
|
importc: "glutSetIconTitle".}
|
||||||
proc glutPositionWindow*(x, y: int){.dynlib: dllname,
|
proc glutPositionWindow*(x, y: int){.dynlib: dllname,
|
||||||
importc: "glutPositionWindow".}
|
importc: "glutPositionWindow".}
|
||||||
proc glutReshapeWindow*(width, height: int){.dynlib: dllname,
|
proc glutReshapeWindow*(width, height: int){.dynlib: dllname,
|
||||||
importc: "glutReshapeWindow".}
|
importc: "glutReshapeWindow".}
|
||||||
proc glutPopWindow*(){.dynlib: dllname, importc: "glutPopWindow".}
|
proc glutPopWindow*(){.dynlib: dllname, importc: "glutPopWindow".}
|
||||||
proc glutPushWindow*(){.dynlib: dllname, importc: "glutPushWindow".}
|
proc glutPushWindow*(){.dynlib: dllname, importc: "glutPushWindow".}
|
||||||
|
|
@ -279,107 +281,107 @@ proc glutWarpPointer*(x, y: int){.dynlib: dllname, importc: "glutWarpPointer".}
|
||||||
proc glutEstablishOverlay*(){.dynlib: dllname, importc: "glutEstablishOverlay".}
|
proc glutEstablishOverlay*(){.dynlib: dllname, importc: "glutEstablishOverlay".}
|
||||||
proc glutRemoveOverlay*(){.dynlib: dllname, importc: "glutRemoveOverlay".}
|
proc glutRemoveOverlay*(){.dynlib: dllname, importc: "glutRemoveOverlay".}
|
||||||
proc glutUseLayer*(layer: TGLenum){.dynlib: dllname, importc: "glutUseLayer".}
|
proc glutUseLayer*(layer: TGLenum){.dynlib: dllname, importc: "glutUseLayer".}
|
||||||
proc glutPostOverlayRedisplay*(){.dynlib: dllname,
|
proc glutPostOverlayRedisplay*(){.dynlib: dllname,
|
||||||
importc: "glutPostOverlayRedisplay".}
|
importc: "glutPostOverlayRedisplay".}
|
||||||
proc glutPostWindowOverlayRedisplay*(win: int){.dynlib: dllname,
|
proc glutPostWindowOverlayRedisplay*(win: int){.dynlib: dllname,
|
||||||
importc: "glutPostWindowOverlayRedisplay".}
|
importc: "glutPostWindowOverlayRedisplay".}
|
||||||
proc glutShowOverlay*(){.dynlib: dllname, importc: "glutShowOverlay".}
|
proc glutShowOverlay*(){.dynlib: dllname, importc: "glutShowOverlay".}
|
||||||
proc glutHideOverlay*(){.dynlib: dllname, importc: "glutHideOverlay".}
|
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{.dynlib: dllname,
|
||||||
importc: "glutCreateMenu".}
|
importc: "glutCreateMenu".}
|
||||||
proc glutDestroyMenu*(menu: int){.dynlib: dllname, importc: "glutDestroyMenu".}
|
proc glutDestroyMenu*(menu: int){.dynlib: dllname, importc: "glutDestroyMenu".}
|
||||||
proc glutGetMenu*(): int{.dynlib: dllname, importc: "glutGetMenu".}
|
proc glutGetMenu*(): int{.dynlib: dllname, importc: "glutGetMenu".}
|
||||||
proc glutSetMenu*(menu: int){.dynlib: dllname, importc: "glutSetMenu".}
|
proc glutSetMenu*(menu: int){.dynlib: dllname, importc: "glutSetMenu".}
|
||||||
proc glutAddMenuEntry*(caption: cstring, value: int){.dynlib: dllname,
|
proc glutAddMenuEntry*(caption: cstring, value: int){.dynlib: dllname,
|
||||||
importc: "glutAddMenuEntry".}
|
importc: "glutAddMenuEntry".}
|
||||||
proc glutAddSubMenu*(caption: cstring, submenu: int){.dynlib: dllname,
|
proc glutAddSubMenu*(caption: cstring, submenu: int){.dynlib: dllname,
|
||||||
importc: "glutAddSubMenu".}
|
importc: "glutAddSubMenu".}
|
||||||
proc glutChangeToMenuEntry*(item: int, caption: cstring, value: int){.
|
proc glutChangeToMenuEntry*(item: int, caption: cstring, value: int){.
|
||||||
dynlib: dllname, importc: "glutChangeToMenuEntry".}
|
dynlib: dllname, importc: "glutChangeToMenuEntry".}
|
||||||
proc glutChangeToSubMenu*(item: int, caption: cstring, submenu: int){.
|
proc glutChangeToSubMenu*(item: int, caption: cstring, submenu: int){.
|
||||||
dynlib: dllname, importc: "glutChangeToSubMenu".}
|
dynlib: dllname, importc: "glutChangeToSubMenu".}
|
||||||
proc glutRemoveMenuItem*(item: int){.dynlib: dllname,
|
proc glutRemoveMenuItem*(item: int){.dynlib: dllname,
|
||||||
importc: "glutRemoveMenuItem".}
|
importc: "glutRemoveMenuItem".}
|
||||||
proc glutAttachMenu*(button: int){.dynlib: dllname, importc: "glutAttachMenu".}
|
proc glutAttachMenu*(button: int){.dynlib: dllname, importc: "glutAttachMenu".}
|
||||||
proc glutDetachMenu*(button: int){.dynlib: dllname, importc: "glutDetachMenu".}
|
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){.dynlib: dllname,
|
||||||
importc: "glutDisplayFunc".}
|
importc: "glutDisplayFunc".}
|
||||||
proc glutReshapeFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
proc glutReshapeFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
||||||
importc: "glutReshapeFunc".}
|
importc: "glutReshapeFunc".}
|
||||||
proc glutKeyboardFunc*(f: TGlut1Char2IntCallback){.dynlib: dllname,
|
proc glutKeyboardFunc*(f: TGlut1Char2IntCallback){.dynlib: dllname,
|
||||||
importc: "glutKeyboardFunc".}
|
importc: "glutKeyboardFunc".}
|
||||||
proc glutMouseFunc*(f: TGlut4IntCallback){.dynlib: dllname,
|
proc glutMouseFunc*(f: TGlut4IntCallback){.dynlib: dllname,
|
||||||
importc: "glutMouseFunc".}
|
importc: "glutMouseFunc".}
|
||||||
proc glutMotionFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
proc glutMotionFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
||||||
importc: "glutMotionFunc".}
|
importc: "glutMotionFunc".}
|
||||||
proc glutPassiveMotionFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
proc glutPassiveMotionFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
||||||
importc: "glutPassiveMotionFunc".}
|
importc: "glutPassiveMotionFunc".}
|
||||||
proc glutEntryFunc*(f: TGlut1IntCallback){.dynlib: dllname,
|
proc glutEntryFunc*(f: TGlut1IntCallback){.dynlib: dllname,
|
||||||
importc: "glutEntryFunc".}
|
importc: "glutEntryFunc".}
|
||||||
proc glutVisibilityFunc*(f: TGlut1IntCallback){.dynlib: dllname,
|
proc glutVisibilityFunc*(f: TGlut1IntCallback){.dynlib: dllname,
|
||||||
importc: "glutVisibilityFunc".}
|
importc: "glutVisibilityFunc".}
|
||||||
proc glutIdleFunc*(f: TGlutVoidCallback){.dynlib: dllname,
|
proc glutIdleFunc*(f: TGlutVoidCallback){.dynlib: dllname,
|
||||||
importc: "glutIdleFunc".}
|
importc: "glutIdleFunc".}
|
||||||
proc glutTimerFunc*(millis: int16, f: TGlut1IntCallback, value: int){.
|
proc glutTimerFunc*(millis: int16, f: TGlut1IntCallback, value: int){.
|
||||||
dynlib: dllname, importc: "glutTimerFunc".}
|
dynlib: dllname, importc: "glutTimerFunc".}
|
||||||
proc glutMenuStateFunc*(f: TGlut1IntCallback){.dynlib: dllname,
|
proc glutMenuStateFunc*(f: TGlut1IntCallback){.dynlib: dllname,
|
||||||
importc: "glutMenuStateFunc".}
|
importc: "glutMenuStateFunc".}
|
||||||
proc glutSpecialFunc*(f: TGlut3IntCallback){.dynlib: dllname,
|
proc glutSpecialFunc*(f: TGlut3IntCallback){.dynlib: dllname,
|
||||||
importc: "glutSpecialFunc".}
|
importc: "glutSpecialFunc".}
|
||||||
proc glutSpaceballMotionFunc*(f: TGlut3IntCallback){.dynlib: dllname,
|
proc glutSpaceballMotionFunc*(f: TGlut3IntCallback){.dynlib: dllname,
|
||||||
importc: "glutSpaceballMotionFunc".}
|
importc: "glutSpaceballMotionFunc".}
|
||||||
proc glutSpaceballRotateFunc*(f: TGlut3IntCallback){.dynlib: dllname,
|
proc glutSpaceballRotateFunc*(f: TGlut3IntCallback){.dynlib: dllname,
|
||||||
importc: "glutSpaceballRotateFunc".}
|
importc: "glutSpaceballRotateFunc".}
|
||||||
proc glutSpaceballButtonFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
proc glutSpaceballButtonFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
||||||
importc: "glutSpaceballButtonFunc".}
|
importc: "glutSpaceballButtonFunc".}
|
||||||
proc glutButtonBoxFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
proc glutButtonBoxFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
||||||
importc: "glutButtonBoxFunc".}
|
importc: "glutButtonBoxFunc".}
|
||||||
proc glutDialsFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
proc glutDialsFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
||||||
importc: "glutDialsFunc".}
|
importc: "glutDialsFunc".}
|
||||||
proc glutTabletMotionFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
proc glutTabletMotionFunc*(f: TGlut2IntCallback){.dynlib: dllname,
|
||||||
importc: "glutTabletMotionFunc".}
|
importc: "glutTabletMotionFunc".}
|
||||||
proc glutTabletButtonFunc*(f: TGlut4IntCallback){.dynlib: dllname,
|
proc glutTabletButtonFunc*(f: TGlut4IntCallback){.dynlib: dllname,
|
||||||
importc: "glutTabletButtonFunc".}
|
importc: "glutTabletButtonFunc".}
|
||||||
proc glutMenuStatusFunc*(f: TGlut3IntCallback){.dynlib: dllname,
|
proc glutMenuStatusFunc*(f: TGlut3IntCallback){.dynlib: dllname,
|
||||||
importc: "glutMenuStatusFunc".}
|
importc: "glutMenuStatusFunc".}
|
||||||
proc glutOverlayDisplayFunc*(f: TGlutVoidCallback){.dynlib: dllname,
|
proc glutOverlayDisplayFunc*(f: TGlutVoidCallback){.dynlib: dllname,
|
||||||
importc: "glutOverlayDisplayFunc".}
|
importc: "glutOverlayDisplayFunc".}
|
||||||
proc glutWindowStatusFunc*(f: TGlut1IntCallback){.dynlib: dllname,
|
proc glutWindowStatusFunc*(f: TGlut1IntCallback){.dynlib: dllname,
|
||||||
importc: "glutWindowStatusFunc".}
|
importc: "glutWindowStatusFunc".}
|
||||||
proc glutKeyboardUpFunc*(f: TGlut1Char2IntCallback){.dynlib: dllname,
|
proc glutKeyboardUpFunc*(f: TGlut1Char2IntCallback){.dynlib: dllname,
|
||||||
importc: "glutKeyboardUpFunc".}
|
importc: "glutKeyboardUpFunc".}
|
||||||
proc glutSpecialUpFunc*(f: TGlut3IntCallback){.dynlib: dllname,
|
proc glutSpecialUpFunc*(f: TGlut3IntCallback){.dynlib: dllname,
|
||||||
importc: "glutSpecialUpFunc".}
|
importc: "glutSpecialUpFunc".}
|
||||||
proc glutJoystickFunc*(f: TGlut1UInt3IntCallback, pollInterval: int){.
|
proc glutJoystickFunc*(f: TGlut1UInt3IntCallback, pollInterval: int){.
|
||||||
dynlib: dllname, importc: "glutJoystickFunc".}
|
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){.dynlib: dllname,
|
||||||
importc: "glutSetColor".}
|
importc: "glutSetColor".}
|
||||||
proc glutGetColor*(ndx, component: int): TGLfloat{.dynlib: dllname,
|
proc glutGetColor*(ndx, component: int): TGLfloat{.dynlib: dllname,
|
||||||
importc: "glutGetColor".}
|
importc: "glutGetColor".}
|
||||||
proc glutCopyColormap*(win: int){.dynlib: dllname, importc: "glutCopyColormap".}
|
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 glutGet*(t: TGLenum): int{.dynlib: dllname, importc: "glutGet".}
|
||||||
proc glutDeviceGet*(t: TGLenum): int{.dynlib: dllname, importc: "glutDeviceGet".}
|
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{.dynlib: dllname,
|
||||||
importc: "glutExtensionSupported".}
|
importc: "glutExtensionSupported".}
|
||||||
proc glutGetModifiers*(): int{.dynlib: dllname, importc: "glutGetModifiers".}
|
proc glutGetModifiers*(): int{.dynlib: dllname, importc: "glutGetModifiers".}
|
||||||
proc glutLayerGet*(t: TGLenum): int{.dynlib: dllname, importc: "glutLayerGet".}
|
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){.dynlib: dllname,
|
||||||
importc: "glutBitmapCharacter".}
|
importc: "glutBitmapCharacter".}
|
||||||
proc glutBitmapWidth*(font: pointer, character: int): int{.dynlib: dllname,
|
proc glutBitmapWidth*(font: pointer, character: int): int{.dynlib: dllname,
|
||||||
importc: "glutBitmapWidth".}
|
importc: "glutBitmapWidth".}
|
||||||
proc glutStrokeCharacter*(font: pointer, character: int){.dynlib: dllname,
|
proc glutStrokeCharacter*(font: pointer, character: int){.dynlib: dllname,
|
||||||
importc: "glutStrokeCharacter".}
|
importc: "glutStrokeCharacter".}
|
||||||
proc glutStrokeWidth*(font: pointer, character: int): int{.dynlib: dllname,
|
proc glutStrokeWidth*(font: pointer, character: int): int{.dynlib: dllname,
|
||||||
importc: "glutStrokeWidth".}
|
importc: "glutStrokeWidth".}
|
||||||
proc glutBitmapLength*(font: pointer, str: cstring): int{.dynlib: dllname,
|
proc glutBitmapLength*(font: pointer, str: cstring): int{.dynlib: dllname,
|
||||||
importc: "glutBitmapLength".}
|
importc: "glutBitmapLength".}
|
||||||
proc glutStrokeLength*(font: pointer, str: cstring): int{.dynlib: dllname,
|
proc glutStrokeLength*(font: pointer, str: cstring): int{.dynlib: dllname,
|
||||||
importc: "glutStrokeLength".}
|
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){.
|
||||||
|
|
@ -398,9 +400,9 @@ proc glutSolidTorus*(innerRadius, outerRadius: TGLdouble, sides, rings: TGLint){
|
||||||
dynlib: dllname, importc: "glutSolidTorus".}
|
dynlib: dllname, importc: "glutSolidTorus".}
|
||||||
proc glutWireDodecahedron*(){.dynlib: dllname, importc: "glutWireDodecahedron".}
|
proc glutWireDodecahedron*(){.dynlib: dllname, importc: "glutWireDodecahedron".}
|
||||||
proc glutSolidDodecahedron*(){.dynlib: dllname, importc: "glutSolidDodecahedron".}
|
proc glutSolidDodecahedron*(){.dynlib: dllname, importc: "glutSolidDodecahedron".}
|
||||||
proc glutWireTeapot*(size: TGLdouble){.dynlib: dllname,
|
proc glutWireTeapot*(size: TGLdouble){.dynlib: dllname,
|
||||||
importc: "glutWireTeapot".}
|
importc: "glutWireTeapot".}
|
||||||
proc glutSolidTeapot*(size: TGLdouble){.dynlib: dllname,
|
proc glutSolidTeapot*(size: TGLdouble){.dynlib: dllname,
|
||||||
importc: "glutSolidTeapot".}
|
importc: "glutSolidTeapot".}
|
||||||
proc glutWireOctahedron*(){.dynlib: dllname, importc: "glutWireOctahedron".}
|
proc glutWireOctahedron*(){.dynlib: dllname, importc: "glutWireOctahedron".}
|
||||||
proc glutSolidOctahedron*(){.dynlib: dllname, importc: "glutSolidOctahedron".}
|
proc glutSolidOctahedron*(){.dynlib: dllname, importc: "glutSolidOctahedron".}
|
||||||
|
|
@ -409,29 +411,29 @@ proc glutSolidTetrahedron*(){.dynlib: dllname, importc: "glutSolidTetrahedron".}
|
||||||
proc glutWireIcosahedron*(){.dynlib: dllname, importc: "glutWireIcosahedron".}
|
proc glutWireIcosahedron*(){.dynlib: dllname, importc: "glutWireIcosahedron".}
|
||||||
proc glutSolidIcosahedron*(){.dynlib: dllname, importc: "glutSolidIcosahedron".}
|
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{.dynlib: dllname,
|
||||||
importc: "glutVideoResizeGet".}
|
importc: "glutVideoResizeGet".}
|
||||||
proc glutSetupVideoResizing*(){.dynlib: dllname,
|
proc glutSetupVideoResizing*(){.dynlib: dllname,
|
||||||
importc: "glutSetupVideoResizing".}
|
importc: "glutSetupVideoResizing".}
|
||||||
proc glutStopVideoResizing*(){.dynlib: dllname, importc: "glutStopVideoResizing".}
|
proc glutStopVideoResizing*(){.dynlib: dllname, importc: "glutStopVideoResizing".}
|
||||||
proc glutVideoResize*(x, y, width, height: int){.dynlib: dllname,
|
proc glutVideoResize*(x, y, width, height: int){.dynlib: dllname,
|
||||||
importc: "glutVideoResize".}
|
importc: "glutVideoResize".}
|
||||||
proc glutVideoPan*(x, y, width, height: int){.dynlib: dllname,
|
proc glutVideoPan*(x, y, width, height: int){.dynlib: dllname,
|
||||||
importc: "glutVideoPan".}
|
importc: "glutVideoPan".}
|
||||||
# GLUT debugging sub-API.
|
# GLUT debugging sub-API.
|
||||||
proc glutReportErrors*(){.dynlib: dllname, importc: "glutReportErrors".}
|
proc glutReportErrors*(){.dynlib: dllname, importc: "glutReportErrors".}
|
||||||
# GLUT device control sub-API.
|
# GLUT device control sub-API.
|
||||||
proc glutIgnoreKeyRepeat*(ignore: int){.dynlib: dllname,
|
proc glutIgnoreKeyRepeat*(ignore: int){.dynlib: dllname,
|
||||||
importc: "glutIgnoreKeyRepeat".}
|
importc: "glutIgnoreKeyRepeat".}
|
||||||
proc glutSetKeyRepeat*(repeatMode: int){.dynlib: dllname,
|
proc glutSetKeyRepeat*(repeatMode: int){.dynlib: dllname,
|
||||||
importc: "glutSetKeyRepeat".}
|
importc: "glutSetKeyRepeat".}
|
||||||
proc glutForceJoystickFunc*(){.dynlib: dllname, importc: "glutForceJoystickFunc".}
|
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){.dynlib: dllname,
|
||||||
importc: "glutGameModeString".}
|
importc: "glutGameModeString".}
|
||||||
proc glutEnterGameMode*(): int{.dynlib: dllname, importc: "glutEnterGameMode".}
|
proc glutEnterGameMode*(): int{.dynlib: dllname, importc: "glutEnterGameMode".}
|
||||||
proc glutLeaveGameMode*(){.dynlib: dllname, importc: "glutLeaveGameMode".}
|
proc glutLeaveGameMode*(){.dynlib: dllname, importc: "glutLeaveGameMode".}
|
||||||
proc glutGameModeGet*(mode: TGLenum): int{.dynlib: dllname,
|
proc glutGameModeGet*(mode: TGLenum): int{.dynlib: dllname,
|
||||||
importc: "glutGameModeGet".}
|
importc: "glutGameModeGet".}
|
||||||
# implementation
|
# implementation
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue