X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=miniglut.h;h=666e5fc0458153e28e4a5105a1029be2432bdb00;hb=7c8e930593b4d1f36a4299f742fba7c26862ea79;hp=4f6a70e2bed727dd8032c2acf85eaaf9f3c2f531;hpb=74b32cf95068bf04d84d080dc48dc8e89707562f;p=miniglut diff --git a/miniglut.h b/miniglut.h index 4f6a70e..666e5fc 100644 --- a/miniglut.h +++ b/miniglut.h @@ -21,6 +21,14 @@ along with this program. If not, see . #ifdef _WIN32 #define WIN32_LEAN_AND_MEAN 1 #include + +#ifdef _MSC_VER +#pragma comment (lib, "opengl32") +#ifndef MINIGLUT_NO_WINMM +#pragma comment (lib, "winmm") +#endif +#endif /* MSVC */ + #endif #include @@ -79,10 +87,34 @@ enum { GLUT_ELAPSED_TIME }; +enum { + GLUT_KEY_HOME = 0xff50, + GLUT_KEY_LEFT = 0xff51, + GLUT_KEY_UP, + GLUT_KEY_RIGHT, + GLUT_KEY_DOWN, + GLUT_KEY_PAGE_UP, + GLUT_KEY_PAGE_DOWN, + GLUT_KEY_END = 0xff57, + GLUT_KEY_INSERT = 0xff63, + GLUT_KEY_F1 = 0xffbe, + GLUT_KEY_F2, + GLUT_KEY_F3, + GLUT_KEY_F4, + GLUT_KEY_F5, + GLUT_KEY_F6, + GLUT_KEY_F7, + GLUT_KEY_F8, + GLUT_KEY_F9, + GLUT_KEY_F10, + GLUT_KEY_F11, + GLUT_KEY_F12 +}; + /* returned by glutGetModifiers */ #define GLUT_ACTIVE_SHIFT 1 -#define GLUT_ACTIVE_CTRL 2 -#define GLUT_ACTIVE_ALT 4 +#define GLUT_ACTIVE_CTRL 4 +#define GLUT_ACTIVE_ALT 8 typedef void (*glut_cb)(void); typedef void (*glut_cb_reshape)(int x, int y); @@ -94,6 +126,9 @@ typedef void (*glut_cb_motion)(int x, int y); typedef void (*glut_cb_sbmotion)(int x, int y, int z); typedef void (*glut_cb_sbbutton)(int bn, int state); +#ifdef __cplusplus +extern "C" { +#endif void glutInit(int *argc, char **argv); void glutInitWindowPosition(int x, int y); @@ -128,19 +163,26 @@ void glutMotionFunc(glut_cb_motion func); void glutPassiveMotionFunc(glut_cb_motion func); void glutSpaceballMotionFunc(glut_cb_sbmotion func); void glutSpaceballRotateFunc(glut_cb_sbmotion func); -void glutSpaceballBittonFunc(glut_cb_sbbutton func); +void glutSpaceballButtonFunc(glut_cb_sbbutton func); int glutGet(unsigned int s); int glutGetModifiers(void); int glutExtensionSupported(char *ext); -void glutSolidSphere(float rad); -void glutWireSphere(float rad); +void glutSolidSphere(float rad, int slices, int stacks); +void glutWireSphere(float rad, int slices, int stacks); void glutSolidCube(float sz); void glutWireCube(float sz); -void glutSolidTorus(float inner_rad, float outer_rad, float sides, float rings); -void glutWireTorus(float inner_rad, float outer_rad, float sides, float rings); +void glutSolidCone(float base, float height, int slices, int stacks); +void glutWireCone(float base, float height, int slices, int stacks); +void glutSolidCylinder(float rad, float height, int slices, int stacks); +void glutSolidTorus(float inner_rad, float outer_rad, int sides, int rings); +void glutWireTorus(float inner_rad, float outer_rad, int sides, int rings); void glutSolidTeapot(float size); void glutWireTeapot(float size); +#ifdef __cplusplus +} /* extern "C" */ +#endif + #endif /* MINIGLUT_H_ */