ChangeLog 159 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775
  1. 2012-01-09 John F. Fay <johnffay@cybertron.com>
  2. * Released freeglut 2.8.0 a few days ago and am restarting the ChangeLog
  3. * Added 'cmake' support
  4. * Moved source files from 'src' directory to 'src/Common' directory with
  5. an eye to moving platform-specific code to separate files in separate
  6. directories
  7. 2009-08-10 Sven Panne <sven.panne@aedion.de>
  8. * include/GL/freeglut_ext.h,include/GL/freeglut_std.h,src/freeglut_ext.c,
  9. src/freeglut_init.c,src/freeglut_internal.h,src/freeglut_state.c,
  10. src/freeglut_window.c,src/freeglutdll.def: Added support for sRGB
  11. framebuffers via the GLX_ARB_framebuffer_sRGB / WGL_ARB_framebuffer_sRGB
  12. extensions. Added support for context profiles via the new parts of the
  13. GLX_ARB_create_context / WGL_ARB_create_context extensions.
  14. 2009-06-11 Paul Blew <paul.blew@northgatearinso.com>
  15. * replaced broken IDE based OpenWatcom build with a makefile based one
  16. 2009-06-11 Sven Panne <sven.panne@aedion.de>
  17. * include/GL/freeglut_std.h: Disable the ATEXIT_HACK for Watcom, their
  18. "exit" function has a different calling convention, leading to
  19. compilation errors.
  20. 2009-05-24 Sven Panne <sven.panne@aedion.de>
  21. * freeglut_static_vs2008.vcproj,freeglut_vs2008.vcproj,
  22. freeglut_vs2008.sln,freeglut_vs2008_static.sln: Move all files related
  23. to Visual Studio 2008 into 2 directories, one for the normal DLL
  24. build, and one for the static build. We should do this for other IDEs,
  25. too.
  26. 2009-05-22 Sven Panne <sven.panne@aedion.de>
  27. * include/GL/freeglut_std.h: Avoid warnings when the ATEXIT_HACK is used
  28. with GCC, making the hack even uglier.
  29. * include/GL/freeglut_std.h,src/freeglut_init.c,src/freeglut_internal.h,
  30. src/freeglut_menu.c,src/freeglut_window.c,src/freeglutdll.def: Added the
  31. ugly ATEXIT_HACK from GLUT 3.7, making freeglut binary compatible with the
  32. GLUT DLLs out in the wild.
  33. * src/freeglutdll.def: Removed obsolete lines. Fixed version number.
  34. * freeglut_vs2008.vcproj: Use our module definition file, so we get
  35. undecorated names in the resulting DLL, just like the classic GLUT DLL
  36. from Nate Robins.
  37. 2009-04-05 Sven Panne <sven.panne@aedion.de>
  38. * Makefile.am: Added more project/workspace/... files to distribution.
  39. * .cvsignore,doc/.cvsignore,include/.cvsignore,include/GL/.cvsignore,
  40. progs/.cvsignore,progs/demos/.cvsignore,
  41. progs/demos/CallbackMaker/.cvsignore,progs/demos/Fractals/.cvsignore,
  42. progs/demos/Fractals_random/.cvsignore,progs/demos/Lorenz/.cvsignore,
  43. progs/demos/One/.cvsignore,progs/demos/shapes/.cvsignore,
  44. src/.cvsignore: Removed remnants of CVS.
  45. 2009-03-30 Sven Panne <sven.panne@aedion.de>
  46. * progs/demos/smooth_opengl3/smooth_opengl3.c: Make the example fully
  47. OpenGL-3.1-compliant.
  48. 2009-03-27 Sven Panne <sven.panne@aedion.de>
  49. * progs/demos/smooth_opengl3/smooth_opengl3.c: Make Visual C happy by
  50. including stddef.h and explicitly marking some literals as float.
  51. 2009-03-26 Sven Panne <sven.panne@aedion.de>
  52. * src/freeglut_init.c,src/freeglut_input_devices.c: Unbreak the build:
  53. C++ style comments are not allowed in ISO C90
  54. 2009-03-19 John F. Fay <john.fay.ctr@eglin.af.mil>
  55. * src/freeglut_input_devices.c: Fixing "freeglut_input_devices.c" for
  56. MSVS2005 and later per e-mail from Diederick Niehorster dated Thu
  57. 3/19/2009 6:57 AM
  58. 2009-03-17 John F. Fay <john.fay.ctr@eglin.af.mil>
  59. * src/freeglut_init.c, src/freeglut_input_devices.c: Removing some build
  60. warnings from deprecated functions for VS2008 per e-mail from
  61. Diederick Niehorster dated Tue 3/10/2009
  62. * freeglut_static_vs2008.vcproj, freeglut_vs2008.sln,
  63. freeglut_vs2008.vcproj,
  64. progs/demos/CallbackMaker/CallbackMakerStatic_vs2008.vcproj,
  65. progs/demos/CallbackMaker/CallbackMaker_vs2008.vcproj,
  66. progs/demos/Fractals/FractalsStatic_vs2008.vcproj,
  67. progs/demos/Fractals/Fractals_vs2008.vcproj,
  68. progs/demos/Fractals_random/Fractals_randomStatic_vs2008.vcproj,
  69. progs/demos/Fractals_random/Fractals_random_vs2008.vcproj,
  70. progs/demos/Lorenz/lorenzStatic_vs2008.vcproj,
  71. progs/demos/Lorenz/lorenz_vs2008.vcproj,
  72. progs/demos/One/oneStatic_vs2008.vcproj,
  73. progs/demos/One/one_vs2008.vcproj, progs/demos/demos_vs2008.sln,
  74. progs/demos/shapes/shapesStatic_vs2008.vcproj,
  75. progs/demos/shapes/shapes_vs2008.vcproj,
  76. progs/demos/smooth_opengl3/smooth_opengl3Static_vs2008.vcproj,
  77. progs/demos/smooth_opengl3/smooth_opengl3_vs2008.vcproj: Adding Visual
  78. Studio 2008 solution and project files
  79. 2009-03-16 Sven Panne <sven.panne@aedion.de>
  80. * src/freeglut_init.c,src/freeglut_window.c: Set the default number of
  81. samples per pixel to 4 and actually use the value set with
  82. glutSetOption(GLUT_MULTISAMPLE,...) in Windows code. Previously the
  83. Windows code used a hardwired value of 4 and the GLX code had a
  84. default of 0, neither made much sense. Similarly, set the default
  85. number of auxiliary buffers to 1 and use that value when GLUT_AUX is
  86. used. Note: There latter token has the same value as GLUT_AUX1, and
  87. for historical reasons we seem to have 2 APIs to set the number of
  88. auxiliary buffers: Explicitly using GLUT_AUX1 ... GLUT_AUX4, and using
  89. a combination of GLUT_AUX with glutSetOption. The default of 1 ensures
  90. consistent behaviour in both cases.
  91. * src/freeglut_state.c: Added GLUT_AUX and GLUT_MULTISAMPLE as possible
  92. parameters for glutGet, making things more symmetric with
  93. glutSetOption.
  94. * src/freeglutdll.def: Added missing API entries.
  95. 2009-03-10 John F. Fay <john.fay.ctr@eglin.af.mil>
  96. * progs/demos/demos.dsw: Adding the "smooth_opengl3" demo
  97. 2009-03-09 John F. Fay <john.fay.ctr@eglin.af.mil>
  98. * include/GL/freeglut_std.h: Making the definition of
  99. "WIN32_LEAN_AND_MEAN" conditional to enhance compatibility with GLEW
  100. per suggestion by Diederick C. Niehorster in e-mail dated Mon 3/9/2009
  101. 8:06 AM
  102. * progs/demos/Fractals/fractals.c: Setting the "fractals" demo initial
  103. number of levels to 4 per suggestion from Diederick C. Niehorster
  104. [diederick@niehorster.eu] in e-mail dated Mon 3/9/2009 5:29 AM
  105. 2009-03-01 John F. Fay <john.fay.ctr@eglin.af.mil>
  106. * progs/demos/CallbackMaker/CallbackMaker.c,
  107. progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c: Fixing
  108. Microsoft compatibility with the new "vsnprintf" by putting an
  109. underscore in front of it if WIN32 is defined but __CYGWIN__ is not
  110. 2009-03-01 Sven Panne <sven.panne@aedion.de>
  111. * configure.ac: We do not depend on GLU anymore
  112. * README.win32: Added notes for building under Cygwin
  113. * src/Makefile.am: To build shared libraries on Windows, one has to
  114. declare explicitly that there are no undefined symbols during linking.
  115. No idea why, but this seems to be the only way to enable this on
  116. Cygwin via -mno-cygwin. Hopefully this won't cause problems on other
  117. platforms (which has to be tested).
  118. * progs/demos/smooth_opengl3/smooth_opengl3.c: Windows fun again: Use
  119. the correct calling convention for OpenGL extension entries.
  120. 2009-02-28 Sven Panne <sven.panne@aedion.de>
  121. * progs/demos/smooth_opengl3/smooth_opengl3.c: When -mno-cygwin is used,
  122. we get ancient GL headers, so be a bit more conservative.
  123. * progs/demos/Fractals_random/fractals_random.c,
  124. progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c:
  125. _CrtDumpMemoryLeaks and its header are Microsoft-specific, e.g. Cygwin
  126. doesn't provide them.
  127. * src/freeglut_window.c: Do not try to destroy a GLX context when there
  128. is none, e.g. when glXCreateContextAttribsARB is not there.
  129. * src/freeglut_joystick.c: Use snprintf or _snprintf instead of the
  130. potentially dangerous sprintf to avoid warnings.
  131. NOTE: Due to excessive use of #ifdefs, the joystick code is on the
  132. border of being unmaintainable! I could only check that it compiles
  133. cleanly on my Linux box. Others should test this on their platforms
  134. (Windows, Mac OS X, *BSD) to make sure that nothing has been broken.
  135. * progs/demos/CallbackMaker/CallbackMaker.c,
  136. progs/demos/Lorenz/lorenz.c, progs/demos/shapes/shapes.c: Use
  137. vsnprintf instead of the potentially dangerous sprintf to avoid
  138. warnings. Using snprintf directly would be a little bit more tricky,
  139. because once again Microsoft decided to avoid followind standards and
  140. provide _snprintf instead. We could use this, too, but this would
  141. require an additional autoconf check, which I'd like to avoid, if
  142. possible.
  143. Note: If VS *still* issues warnings, but this time about vsnprintf,
  144. somebody should add some pragmas or whatever is needed to shut up that
  145. warning, it would be silly.
  146. * progs/demos/Lorenz/lorenz.c: Position the distance message closer to
  147. the middle of the window, it has been far, far off to the upper right.
  148. * src/freeglut_internal.h: Synched version number with configure.ac. We
  149. should better remove this redundancy and calculate this from
  150. configure.ac directly.
  151. 2009-02-19 John F. Fay <john.fay.ctr@eglin.af.mil>
  152. * progs/demos/smooth_opengl3/smooth_opengl3.dsp,
  153. progs/demos/smooth_opengl3/smooth_opengl3Static.dsp: Fixing the
  154. DOS/Linux line ending problems in the progs/demos/smooth_opengl3
  155. project files
  156. 2009-02-18 John F. Fay <john.fay.ctr@eglin.af.mil>
  157. * src/freeglut_window.c: Fixing a build error caused by a variable
  158. declaration being out of place
  159. 2009-02-15 Sven Panne <sven.panne@aedion.de>
  160. * progs/demos/smooth_opengl3/smooth_opengl3.c: Final changes to make the
  161. example fully OpenGL-3.0-compliant:
  162. * Use vertex attribute arrays.
  163. * Use our own projection matrix.
  164. * Do not use deprecated vertex/fragment shader variables.
  165. * progs/demos/smooth_opengl3/smooth_opengl3.c: Use GLSL shaders (still
  166. 1.20, though). Dump GL info.
  167. * progs/demos/smooth_opengl3/smooth_opengl3.c: Added a commandline
  168. option for 'classic' contexts. Aesthetic changes.
  169. * progs/demos/smooth_opengl3/smooth_opengl3.c: Use VBOs in new example.
  170. Added a few comments.
  171. 2009-02-14 Sven Panne <sven.panne@aedion.de>
  172. * configure.ac, progs/demos/Makefile.am, progs/demos/smooth_opengl3,
  173. progs/demos/smooth_opengl3/Makefile.am,
  174. progs/demos/smooth_opengl3/smooth_opengl3.c,
  175. progs/demos/smooth_opengl3/smooth_opengl3.dsp,
  176. progs/demos/smooth_opengl3/smooth_opengl3Static.dsp: Initial version
  177. of a fully OpenGL-3.0-compliant of the famous smooth.c from the Red
  178. Book. What has been done already:
  179. * Explicitly request a forward-compatible 3.0 context
  180. * Report GL errors, if any, at a few crucial places
  181. * Replaced gluOrtho2D with a home-grown matrix + glLoadMatrixf
  182. What remains to be done:
  183. * Use vertex shaders and fragment shaders
  184. * Use vertex buffer objects
  185. 2009-02-13 Sven Panne <sven.panne@aedion.de>
  186. * README: Mention autogen.sh
  187. * src/freeglut_window.c: Synchronized WGL behavior with GLX
  188. implementation: Do not call the new context creation API when it is
  189. not required. Fixing a bug in a previous commit on the way... :-}
  190. * src/freeglut_internal.h, src/freeglut_window.c: More refactorings:
  191. Removed useless return value. Simplified control structures even more.
  192. * src/freeglut_window.c: Refactoring only (replace nested conditionals
  193. with guard clauses), making the normal path of execution much clearer.
  194. * configure.ac: We have added some API entries, so we have to update
  195. library version information conforming to
  196. http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
  197. * autogen.sh, configure.ac: Avoid CR\LF vs. LF troubles when using
  198. TortoiseSVN plus Cygwin.
  199. * .: Ignore config.lt, too. It seems to be generated by recent
  200. autotools.
  201. 2009-02-13 John F. Fay <john.fay.ctr@eglin.af.mil>
  202. * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
  203. Adding OpenGL 3.0 context detection for Windows per e-mail from Paul
  204. Martz dated Thu 2/12/2009 9:03 AM (more or less)
  205. 2009-02-03 John F. Fay <john.fay.ctr@eglin.af.mil>
  206. * README: Adding some instructions about building on a *nix platform to
  207. the 'README' file
  208. * include/GL/freeglut_ext.h, src/freeglut_main.c: Removing some errant
  209. tabs, fixing ticket #2137721, and adding special-key capability to
  210. recognizing the NumLock, Delete, and keypad '5' keys
  211. * src/freeglut_joystick.c, src/freeglut_main.c: A further response to
  212. bug [ 1804696 ] Warnings when building on OpenSolaris -- per comment
  213. by Nigel Stewart on that bug report
  214. 2009-02-02 John F. Fay <john.fay.ctr@eglin.af.mil>
  215. * src/freeglut_internal.h, src/freeglut_joystick.c: Fixing bug [ 1804696
  216. ] Warnings when building on OpenSolaris as updated 2/2/09 by Nigel
  217. Stewart
  218. 2008-11-20 Sven Panne <sven.panne@aedion.de>
  219. * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Yet
  220. another try to make the font definitions compile on all platforms.
  221. 2008-11-17 John F. Fay <john.fay.ctr@eglin.af.mil>
  222. * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Allowing
  223. "freeglut" to compile without errors under *nix. Before this, there
  224. were problems with conflicting definitions of the GLUT font
  225. definitions.
  226. 2008-11-06 Sven Panne <sven.panne@aedion.de>
  227. * src/freeglut_main.c: Ooops, forgot one file in the previous commit
  228. (fix for "--without-x").
  229. * configure.ac: Use autoconf to detect gettimeofday instead of broken
  230. #ifdef.
  231. Note: freeglut compiles under Cygwin now, even when "--without-x" is
  232. used for configuration.
  233. * configure.ac: We need to link against winmm under Cygwin when
  234. --without-x is used to get timeBeginPeriod, timeEndPeriod, joyGetPosEx
  235. and joyGetDevCaps.
  236. * src/freeglut_window.c: Fixed first parameter of CreateWindow call,
  237. used for multisampling on Windows. It compiles, but it is otherwise
  238. untested.
  239. 2008-11-05 Sven Panne <sven.panne@aedion.de>
  240. * src/freeglut_misc.c: Be conservative about the presence of
  241. GL_TABLE_TOO_LARGE.
  242. * src/freeglut_glutfont_definitions.c, src/freeglut_stroke_mono_roman.c,
  243. src/freeglut_stroke_roman.c: freeglut_internal.h needs some GL types,
  244. but it is not self-contained. TODO: Move freeglut.h #include into
  245. freeglut_internal.h itself?
  246. * src/freeglut_window.c: Removed the annoying "Unable to create direct
  247. context rendering..." warning, it served no real purpose, and on some
  248. platforms there simply is no such thing as a direct context.
  249. * progs/demos/CallbackMaker, progs/demos/Fractals,
  250. progs/demos/Fractals_random, progs/demos/Lorenz, progs/demos/One,
  251. progs/demos/shapes: Ignore *.exe
  252. * src/freeglut_ext.c: Handle new glutInitContext* API entries in
  253. glutGetProcAddress
  254. * src/freeglut_internal.h: Make freeglut compile under Cygwin, which has
  255. an ancient GLX header
  256. 2008-11-02 Sven Panne <sven.panne@aedion.de>
  257. * include/GL/freeglut_ext.h, src/freeglut_init.c,
  258. src/freeglut_internal.h, src/freeglut_state.c, src/freeglut_window.c:
  259. Added OpenGL 3.0 context creation API entries
  260. glutInitContextVersion, glutInitContextFlags
  261. and their related constants
  262. GLUT_INIT_MAJOR_VERSION GLUT_INIT_MINOR_VERSION GLUT_INIT_FLAGS
  263. GLUT_DEBUG GLUT_FORWARD_COMPATIBLE
  264. Note that this works with GLX only currently, the glutInitContext* API
  265. entries have no effect for WGL yet.
  266. TODO: Centralize the context creation code for WGL (the harder part)
  267. and use the new wglCreateContextAttribsARB API entry (the easy part,
  268. re-use most of the GLX code).
  269. * src/freeglut_window.c: Refactored GLX context creation into a single
  270. function, centralizing things to be changed for OpenGL 3.0 context
  271. creation and removing some cut-n-paste.
  272. * src/freeglut_ext.c, src/freeglut_internal.h: Make a
  273. wgl/glXGetProcAddress abstraction available internally. We will need
  274. this to get the new context creation function.
  275. * src/freeglut_misc.c: Do not depend on GLU, it will vanish in the
  276. future, at least in its current form.
  277. * src/freeglut_internal.h: Removed superfluous #includes.
  278. * configure.ac: Fix for bug #1709675 ("probably not be so
  279. ISO-conformant"): The C compiler flag -Werror is not used by default
  280. anymore, a separate configure flag --enable-warnings-as-errors has
  281. been introduced for this purpose, which is off by default.
  282. * configure.ac: Added AM_PROG_CC_C_O to configure.ac, removing a warning
  283. during autogen.sh. This flag seems to be necessary for per-target
  284. flags (used in demo programs) nowadays.
  285. 2008-07-21 John F. Fay <john.fay.ctr@eglin.af.mil>
  286. * configure.ac, src/Makefile.am: Implementing a patch from Jocelyn
  287. Frechot (thank you, Jocelyn) that "should enable the XInput extension
  288. management with the autotools." See e-mail of Sun 7/20/2008 12:01 PM.
  289. 2008-07-10 John F. Fay <john.fay.ctr@eglin.af.mil>
  290. * src/freeglut_ext.c: Adding "glutExit" to the functions in
  291. "fghGetProcAddress" in accordance with an e-mail from Jocelyn Frechot
  292. dated Tue 7/8/2008 12:26 PM
  293. 2008-04-05 John F. Fay <john.fay.ctr@eglin.af.mil>
  294. * src/freeglut_main.c: Adding "SC_MONITORPOWER" and other new options to
  295. the "wParam" option list (e-mail from Ron Larkin, 3/17/08, 11:00 AM)
  296. 2007-12-02 John F. Fay <john.fay.ctr@eglin.af.mil>
  297. * include/GL/freeglut_ext.h, src/freeglut_display.c, src/freeglut_ext.c,
  298. src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
  299. src/freeglut_state.c, src/freeglut_window.c: Adding
  300. "glutFullScreenToggle" for X11 -- still needs implementation in
  301. Windows (e-mail by Jocelyn Frechot, Sun 11/25/2007 11:29 AM)
  302. 2007-12-01 John F. Fay <john.fay.ctr@eglin.af.mil>
  303. * src/freeglut_window.c: Fixing the window position for asynchronous X11
  304. implementations (e-mail by Jocelyn Frechot, Sun 11/25/2007 11:29 AM)
  305. 2007-11-26 John F. Fay <john.fay.ctr@eglin.af.mil>
  306. * progs/demos/Fractals/fractals.c: Making a demo program that uses
  307. "glutMainLoopEvent"
  308. 2007-11-12 John F. Fay <john.fay.ctr@eglin.af.mil>
  309. * include/GL/freeglut_ext.h, src/freeglut_ext.c, src/freeglut_init.c,
  310. src/freeglut_internal.h, src/freeglut_state.c,
  311. src/freeglut_structure.c, src/freeglut_window.c: Implementing Jocelyn
  312. Frechot's changes -- see e-mail of Thursday, 11/8/2007 9:12 AM.
  313. 2007-10-02 John F. Fay <john.fay.ctr@eglin.af.mil>
  314. * src/freeglut_joystick.c: Removing more Win64 build warnings from
  315. joystick code
  316. 2007-09-30 John F. Fay <john.fay.ctr@eglin.af.mil>
  317. * src/freeglut_main.c: Removing the final compiler warning when building
  318. on Win75 -- thank you, Antonio Mattos.
  319. 2007-09-29 John F. Fay <john.fay.ctr@eglin.af.mil>
  320. * src/freeglut_cursor.c: Removing the remaining compiler warnings from
  321. the cursor code, thanks to Antonio Mattos of Brazil. The double
  322. type-casting is needed because of a bug in the new MSVC; there is a
  323. discussion on the web on this subject.
  324. 2007-09-25 John F. Fay <john.fay.ctr@eglin.af.mil>
  325. * src/freeglut_cursor.c: Changing the cursor definition macro for newer
  326. versions of MSVC -- thanks to "Mattos" of Brazil
  327. * src/freeglut_window.c: More changes for Jocelyn Frechot's
  328. multisampling changes. The library builds now. It still needs some
  329. testing with sample cases under X11.
  330. 2007-09-23 John F. Fay <john.fay.ctr@eglin.af.mil>
  331. * src/freeglut_window.c: Fixing a remaining bug in the multisampling
  332. change ... there may be more ...
  333. 2007-09-22 John F. Fay <john.fay.ctr@eglin.af.mil>
  334. * src/freeglut_internal.h, src/freeglut_state.c,
  335. src/freeglut_structure.c, src/freeglut_window.c: Putting in Jocelyn
  336. Frechot's X11 visual context changes. THIS WILL BREAK THE BUILD as I
  337. am unable to test it on a Linux machine here. Somebody please test it
  338. for me.
  339. 2007-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
  340. * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_misc.c:
  341. Removing compiler warnings in MSVC 2005 build
  342. * include/GL/freeglut_ext.h, src/freeglut_init.c: Implementing Larry
  343. Ramey's "glutExit" feature (see e-mails from him on 11/9/05, 6/28/06)
  344. 2007-09-19 John F. Fay <john.fay.ctr@eglin.af.mil>
  345. * include/GL/freeglut_std.h, src/freeglut_window.c: Implementing first
  346. part of Windows version of "GLUT_CAPTIONLESS" and "GLUT_BORDERLESS"
  347. per feature request "[ 1197016 ] need GLUT_CAPTIONLESS window option".
  348. Needs more work; menus are slightly mispositioned, X11 version does
  349. not support it, banner appears at beginning but disappears on window
  350. resize. But this is a start.
  351. * src/freeglut_main.c: Fixing Linux key-repeat mode bug reported in "[
  352. 1796845 ] Keyboard events are lost when key repeat is enabled."
  353. * src/freeglut_joystick.c: Fixing a build error on SuSE described in bug
  354. report "[ 1792047 ] freeglut_joystick.c error"
  355. 2007-09-18 John F. Fay <john.fay.ctr@eglin.af.mil>
  356. * src/freeglut_window.c: Implementing feature request "[ 947118 ] Popup
  357. menu is hidden under the TOPMOST window"
  358. * src/freeglut_menu.c: Adding Takeshi Nishimura's Feature Request "[
  359. 1045202 ] Cope with a menu with many items" -- sorry it took so long.
  360. * src/freeglut_window.c: Addressing Feature Request #1307049 that
  361. "freeglut" should return 0 if "glutGetWindow" is called without a
  362. prior call to "glutInit", rather than terminating on error.
  363. * freeglut.dep, freeglut.mak, freeglut_static.dep, freeglut_static.mak:
  364. Added Windows "nmake" Makefiles and dependency files for the two
  365. "freeglut" projects in accordance with Feature Request #1454543
  366. 2007-09-16 John F. Fay <john.fay.ctr@eglin.af.mil>
  367. * src/freeglut_window.c: Fixing bug #1688954, submitted in Marcy '07. I
  368. changed "FREEGLUT" to _T("FREEGLUT") and nothing changed on my Windows
  369. XP system. If this will allow it to work on Vista, then in it goes.
  370. * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c,
  371. src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
  372. Fixing bug report #1052151 from October 2004.
  373. 2006-11-28 John F. Fay <john.fay.ctr@eglin.af.mil>
  374. * FrequentlyAskedQuestions: Adding a Frequently Asked Questions file
  375. 2006-09-28 Joe Krahn <krahn@niehs.nih.gov>
  376. * src/freeglut_state.c, src/freeglut_window.c: Removed incorrect comment
  377. about internal WGL/ARB definitions. I actually had put those comments
  378. in because I had meant to go back and re-check the WGL extension. But,
  379. maybe locally defined extensions should be kept in a separate include
  380. file?
  381. 2006-09-27 Joe Krahn <krahn@niehs.nih.gov>
  382. * freeglut.dsp, freeglut.dsw, freeglut_static.dsp,
  383. progs/demos/CallbackMaker/CallbackMaker.dsp,
  384. progs/demos/CallbackMaker/CallbackMakerStatic.dsp,
  385. progs/demos/Fractals/Fractals.dsp,
  386. progs/demos/Fractals/FractalsStatic.dsp,
  387. progs/demos/Fractals_random/Fractals_random.dsp,
  388. progs/demos/Fractals_random/Fractals_randomStatic.dsp,
  389. progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
  390. progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
  391. progs/demos/demos.dsw, progs/demos/shapes/shapes.dsp,
  392. progs/demos/shapes/shapesStatic.dsp: Undo svn:eol-style=CR/LF for MSVC
  393. project files.
  394. 2006-09-26 Joe Krahn <krahn@niehs.nih.gov>
  395. * include/GL/freeglut_std.h, src/freeglut_joystick.c,
  396. src/freeglut_state.c, src/freeglut_window.c: Added
  397. FREEGLUT_LIB_PRAGMAS to control MS library pragmas, and fixed NOMINMAX
  398. define.
  399. * freeglut.dsp, freeglut.dsw, freeglut_static.dsp,
  400. progs/demos/CallbackMaker/CallbackMaker.dsp,
  401. progs/demos/CallbackMaker/CallbackMakerStatic.dsp,
  402. progs/demos/Fractals/Fractals.dsp,
  403. progs/demos/Fractals/FractalsStatic.dsp,
  404. progs/demos/Fractals_random/Fractals_random.dsp,
  405. progs/demos/Fractals_random/Fractals_randomStatic.dsp,
  406. progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
  407. progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
  408. progs/demos/demos.dsw, progs/demos/shapes/shapes.dsp,
  409. progs/demos/shapes/shapesStatic.dsp: Added svn:eol-style=CRLF property
  410. to MSVC project/workspace files.
  411. 2006-09-25 John F. Fay <john.fay.ctr@eglin.af.mil>
  412. * src/freeglut_window.c: Fixing a typo bug in the display mode checking
  413. (removing multisampling if it is not supported)
  414. 2006-09-25 Joe Krahn <krahn@niehs.nih.gov>
  415. * src/freeglut_state.c: Fixed a small mistake in the previous commit for
  416. glutGet.
  417. * src/freeglut_state.c: Added proper support for number of mouse buttons
  418. in X11, and a keyboard in Windows CE. Also, several glutGet results
  419. returning TRUE/FALSE were changed to 1/0, because the actual return
  420. type is int (although they are technically the same in practice).
  421. 2006-09-24 Joe Krahn <krahn@niehs.nih.gov>
  422. * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c:
  423. Converted Time counter to a uniform unsigned long it value. The
  424. initialized flag was redundant with the main Initialized flag, and
  425. conversion of timeval to milliseconds in POSIX makes the code cleaner.
  426. Timeval has a longer range, but the time value is already limited by
  427. the GLUT API.
  428. 2006-09-23 Joe Krahn <krahn@niehs.nih.gov>
  429. * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c:
  430. Removed WindowState.IsGameMode; it is redundant with
  431. Structure.GameModeWindow
  432. 2006-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
  433. * src/freeglut_state.c, src/freeglut_window.c: Adding support for the
  434. multisampling query per bug report 1274193
  435. * ChangeLog, src/freeglut_main.c: Fixing Bug #1398196 - Windows message
  436. argument
  437. 2006-09-21 Joe Krahn <krahn@niehs.nih.gov>
  438. * src/freeglut_cursor.c: test (comment edited)
  439. 2006-09-21 John F. Fay <john.fay.ctr@eglin.af.mil>
  440. * ChangeLog, src/freeglut_init.c: Adding temporary fix to
  441. "glutInitDisplayString" to ignore numerical assignments
  442. * ChangeLog, src/freeglut_window.c: Adding multisampling to *nix and
  443. Windows; also some other pixel format enhancements to Windows
  444. * ChangeLog, progs/demos/CallbackMaker/CallbackMaker.c: Enhancing the
  445. "CallbackMaker" demo
  446. * ChangeLog, src/freeglut_cursor.c, src/freeglut_display.c,
  447. src/freeglut_ext.c, src/freeglut_gamemode.c,
  448. src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
  449. src/freeglut_input_devices.c, src/freeglut_internal.h,
  450. src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
  451. src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_teapot.c,
  452. src/freeglut_teapot_data.h, src/freeglut_window.c: Joe Krahn's changes
  453. to "TARGET_HOST" defined constants
  454. * ChangeLog, src/freeglut_internal.h, src/freeglut_joystick.c,
  455. src/freeglut_main.c, src/freeglut_window.c: Fixing two minor bugs,
  456. adding comments
  457. * ChangeLog, src/freeglut_gamemode.c, src/freeglut_internal.h,
  458. src/freeglut_menu.c, src/freeglut_state.c, src/freeglut_structure.c:
  459. Changing "GameMode" to "GameModeWindow ... and testing whether I can
  460. get to SVN directly
  461. 2006-08-05 Sven Panne <sven.panne@aedion.de>
  462. * ChangeLog, progs/demos/Fractals/fractals.c,
  463. progs/demos/Fractals_random/fractals_random.c,
  464. progs/demos/Lorenz/lorenz.c: Check fgets for return value to avoid
  465. warnings.
  466. * freeglut.spec: Fixed typo in date
  467. * freeglut.spec: Updated build requirements for SuSE 10.1
  468. 2005-10-12 Sven Panne <sven.panne@aedion.de>
  469. * ., .cvsignore: Ooops, forgot to ingore INSTALL and install-sh in
  470. previous commit...
  471. * ChangeLog, include/GL/freeglut_ext.h, include/GL/freeglut_std.h: Moved
  472. GLUT_INIT_STATE to <GL/freeglut_ext.h>, it is not part of the original
  473. GLUT.
  474. * ., .cvsignore, ChangeLog, INSTALL, autogen.sh, install-sh,
  475. mkinstalldirs: Simply use autoreconf in autogen.sh, it is much simpler
  476. and the recommended way in the autotools documentation. Removed
  477. INSTALL, install-sh and mkinstalldirs, they are either unused or
  478. automatically generated by autogen.sh.
  479. 2005-10-06 John F. Fay <john.fay.ctr@eglin.af.mil>
  480. * include/GL/freeglut_ext.h: Allowing compilation of Windows version by
  481. removing DLL decorations from deprecated joystick interface extensions
  482. * src/freeglut_window.c: Implementing Stereo in Windows
  483. 2005-09-07 Sven Panne <sven.panne@aedion.de>
  484. * ChangeLog, src/Makefile.am: Use target-specific *_CPPFLAGS, not the
  485. deprecated INCLUDES.
  486. * ChangeLog, autogen.sh: Use -Wall for automake to catch some buglets,
  487. deprecated stuff, etc.
  488. 2005-09-04 Sven Panne <sven.panne@aedion.de>
  489. * ChangeLog, autogen.sh: Silenced autogen.sh
  490. 2005-08-31 John F. Fay <john.fay.ctr@eglin.af.mil>
  491. * freeglut.rc, freeglut.tgt, freeglut.wpj, freeglut_static.tgt:
  492. Necessary files for Open Watcom support
  493. * src/freeglut_internal.h: Adding Open Watcom support
  494. * ChangeLog, README.win32: Documenting support for Open Watcom
  495. * include/GL/freeglut_std.h: Implementing WATCOM support
  496. 2005-07-14 Sven Panne <sven.panne@aedion.de>
  497. * src/freeglut_input_devices.c: Nuked useless bit-fiddling, pointed out
  498. by John. I was a bit too quick to cut-n-paste the cfmakeraw()
  499. definition into our code... :-]
  500. * ChangeLog, src/freeglutdll.def: Synched the DLL definitions with
  501. reality.
  502. * ChangeLog, src/freeglut_cursor.c: Fixed the GLUT_CURSOR_INHERIT logic
  503. once again...
  504. Note that this commit is untested, but at least it looks better than
  505. before. We really a need a cursor test program.
  506. 2005-07-13 John F. Fay <john.fay.ctr@eglin.af.mil>
  507. * src/freeglut_cursor.c: Fixing a cursor bug in \"GLUT_CURSOR_INHERIT\"
  508. 2005-07-13 Sven Panne <sven.panne@aedion.de>
  509. * ChangeLog, configure.ac: Improve autoconf magic: To detect headers
  510. like GL/gl.h, it might be necessary to temporarily use the X11 flags
  511. found by AC_PATH_XTRA.
  512. * ChangeLog, src/freeglut_joystick.c: Avoid gcc warnings for some
  513. joystick code (e.g. on Solaris).
  514. * src/freeglut_input_devices.c: Tiny cleanup only...
  515. * ChangeLog, src/freeglut_input_devices.c: Solaris doesn't have
  516. cfmakeraw, but it is only a convenience function for some
  517. bit-fiddling, anyway.
  518. 2005-07-08 Sven Panne <sven.panne@aedion.de>
  519. * ChangeLog, include/GL/freeglut_ext.h, src/freeglut_ext.c,
  520. src/freeglut_internal.h: Made all the "glutJoystickXXX" functions part
  521. of the freeglut extensions. If this is not what we want, we can easily
  522. #ifdef this away again...
  523. * ChangeLog, src/freeglut_geometry.c: Made a few global arrays "static",
  524. avoiding namespace pollution. The only externally visible symbols
  525. should either be from the GLUT API ("glutXXX") or internal freeglut
  526. entities ("fgYYY"). Reformatted things a bit on the way.
  527. 2005-07-06 Sven Panne <sven.panne@aedion.de>
  528. * ChangeLog, src/freeglut_main.c: We only have pending redisplay
  529. callbacks when the window wants to be redisplayed *and* it is visible.
  530. Otherwise we won't redraw, anyway, and immediately discover that
  531. there's still something to do, etc. etc., leading to 100% CPU load.
  532. * ChangeLog, src/freeglut_main.c: Removed redundant code.
  533. * ChangeLog, src/freeglut_init.c: X11 only: Destroy the global menu
  534. rendering context when deinitializing. The visual/context handling for
  535. menus is still rather obscure, though...
  536. * progs/demos/Lorenz/lorenz.c: Reverting previous commit: %lf is a valid
  537. format specifier for the scanf familiy of functions only, not for the
  538. printf family.
  539. 2005-07-05 John F. Fay <john.fay.ctr@eglin.af.mil>
  540. * src/freeglut_main.c: Implementing the new menu context variable names
  541. in Windows ...
  542. * src/freeglut_internal.h: Changing a comment ... nothing big.
  543. * progs/demos/Lorenz/lorenz.c: Fixing output formats ... nothing big
  544. 2005-07-05 Sven Panne <sven.panne@aedion.de>
  545. * ChangeLog, src/freeglut_state.c, src/freeglut_window.c: X11 only: Free
  546. XVisualInfo structures when they are not needed anymore, fixing a
  547. space leak. Not perfect for menus yet...
  548. * src/freeglut_internal.h, src/freeglut_window.c: Tiny change to make
  549. grep's life easier: Rename the fields of the menu context. Not really
  550. worth a ChangeLog entry...
  551. IMHO it looks like we could kill the whole MenuContext stuff, it is of
  552. no use currently and some things look strange, like e.g. having a
  553. context per menu. The latter is not OK when a menu is attached to
  554. multiple windows.
  555. 2005-07-02 Sven Panne <sven.panne@aedion.de>
  556. * ChangeLog, src/freeglut_init.c, src/freeglut_internal.h,
  557. src/freeglut_main.c, src/freeglut_state.c: Handle modifiers in
  558. MotionNotify events, too. This fixes bug #1227920 (glutGetModifiers
  559. not set/allowed in mouse callbacks). In addition, some related cleanup
  560. has been done.
  561. * ChangeLog, src/freeglut_joystick.c: Partial fixes for bug #1218900
  562. (freeglut-2.4.0 on FreeBSD).
  563. * ChangeLog, Makefile.am: Remove wrong "execute" bits when creating a
  564. distribution. This fixes bug #961938 (Executable bit set on non exe
  565. files).
  566. * configure.ac: Tiny cosmetic change, not worth a ChangeLog entry.
  567. * ChangeLog: Added John's missing ChangeLog entry.
  568. 2005-07-01 John F. Fay <john.fay.ctr@eglin.af.mil>
  569. * freeglut.dsp, freeglut_static.dsp: Adding the
  570. \"freeglut_input_devices.c\" file to the Windows project files
  571. 2005-07-01 Sven Panne <sven.panne@aedion.de>
  572. * ChangeLog, configure.ac, src/Makefile.am: Some steps toward
  573. compilation under MinGW. Note that there are still linking troubles
  574. for the examples.
  575. * src/freeglut_internal.h: Fixed #ifdef for ChangeDisplaySettingsEx
  576. prototype.
  577. * ChangeLog, src/freeglut_input_devices.c: Silenced a signed/unsigned
  578. mismatched via a cast.
  579. * ChangeLog, src/freeglut_internal.h: MinGW is lacking a prototype for
  580. ChangeDisplaySettingsEx, so supply one in this case. Note that this
  581. should better be handled via autoconf than via cpp.
  582. * ChangeLog, Makefile.am: Removed redundant files from EXTRA_DIST.
  583. 2005-06-30 Sven Panne <sven.panne@aedion.de>
  584. * src/freeglut_main.c: Ooops, forgot to set the current window in the
  585. last commit. I'll have to test better before committing... :-]
  586. * ChangeLog, src/freeglut_main.c: When a window is iconified, only an
  587. UnmapNotify is sent, not a VisibilityNotify, so we have to handle the
  588. window status callback in the former case, too. This fixes bug #763442
  589. (Call the visibility callback when minimizing a window).
  590. * ChangeLog, src/freeglut_main.c: Cleaned up
  591. CreateNotify/ConfigureNotify handling.
  592. * src/freeglut_main.c: Ooops, forgot to dump a few fields in some
  593. events...
  594. * ChangeLog, configure.ac, src/freeglut_main.c: Added --enable-debug
  595. configure flag. Currently it only turns on X11 event tracing, but in
  596. the future we could add more.
  597. Note: freeglut_main.c could benefit from some restructuring to clean
  598. up the #ifdefs and cut down the sizes of some extremely long
  599. functions.
  600. * ., .cvsignore: Ignore files generated during RPM build.
  601. 2005-06-23 John F. Fay <john.fay.ctr@eglin.af.mil>
  602. * doc/freeglut_user_interface.html: Fixing the documentation regarding
  603. callbacks and geometry shape additions
  604. * progs/demos/Fractals/Fractals.dsp,
  605. progs/demos/Fractals/FractalsStatic.dsp,
  606. progs/demos/Fractals_random/Fractals_random.dsp,
  607. progs/demos/Fractals_random/Fractals_randomStatic.dsp,
  608. progs/demos/Lorenz/lorenz.dsp, progs/demos/Lorenz/lorenzStatic.dsp,
  609. progs/demos/One/one.dsp, progs/demos/One/oneStatic.dsp,
  610. progs/demos/shapes/shapes.dsp, progs/demos/shapes/shapesStatic.dsp:
  611. Adding separate static library and DLL demonstration program projects
  612. * progs/demos/CallbackMaker/CallbackMaker.dsp,
  613. progs/demos/CallbackMaker/CallbackMakerStatic.dsp: Adding separate
  614. demo program projects for static library and DLL versions
  615. * progs/demos/demos.dsw: Adding support for separate static library demo
  616. programs
  617. * ChangeLog: Keeping current ...
  618. * src/freeglut_input_devices.c: New file for Joe Krahn\'s dials input
  619. device
  620. 2005-06-22 John F. Fay <john.fay.ctr@eglin.af.mil>
  621. * src/freeglut_geometry.c: Fixing a bug in the Sierpinski sponge code
  622. that made the application crash if called with number of levels < 0
  623. * src/Makefile.am, src/freeglut_init.c, src/freeglut_internal.h,
  624. src/freeglut_joystick.c, src/freeglut_state.c: Joe Krahn\'s input
  625. (dials) device implementation.
  626. 2005-06-14 Sven Panne <sven.panne@aedion.de>
  627. * ChangeLog, freeglut.spec: Added an RPM spec file based on the one
  628. shipped with SuSE 9.3.
  629. 2005-06-10 James Jones <puggles@users.sourceforge.net>
  630. * ChangeLog, configure.ac: Release of 2.4.0
  631. 2005-06-02 James Jones <puggles@users.sourceforge.net>
  632. * ChangeLog, configure.ac, src/freeglut_internal.h: 2.4.0 Release
  633. Candidate 5
  634. 2005-05-26 John F. Fay <john.fay.ctr@eglin.af.mil>
  635. * src/freeglut_main.c: Takeshi Nishimura\'s changes to make the Windows
  636. mouse wheel/button mapping match that of X11; also fixing a typo in
  637. the associated mouse callback argument list
  638. 2005-05-26 James Jones <puggles@users.sourceforge.net>
  639. * ChangeLog, configure.ac: 2.4.0 RC4 updates
  640. * src/freeglut_main.c: Fix joysticks so they are polled by their timer
  641. correctly. (Dan Torop)
  642. 2005-05-24 Sven Panne <sven.panne@aedion.de>
  643. * ChangeLog, src/freeglut_gamemode.c: The original glutEnterGameMode()
  644. returns the window id of the game mode window, not TRUE/FALSE, we
  645. should better follow that. Note that most man pages claim that this
  646. function returns void, but this is definitely wrong.
  647. * ChangeLog, src/freeglut_gamemode.c, src/freeglut_main.c: When
  648. switching to game mode under X11, no ConfigureNotify event will happen
  649. and consequently no reshape callback will ever be called via the
  650. normal mechanism. To fix this, note that the game mode window needs to
  651. be resized and handle this before redraw.
  652. 2005-05-22 Sven Panne <sven.panne@aedion.de>
  653. * ChangeLog, src/freeglut_ext.c: Guarantee consistency of
  654. names/addresses in glutGetProcAddress by using a macro. In addition,
  655. this avoids any non-constant initializer issues which might be raised
  656. when using WinDoze GCCs. The additional code overhead is negligible,
  657. at least for x86 (a few instructions per name).
  658. * ChangeLog, configure.ac: Lowering minimum autoconf version required.
  659. 2005-05-20 James Jones <puggles@users.sourceforge.net>
  660. * ChangeLog: Tag for 2.4.0 RC3
  661. * ChangeLog: Notes
  662. 2005-05-19 Sven Panne <sven.panne@aedion.de>
  663. * src/freeglut_gamemode.c: Fixed SF bug #1204256: Off-by-one error in
  664. X11 mode switching. The code which changes the X11 video mode has an
  665. off-by-one error, resulting in a wrong mode or segfault. I've
  666. refactored the code slightly to make it hopefully clearer what's going
  667. on and corrected some #ifdefs on the way. Now at least the "One" demo
  668. works for me.
  669. * src/freeglut_window.c: Fixed SF bug #1204261: Mini space leak when
  670. creating an X11 window (X11 text property values have to be freed
  671. after using them)
  672. 2005-05-18 John F. Fay <john.fay.ctr@eglin.af.mil>
  673. * src/freeglut_gamemode.c: Removing a C++ comment and simplifying the
  674. string handling
  675. 2005-05-17 John F. Fay <john.fay.ctr@eglin.af.mil>
  676. * src/freeglut_gamemode.c: Misiek\'s changes to fix Game Mode--getting
  677. display settings under Windows and setting the window size correctly
  678. on all operating systems.
  679. 2005-05-16 James Jones <puggles@users.sourceforge.net>
  680. * ChangeLog: Mark for 2.4 RC 2
  681. 2005-05-13 John F. Fay <john.fay.ctr@eglin.af.mil>
  682. * src/freeglut_menu.c: Removing two unused variables so this will
  683. compile on Linux with -Wall
  684. 2005-05-12 John F. Fay <john.fay.ctr@eglin.af.mil>
  685. * ChangeLog: Updating the ChangeLog ...
  686. * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c:
  687. Takeshi Nishimura\'s menu changes--menus should now work properly. Use
  688. the GLUT \"GLUTmech\" and \"walker\" demos to test them.
  689. * src/freeglut_main.c: Takeshi Nishimura\'s menu fixes
  690. 2005-05-09 James Jones <puggles@users.sourceforge.net>
  691. * ChangeLog, Makefile.am, configure.ac: Freeglut 2.4.0 Release Candidate
  692. 1
  693. 2005-05-06 Sven Panne <sven.panne@aedion.de>
  694. * ChangeLog, progs/demos/shapes/shapes.c: Fixed a cuboctahedron vertex,
  695. implemented wire mode for that shape.
  696. * ChangeLog, progs/demos/shapes/shapes.c, src/freeglut_internal.h,
  697. src/freeglut_main.c: Necessary compilation fixes for newer GCCs (e.g.
  698. 3.3.5, 4.0). Side effect: The shapes demo has a new 'i' key now.
  699. 2005-05-05 John F. Fay <john.fay.ctr@eglin.af.mil>
  700. * ChangeLog: Updated the ChangeLog again ...
  701. 2005-05-04 John F. Fay <john.fay.ctr@eglin.af.mil>
  702. * progs/demos/shapes/shapes.c: Replacing the original \"freeglut\"
  703. \"shapes\" demo with the much snazzier OpenGLUT \"shapes\" demo. Many
  704. thanks to the OpenGLUT community for writing it. The copyright notice
  705. stays in the program.
  706. * src/freeglut_main.c: Changing hard-coded constant (number of mouse
  707. buttons = 3) to a \"glutDeviceGet\" call in two places under X11
  708. * src/freeglutdll.def: Changing the version number from 2.0 to 2.4.0 ...
  709. do we need to add any new interface functions?
  710. * src/freeglut_internal.h: Removing an unused variable
  711. * src/freeglut_window.c: Adding a comment on why \"freeglut\" differs
  712. from GLUT in a particular way
  713. * src/freeglut_joystick.c: Removing an unused function
  714. * src/freeglut_init.c: Making the \"key repeat\" initialization
  715. consistent with the rest of its usage; also making the
  716. \"initDisplayString\" ever-so-slightly more general
  717. * ChangeLog, TODO, src/freeglut_window.c: Updating the ChangeLog and
  718. TODO files in preparation for the upcoming release
  719. 2005-04-29 John F. Fay <john.fay.ctr@eglin.af.mil>
  720. * src/freeglut_joystick.c: Adding a \"TODO\" comment about dynamically
  721. allocating joystick buttonj and axis arrays
  722. * ChangeLog: Updationg the ChangeLog ...
  723. 2005-04-28 John F. Fay <john.fay.ctr@eglin.af.mil>
  724. * README.win32: Adding a \"README.Win32\" file with instructions on how
  725. to install \"freeglut\" under Windows.
  726. * src/freeglut_main.c: Adding Window Exit event handling to the Windows
  727. code; also adding a note that eventually it would be good to handle
  728. the Window Entry event
  729. 2005-04-27 John F. Fay <john.fay.ctr@eglin.af.mil>
  730. * src/freeglut_window.c: Fixing bug [ 1111218 ] fullscreen not working
  731. Better late than never.
  732. * src/freeglut_init.c: Fixing Bug Report [ 1160442 ]
  733. glutGet(GLUT_ELAPSED_TIME) is too granular
  734. 2005-04-26 John F. Fay <john.fay.ctr@eglin.af.mil>
  735. * src/freeglut_internal.h, src/freeglut_structure.c: Fixing the
  736. typecasts on the callback fetches and invocations to allow
  737. \"freeglut\" to compile with GCC 4.0
  738. * src/freeglut_menu.c: Fixing erroneous implementation of Takeshi\'s fix
  739. * src/Makefile.am: Changing include path from relative to absolute to
  740. support off-directory builds (Yuri D\'Elia, March 22, 5:59 PM)
  741. * LISEZ_MOI: Adding \"LISEZ-MOI\", the French version of \"README\"
  742. 2005-04-25 John F. Fay <john.fay.ctr@eglin.af.mil>
  743. * ChangeLog: Updating the ChangeLog ... it seems to be something of a
  744. stepchild if we\'re not careful.
  745. 2005-04-22 John F. Fay <john.fay.ctr@eglin.af.mil>
  746. * src/freeglut_menu.c: Yuri D\'Elia\'s changes to get the virtual
  747. maximum screen extent instead of the actual screen size.
  748. * src/freeglut_gamemode.c: Yuri D\'Elia\'s changes to the game mode
  749. window
  750. * src/freeglut_structure.c: Change a hard-coded number to a defined
  751. constant and add some initializations
  752. * src/freeglut_cursor.c: Removing duplicate cursor code. This and the
  753. previous change (in freeglut_main.c) apparently got combined.
  754. * ChangeLog: Updating the ChangeLog to reflect activity over the past
  755. few months
  756. * src/freeglut_callbacks.c, src/freeglut_cursor.c,
  757. src/freeglut_display.c, src/freeglut_gamemode.c,
  758. src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
  759. src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
  760. src/freeglut_window.c: Trying again to change \"fgStructure.Window\"
  761. to \"fgStructure.CurrentWindow\" and \"fgStructure.Menu\" to
  762. \"fgStructure.CurrentMenu\" for easier maintenance.
  763. 2005-04-15 John F. Fay <john.fay.ctr@eglin.af.mil>
  764. * ChangeLog: Updating the ChangeLog as a means of testing pCVSc
  765. * src/freeglut_internal.h: Testing!
  766. 2005-03-23 Brian Paul
  767. * include/GL/freeglut_ext.h: added comment about AUX flags
  768. 2005-02-16 Brian Paul
  769. * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
  770. src/freeglut_structure.c, src/freeglut_window.c: fixes for menus being
  771. attached to multiple buttons/windows (John Fay)
  772. * src/freeglut_callbacks.c: added error check (John Fay)
  773. 2005-02-15 Brian Paul
  774. * src/freeglut_init.c, src/freeglut_window.c: AUX buffers for Windows
  775. (John Fay)
  776. 2005-02-11 Brian Paul
  777. * include/GL/freeglut_ext.h, src/freeglut_init.c, src/freeglut_window.c:
  778. Aux color buffer support. Pass one of GLUT_AUX[1234] to
  779. glutInitDisplayMode. Only implemented/tested on GLX, not Windows.
  780. * include/GL/freeglut_ext.h, src/freeglut_ext.c,
  781. src/freeglut_internal.h: Fix object/function pointer inconsistencies
  782. which are a problem for gcc 3.4.2. Added GLUTproc type, returned by
  783. glutGetProcAddress().
  784. 2005-01-23 Sven Panne <sven.panne@aedion.de>
  785. * configure.ac: autoconf 2.58 is enough
  786. * src/freeglut_callbacks.c, src/freeglut_internal.h: Stylistic change
  787. only (added "do { ... } while( 0 )" around multi-statement macros)
  788. * configure.ac, src/freeglut_joystick.c, src/freeglut_main.c: Testing
  789. for errno.h is overkill. :-)
  790. * src/freeglut_cursor.c, src/freeglut_main.c: Windows platforms only:
  791. Merged some cursor-related code from John Fay (with minor changes)
  792. 2005-01-05 Sven Panne <sven.panne@aedion.de>
  793. * src/freeglut_ext.c, src/freeglut_font.c, src/freeglut_main.c,
  794. src/freeglut_state.c, src/freeglut_window.c: Hopefully removed all
  795. damage done by commits without merge
  796. * ChangeLog, src/freeglut_cursor.c: Reworked the X11 part of
  797. glutSetCursor, fixing bug #764187 (Variable mouse pointers don't work)
  798. on the way: * Use slightly more compatible cursor shapes for
  799. GLUT_CURSOR_RIGHT_ARROW and GLUT_CURSOR_LEFT_ARROW. * Refactored and
  800. fixed the erroneous code for GLUT_CURSOR_NONE. * Removed the incorrect
  801. use of XFreeCursor and use a cache of cursors instead. Cursors are
  802. never freed now, we could do this e.g. via reference countig if this
  803. is really needed. * Fixed error handling. * Unknown cursor types are
  804. an error now. * Now the window state always corresponds to the wanted
  805. cursorID, even in the case of GLUT_CURSOR_FULL_CROSSHAIR.
  806. NOTE: I am not sure where the cursor cache should really reside,
  807. currently it is simply a file-local variable.
  808. 2005-01-03 Sven Panne <sven.panne@aedion.de>
  809. * ChangeLog, src/freeglut_gamemode.c: Fixed part of bug #926883 (Video
  810. mode matching code, memory leaks, fullscreen), i.e. issue warnings
  811. when XF86VidModeFOO fails.
  812. * ChangeLog, src/freeglut_gamemode.c: (234) Fixed part of bug #926883
  813. (Video mode matching code, memory leaks, fullscreen): Now we first try
  814. to get an exact mode match, ignoring the refresh rate if none could be
  815. found. This way the X11 part and the WinDoze behave similarly. NOTE:
  816. We still don't behave like GLUT, because it has a wider notion of
  817. "best" match. We have to refactor and extend freeglut quite a bit to
  818. do that.
  819. * ChangeLog, src/freeglut_gamemode.c: Fixed part of bug #926883 (Video
  820. mode matching code, memory leaks, fullscreen), i.e. memory leak caused
  821. by not freeing the mode lines returned by XF86VidModeGetAllModeLines
  822. * ChangeLog, src/freeglut_window.c: Improved error message a bit when no
  823. suitable visual could be found (X11 only).
  824. * configure.ac, src/freeglut_internal.h, src/freeglut_main.c: autoconf'd
  825. vfprintf
  826. * src/freeglut_joystick.c: Removed redundant #include
  827. * ChangeLog, configure.ac, src/freeglut_joystick.c, src/freeglut_main.c:
  828. autoconf'd <errno.h> handling and removed an unused '#include
  829. <sys/stat.h>'
  830. * configure.ac, src/freeglut_joystick.c, src/freeglut_main.c: autoconf'd
  831. <limits.h> and <sys/param.h> handling, removing MIN/MAX macros on the
  832. way.
  833. * src/freeglut_internal.h: Cosmetics.
  834. * configure.ac, src/freeglut_joystick.c: autoconf'd <fcntl.h> and
  835. <sys/ioctl.h> handling
  836. * src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c:
  837. Improved <sys/typed.h> / <unistd.h> handling as suggested by the
  838. autoconf docs.
  839. * configure.ac, progs/demos/Lorenz/lorenz.c, src/freeglut_internal.h,
  840. src/freeglut_main.c: Fixed <sys/time.h> / <time.h> handling as
  841. suggested by the autoconf docs.
  842. * src/freeglut_callbacks.c, src/freeglut_cursor.c,
  843. src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
  844. src/freeglut_font_data.c, src/freeglut_gamemode.c,
  845. src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_internal.h,
  846. src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
  847. src/freeglut_misc.c, src/freeglut_overlay.c, src/freeglut_state.c,
  848. src/freeglut_structure.c, src/freeglut_teapot.c,
  849. src/freeglut_videoresize.c, src/freeglut_window.c: Moved '#include
  850. "config.h"' to freeglut_internal.h, we will need it there soon and it
  851. makes everything a bit shorter.
  852. * ChangeLog: Resurrected my recent additions which were nuked by the
  853. previous commit, adding the latest change on the way. :-(
  854. * acconfig.h: Removed acconfig.h, it is deprecated and we don't need it.
  855. * src/freeglut_cursor.c, src/freeglut_font.c, src/freeglut_init.c,
  856. src/freeglut_structure.c: Make it compile again with "-Wall -pedantic
  857. -Werror", redoing quite a few things I've fixed already a few days
  858. ago. Have today's commits been done by copying instead of merging? :-(
  859. 2005-01-03 James Jones <puggles@users.sourceforge.net>
  860. * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
  861. src/freeglut_window.c: Changes remove duplicate menu code from
  862. "freeglut_window.c" and put it into one place in "freeglut_menu.c"
  863. where it belongs. - John Fay
  864. * ChangeLog: General ChangeLog Updates
  865. * src/freeglut_callbacks.c, src/freeglut_cursor.c,
  866. src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
  867. src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
  868. src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
  869. src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_state.c,
  870. src/freeglut_structure.c, src/freeglut_teapot.c,
  871. src/freeglut_teapot_data.h, src/freeglut_window.c: Adding
  872. initialization checking to all GLUT interface functions and removing
  873. asserts from the rest of the code - John Fay
  874. 2005-01-01 Sven Panne <sven.panne@aedion.de>
  875. * ChangeLog, src/Makefile.am: Added missing files from "src"
  876. subdirectory to dist.
  877. * AUTHORS: Synched with project member list on SourceForge
  878. * ChangeLog, Makefile.am, configure.ac: Modernized configure.ac a bit
  879. and added a rule to Makefile.am to update libtool. Note that all gcc
  880. compiler warnings are now on by default.
  881. * ChangeLog, include/GL/freeglut_std.h,
  882. progs/demos/CallbackMaker/CallbackMaker.c,
  883. progs/demos/Fractals_random/fractals_random.c,
  884. progs/demos/Lorenz/lorenz.c, progs/demos/One/one.c,
  885. src/freeglut_cursor.c, src/freeglut_font.c, src/freeglut_init.c,
  886. src/freeglut_teapot_data.h: Make "gcc -Wall -pedantic -Werror" happy.
  887. * ., .cvsignore: Ignore files generated by autoscan.
  888. * ChangeLog, INSTALL, configure.ac, configure.in: Renamed "configure.in"
  889. to the officially preferred "configure.ac".
  890. * stamp-h, stamp-h.in: Removed unused stamp-h* files, configure
  891. generates them (a single stamp-h1, to be exact).
  892. * ChangeLog, Makefile.am: Added eMbedded Visual Tools project/workspace
  893. files to distribution.
  894. * ., .cvsignore: Ignore distribution tar files
  895. 2004-12-31 Sven Panne <sven.panne@aedion.de>
  896. * ChangeLog, src/freeglut_main.c: Fixed first bug of #1064195 (two
  897. things when using signals): Don't issue a warning about select when a
  898. non-blocked signal was caught. This makes sense and is more compatible
  899. with GLUT.
  900. * ChangeLog, src/freeglut_font.c: Fixed bug #1040435 (glutBitmapString()
  901. bug).
  902. * ChangeLog: Alas, the ChangeLog has not the usual ChangeLog format, so
  903. tell (X)Emacs about that fact.
  904. * ChangeLog, src/freeglut_window.c: Fixed bug #1045054 (KeyReleaseMask
  905. typo).
  906. * ChangeLog, src/freeglut_state.c: Fixed bug #1087642
  907. (glutDeviceGet(GLUT_DEVICE_KEY_REPEAT) unimplemented).
  908. * ChangeLog, src/freeglut_ext.c: Fixed bug #1079530 (glutGetProcAddress
  909. and geometric objects).
  910. * ., .cvsignore, doc, doc/.cvsignore, include, include/.cvsignore,
  911. include/GL, include/GL/.cvsignore, progs, progs/.cvsignore,
  912. progs/demos, progs/demos/.cvsignore, progs/demos/CallbackMaker,
  913. progs/demos/CallbackMaker/.cvsignore, progs/demos/Fractals,
  914. progs/demos/Fractals/.cvsignore, progs/demos/Fractals_random,
  915. progs/demos/Fractals_random/.cvsignore, progs/demos/Lorenz,
  916. progs/demos/Lorenz/.cvsignore, progs/demos/One,
  917. progs/demos/One/.cvsignore, progs/demos/shapes,
  918. progs/demos/shapes/.cvsignore, src, src/.cvsignore: Improved
  919. ignorance.
  920. 2004-12-17 James Jones <puggles@users.sourceforge.net>
  921. * src/freeglut_cursor.c, src/freeglut_display.c,
  922. src/freeglut_internal.h, src/freeglut_menu.c, src/freeglut_misc.c,
  923. src/freeglut_window.c: Some assertion changes / removals from Dr. John
  924. Fay
  925. 2004-10-06 Brian Paul
  926. * src/freeglut_callbacks.c, src/freeglut_internal.h,
  927. src/freeglut_joystick.c, src/freeglut_state.c: joystick init fixes
  928. (John Fay)
  929. 2004-10-05 Brian Paul
  930. * src/freeglut_main.c: updated comments (John Fay)
  931. * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_window.c:
  932. improved comments and mouse coord adjustments (John Fay)
  933. * src/freeglut_init.c: more clean-ups, fixes from John Fay
  934. 2004-09-23 Brian Paul
  935. * src/freeglut_font.c, src/freeglut_stroke_mono_roman.c,
  936. src/freeglut_stroke_roman.c: font updates from John Fay
  937. * src/freeglut_main.c: more updates from John Fay
  938. * src/freeglut_geometry.c, src/freeglut_init.c: assorted updates from
  939. John Fay
  940. 2004-09-15 James Jones <puggles@users.sourceforge.net>
  941. * src/freeglut_init.c: Fix to glutInit() command-line argument
  942. compaction - Patch #1027724 from takeshi2
  943. 2004-09-13 Brian Paul
  944. * src/freeglut_callbacks.c, src/freeglut_cursor.c,
  945. src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
  946. src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_state.c,
  947. src/freeglut_window.c: more updates from John Fay
  948. * src/freeglut_cursor.c, src/freeglut_gamemode.c,
  949. src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_internal.h,
  950. src/freeglut_joystick.c, src/freeglut_main.c,
  951. src/freeglut_structure.c, src/freeglut_teapot.c,
  952. src/freeglut_window.c: some function renaming, etc (John Fay)
  953. 2004-09-10 Brian Paul
  954. * src/freeglut_callbacks.c, src/freeglut_init.c,
  955. src/freeglut_internal.h, src/freeglut_main.c: joystick updates from
  956. John Fay
  957. * src/freeglut_cursor.c, src/freeglut_font_data.c,
  958. src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
  959. src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
  960. src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_state.c,
  961. src/freeglut_stroke_mono_roman.c, src/freeglut_stroke_roman.c,
  962. src/freeglut_structure.c, src/freeglut_teapot.c,
  963. src/freeglut_window.c: updated comments from John Fay
  964. 2004-08-11 James Jones <puggles@users.sourceforge.net>
  965. * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c:
  966. Fix a game mode crashing bug, conditional compilation for Windows, and
  967. comment out some diagnostic prints (John Fay)
  968. 2004-08-05 James Jones <puggles@users.sourceforge.net>
  969. * src/freeglut_window.c: Implements Richard Rauch's request that the
  970. warning about indirect rendering contexts be suppressed for his BSD
  971. operating systems.
  972. * src/freeglut_teapot_data.h: Someone used C++ style comments in a C
  973. file... tisk tisk...
  974. * src/freeglut_font.c: Bugfix for "glutBitmapString" so that it now
  975. handles end-of-line characters properly (Richard Rauch)
  976. * README: Incremental update ... (John Fay)
  977. 2004-06-29 Brian Paul
  978. * src/freeglut_structure.c: give menu windows the title 'freeglut menu'
  979. (helps Chromium)
  980. * src/freeglut_window.c: move glXMakeCurrent() to after the point where
  981. the window's title is set (helps Chromium)
  982. 2004-05-13 James Jones <puggles@users.sourceforge.net>
  983. * freeglut.dsp, freeglut_static.dsp: Add one more header file to MSVC
  984. files
  985. 2004-05-12 James Jones <puggles@users.sourceforge.net>
  986. * include/GL/freeglut_ext.h, include/GL/freeglut_std.h: John Fay:
  987. Direct/indirect rendering context change, fix a bug that somebody
  988. reported (about needing "GLUT_XLIB_IMPLEMENTATION" defined) and remove
  989. a false deprecation of a function.
  990. * src/freeglut_main.c: John Fay: A bug fix re: behavior of the code when
  991. the user clicks the "x" to close a window, and commentary to a message
  992. type with fixes for a Windows event processing bug.
  993. * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_state.c,
  994. src/freeglut_window.c: John Fay: Implement the modified logic of the
  995. direct/indirect rendering context.
  996. * src/freeglut_font.c, src/freeglut_font_data.c: John Fay: Implement the
  997. upper end of the bitmapped fonts (beyond ASCII code 127). The fonts
  998. are very close to the GLUT fonts.
  999. * src/freeglut_teapot.c, src/freeglut_teapot_data.h: John Fay: These
  1000. files implement the teapot for WINCE.
  1001. * src/freeglut_internal.h: John Fay: Remove some obsolete defined
  1002. symbols.
  1003. * freeglut.dsp, freeglut_static.dsp: John Fay: Add
  1004. "freeglut_glutfont_definitions.c" to the build and tell it to look in
  1005. the "include" directory for the <GL/freeglut.h> file.
  1006. 2004-03-28 Steve Baker <steve@sjbaker.org>
  1007. * progs/demos/shapes/shapes.c: Removed unnecessary initialisation.
  1008. * progs/demos/shapes/shapes.c: Added a cullface test.
  1009. 2004-03-22 drgoldie
  1010. * freeglut_evc4.vcp, src/freeglut_gx.cpp, src/freeglut_init.c,
  1011. src/freeglut_main.c: removed .cpp file (using LoadLibrary() instead)
  1012. removed modified gx.h file cleaned up all // and tabs
  1013. 2004-03-17 nigels
  1014. * src/freeglut_main.c: Prevent exceeding array bounds in X11 key-repeat
  1015. detection
  1016. 2004-03-16 drgoldie
  1017. * freeglut_evc4.vcp, src/freeglut_ext.c, src/freeglut_gx.cpp,
  1018. src/freeglut_init.c, src/freeglut_main.c, src/freeglut_misc.c,
  1019. src/freeglut_state.c, src/freeglut_window.c: replaced all tabs with 4
  1020. spaces replaced all // with /* */ block fixed freeglut_gx.cpp file
  1021. with #if TARGET_HOST_WINCE
  1022. 2004-03-16 nigels
  1023. * src/freeglut_init.c, src/freeglut_main.c, src/freeglut_state.c:
  1024. Whitespace conversion - tabs to 4 spaces
  1025. * src/freeglut_window.c: Revert X11 fgCloseWindow to 1.38 pre-offscreen
  1026. implementation.
  1027. 2004-03-15 drgoldie
  1028. * freeglut_evc4.vcp, src/freeglut_gx.cpp, src/freeglut_main.c: fixed
  1029. mouse position and keyboard mapping. added c-wrapper cpp file for
  1030. GAPI.
  1031. * freeglut_evc4.vcp, freeglut_evc4.vcw, include/GL/freeglut_std.h,
  1032. src/freeglut_cursor.c, src/freeglut_display.c, src/freeglut_ext.c,
  1033. src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
  1034. src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_misc.c,
  1035. src/freeglut_state.c, src/freeglut_window.c: added support for
  1036. WindowsCE (building on top of klimt)
  1037. 2004-03-15 nigels
  1038. * src/freeglut_main.c: Repeat-key handling for Win32 Utilise both
  1039. FreeGLUT state and per-window filtering modes
  1040. 2004-03-15 rkrolib
  1041. * ChangeLog: Forgot to update the ChangeLog for the benefit of those who
  1042. do not have CVS or Web access.
  1043. * configure.in, include/GL/freeglut_ext.h, src/freeglut_internal.h,
  1044. src/freeglut_window.c: Completed removal of all support for the
  1045. offscreen rendering.
  1046. If you wish to do offscreen supportin a portable manner, you will no
  1047. longer be able to do so with current versions of freeglut.
  1048. * progs/demos/Makefile.am: Removed Makefile support for the offscreen
  1049. demo.
  1050. * progs/demos/One/one.c, progs/demos/offscreen: Removed offscreen demo
  1051. program.
  1052. 2004-03-15 nigels
  1053. * src/Makefile.am: Provide local include path to automake for
  1054. GL/freeglut.h etc
  1055. 2004-03-14 nigels
  1056. * src/freeglut_window.c: Code formatting tweak
  1057. * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
  1058. src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c:
  1059. Resolution of X11 key-repeat handling
  1060. glutSetKeyRepeat is global to all FreeGLUT windows in the application
  1061. glutIgnoreKeyRepeat is a per-window over-ride
  1062. To avoid nasty global X11 state interaction, or GLUT-style event queue
  1063. filtering - the approach in FreeGLUT is to use the current key state
  1064. XQueryKeymap to detect and ignore KeyRelease/KeyPress pairs that are
  1065. auto-generated.
  1066. See also:
  1067. http://pyopengl.sourceforge.net/documentation/manual/glutSetKeyRepeat.3GLUT.xml
  1068. http://pyopengl.sourceforge.net/documentation/manual/glutIgnoreKeyRepeat.3GLUT.xml
  1069. * src/freeglut_callbacks.c, src/freeglut_cursor.c, src/freeglut_ext.c,
  1070. src/freeglut_font.c, src/freeglut_font_data.c,
  1071. src/freeglut_gamemode.c, src/freeglut_geometry.c,
  1072. src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
  1073. src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
  1074. src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
  1075. Stripped out tabs and end-of-line whitespace Differences are in
  1076. whitespace only
  1077. 2004-03-10 nigels
  1078. * src/freeglut_window.c: Resolve [ 853044 ] FreeGLUT menus on Win32 in
  1079. task bar and ALT-TAB list CreateWindowEx(WS_EX_TOOLWINDOW,...)
  1080. extended style suppresses the popup menu window from the taskbar or
  1081. ALT-TAB list
  1082. 2004-03-08 nigels
  1083. * src/freeglut_init.c: ignoreKeyRepeat mode in FreeGLUT is TRUE by
  1084. default For compatibility with GLUT, the mode should be FALSE by
  1085. default This issues was probably undetected until now because
  1086. ignoreKeyRepeat didn't yet work.
  1087. * src/freeglut_main.c: Resolved bug #869765 glutIgnoreKeyRepeat() Fix
  1088. (Win32) glutIgnoreKeyRepeat now behaves correctly on Win32
  1089. * src/freeglut_internal.h: C++ style comment converted to C style
  1090. comment
  1091. * src/freeglut_callbacks.c, src/freeglut_cursor.c,
  1092. src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
  1093. src/freeglut_font_data.c, src/freeglut_gamemode.c,
  1094. src/freeglut_geometry.c, src/freeglut_init.c, src/freeglut_joystick.c,
  1095. src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_misc.c,
  1096. src/freeglut_overlay.c, src/freeglut_state.c,
  1097. src/freeglut_structure.c, src/freeglut_teapot.c,
  1098. src/freeglut_videoresize.c, src/freeglut_window.c: Include freeglut
  1099. header via <GL/freeglut.h> rather than "../include/GL/freeglut.h" This
  1100. allows some additional flexibility with file layout. It should be the
  1101. responsibility of the build environment, rather than at source level.
  1102. This change tested on MSVC 6, cygwin and mingw32 gcc and Linux gcc.
  1103. 2004-03-03 nigels
  1104. * src/freeglut_joystick.c: According to John F. Fay: The variable
  1105. "num_axes" should be "joy->num_axes".
  1106. 2004-02-20 rkrolib
  1107. * src/freeglut_gamemode.c: Removed nonstandard #warning constructs.
  1108. Converted to XXX comments. (These are warnings about gamemode features
  1109. not working the same on some systems as on others. The semantics of
  1110. gamemode are dubious, since it was never formally documented, and has
  1111. for a long time worked in different ways on different systems, so it
  1112. is arguable that there is nothing really wrong with systems that don't
  1113. support resolution-changes.)
  1114. * src/freeglut_callbacks.c: Fixed the bug where glutDisplayFunc() was
  1115. effectively invoking glutPostRedsiplay(). This is wrong on the face of
  1116. it, and may be at root for some of the annoying "timing" issues we've
  1117. had with redisplay events being called inappropriately.
  1118. 2004-02-19 rkrolib
  1119. * progs/demos/offscreen/Makefile.am: I had rubbed the
  1120. offscreen/Makefile.am off from the shapes demo. I forgot to remove a
  1121. couple of references to the shapes.c and shapes.dsp (.dsw?) files.
  1122. * configure.in, include/GL/freeglut_ext.h, progs/demos/Makefile.am,
  1123. progs/demos/offscreen, progs/demos/offscreen/Makefile.am,
  1124. progs/demos/offscreen/offscreen.c: Added "offscreen" demo, a very
  1125. simple program that produces an onscreen window and, upon command,
  1126. renders a similar offscreen display and writes the result to disk.
  1127. Also, modified the build structure for UNIX_X11 to autobuild the demo.
  1128. (Not done for WIN32 at this time.)
  1129. Also, forgot to previously commit the updated freeglut_ext.h include.
  1130. Eeep.
  1131. 2004-02-18 rkrolib
  1132. * src/freeglut_window.c: Minor comment adjustments.
  1133. 2004-02-18 nigels
  1134. * src/freeglut_geometry.c: Refinements to comments
  1135. 2004-02-14 rkrolib
  1136. * src/freeglut_joystick.c: Normalized the style of the new joystick a
  1137. bit.
  1138. * src/freeglut_main.c: For some reason, the X "expose" event handler was
  1139. *directly* calling the display handler in the client. (Okay, it was
  1140. calling a function that operates on the window handle.)
  1141. If you have any complexity to the display code, this can be painful to
  1142. watch. I can't think of a good reason to do the display immediately,
  1143. so I fixed the code to do a glutPostRedisplay().
  1144. * src/freeglut_joystick.c: A commit on behalf of John (in turn, and in
  1145. part, also on behalf of Thierry).
  1146. * Renamed some of the old PLIB functions to have glut* prefixes. (I
  1147. guess that there is some thought about exporting them to the API.)
  1148. * Changes from Thierry for FreeBSD support, and/or results of testing?
  1149. * I re-merged an XXX comment re. NetBSD/amd64 and propogated a comment
  1150. on a duplicated #define for FreeBSD. We need the GNU autoconfig stuff
  1151. to be updated by someone who groks it, now.
  1152. 2004-02-09 rkrolib
  1153. * src/freeglut_init.c: Commit of John's tidying-up of a comment, closing
  1154. out an XXX comment that I wrote. Thanks, John.
  1155. 2004-02-07 rkrolib
  1156. * src/freeglut_window.c: ...AND a tab snuck into my changes for
  1157. GLUT_OFFSCREEN support. Mea culpa.
  1158. * src/freeglut_joystick.c: Removed a ^M that snuck into the #pragma for
  1159. the new joystick code.
  1160. * src/freeglut_window.c: Ooops. We don't want people to be able to
  1161. create a subwindow of an offscreen window. (^& This is no longer
  1162. permitted.
  1163. (Actually, it would be nice if it would work, but I don't think that
  1164. you can subwindow a pixmap in UNIX_X11, and assume that subwindowing
  1165. offscreen doesn't work on WIN32, either.)
  1166. * ChangeLog: Added entries for the joystick updates and the offscreen
  1167. experimental support.
  1168. * src/freeglut_joystick.c: Changed a couple of XXX comments. Added a new
  1169. one. These all the nest of #ifs in the BSD section of the new joystick
  1170. code.
  1171. * progs/demos/CallbackMaker/CallbackMaker.c: "Heavy editing" by John to
  1172. his CallbackMaker demo.
  1173. * src/freeglut_joystick.c: John added a #pragma to the joystick code for
  1174. WIN32 users.
  1175. * src/freeglut_internal.h, src/freeglut_window.c: Adds GLUT_OFFSCREEN as
  1176. a display mode option. This includes:
  1177. * Recognizing the mode when you call glutCreateWindow(). (Offscreen
  1178. looks and acts like a top-level window in many ways.)
  1179. * During the life of the offscreen "window", various window-management
  1180. functions are modified to respect offscreen status.
  1181. (Excepting reshaping windows, there is not much useful interpretation
  1182. for management of offscreen areas. Reshaping is possibly more work than
  1183. it's worth to support, and GLUT specs allow us to ignore the request.)
  1184. * Cleanup for "offscreen" windows is a little different than for
  1185. regular windows.
  1186. Windows still don't start up quite ideally. Offscreen windows should
  1187. probably get a reshape event, but not a display.
  1188. 2004-02-05 rkrolib
  1189. * src/freeglut_init.c, src/freeglut_joystick.c: Big import of updated
  1190. joystick code from PLIB, with permission from Steve Baker. Most of the
  1191. adaptation done by John, with a little bit of testing and changes by
  1192. Thierry Thomas and myself. Seems to compile on:
  1193. WIN32 Red Hat LINUX FreeBSD NetBSD/amd64
  1194. 2004-02-01 rkrolib
  1195. * src/freeglut_main.c: Close a bug whereby events can be delayed
  1196. arbitrarily long if they get caught between the socket and the
  1197. client-side queue on X, sometime after glutMainLoopEvent()'s loop
  1198. quits and before the sleep code is invoked.
  1199. 2004-01-16 rkrolib
  1200. * src/freeglut_main.c: Amended a comment on fgCheckJoystickCallback().
  1201. * src/freeglut_main.c: Minor style normalizations to minimize the diffs
  1202. between *now* and from before John's changes. No functional changes:
  1203. * Removed some hard TABs introduced. * Removed some
  1204. spaces-at-end-of-line introduced. * A couple of function calls were
  1205. touched up.
  1206. I did this separately only because I don't like messing with other
  1207. people's commits. (I don't like feeling like the style police, either,
  1208. but when I mess with the commit, there's no room for reverting my
  1209. interference if it is deemed undesirable...)
  1210. * src/freeglut_main.c: Some changes from John.
  1211. The main attraction seems to be correcting a bug with the action-on-
  1212. window-close.
  1213. 2004-01-05 nigels
  1214. * src/freeglut_main.c, src/freeglut_window.c: Win32 glutIconifyWindow()
  1215. patch contributed by John F. Fay Restrict resize callbacks to visible
  1216. windows When iconified via glutIconifyWindow(), don't pass (0,0) to
  1217. resize callback Note that minimising the window via the menu or
  1218. minimise button is not yet resolved.
  1219. 2003-12-30 rkrolib
  1220. * src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_structure.c:
  1221. Split a few overlong lines.
  1222. Adjusted some spacing in a few spots to be more consistent with
  1223. freeglut style. Including one unindented if() body.
  1224. Eliminated a dead variable.
  1225. * src/freeglut_joystick.c: Changed several #ifdef's to proper #if's.
  1226. Eeek. Oook.
  1227. * src/freeglut_main.c: Hm... I thought that I committed this last night.
  1228. What's up?
  1229. This is Nigel's modified fgSleepForEvents(), essentially. Take 2.
  1230. 2003-12-30 nigels
  1231. * include/GL/freeglut_std.h: Three supported win32 compilation
  1232. environments: MSVC, Cygwin and MingW32 #pragma is specific to MS
  1233. compiler
  1234. * src/freeglut_internal.h: Explicitly cast function pointer to (void *)
  1235. in SET_WCB since all callbacks stored as void pointers suppress gcc
  1236. -Wall -pendantic "noise"
  1237. * src/freeglut_structure.c: Typesafe handling of temporary window
  1238. destroy callback Move assignment out of while test, scope temporary
  1239. inside loop Be explicit about assignment/comparison in if test for gcc
  1240. peace of mind suppress gcc -Wall -pendantic "noise"
  1241. * src/freeglut_internal.h: Three supported win32 compilation
  1242. environments: MSVC, Cygwin and MingW32 The windows mmsystem header
  1243. need only be included internally to freeglut strdup vs _strdup is
  1244. specific to the MS compiler
  1245. * src/freeglut_font.c: strlen expects (char *), rather than (unsigned
  1246. char *) suppress gcc -Wall -pendantic "noise"
  1247. * src/freeglut_cursor.c: Replace assignment of array to struct with
  1248. field-by-field assignment suppress gcc -Wall -pendantic "noise"
  1249. * src/freeglut_menu.c: glutBitmapString and glutBitmapLength expect
  1250. (unsigned char *) rather than (char *) suppress gcc in -Wall
  1251. -pendantic "noise"
  1252. * src/freeglut_joystick.c: Replace #ifdef WIN32 with #ifdef
  1253. TARGET_HOST_WIN32, as per FreeGLUT convention
  1254. * src/freeglut_init.c: fgState.FPSInterval is unsigned int (GLuint),
  1255. environment variable GLUT_FPS can be negative
  1256. * src/freeglut_window.c: OpenGL context is not made current on Win32
  1257. until fgSetWindow is called. This resolves severe problems observed in
  1258. GLUI applications.
  1259. * src/freeglut_window.c: #pragma message is only understood my MS
  1260. compiler #if defined(_MSC_VER) .. #endif
  1261. * src/freeglut_state.c: Resolve bug 864978 - GLUT_OWNS_JOYSTICK
  1262. unhandled
  1263. * src/freeglut_main.c: Tidy nested if/else to suppress gcc -Wall
  1264. -pedantic noise gcc suggests explicit braces to avoid ambiguous `else'
  1265. 2003-12-25 rkrolib
  1266. * progs/demos/CallbackMaker/CallbackMaker.c,
  1267. progs/demos/Fractals/fractals.c,
  1268. progs/demos/Fractals_random/fractals_random.c: Configuring with
  1269. "--enable-warnings" broke three demos: * CallbackMaker defined, but
  1270. did not use, the Joystick() function (a callback for the freeglut
  1271. joystick interface). I uncommented the callback-registration. I assume
  1272. that it was commented out because it was spammy. (freeglut does
  1273. joysticks by polling with a timer.) Perhaps a longer interval than
  1274. 10ms would be advisable?
  1275. * fractals.c used strcpy() without getting the prototype. Added
  1276. #include <string.h> at the top.
  1277. * fractals_random.c had the same problem as fractals.c.
  1278. 2003-12-23 rkrolib
  1279. * src/freeglut_main.c: Moved the window-resize code so that it happens
  1280. whenever there is a pending resize for the window, whether or not the
  1281. window is visible or in need of a redisplay. The resize is now done
  1282. before the visibility and need-to-redisplay checks.
  1283. 2003-12-22 rkrolib
  1284. * src/freeglut_structure.c: Got rid of those int/ptr warnings on AMD64.
  1285. (The code was casting an {int} to a pointer, and later retrieving the
  1286. int by another cast. It should be safe provided that pointers are at
  1287. least as big as {int}, but GCC was giving warnings on my system,
  1288. so...fixed.)
  1289. * src/freeglut_main.c, src/freeglut_structure.c: Several
  1290. test-on-assignment cases have been converted to stop GCC from
  1291. complaining about if( a = get_a_value_for_a( ) ) type code.
  1292. 2003-12-19 rkrolib
  1293. * src/freeglut_internal.h: Ooops, left some cruft in a comment in the
  1294. header when committing the last patch. Cleaned up.
  1295. * src/freeglut_callbacks.c, src/freeglut_internal.h,
  1296. src/freeglut_structure.c: Wrote SET_WCB() to set a window callback.
  1297. This lets us out of using the FETCH_WCB() as an lvalue (which it
  1298. shouldn't, since the value of the FETCH is cast to the correct
  1299. function-pointer type).
  1300. 2003-12-15 James Jones <puggles@users.sourceforge.net>
  1301. * progs/demos/Fractals/Fractals.dsp: Change the destination directory of
  1302. the debug version to "Debug" (John Fay)
  1303. 2003-12-13 James Jones <puggles@users.sourceforge.net>
  1304. * ChangeLog: Release 2.2.0
  1305. 2003-12-11 rkrolib
  1306. * src/freeglut_main.c, src/freeglut_window.c: Stripped out TABs that got
  1307. reintroduced.
  1308. There were no changes other than replacing about 10 to 12 TABs with a
  1309. visually-suitable number of spaces, so this can probably be blindly
  1310. treated as equivalent to the previous versions of the two affected
  1311. files.
  1312. 2003-12-11 Christopher John Purnell
  1313. * src/freeglut_internal.h, src/freeglut_structure.c: The deferred window
  1314. destruction code was destroying the windows in reverse order. This
  1315. cased a crash when the call to glutDestroyWindow() for a sub windows
  1316. was immediately followed by a call to glutDestroyWindow() for it's
  1317. parent. fgCloseWindows() would call fgDestroyWindow() for the parent
  1318. first fgDestroyWindws() would recurse over the children and then
  1319. fgCloseWindows() would call fgDestroyWindow() again for the child.
  1320. I've replaced the single linked list with one of our two way link list
  1321. structures. I've also moved it into fgStructure because that seemed
  1322. the consistent thing to do.
  1323. I said the the deferred windows destruction causes more problems then
  1324. it solves.
  1325. 2003-12-11 James Jones <puggles@users.sourceforge.net>
  1326. * progs/demos/CallbackMaker/Makefile.am: Include project file in the
  1327. distribution.
  1328. * ChangeLog: Updates for 2.2.0 RC2
  1329. * progs/demos/demos.dsw: Add shapes to the Visual C workspace.
  1330. * progs/demos/shapes/Makefile.am: Package the visual C project file with
  1331. the distribution
  1332. * configure.in: Set the version to 2.2.0
  1333. * src/freeglut_gamemode.c, src/freeglut_main.c, src/freeglut_window.c:
  1334. Nigel Stewart's Win32 window-sizing fix for game mode
  1335. * progs/demos/One/one.c: Disable/enable lighting in the "one.c" demo
  1336. (John Fay)
  1337. * progs/demos/CallbackMaker/CallbackMaker.dsp: Add some essentials to
  1338. get this program to compile (Nigel)
  1339. * src/freeglut_internal.h: Update to reflect 2.2.0 release
  1340. * ChangeLog: Note the release of 2.2.0 RC1
  1341. 2003-12-11 rkrolib
  1342. * src/freeglut_structure.c, src/freeglut_window.c: John correctly
  1343. observed that the initialization {OldHeight} and {OldWidth} in the
  1344. window structure should be done for both windows and sub-windows, and
  1345. the easiest way to do this is in the
  1346. freeglut_structure.c:fgCreateWindow() code. So, transplant one line.
  1347. 2003-12-10 rkrolib
  1348. * src/freeglut_main.c: Commit of John's change to stop an infinite-loop
  1349. condition when the only windows left are freeglut menu windows, and
  1350. correctly calls exit() if we drop out of the main loop without having
  1351. requested any freeglut extensions to glutMainLoop() handling.
  1352. 2003-12-07 rkrolib
  1353. * progs/demos/shapes/shapes.c, progs/demos/shapes/shapes.dsp: Two from
  1354. Nigel:
  1355. * Updated shapes.c. I think that it's just reformatting and the
  1356. addition of some comments.
  1357. * Added shapes.dsp, a Microsoft Visual C++ Developer Studio Project
  1358. file for building shapes on WIN32 with MSVC++.
  1359. 2003-12-03 Christopher John Purnell
  1360. * configure.in: Added an option to enable gcc compiler warnings. I've
  1361. explicitly excluded the one about adding parentheses.
  1362. 2003-12-03 rkrolib
  1363. * src/freeglut_main.c: Touched up several comments, pointing up things
  1364. that may be worth reflect- ing upon in the future.
  1365. * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
  1366. Hrm. I misunderstood the purpose of {window->State.Width} and
  1367. {...Height}. Those are *not* records of the old values, but rather of
  1368. the *desired* *new* values, hence it was inappropriate to use them in
  1369. ConfigureNotify X11 event handling. Doing so introduced some new
  1370. problems.
  1371. So, I created OldHeight and OldWidth in the window State structure,
  1372. and *those* do what I require.
  1373. I also stripped out the obsolete comment about getting extra/bogus
  1374. reshape events. (Though I maintain that an application should be
  1375. robust against them, freeglut should no longer generate them if the
  1376. window has not changed size since last reported.)
  1377. 2003-12-02 rkrolib
  1378. * src/freeglut_main.c: Changed Create/ConfigureNotify handling in
  1379. UNIX_X11:
  1380. * Just need to call GETWINDOW() once. Ooops. Heh. * Update
  1381. {window->State} with the new size of the window. * If the window-size
  1382. has NOT changed, then do NOT call the Reshape event.
  1383. * src/freeglut_main.c: Added an "XXX" earmark for post-release
  1384. contemplation. (The point is definitely in need of consideration, I
  1385. believe, but is not immediately a major bug, so I'd rather not mess
  1386. with it at the risk of postponing a release "soon".)
  1387. * src/freeglut_main.c: Ensure that the time-out for sleeping is never
  1388. negative.
  1389. * src/freeglut_main.c: Fixed a bug for UNIX_X11 where window reshape
  1390. events were causing freeglut to mark the window as *needing* a reshape
  1391. (which during general display callback handling would result in
  1392. effectively a glutReshapeWindow()).
  1393. The code is now system-dependent. It should be abstracted to a
  1394. function, but is presently copied in two places. Sorry.
  1395. Also, inverted the order of the associated if()/else check (in both
  1396. WIN32 and UNIX_X11 branches) since the former "else" part was a
  1397. one-line callback invocation.
  1398. This fixes two seemingly unrelated bugs that I was seeing in UNIX_X11.
  1399. 2003-12-01 Christopher John Purnell
  1400. * src/freeglut_internal.h: Added missing prototype for new list
  1401. function.
  1402. 2003-11-28 Christopher John Purnell
  1403. * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
  1404. src/freeglut_structure.c: Timer optimizations. Made the list of
  1405. pendinig timers ordered. Added a free list of used timer structures.
  1406. * src/freeglut_callbacks.c: Timer optimizations.
  1407. * src/freeglut_window.c: Fixed windows compilation problem with last
  1408. update.
  1409. 2003-11-27 Christopher John Purnell
  1410. * src/freeglut_gamemode.c, src/freeglut_internal.h, src/freeglut_main.c,
  1411. src/freeglut_structure.c, src/freeglut_window.c: Window close fix. The
  1412. default behaiour should now be the same as with glut.
  1413. 2003-11-26 rkrolib
  1414. * src/freeglut_init.c: Added change from Nigel to have resize events
  1415. cause redraw events in WIN32. Also slightly reshuffled comments to
  1416. deal with line-wrap issues.
  1417. 2003-11-25 rkrolib
  1418. * src/freeglut_main.c: John reported, and fixed, a problem that recent
  1419. changes caused for the Lorenz demo (seems to be WIN32 specific).
  1420. * src/freeglut_structure.c: Update from John: Removed the freeglut hack
  1421. of decrementing the highst-window-ID marker when the highest window is
  1422. deleted. (This was a half-way measure for an idea that was decided to
  1423. be dubious in the first place.)
  1424. * configure.in, progs/demos/Makefile.am, progs/demos/shapes,
  1425. progs/demos/shapes/Makefile.am, progs/demos/shapes/shapes.c: Added a
  1426. new demo (from Nigel) showing some of the basic GLUT geometry shapes.
  1427. "shapes" is the name of the demo.
  1428. * include/GL/freeglut_ext.h, src/freeglut_geometry.c: Commit of work
  1429. from Nigel:
  1430. Massive rework of the geometric primitive code. Includes a new
  1431. primitive (cylinder; solid and wireframe) and corresponding update to
  1432. freeglut_ext.h for the prototype.
  1433. * src/freeglut_internal.h, src/freeglut_main.c,
  1434. src/freeglut_structure.c: More work from John (sorry for
  1435. procrastinating):
  1436. * We forgot to bump our version number in freeglut_internal.h It is
  1437. now at 2.0.2 (actually, I think that 2.1.0 might be a better choice),
  1438. which is presumably going to be our next formal release. 2.0.1 is
  1439. incorrectly identified as 2.0.0 in the header.
  1440. * A typo in a comment has been corrected ("than"/"that").
  1441. * Numerous "manual" checks for callbacks are omitted now, since
  1442. INVOKE_WCB() does this for us. These were holdovers from the
  1443. pre-INVOKE_WCB() days. There may be some very subtle changes in
  1444. freeglut behavior, since freeglut used to test the callbacks a little
  1445. earlier in some cases and may have skipped some minor things (like
  1446. changes to the current window) in some special cases, otherwise. It is
  1447. not believed that any documented behavior is broken, and it is
  1448. unlikely---not to say impossible---that any extant applications will
  1449. detect the change. It is even possible that there is no external
  1450. behavioral change in freeglut.
  1451. This also significantly simplifies some sections of code that used to
  1452. have conditional execution. "Unconditional code is simpler code" as
  1453. one of the comments used to say.
  1454. * Lots of XXX commentary is now removed. Some of it was obsoleted by
  1455. other changes, some by changes from John.
  1456. * src/freeglut_internal.h, src/freeglut_main.c,
  1457. src/freeglut_structure.c: Change from John (I removed a couple of
  1458. spaces from a couple of lines in his freeglut_internal.h file where
  1459. they were wrapping in EMACS; otherwise, the files are exactly as he
  1460. sent them to me).
  1461. The change unifies the WIN32 and UNIX_X11 code by defining our own
  1462. window-handle-type in freeglut_internal.h. This let John rip out some
  1463. #if garbage in several places. The result is clearer code.
  1464. Thanks, John!
  1465. 2003-11-21 rkrolib
  1466. * src/freeglut_font.c, src/freeglut_geometry.c,
  1467. src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
  1468. src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
  1469. src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
  1470. src/freeglut_window.c: Numerous style normalizations from John:
  1471. * Convert "return( value );" to "return value;" * Normalize spacing
  1472. around semicolons. * Remove extraneous parens. * Split multi-statement
  1473. lines into multiple lines. (Mostly things of the form: "if( condition
  1474. ) return;".)
  1475. * src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_window.c:
  1476. All changes are from John, except for: (a) I re-inserted the meat of a
  1477. comment that I still feel is relavent. (b) I fixed a compile-time
  1478. error in the UNIX_X11 code where a variable is declared after
  1479. executable code in a block without creating a new sub-block for the
  1480. declaration.
  1481. Changes from John include: (a) Style revision. (b) Changes to postpone
  1482. the handling of window resizes.
  1483. Lots of lines were changed, but I think that thos two cover the ground
  1484. that he hit. See the diffs for details.
  1485. 2003-11-18 Christopher John Purnell
  1486. * src/freeglut_cursor.c, src/freeglut_ext.c, src/freeglut_geometry.c,
  1487. src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
  1488. src/freeglut_menu.c, src/freeglut_state.c, src/freeglut_structure.c:
  1489. Lots of stuff that John F. Fay pointed out. Plus some changes to
  1490. remove gcc warnings.
  1491. 2003-11-17 Christopher John Purnell
  1492. * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
  1493. src/freeglut_state.c, src/freeglut_structure.c: Fix spelling mistake
  1494. in a variable name. Added a comment for John Fay. Added the copyright
  1495. notice for XParseGeometry source.
  1496. 2003-11-16 Christopher John Purnell
  1497. * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
  1498. src/freeglut_state.c, src/freeglut_structure.c: Made Modifers variable
  1499. global as per glut classic.
  1500. * src/freeglut_init.c: Removed old unused glutInitDisplayString code.
  1501. Reformated new glutInitDisplayString and XParseGeometry code.
  1502. * src/freeglut_init.c: Use XParseGeometry for better geometry parsing.
  1503. Moved geometry parsing to after fgInitialize() so we can use the
  1504. screen size to correctly calculate negative positions in the geometry
  1505. string. Copied the code for XParseGeometry from the X11 sources for
  1506. use in the Win32 version. freeglut now passes test1 of the glut test
  1507. suite.
  1508. 2003-11-15 Christopher John Purnell
  1509. * src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
  1510. src/freeglut_main.c, src/freeglut_structure.c, src/freeglut_window.c:
  1511. Removed the state variable BuildingAMenu. Instead pass a new parameter
  1512. isMenu to fgCreateWindow(). Elsewhere use window->IsMenu.
  1513. * src/freeglut_init.c: freeglut_assert_ready is going to have to go at
  1514. some point. But for now I've moved setting fgState.Initalized to
  1515. GL_FALSE.
  1516. * src/freeglut_callbacks.c, src/freeglut_display.c,
  1517. src/freeglut_gamemode.c, src/freeglut_init.c, src/freeglut_internal.h,
  1518. src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
  1519. src/freeglut_misc.c, src/freeglut_state.c, src/freeglut_structure.c,
  1520. src/freeglut_window.c: Replace TRUE with GL_TRUE and FALSE with
  1521. GL_FALSE where the type is GLboolean.
  1522. 2003-11-15 rkrolib
  1523. * src/freeglut_main.c, src/freeglut_menu.c: Normalized the spacing
  1524. around symbols, for the most part. Ho-hum.
  1525. 2003-11-15 Christopher John Purnell
  1526. * src/freeglut_main.c: Added a call to fgDeinitialize() before the call
  1527. to exit() in fgError().
  1528. 2003-11-15 rkrolib
  1529. * src/freeglut_joystick.c: Style normalizations to the joystick code.
  1530. 2003-11-15 Christopher John Purnell
  1531. * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
  1532. src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
  1533. Added a new state variable "Initalized". Replaced referenced to
  1534. Time.Set with this new variable where appropriate. fgElapsedTime() now
  1535. set the start time if Time.Set is false. Moved
  1536. glutGet(GLUT_ELAPSED_TIME) handling to before the assert.
  1537. 2003-11-14 rkrolib
  1538. * src/freeglut_internal.h: Normalized the internal header's style a bit.
  1539. * src/freeglut_init.c: Plowed one more file this morning. Still just
  1540. trivial formatting issues.
  1541. And I left alone the "INIT DISPLAY STRING PARSING" section, since it
  1542. still appears to be in flux.
  1543. * src/freeglut_font.c, src/freeglut_gamemode.c: Yet more trivial style
  1544. normalizations.
  1545. Sorry, but that's all that I'm up to at the moment. On the plus,
  1546. excepting the font_data file (which I've been skipping), up through
  1547. this file, I think that the code style is pretty close to uniform.
  1548. * src/freeglut_font.c: Minor style corrections.
  1549. * src/freeglut_display.c: Minor spacing quibble.
  1550. * src/freeglut_cursor.c: Added a brief explanatory note to the X code
  1551. for GLUT_CURSOR_NONE.
  1552. Corrected the indentation of a block of code.
  1553. * src/freeglut_window.c: Noted one of a few cases where we do something
  1554. immediately that could more efficiently be postponed, quite
  1555. easily---and which GLUT promises *is* to be postponed. (It is unlikely
  1556. that the difference will break any apps, but postponing should be
  1557. easy...)
  1558. No real change, just a comment in the code.
  1559. 2003-11-11 rkrolib
  1560. * ChangeLog: Updated ChangeLog for the day.
  1561. * include/GL/freeglut_std.h, progs/demos/One/one.c, src/freeglut_ext.c,
  1562. src/freeglut_font.c: Removal of all remaining TABs in the freeglut
  1563. *.[ch] files. (I missed a few in the "one" demo, it seems, and some
  1564. more crept back into freeglut_(ext|font).c, presumably due to my own
  1565. edits when I forgot to use the "freeglut-c-mode" in EMACS.)
  1566. * progs/demos/One/one.c: Moved glutInit*() functions ahead of
  1567. glutInit(). (This is proper use of glutInit() in general, since it
  1568. allows the user to override settings via {argc, argv} command-line
  1569. params.)
  1570. * progs/demos/One/one.c: Style normalizations: Removed CRs and hard TABs
  1571. mostly.
  1572. * ChangeLog, src/freeglut_structure.c: Corrected the numbering of the
  1573. ChangeLog (there were two (110)s).
  1574. Added entries summarizing my commits since September or late August,
  1575. for the benefit of those lacking both CVS and web access.
  1576. * progs/demos/demos.dsw: Added CRs to the ends of all lines in MS
  1577. developer studio demos.dsw file..
  1578. 2003-11-10 rkrolib
  1579. * src/freeglut_main.c: John's fix for the minimize/close/maximize
  1580. controls no longer working. WIN32 expected us to pass the message on
  1581. up the chain (or do something else with it), rather than just throwing
  1582. away the event, for a certain class of events. (See the diffs for more
  1583. details.)
  1584. The code is also slightly reformatted from what was previously in the
  1585. repository.
  1586. * freeglut.dsp, freeglut_static.dsp,
  1587. progs/demos/CallbackMaker/CallbackMaker.dsp, progs/demos/demos.dsw: A
  1588. *.dsp file for CallbackMaker in the demos.
  1589. Plus updated *.dsp and *.dsw files to reflect the new freeglut header
  1590. file.
  1591. NOTE: The prior version of the *.dsw file does not in fact have CRs. I
  1592. thought that it did. For consistency, I am not putting them in in this
  1593. version, either. (At least one person said that his MSVC++ system is
  1594. happy with the current files. If there are problems, we can easily add
  1595. the CRs, but that should be a separate commit...)
  1596. * configure.in, progs/demos/CallbackMaker,
  1597. progs/demos/CallbackMaker/CallbackMaker.c,
  1598. progs/demos/CallbackMaker/Makefile.am,
  1599. progs/demos/Fractals_random/fractals_random.c,
  1600. progs/demos/Makefile.am: New demo from John: CallbackMaker.
  1601. This demo shows the use of every callback that you can register with
  1602. freeglut, and also generates event reports so that you can see what is
  1603. happening to the program as it runs.
  1604. Not much to look at, but both utilitarian and a practical example.
  1605. Please double-check that I updated everything that needs to be
  1606. updated. I reran autogen.sh and ./configure, and it built okay for me.
  1607. (^&
  1608. * src/freeglut_structure.c: Hm. I thought that I already hit this file
  1609. for style normalization. Oh well... Should be no functional changes.
  1610. Should be pretty close to in-line with the style of changes that I've
  1611. been making else- where.
  1612. * src/freeglut_structure.c: Ooops. Forgot that we already had a call to
  1613. fgClearCallBacks() in the code and added a second one. I just deleted
  1614. the new one. Sorry.
  1615. * src/freeglut_structure.c: Added Nigel's suggested code to clear all
  1616. but the destroy callback early on, leaving Destroy to be cleared later
  1617. after the last possible point where it should be invoked.
  1618. * src/freeglut_menu.c: Modified the menus to refer to {border} rather
  1619. than {FREEGLUT_MENU_BORDER}, in fghDisplayMenuBox(). The local
  1620. variable was already defined and used for some purposes, so we might
  1621. as well use it throughout. It does serve to shorten and clarify the
  1622. code a bit---though I have mixed feelings about creating aliases that
  1623. way.
  1624. Still, the variable already existed and was already used in places.
  1625. (We could even move it into the freeglut state, or make it a {const
  1626. static} value...)
  1627. Oh well. Stuff to ponder.
  1628. * src/freeglut_cursor.c: Well, a couple of days have gone by, so I
  1629. assume that items (a) and (b) in the freeglut_cursor.c file's "Open
  1630. issues" comment are now satisfactor- ily closed.
  1631. I also partially implemented some error-checking, using my limited
  1632. understanding of how Xlib users are supposed to do this. (No one
  1633. commented about the lack of error-checking, pro or con. Perhaps
  1634. someone will care to comment now?)
  1635. At present, it just will print out a warning, via fgWarning(). In part
  1636. because I'm not sure what is best to do, and in part because failure
  1637. to set the cursor type is probably not a fatal problem.
  1638. 2003-11-08 Christopher John Purnell
  1639. * progs/demos/Fractals/Makefile.am,
  1640. progs/demos/Fractals_random/Makefile.am,
  1641. progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Applied
  1642. Braden McDaniel's non-srcdir build patch.
  1643. 2003-11-08 rkrolib
  1644. * src/freeglut_menu.c: A first pass over freeglut_menu.c to bring it in
  1645. line with the rest of freeglut's style. Mostly re-indenting and
  1646. splitting long lines. For those that may be concerned: No, I didn't do
  1647. any more arrangements of the form (CONST == a) rather than (a ==
  1648. CONST). (^&
  1649. * progs/demos/Fractals_random/fractals_random.c: Altered the way that
  1650. the {random} value (from 0..3) is chosen.
  1651. Previously, it picked out two adjacent bits in the result of rand().
  1652. Unfortunately, these adjacent bits (at least on NetBSD) have a certain
  1653. amount of dependence. After a period (perhaps a thousand or so?), it
  1654. starts to repeat the pattern of those two bits. (I think; I haven't
  1655. actually tested that directly.) This presumably is locking it into a
  1656. an an N-way attractor on the "snowflake", such that if you zoom in a
  1657. ways, you will start to see some spots *quickly* are colored, and
  1658. others are *never* colored.
  1659. What I've done now is to pick up two widely-spaced bits in a single
  1660. rand() call. (Perhaps we would do as well to pick up something like
  1661. bit #16 from two consecutive rand() calls?) These widely-spaced bits
  1662. have a lower statistical dependence on one another (if I can get away
  1663. with using that term for an arithmetic operation; though since stats
  1664. has more to do with sampling and less to do with true randomness, I
  1665. may be safe).
  1666. The net effect, at leats on NetBSD, is far better snowflake if you
  1667. zoom in on it.
  1668. 2003-11-07 rkrolib
  1669. * src/freeglut_main.c: From John:
  1670. [This] implements the visible/invisible for Windows. It does NOT call
  1671. the visibility callback, though.
  1672. * src/freeglut_main.c: Stripped out the now truly extraneous {braces} in
  1673. such forms as:
  1674. if( ... ) { INVOKE_WCB( ... ); }
  1675. Check for compiling on WIN32.
  1676. * src/freeglut_internal.h: Adopted Eero Pajarre's suggestion of using a
  1677. do { ... } while rather than { ... } for the INVOKE_WCB() macro. This
  1678. lets it be used "more like a function", in that:
  1679. if( ... ) INVOKE_WCB( ... ); else ...
  1680. ...is now legal.
  1681. * src/freeglut_main.c: Pure code janitoring: Shuffled the order of some
  1682. of the case statements in the UNIX_X11 X event processing loop. (In
  1683. general, it's nice to have case statements sorted, especially when you
  1684. have a *huge* switch statement like this. That makes it easier to find
  1685. the one that you're looking for, and to see if a certain case is
  1686. defined...)
  1687. * src/freeglut_main.c: Combined EnterNotify and LeaveNotify event
  1688. processing in the UNIX_X11 event loop.
  1689. * src/freeglut_main.c: Added ReparentNotify case to UNIX_X11 event loop,
  1690. to catch the extraneous ReparentNotify event types (type 21).
  1691. * src/freeglut_internal.h, src/freeglut_structure.c: Oh well, I might as
  1692. well add the call to clear callbacks on window destruction. Also
  1693. renamed the function to do this: fgClearCallBacks(). Ho-hum.
  1694. * src/freeglut_internal.h, src/freeglut_structure.c: Added
  1695. fgInitCallBacks() to freeglut_structure.c. (The function takes an
  1696. {SFG_Window *}.) Added prototype to freeglut_internal.h. Added use of
  1697. the function to the window initialization. (Don't count on calloc(),
  1698. which sets all bits to 0.)
  1699. * src/freeglut_gamemode.c: Style normalization; removal of
  1700. say-nothing-useful comments.
  1701. * src/freeglut_font.c: Normalized the style of freeglut_font.c No
  1702. substantial alterations.
  1703. * src/freeglut_ext.c: Somewhat normalized the style of this file.
  1704. Also moved the "glutMouseWheelFunc" extension down into the
  1705. "extensions" part of the table. (Purely internal organization. It will
  1706. still be found.)
  1707. * src/freeglut_display.c: Further normalization of the code's style. No
  1708. substantial changes.
  1709. * src/freeglut_cursor.c: Split one last overlong line in
  1710. freeglut_cursor.c.
  1711. * src/freeglut_cursor.c: Added GLUT_CURSOR_NONE support in UNIX_X11
  1712. (well, NetBSD; you lot need to try it on others; (^&).
  1713. Deallocated some resources that we are creating. VERY slight memory
  1714. leak, but plugged now.
  1715. These two complete the first two "Open issues" ( (a) and (b) ). The
  1716. first one also completes X support for glutSetCursor(). If others can
  1717. verify, we can fully demote the outstanding bug over this to
  1718. WIN32-specific.
  1719. I'll delete the dead Open issues and re-letter the others if someone
  1720. will cross-check me. Or if no one says anything in a day or two. (^&
  1721. * src/freeglut_cursor.c: Further normalized the style of the cursor
  1722. code.
  1723. * src/freeglut_callbacks.c: Slight style improvements. Two rules of
  1724. thumb that are almost always good to apply:
  1725. * Don't write a == CONST. Instead, write CONST == a. Or, more
  1726. generally (in C like languages): Avoid putting an lvalue on the
  1727. left-hand side of an == comparison. (For consistency, I try to avoid
  1728. lvalues on the left- hand side of any comparison---but == is the most
  1729. notorious.)
  1730. (An "lvalue" is a value that can safely go on the left side of an "="
  1731. assignment, of course. (^&)
  1732. * Do not write if( !condition ) return; other_thing; return;
  1733. (See page 18 of K&P's _The Elements of Programming Style_.)
  1734. Instead, it is better to just write:
  1735. if( condition ) other_thing; return;
  1736. There are times when sacrificing structured programming (e.g., via
  1737. multiple return statements) is okay. But, here, there is no apparent
  1738. gain---indeed, there seems only loss---in the non-structured code.
  1739. * src/freeglut_main.c: Grr. Forgot to enable the "freeglut" C
  1740. programming mode in EMACS, and had a few TABs in the last commit. This
  1741. fixes that. Sorry.
  1742. * src/freeglut_main.c: Minor corrections to the UNIX_X11 mouse-wheel
  1743. support. In part this reflects that {button} is already shifted to the
  1744. GLUT numbering, and hence should be counted as 3&4, 5&6, etc.
  1745. The other change was simply to clarify the computation of {direction}.
  1746. The original code did some clever arithmetic. The new code is more
  1747. straightforward, even if it requires more lines to express.
  1748. 2003-11-06 rkrolib
  1749. * src/freeglut_main.c: Ooops. I screwed up on part of John's fixes.
  1750. Sorry.
  1751. I think that I have his fix properly committed now. Mea culpa.
  1752. * src/freeglut_callbacks.c, src/freeglut_internal.h,
  1753. src/freeglut_main.c, src/freeglut_structure.c: Cleanup pass after
  1754. committing callback conversion (from structure to array-of-pointers).
  1755. Mostly deleted commented-out struct-based code. Also added some XXX
  1756. comments that I though should be pondered. (My own pair of eyes, and
  1757. one brain cell, were not sufficient at this time to decide what to do
  1758. for those ponderables. (^&)
  1759. * src/freeglut_callbacks.c, src/freeglut_init.c,
  1760. src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
  1761. src/freeglut_misc.c, src/freeglut_structure.c: Converted the
  1762. "Callbacks" structure (with named members holding individual callback
  1763. pointers) to a "CallBacks" array in fgState. (This is to allow us to
  1764. write a loop to clear all callbacks from windows when the window is
  1765. dead/dying. Using this, we can safely assign NULL to each in a loop.)
  1766. Support includes two new macros, FETCH_WCB() and INVOKE_WCB(). See
  1767. freeglut_internal.h for more details there.
  1768. Some typedefs of function pointer types were altered to make them more
  1769. uniform (necessary for the macros).
  1770. All references to window-based callbacks in freeglut are updated to
  1771. use the new macros.
  1772. Old usages will cause compile-time errors.
  1773. As a side bonus, the new invocation macro sets the current window and
  1774. checks pointers so that these common steps can be uniformly done on
  1775. every window-based callback. This makes it easier to do things right.
  1776. At the same time, the array notation (and now required associated
  1777. casts) make it harder to bypass the macros and abuse the function
  1778. pointers, in general.
  1779. After this commit, I will go through the code and clean up dangling
  1780. issues about formatting. This commit is just a "it now works, let's
  1781. checkpoint it" type of affair.
  1782. * src/freeglut_main.c: From John, a couple of lines needed to be changed
  1783. to fix the mouse wheel support on WIN32.
  1784. * progs/demos/Fractals_random/fractals_random.c: Update from John:
  1785. Includes mouse button, mouse motion, and mouse wheel support.
  1786. 2003-11-04 rkrolib
  1787. * src/freeglut_menu.c: Multiple changes from John. Style issues, plus a
  1788. bug-fix to check a pointer before deallocating some memory.
  1789. He also removed one obsolete comment, and added some more comments.
  1790. * src/freeglut_main.c: Some changes, mostly from John. Mostly style
  1791. changes.
  1792. One bug fix from John: Execution state bug-fix in glutMainLoop(), per
  1793. his post yesterday.
  1794. One fix from me: Changed "if( ButtonPress )" to "if( pressed )".
  1795. {ButtonPress} is a constant.
  1796. * progs/demos/Fractals_random/fractals_random.c: Per John's emailed
  1797. desire to have all files obey UNIX EOL conventions, I have stripped
  1798. out carriage returns from this file.
  1799. This is the *only* change, but every line is touched. If you want to
  1800. see the real differences between older and newer versions, you will
  1801. have to get local copies of each and first match their EOL
  1802. convnetions.
  1803. * progs/demos/Lorenz/lorenz.c: Update from John:
  1804. I [John] added a feature to check for memory leaks under Windows.
  1805. * progs/demos/Fractals_random/fractals_random.c: Update from John:
  1806. I [John] converted everything to double precision to avoid compiler
  1807. warnings. I also added a feature to check for memory leaks under
  1808. Windows and removed a memory leak (surprise!).
  1809. * src/freeglut_callbacks.c, src/freeglut_cursor.c,
  1810. src/freeglut_display.c, src/freeglut_ext.c, src/freeglut_font.c,
  1811. src/freeglut_gamemode.c, src/freeglut_geometry.c,
  1812. src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
  1813. src/freeglut_joystick.c, src/freeglut_main.c, src/freeglut_menu.c,
  1814. src/freeglut_misc.c, src/freeglut_overlay.c, src/freeglut_state.c,
  1815. src/freeglut_structure.c, src/freeglut_teapot.c,
  1816. src/freeglut_videoresize.c, src/freeglut_window.c: Got rid of the
  1817. G_LOG_DOMAIN junk, per discussion on the mailing list.
  1818. * src/freeglut_callbacks.c: Minor formatting quibbles. (The brain isn't
  1819. up to anything more serious at the moment.)
  1820. * src/freeglut_main.c: Missed a block where one level was 2-space
  1821. indented.
  1822. Nit-picked a few other lines for consistency.
  1823. 2003-11-03 rkrolib
  1824. * src/freeglut_init.c: Fixed a memory leak (thanks for the correction,
  1825. John!).
  1826. Smoothed over some code style issues while I was here, but left the
  1827. init-string parsing alone for now.
  1828. * freeglut13.dsp, freeglutdll.dsp, freeglutstatic.dsw: Deleted 3 files
  1829. (again?) from CVS, on John's request. Old/obsolete MSVC++ project
  1830. files. (freeglut13.dsp, freeglutdll.dsp, freeglutstatic.dsw)
  1831. * src/freeglut_main.c, src/freeglut_structure.c: * Indentation issues. *
  1832. Pulled some common code into a nicely packaged function. * Found some
  1833. pointer/int issues.
  1834. * src/freeglut_main.c: Heh.
  1835. Forgot to wrap the fgGetXModifiers() in a #if. Fixed.
  1836. * src/freeglut_main.c: Extracted some common code to a subroutine, in
  1837. glutMainLoopEvent(). (The common code was a snippet to compute X
  1838. keyboard modifiers as a bit-mask of GLUT symbols.)
  1839. * src/freeglut_main.c: Caught a few more little style issues.
  1840. * src/freeglut_main.c: Added a "case" for an X event that we turn on but
  1841. do not use. ({MapNotify}). We already caught {MappingNotify} and
  1842. {UnmapNotify}.
  1843. * src/freeglut_main.c: * Fixed a bug in the X11 handling of
  1844. scrollwheel/mouse. The old code, I believe, checked if *either* a
  1845. wheel or button callback was set, and then decided which to use---and
  1846. unconditionally called it. I left the "either" check in, but added
  1847. additional checks before actually doing the invocation. * Lots of
  1848. reformatting. Massive. The usual suspects, though, and fairly trivial:
  1849. Re-indenting to standard size, shuffling some spaces to match the
  1850. freeglut "standard" of: if( ... ) ...and: func( ... )
  1851. 2003-10-31 rkrolib
  1852. * src/freeglut_callbacks.c: Cleaned up one macro definition.
  1853. Picked up an over-long line that I missed before.
  1854. * src/freeglut_callbacks.c: Fit some long lines to 80 columns.
  1855. * src/freeglut_cursor.c, src/freeglut_display.c,
  1856. src/freeglut_gamemode.c, src/freeglut_geometry.c: Last of the hard
  1857. TABs in the src/*.c files.
  1858. * src/freeglut_init.c, src/freeglut_joystick.c, src/freeglut_main.c,
  1859. src/freeglut_menu.c, src/freeglut_state.c: En masse removal of most (I
  1860. think) of the remaining hard TABs in files. There are still a couple
  1861. of files that need to be hit.
  1862. * src/freeglut_window.c: Picked up some stray TABs scattered in this
  1863. file.
  1864. * src/freeglut_window.c: Noted by XXX comments that the XFlush() calls
  1865. probably shouldn't be there. Flushing the X protocol stack every
  1866. little bit both adds clutter to the code and may impede performance.
  1867. It seems that we should be able to get rid of these, though allowing
  1868. client code to directly call glutMainLoopEvent() does make it a little
  1869. more complicated.
  1870. Something to ponder.
  1871. * src/freeglut_window.c: Polished off the say-nothing-new comments and
  1872. lines-over-80-columns in freeglut_window.c
  1873. There should be no functional changes.
  1874. * src/freeglut_window.c: Missed a few say-nothing-new comments in
  1875. fgOpenWindow(). Eeep. Should be better now. (^&
  1876. * src/freeglut_window.c: Cleansed fgCloseWindow(): * say-nothing-new
  1877. comments axed. * de-TABbed. * Made the white-space to be consistent.
  1878. * src/freeglut_window.c: Cleaned up fgOpenWindow(): * Removed TABs. *
  1879. Made indentation consistent. * Deleted say-nothing-new comments. *
  1880. Changed an *error*check* from an assert to an if(). (The error-check
  1881. was on window creation; we don't want to lose that if the user
  1882. compiles with asserts deactivated. Also, assert()s really tell us more
  1883. about programming errors, rather than run-time errors, so it is a
  1884. little misleading to use assert() for error-checks, even if you can
  1885. depend upon assert()s never being compiled away to null statements.) *
  1886. Added some XXX comments for things that bear some rumination.
  1887. * src/freeglut_window.c: Cleanup to fgSetWindow(). The usual suspects: *
  1888. Removed tabs. * Made indentation consistent. * Killed off
  1889. say-nothing-new comments.
  1890. * src/freeglut_window.c: Cleanup to fgSetupixelFormat(). Should be no
  1891. functional changes.
  1892. Code facelift included:
  1893. * Consistent indentation. * Removal of all TABs (there were a bunch).
  1894. * Fit to 80 columns.
  1895. * src/freeglut_window.c: There should be no changes to code
  1896. functionality, though a fair bit of little changes to the code
  1897. appearance.
  1898. * Fit the comments at the start of the file to fit 80 columns. * Noted
  1899. an unusual feature of the ATTRIB() macro. * Added ATTRIB_VAL() macro
  1900. which is really just two ATTRIB()s. This lets us put things like
  1901. {ATTRIB (GLX_RED_SIZE); ATTRIB (1);} on one statement: {ATTRIB_VAL
  1902. (GLX_RED_SIZE, 1);}. I did this to preserve some of the layout of
  1903. information while also avoiding the nasty semi-visible ";" in the
  1904. middle of a line of code. And by putting the {braces} in the macro
  1905. definition, I was able to visually clean code of the form: if
  1906. (condition) { ATTRIB( X ); ATTRIB( 1 ); } ...rewriting as: if
  1907. (condition) ATTRIB_VAL( X, 1 ); * Eliminated a bunch of
  1908. say-nothing-new comments in fgChooseVisual(). * Combined some
  1909. semi-useful comments into a block comment summarizing a loop.
  1910. 2003-10-30 rkrolib
  1911. * src/freeglut_structure.c: Finished off most of the issues with
  1912. freeglut_structure.c, from a stylistic point of view (at least,
  1913. insofar as: The original file's code was INCON- SISTANT. I did not
  1914. remove the "!= NULL" stuff, did not address the shortest-branch-first
  1915. issue for if-else statements, and left some rather ugly "if (x) {...
  1916. return y} /* else do this */ return NULL;" garbage. This should, I
  1917. think, be re-written as "if (x) return y; else return NULL;" or even
  1918. better, "ret = NULL; if (x) ret = y; return ret;"
  1919. In short, the code still has some issues, but I think that it's a bit
  1920. better.
  1921. (Oh, I also got rid of outstanding TABs.)
  1922. * src/freeglut_structure.c: Eliminated most of the say-nothing-new
  1923. comments.
  1924. Fit most of the code to no more than 80 columns.
  1925. Raised some issues about completeness/correctness of trying to
  1926. decrement the max-window-ID (apparently in order to partially recycle
  1927. some window IDs to slightly slow the rate of growth of window IDs). (I
  1928. didn't change what the code does, though.)
  1929. The functionality of the code should be unchanged.
  1930. * src/freeglut_main.c: Forgot to set {direction} explicitly to +/- 1 for
  1931. freeglut mouse-wheel API on MS-WINDOWS. Oops.
  1932. Now it should always report +/- 1 on MS-WINDOWS, per the spec.
  1933. * src/freeglut_main.c: Minor fix to allow for multiple ticks to be
  1934. received at one time by the WIN32 code. Take abs(direction) as the
  1935. number of ticks, and count it down.
  1936. <stdlib.h> *should* be included by freeglut_internal.h, I think, so it
  1937. should be okay; otherwise add a suitable #include.
  1938. * src/freeglut_main.c: Grrr. My attempt to commit got aborted, and the
  1939. commit message was lost. Now I've lost track of what I said I'd done.
  1940. Something like:
  1941. * Fixed some issues with multiple wheels. * Noted in comments some
  1942. issues about other-than-3-real-buttons. * Fixed formatting to fit 80
  1943. columns. * Removed some BCPL/C++ style comments (//) that are not
  1944. legal, and which, if memory servers, are not even strictly legal when
  1945. disabled by preprocessor directives. E.g.,
  1946. #if 0 not-syntactically-valid-C #endif
  1947. ...is not legal. Though most cpp's will discard the bracketed material
  1948. completely before the main C compiler pass has a chance to analyze the
  1949. syntax. (MSVC++ and GCC both don't seem to mind the BCPL style
  1950. comments in plain C, but let's keep the sources clean, eh?) * Fixed a
  1951. problem that would have caused freeglut to report doubled wheel events
  1952. under XFree86.
  1953. Not tested other than compiling. Personally, I think that the
  1954. interface is inherently broken at this point unless you are willing to
  1955. get user- configuration. (Which would then solve the complaint that
  1956. Steve had about computing the tick-size on behalf of applications.)
  1957. I.e., there is NO WAY to know if we have the right buttons to start
  1958. wheels at, or if there are any buttons after the first wheel(s), etc.
  1959. We just have to guess---and if we are wrong, we can get varying
  1960. degrees of brokeness.
  1961. 2003-10-29 Christopher John Purnell
  1962. * src/freeglut_window.c: There is a problem with the way I did
  1963. glutFullscreen() in my last commit. So I've copied the way the game
  1964. mode does it. It's not ideal but it works. The glutGet() for the
  1965. window border sizes will also have to be fixed at some point.
  1966. * src/freeglut_window.c: Rewrote glutFullscreen(). It now correctly
  1967. places the window in X11. It now uses system dependent code for more
  1968. efficient use of windowing system calls.
  1969. 2003-10-29 rkrolib
  1970. * src/freeglut_joystick.c: Should be no real changes to the code
  1971. function.
  1972. I missed a few lines that went past 80 columns. (^&
  1973. Also made formatting more consistent.
  1974. Added a couple of XXX comments re. FreeBSD vs. general BSD #ifdef's.
  1975. * src/freeglut_joystick.c: Should be entirely superficial changes to
  1976. code style:
  1977. * Fit lines to 80 columns. (It does get tiresome seeing long lines
  1978. forced to break by the right-hand border of windows...(^&) *
  1979. Eliminated say-nothing-new comments. * Made formatting more consistent
  1980. in spots. * Eliminated some hard TAB characters.
  1981. * src/freeglut_joystick.c: Added Thierry's change to include
  1982. sys/param.h. This lets us pick out version numbers for OS releases
  1983. corresponding to system headers.
  1984. I modified it to also work with NetBSD; I cannot confirm if it is safe
  1985. with any other systems, so it remains protected by a #if.
  1986. * src/freeglut_state.c: Deleted some say-nothing-new comments.
  1987. Added some XXX's where comments seemed to require future attention.
  1988. Added some new comments with XXX's where future attention seems
  1989. profitable.
  1990. * src/freeglut_state.c: Deleted a bunch of say-nothing-new comments.
  1991. Someday, there shall be an end to them.
  1992. * src/freeglut_state.c: Previous changes were made without the freeglut
  1993. major mode in EMACS. Re-tweaked some lines (mostly got rid of some
  1994. TABs, but also resulted in some changed indentation).
  1995. Reformatted a big comment to fit to 80 columns.
  1996. Removed bogus references to "Linux". (UNIX, and/or X11 were relavent,
  1997. and "UNIX/X11" was substituted for "Linux" in those places. This
  1998. includes UNIX-alike systems.)
  1999. * src/freeglut_state.c: Rewrote the TODO BEFORE THE STABLE RELEASE
  2000. comment to fit to 80 columns.
  2001. Cleanup of fghGetConfig(). (One return statement, simpler code.)
  2002. Made glutSetOption() have a more consistent style---and also got its
  2003. lines to stay under 80 columns.
  2004. * src/freeglut_misc.c: Got the last of the say-nothing-new comments in
  2005. freeglut_misc.c.
  2006. (I would have picked them up before, but wanted the bug-fix and
  2007. conversion-to-error-message changes to go in before I did more
  2008. superficial stuff.)
  2009. * src/freeglut_cursor.c, src/freeglut_main.c, src/freeglut_misc.c: *
  2010. Fixed a bug that I introduced in fgWarning()/fgError(): I thought that
  2011. ((a) || (b)) was defined to have value as: (a) if (a) != 0 (b) if (a)
  2012. == 0
  2013. ...instead, it has value 0/1. This was causing a bug. It's probably
  2014. just as well, since what I was trying to do definitely fell into the
  2015. category of "clever code" rather than "clear code".
  2016. Sorry.
  2017. * Made glutSetKeyRepeat() call fgError() if you go out of range. (The
  2018. old code silently did nothing---not even a warning.)
  2019. If it is really desirable to keep running, we should probably at least
  2020. generate an fgWarning().
  2021. * Deleted some say-nothing-new comments.
  2022. * XXX added: Is glutSetKeyRepeat() deprecated?
  2023. 2003-10-28 rkrolib
  2024. * include/GL/freeglut_ext.h, src/freeglut_callbacks.c,
  2025. src/freeglut_ext.c, src/freeglut_internal.h, src/freeglut_main.c:
  2026. Commit, mostly of work from John:
  2027. * Removed some say-nothing-useful comments. * Added some tentative
  2028. mouse-wheel support. * Fairly massive reformatting of code.
  2029. I made some secondary changes to his changes:
  2030. * One compilation error was fixed (missing close-paren + semicolon). *
  2031. Deleted a few ore say-nothing-useful comments. * Some of John's code
  2032. was strangely formatted to the point that it seemed completely out of
  2033. place, so I took the liberty of reformatting it. Since I used GNU
  2034. EMACS's <tab> key (which re-indents rather than inserts TAB
  2035. characters), I had to propagate some indentation changes a little
  2036. further than the bare necessity to match up with John's changes. (John
  2037. seems to shoot for 2-space indents, while EMACS (and I, I confess)
  2038. strongly prefer 4-space indents. The code that I was re-indenting had
  2039. been put to 8-space indents, however.)
  2040. I have *not* tested the code beyond compiling. I assume that John did
  2041. (and that the compilation error was a result a minor change just
  2042. before asking me to commit).
  2043. * src/freeglut_cursor.c: Re-indentation style changes from John.
  2044. There should be no alterations to how the code performs.
  2045. (I modified how the X11 section of the set-cursor code is indented to
  2046. slightly better match (IMHO) the rest of his changes.)
  2047. 2003-10-27 rkrolib
  2048. * src/freeglut_menu.c: Converted a few "x != NULL" tests to "x" for
  2049. clarity.
  2050. I think that I've touched enough lines of source for one morning.
  2051. * src/freeglut_menu.c: Cleaned up a little redundancy in a comment on
  2052. the {menu_pen_*} variables.
  2053. * src/freeglut_menu.c: Removed about 90 lines of say-nothing-new
  2054. comments.
  2055. The code should be functionally unaltered by these changes.
  2056. * src/freeglut_menu.c: Propogated a pointer-check from menu-attach to
  2057. menu-detach. (Apparently, in some cases, the Menu member variable can
  2058. be NULL.)
  2059. Corrected the menu-attach code to make sure that both Window and Menu
  2060. pointers are non-NULL (rather than "at least one").
  2061. Rewrote button-checks to more simply and more clearly assert that the
  2062. "menu button" is a valid button for menu actions: Instead of
  2063. laboriously comparing against the three valid buttons (0, 1, 2 or
  2064. GLUT_BUTTON_*), we do a simpler range-check and the upper bound is
  2065. {FREEGLUT_MAX_MENUS}, allowing us to change the number of menuable
  2066. buttons fairly easily in the future.
  2067. Also deleted a few say-nothing-new comments.
  2068. * src/freeglut_menu.c: Cosmetic changes (mostly deleted a few more
  2069. say-nothing-new comments). The functionality of the code should be
  2070. unchanged.
  2071. * src/freeglut_menu.c: Changed an "#elif TARGET_HOST_UNIX_X11" to
  2072. "#else", since this simply governed menu aesthetics. I think that it's
  2073. better to have a default that works than to break completely, should
  2074. freeglut ever be ported to a new (non-WIN32, non-UNIX/X11) target.
  2075. * src/freeglut_menu.c: Minor modifications to the menus:
  2076. * Updated an old "TODO BEFORE STABLE" comment.
  2077. * Expanded a comment re. some #define macros.
  2078. * Made colors and font choice system dependent. The UNIX freeglut
  2079. menus look more like UNIX GLUT menus, now. (This is PURELY a cosmetic
  2080. change. But it achieves better compatibility visually.)
  2081. * src/freeglut_main.c: Cleaned up glutMainLoop() a bit:
  2082. * Deleted numerous say-nothing-new comments. * Reformatted a
  2083. say-something-useful comment to fit on an 80-column display.
  2084. * src/freeglut_main.c: Partially (re-?)unified some of the
  2085. glutMainLoopEvent() code. The only code that really needs to be
  2086. system-specific is the window event handling, which in MS-WINDOWS is
  2087. tucked into a separate function. In UNIX/X11, it's all spilled out
  2088. into glutMainLoopEvent() for some reason.
  2089. If the X11 code could be tucked into another function,
  2090. glutMainLoopEvent() could be platform-independent.
  2091. 2003-10-26 rkrolib
  2092. * src/freeglut_main.c: Moved the idle callback out of
  2093. glutMainLoopEvent() and into glutMainLoop(), per discussion on the
  2094. list. The code looks okay, to me, though I remain less than wholly
  2095. convinced that treating idles as special cases is the best way to go.
  2096. Still, a case can be made for taking "non-event" idle callbacks out of
  2097. the "event loop". From an organizational perspective, I think that
  2098. it's an improvement, and it fixes a bug for at least one program.
  2099. * src/freeglut_menu.c: Added John's text-positioning modification.
  2100. The lines that he was altering were very oddly-split, so while I was
  2101. at it, I repaired the line-break damage.
  2102. * src/freeglut_joystick.c: Committed change from Nigel to fix the
  2103. joystick bug. (The joystick code was not setting the GLUT window prior
  2104. to calling callbacks.)
  2105. Please verify. If so, this closes out, I think, the latter half of
  2106. that bug report, so anyone with the means to modify/close bug reports
  2107. should do so upon verification of the fix.
  2108. * src/freeglut_main.c: Superficial cleanup of the code. Mostly taking
  2109. lines such as:
  2110. ...
  2111. /* * <Enslish recapituation of the single following C statement> */
  2112. <single C statement>
  2113. ...and rewrote as:
  2114. ... <single C statement>
  2115. freeglut_main.c still has a lot of that in it, but it looks a bit
  2116. better, now.
  2117. * src/freeglut_init.c: Added some error-checking (particularly w.r.t.
  2118. strdup()).
  2119. Deleted numerous 4-line "padding" sequences of C-as-English trans-
  2120. literation comments.
  2121. Re-indented some (but not all) code that is using 2-space indentation.
  2122. (Most of the freeglut code seems to be using 4-space indentation.)
  2123. I did not touch the "INIT DISPLAY STRING PARSING" code, since it is
  2124. filled with a ton of over-long lines and also appears to be in more
  2125. flux than the rest of the code. (Well, I added one error-check to a
  2126. strdup().)
  2127. * src/freeglut_font.c: Removed two more bogus "carriage return"
  2128. references where the comments were in fact talking about a line feed
  2129. (a.k.a. newline, LF, ^J, \n, ...).
  2130. * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c:
  2131. Fixed the buglet about failing to report the program's name on error-
  2132. messages. Please test. (Modified glutInit(), the state structure, and
  2133. the warn/err functions.)
  2134. 2003-10-23 James Jones <puggles@users.sourceforge.net>
  2135. * ChangeLog: Released 2.0.1
  2136. 2003-10-21 Christopher John Purnell
  2137. * configure.in, include/GL/Makefile.am, include/GL/freeglut.h,
  2138. include/GL/freeglut_std.h, include/GL/glut.h,
  2139. progs/demos/Fractals/Makefile.am,
  2140. progs/demos/Fractals_random/Makefile.am,
  2141. progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am,
  2142. src/Makefile.am: Added --disable-replace-glut option to autoconf
  2143. configure.
  2144. 2003-10-15 James Jones <puggles@users.sourceforge.net>
  2145. * NEWS: Noted the release of 2.0.0
  2146. * configure.in: Version bump
  2147. 2003-10-14 rkrolib
  2148. * src/freeglut_font.c: Swept the freeglut_font.c for comment cleanup: *
  2149. Got rid of the "rewrite C as English" comments. * Corrected several
  2150. bogus references to "carriage returns" (in strings). The symbols were
  2151. newlines or EOLs or LFs (\n). They were *not* carriage returns or CRs
  2152. (\r). * Clarified the comments on glBitmap() calls.
  2153. 2003-10-13 rkrolib
  2154. * progs/demos/Fractals/fractals.c,
  2155. progs/demos/Fractals_random/fractals_random.c: Small bug-fix that's
  2156. been on my mind:
  2157. Modified the two Fractals* demos so that they only clear (for the
  2158. random one) or redraw (for the non-random one) if there is need to do
  2159. so. (E.g., pressing the space bar should not clear and redraw the
  2160. random fractal since no parameters are altered.)
  2161. * src/freeglut_cursor.c, src/freeglut_display.c: Removed the obsolete
  2162. hack (or very ill-conceived dream), fgDisplayCursor().
  2163. * src/freeglut_display.c: Cleaned up some of the style issues (mostly
  2164. "fluff" comments) in freeglut_display.c.
  2165. * src/freeglut_cursor.c: Comment-cleaning sweep.
  2166. Mostly got rid of the say-it-in-English comments that were adding 1
  2167. line of English and 2 or 3 lines of filler for each of several lines
  2168. of C code. Updated a couple of other comments, and tweaked some
  2169. white-space.
  2170. * src/freeglut_callbacks.c: Cleaned up the comments a bit in the
  2171. callbacks.c file (mostly removed some of the
  2172. kill-4-lines-to-translate-one-line-of-C-into-English comments).
  2173. 2003-10-12 rkrolib
  2174. * src/freeglut_cursor.c: Added all missing GLUT cursor types for X11.
  2175. (Type NONE is not properly supported, yet.)
  2176. Corrected behavior for the several old types: * Wrong glyphs. *
  2177. Reversed glyphs (left/right confusion!)
  2178. There are some remaining imperfections, but it's a lot closer to GLUT
  2179. comformity, now.
  2180. 2003-10-11 rkrolib
  2181. * src/freeglut_callbacks.c: Three tidying-up changes to the code of
  2182. freeglut_callbacks.c; none of them are Earth-shattering, but as I
  2183. swept through looking somewhat more systematically for errors, I
  2184. picked these off. See the diff's for details.
  2185. * src/freeglut_callbacks.c: Fixed a basic readability/style error in the
  2186. code. (Two statements per line are almost never a good idea; in this
  2187. case the combined line was past 80 columns.)
  2188. * src/freeglut_callbacks.c: Added a safety-check on a memory allocation.
  2189. (Timers were using dynamic memory allocation but NOT checking the
  2190. result!)
  2191. * src/freeglut_menu.c: Committed two lines from John to help fix the
  2192. menus a bit.
  2193. * src/freeglut_callbacks.c: Check the glutDisplayFunc() callback for
  2194. being a NULL pointer. This is illegal and is disallowed in GLUT 3.0+,
  2195. so we disallow it too in freeglut 2.0.1+
  2196. 2003-10-09 rkrolib
  2197. * progs/demos/Fractals/fractals.c,
  2198. progs/demos/Fractals_random/fractals_random.c: Applied John's updated
  2199. ReadConfigFile() changes to the fractals demos.
  2200. * progs/demos/Fractals_random/fractals_random.c: Fixed: * glutInit()
  2201. ordering w.r.t. glutInit*() and {argv} processing. * Aspect ratio. *
  2202. Removed depth-buffer usage. (Also done for Fractals in previous
  2203. commit...)
  2204. * progs/demos/Fractals/fractals.c: A few minor changes: * glutInit*()
  2205. calls should precede glutInit(), per se, generally. This is so that
  2206. glutInit()'s configuration (which picks up on user parameters) can
  2207. override application defaults. * glutInit() should be called before
  2208. ANY attempt to process {argv, argc}. This is because there may be
  2209. GLUT/freeglut parameters (such as "-display" on X11). * If the window
  2210. is tall and skinny, rather than short and squat, we need to handle
  2211. aspect ratios differently.
  2212. The first is a user-interface bug. The second is a serious bug
  2213. (especially since the demo assumes that argv[1] contains a filename).
  2214. The third is a display bug.
  2215. 2003-10-08 rkrolib
  2216. * src/freeglut_main.c: Changed CreateNotify (in X11 ONLY) to act like a
  2217. ConfigureNotify event.
  2218. This is done so that subwindows on X11 will get "resize" events when
  2219. they are created. Old GLUT did this---presumably by design in order to
  2220. ensure that (a) All windows get notified of their size as soon as the
  2221. window exists, and (b) probably more importantly, so that windows and
  2222. sub-windows behave as much alike as possible. I believe that GLUT was
  2223. right to do this, and I believe that compatibility requires this (I
  2224. have a sample program that breaks in freeglut but not GLUT without
  2225. this fix).
  2226. I did not touch the Microsoft side, because I don't know what their OS
  2227. does---nor if old GLUT was historically system-dependent about this.
  2228. 2003-10-08 Eric Sandall
  2229. * ChangeLog, src/freeglut_menu.c: freeglut_menu.c:217,519,532: Fix menus
  2230. to stay in the window (John Fay)
  2231. 2003-10-08 rkrolib
  2232. * src/freeglut_menu.c: Several updates from John and myself.
  2233. The broad outlines are:
  2234. * Color schemes are now in variables, are closer to old GLUT, and are
  2235. system dependent (as old GLUT did). * You can change the font to any
  2236. bitmapped font more easily, which can aid in finding a better
  2237. approximation. (Old GLUT does not seem to have used a GLUT font for
  2238. the menus, which causes problems for us.) The menus rescale
  2239. automatically, including the triangle "arrow" for sub-menus. * Menus
  2240. have real borders, and the placement of highlighting is much improved.
  2241. * src/freeglut_main.c: Fixed a bug in the menu callback behavior. Menus
  2242. were not setting the current window correctly.
  2243. 2003-10-06 Eric Sandall
  2244. * ChangeLog, src/freeglut_menu.c: freeglut_menu.c:328 Fix submenu
  2245. triangle (John Fay)
  2246. 2003-10-04 James Jones <puggles@users.sourceforge.net>
  2247. * ChangeLog, src/freeglut_main.c, src/freeglut_structure.c: Tweaking for
  2248. menu behavior in Linux regarding mouse whatnot - John Fay
  2249. 2003-10-01 rkrolib
  2250. * src/freeglut_joystick.c: Applied a patch from "extraeme@netbsd.org" to
  2251. add joystick support. Untested, but it compiles for me.
  2252. Should also add Joystick support for older FreeBSD systems. Also
  2253. untested.
  2254. * src/freeglut_main.c: Added support for more arbitrary number of mouse
  2255. buttons (though only the first three can work with menus), in X. This
  2256. closes a compatibility gap with old GLUT, and leaves us the option of
  2257. supporting scroll-wheels properly.
  2258. 2003-09-27 Christopher John Purnell
  2259. * progs/demos/Fractals/Makefile.am,
  2260. progs/demos/Fractals_random/Makefile.am,
  2261. progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Don't
  2262. install the demos.
  2263. 2003-09-26 James Jones <puggles@users.sourceforge.net>
  2264. * progs/demos/Makefile.am: Package the demos.dsw file.
  2265. * progs/demos/demos.dsw: Demos workspace for MSVC users
  2266. 2003-09-24 rkrolib
  2267. * src/freeglut_main.c: Corrected a bug w.r.t. display and joystick
  2268. events. When getting ready to sleep, we need to go through ALL windows
  2269. to check for pending joysticks and to check for pending redisplays. I
  2270. was just going through all TOP- LEVEL windows. Eeek. This won't do.
  2271. 2003-09-23 Brian Paul
  2272. * progs/demos/Fractals_random/fractals_random.c: added needClear flag to
  2273. take care of initial window clear and window resize clears
  2274. 2003-09-23 rkrolib
  2275. * src/freeglut_init.c: Per Nigel Stewart's comments, converted
  2276. #ifdef TARGET_HOST_...
  2277. to:
  2278. #if TARGET_HOST_...
  2279. in src/freeglut_init.c. These changes should not have any functional
  2280. impact at this time, but you don't want bad examples lying around to
  2281. trip people up later.
  2282. * progs/demos/Fractals_random/fractals_random.c, src/freeglut_main.c,
  2283. src/freeglut_window.c: Fixed: * GLUT_SINGLE now should behave more or
  2284. less correctly. Thanks to Brian Paul!
  2285. * Sleeping is now cognizant of outstanding redisplays.
  2286. * Fractals_random has been restored more or less to as-before, save
  2287. that it uses the more minimal glFlush() rather than glutSwapBuffers().
  2288. glutSwapBuffers() was only required when freeglut was incorrectly
  2289. handling promotion to double-buffering.
  2290. 2003-09-22 rkrolib
  2291. * src/freeglut_main.c: Moved the #include/#ifdef/#define stuff up to the
  2292. top.
  2293. Changed #ifdef to #if, per Nigel(?)'s comment. Ooops.
  2294. 2003-09-22 Christopher John Purnell
  2295. * progs/demos/Fractals/Makefile.am,
  2296. progs/demos/Fractals_random/Makefile.am,
  2297. progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Fix to
  2298. allow demos to compile before freeglut has been installed.
  2299. 2003-09-22 James Jones <puggles@users.sourceforge.net>
  2300. * progs/demos/Fractals_random/fractals_random.c: Add an idle function to
  2301. ensure that the screen gets drawn even when callbacks are not
  2302. generated by the mouse/keyboard.
  2303. 2003-09-21 James Jones <puggles@users.sourceforge.net>
  2304. * progs/demos/Fractals/fractals.c,
  2305. progs/demos/Fractals_random/fractals_random.c: Note the possible
  2306. buffer overflow in window_title
  2307. * progs/demos/Fractals/fractals.c: Fix the window title.
  2308. * progs/demos/Fractals_random/fractals_random.c: Fix window title, and
  2309. ensure that the random integer is not forced to be zero (Thanks
  2310. Richard Rauch!)
  2311. 2003-09-20 James Jones <puggles@users.sourceforge.net>
  2312. * src/freeglut_main.c: Richard Rauch's patch to ensure that freeglut
  2313. does not use 100% CPU even while idling.
  2314. * src/freeglut_font.c: Resolution for bug 809561 reported by Nigel
  2315. Stewart, regarding a possible array underflow error of -1 in the event
  2316. of "character" being zero.
  2317. 2003-09-14 Christopher John Purnell
  2318. * configure.in, progs/demos/Fractals/Makefile.am,
  2319. progs/demos/Fractals_random/Makefile.am,
  2320. progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am,
  2321. src/Makefile.am: Removed unused AC_PROG_RANLIB from configure.in Added
  2322. passing of $(X_CFLAGS) to compiler.
  2323. 2003-09-14 James Jones <puggles@users.sourceforge.net>
  2324. * include/GL/glut.h: Resolve bug 806008 -- let Microsoft's compiler know
  2325. to use Windows libraries even if not using our project files.
  2326. 2003-09-13 James Jones <puggles@users.sourceforge.net>
  2327. * ChangeLog: Taking care of keeping things mostly up-to-date
  2328. * TODO: Most everything's been resolved for the 2.0.0 release.
  2329. * src/freeglut_joystick.c: Thierry Thomas said that FreeBSD has no
  2330. machine/joystick.h, instead a sys/joystick.h. I've made the change --
  2331. here's hoping it works.
  2332. * progs/demos/One/one.c: Removed the incorrect relative path for
  2333. including freeglut.h
  2334. * progs/demos/Fractals/Makefile.am,
  2335. progs/demos/Fractals_random/Makefile.am,
  2336. progs/demos/Lorenz/Makefile.am, progs/demos/One/Makefile.am: Made all
  2337. demos compile. Thanks to Thierry Thomas for reporting bug 802809,
  2338. which alerted that *none* of the demos compiled automatically!
  2339. * src/freeglut_main.c: Nigel Stewart's joystick fix (for hopefully all
  2340. platforms), SourceForge bug 805481
  2341. * progs/demos/Lorenz/lorenz.dsp, progs/demos/One/one.dsp: Fix location
  2342. of the include files from a fixed to relative path. Closes bug 805477
  2343. * freeglut.dsp, freeglut.dsw, freeglut_static.dsp, freeglutstatic.dsw:
  2344. Add dos line endings. Fixes bug 805476
  2345. 2003-09-10 Christopher John Purnell
  2346. * src/freeglut_joystick.c: A minor fix to that last commit.
  2347. * src/freeglut_joystick.c: Removed some remaining glib depandancy.
  2348. 2003-09-10 James Jones <puggles@users.sourceforge.net>
  2349. * src/freeglut_main.c: Re-add catches for the case in which a menu
  2350. callback destroys the menu. - John Fay
  2351. 2003-09-09 Christopher John Purnell
  2352. * src/freeglut_main.c: More to fix a deinitialization related crash.
  2353. * src/freeglut_structure.c: Fix for a deinitialization related crash.
  2354. 2003-09-08 James Jones <puggles@users.sourceforge.net>
  2355. * src/freeglut_main.c, src/freeglut_structure.c: Menus should deallocate
  2356. better now - John Fay
  2357. 2003-09-05 James Jones <puggles@users.sourceforge.net>
  2358. * Makefile.am: Add freeglut_static.dsp to the releases
  2359. 2003-09-03 Christopher John Purnell
  2360. * src/freeglut_gamemode.c: Moved #ifdef for non XFree86 X11 compile.
  2361. 2003-09-02 Christopher John Purnell
  2362. * src/freeglut_window.c: Fix to stop fgSetWindow(NULL) crashing on X11.
  2363. 2003-08-29 James Jones <puggles@users.sourceforge.net>
  2364. * src/freeglut_main.c, src/freeglut_menu.c, src/freeglut_structure.c:
  2365. These change a bunch of assignments to calls to set the current window
  2366. correctly, and also (possibly) fixes most of the remaining menu
  2367. problem. - John Fay
  2368. * src/freeglut_main.c: Another typecast bugfix from John Fay
  2369. 2003-08-28 Christopher John Purnell
  2370. * src/freeglut_init.c: Changed #ifdef to #if
  2371. 2003-08-28 James Jones <puggles@users.sourceforge.net>
  2372. * src/freeglut_font.c: change the GLUT stroke function arguments from
  2373. "const char *" to "const unsigned char *" - John Fay
  2374. * include/GL/freeglut_ext.h, include/GL/glut.h: Changes stroke function
  2375. arguments from "const char*" to "const unsigned char *" - John Fay
  2376. 2003-08-28 Christopher John Purnell
  2377. * freeglut-1.3: Removing files from old freeglut-1.3 directory.
  2378. 2003-08-28 James Jones <puggles@users.sourceforge.net>
  2379. * src/freeglut_callbacks.c, src/freeglut_geometry.c,
  2380. src/freeglut_init.c, src/freeglut_joystick.c, src/freeglut_main.c,
  2381. src/freeglut_menu.c, src/freeglut_structure.c: Casting changes, John
  2382. Fay
  2383. 2003-08-27 James Jones <puggles@users.sourceforge.net>
  2384. * src/freeglut_init.c, src/freeglut_internal.h, src/freeglut_main.c,
  2385. src/freeglut_menu.c: Major overhaul to the menu system, by John Fay
  2386. 2003-08-27 Christopher John Purnell
  2387. * include/GL/freeglut.h, include/GL/freeglut_ext.h, include/GL/glut.h:
  2388. Added double underscores to the header included macros.
  2389. 2003-08-20 Christopher John Purnell
  2390. * src/freeglut_gamemode.c: Minor typo fix
  2391. 2003-08-19 Christopher John Purnell
  2392. * src/freeglut_gamemode.c: Moving that "#if TARGET_HOST_UNIX_X11" to the
  2393. correct place.
  2394. 2003-08-17 Christopher John Purnell
  2395. * ChangeLog, src/freeglut_gamemode.c, src/freeglut_internal.h,
  2396. src/freeglut_window.c: Game mode fixes from Bernhard Kaindl and Eric
  2397. Espie.
  2398. 2003-08-05 Christopher John Purnell
  2399. * src/Makefile.am, src/freeglut_menu.c, src/freeglut_window.c,
  2400. src/mwmborder.c: Using override_redirect instead of motif wm hints. It
  2401. now rasies the menu windows before showing them. Move the show to
  2402. after the reshape and position so we don't get a flash of the menu
  2403. window at it's old size and position.
  2404. * src/mwmborder.c: I suspect a lot of people will not have motif
  2405. installed.
  2406. 2003-08-05 Eric Sandall
  2407. * ChangeLog, src/Makefile.am, src/freeglut_window.c: (98)
  2408. src/Makefile.am:34 Added mwmborder.c (99) src/freeglut_window.c:67
  2409. Removed #included "mwmborder.c"
  2410. * ChangeLog, src/freeglut_main.c: src/freeglut_main.c:816 and :1571, set
  2411. the current window (John F. Fay)
  2412. 2003-08-04 Christopher John Purnell
  2413. * src/freeglut_state.c: Added X11 code for
  2414. glutGet(GLUT_WINDOW_BORDER_WIDTH) and
  2415. glutGet(GLUT_WINDOW_HEADER_HEIGHT).
  2416. * src/freeglut_internal.h, src/freeglut_state.c: Replacing
  2417. glutGet(GLUT_WINDOW_X) and glutGet(GLUT_WINDOW_Y) on X11 with
  2418. something that works. Also a minor correction to the xf86vidmode
  2419. autoconf stuff.
  2420. 2003-08-04 James Jones <puggles@users.sourceforge.net>
  2421. * src/freeglut_window.c: Keep the X11 decoration-zapping code confined
  2422. to X11-using platforms! Oops!
  2423. * src/freeglut_window.c, src/mwmborder.c: Menus' decorations are removed
  2424. on Linux. Not sure if we want the mwmborder.c a separate file or not;
  2425. doing it separate for right now. Makefile was not updated, since the
  2426. .c is just #included.
  2427. 2003-08-03 Christopher John Purnell
  2428. * configure.in: Got rid of configure warnings when using a newer
  2429. autoconf
  2430. 2003-08-02 Christopher John Purnell
  2431. * src/freeglut_glutfont_definitions.c, src/freeglut_internal.h: Putting
  2432. stuff back that was undone with the menu code committed.
  2433. 2003-08-02 James Jones <puggles@users.sourceforge.net>
  2434. * src/freeglut_callbacks.c, src/freeglut_display.c,
  2435. src/freeglut_glutfont_definitions.c, src/freeglut_init.c,
  2436. src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_menu.c,
  2437. src/freeglut_state.c, src/freeglut_structure.c, src/freeglut_window.c:
  2438. Major menu changes (they appear in their own window, have own
  2439. rendering context) by John Fay and a little by James C. Jones. They
  2440. work perfectly on Win32, and work... on Linux.
  2441. 2003-08-01 Christopher John Purnell
  2442. * configure.in, src/Makefile.am, src/freeglut_glutfont_definitions.c,
  2443. src/freeglut_internal.h: Added autoconf detection for the xf86 vid
  2444. mode extensions.
  2445. 2003-08-01 Eric Sandall
  2446. * ChangeLog, src/freeglut_window.c: src/freeglut_window.c:551 Removed
  2447. extra carriage return for Windows users (John F. Fay)
  2448. * ChangeLog: Credit Dave Reed for fix
  2449. * ChangeLog, src/freeglut_internal.h: src/freeglut_initial.c:91 Added
  2450. check for SOLARIS OS
  2451. 2003-07-23 Christopher John Purnell
  2452. * include/GL/glut.h, src/Makefile.am, src/freeglut_font.c,
  2453. src/freeglut_glutfont_definitions.c: This should put an end to the
  2454. font binary compatibility issue.
  2455. 2003-07-23 Eric Sandall
  2456. * ChangeLog, src/freeglut_window.c: src/freeglut_window.c Windowing
  2457. fixes from John F.
  2458. * ChangeLog, doc/Makefile.am: doc/Makefile.am:4 Removed trailing
  2459. backslash and added an empty last line
  2460. 2003-07-23 Brian Paul
  2461. * doc/download.html: no change, testing CVS
  2462. 2003-07-22 Brian Paul
  2463. * doc/download.html: no change, just testing CVS
  2464. 2003-07-22 Eric Sandall
  2465. * ChangeLog, freeglut.lsm: freeglut.lsm:3 Removed 'beta' label for next
  2466. release, thanks to Bernhard Kaindl.
  2467. 2003-07-21 Christopher John Purnell
  2468. * src/Makefile.am: The version info had the revision and the age
  2469. transposed.
  2470. 2003-07-21 Eric Sandall
  2471. * ChangeLog, src/Makefile.am: src/Makefile.am:38 Changed versioning to
  2472. 11:0:8 thanks to Bernhard Kaindl
  2473. 2003-07-17 Eric Sandall
  2474. * ChangeLog, freeglut.dsp, freeglut_static.dsp: Applied John F. Fay's
  2475. fixes to freeglut.dsp and freeglut_static.dsp
  2476. * ChangeLog, src/freeglut_state.c: Changed the overlay
  2477. (freeglut_state.c:662) to return FALSE, as it's not imp lemented yet
  2478. 2003-07-12 Andreas Umbach <marvin@dataway.ch>
  2479. * src/Makefile.am: renamed freeglut library to glut, bumped version info
  2480. to 3:8:0
  2481. * configure.in: bumped version number to 2.0.0
  2482. * Makefile.am, configure.in, doc/Makefile.am, include/GL/Makefile.am,
  2483. progs/Makefile.am, progs/demos/Fractals/Makefile.am,
  2484. progs/demos/Fractals_random/Makefile.am,
  2485. progs/demos/Lorenz/Makefile.am, progs/demos/Makefile.am,
  2486. progs/demos/One/Makefile.am, src/Makefile.am: changes for make dist
  2487. * freeglut13.plg: MSVC generated file
  2488. 2003-07-11 Christopher John Purnell
  2489. * include/GL/glut.h, src/freeglut_font.c: Fix for the font binary
  2490. compatibility problem.
  2491. 2003-07-10 Christopher John Purnell
  2492. * src/Makefile.am: Changed to build libfreeglut.so.2.0.0
  2493. 2003-07-10 James Jones <puggles@users.sourceforge.net>
  2494. * TODO, freeglut.dsp, freeglut_static.dsp: Changes to TODO, Windows
  2495. files - from John Fay
  2496. * progs/demos/Fractals_random/Fractals_random.dsp: Changes by John Fay
  2497. * progs/demos/Fractals/Fractals.dsp, progs/demos/Fractals/fractals.c:
  2498. Changes to the Fractals demo by John Fay
  2499. * progs/demos/One/one.dsp: Initial project file from John Fay
  2500. * progs/demos/Lorenz/lorenz.c, progs/demos/Lorenz/lorenz.dsp:
  2501. Modifications from John Fay
  2502. 2003-07-07 Christopher John Purnell
  2503. * src/freeglut_main.c: glutMainLoopEvent() was not closing windows
  2504. properly. Moved call to fgCloseWindows() from glutMainLoop() to the
  2505. end of glutMainLoopEvent().
  2506. 2003-07-03 Eric Sandall
  2507. * ChangeLog, src/freeglut_misc.c: Removed unused char *ptr from
  2508. freeglut_misc.c
  2509. 2003-07-02 Christopher John Purnell
  2510. * src/freeglut_main.c: It was crashing on and event for a unknown
  2511. window.
  2512. 2003-07-02 Brian Paul
  2513. * src/freeglut_misc.c: rewrite of glutExtensionSupported - works
  2514. correctly now
  2515. 2003-07-02 Eric Sandall
  2516. * ChangeLog: * Removed tests directory
  2517. * ChangeLog, Makefile.am, configure.in, progs/demos/One,
  2518. progs/demos/One/Makefile.am, progs/demos/One/one.c, tests: * Removed
  2519. genfonts/genstrokes code, updated configure.in and Makefile.in
  2520. * Moved tests/one.c into progs/demos/One/one.c, updated configure.in
  2521. and Makefile.in
  2522. * genfonts: Removed genfonts
  2523. 2003-07-02 Christopher John Purnell
  2524. * genfonts/to_stroke.y: Added some semicolons that yacc was warning
  2525. about.
  2526. 2003-07-01 James Jones <puggles@users.sourceforge.net>
  2527. * AUTHORS: John Fay commanded me to add my name to the file. He's crazy,
  2528. but that's okay.
  2529. 2003-07-01 Eric Sandall
  2530. * ChangeLog, src/freeglut_misc.c: Fixed the 'ptr + len' problem in
  2531. freeglut_misc.c:90
  2532. 2003-07-01 Brian Paul
  2533. * doc/freeglut_user_interface.html: version bumps
  2534. * tests/Makefile.am: bump version to 2.0
  2535. * src/Makefile.am, src/freeglutdll.def: bump versions to 2.0
  2536. * src/freeglut_gamemode.c: xf86VidMode error checking (Andrew
  2537. Lentvorski)
  2538. 2003-06-30 Brian Paul
  2539. * progs/demos/Lorenz, progs/demos/Lorenz/lorenz.c,
  2540. progs/demos/Lorenz/lorenz.dsp: Lorenz attractor demo (John Fay)
  2541. * freeglut.dsp, freeglut_static.dsp: updates from John Fay
  2542. 2003-06-28 Eric Sandall
  2543. * ChangeLog, include/GL/Makefile.am: Now installs freeglut_ext.h and
  2544. glut.h to /usr/include/GL (was missing before)
  2545. 2003-06-27 Brian Paul
  2546. * include/GL/freeglut_ext.h, src/freeglut_init.c,
  2547. src/freeglut_internal.h, src/freeglut_main.c, src/freeglut_state.c,
  2548. src/freeglut_stroke_mono_roman.c: XF86 game mode fixes, context
  2549. sharing option. (John Fay)
  2550. 2003-06-25 Eric Sandall
  2551. * ChangeLog: Added another of my changes (freeglut.kdevelop) and fixed
  2552. the version number for my MS VS change (*.dsp)
  2553. 2003-06-25 Brian Paul
  2554. * src/freeglut_internal.h: version bumps
  2555. * freeglut.lsm, include/GL/glut.h, src/freeglut_stroke_mono_roman.c,
  2556. src/freeglut_stroke_roman.c: Assorted version 2.0.0 updates (John
  2557. Fay).
  2558. * doc/freeglut_user_interface.html: updated version, italicize freeglut
  2559. (John Fay)
  2560. 2003-06-25 Eric Sandall
  2561. * ChangeLog, freeglut.dsp, freeglut_static.dsp: Added 'freeglut_ext.c'
  2562. to the project files 'freeglut.dsp' and 'freeglut_static.dsp' (New
  2563. list #10)
  2564. 2003-06-24 Andreas Umbach <marvin@dataway.ch>
  2565. * ChangeLog: Fixed autogen.sh and removed aclocal.m4
  2566. * aclocal.m4: this file is autogenerated by aclocal
  2567. * autogen.sh: fixed aclocal / autoheader order; some cosmetics
  2568. 2003-06-24 Eric Sandall
  2569. * freeglut.kdevelop: Project file for Gideon (KDevelop 3.0)
  2570. 2003-06-23 Eric Sandall
  2571. * ChangeLog, Makefile.am, TODO, configure.in, freeglut.dsp,
  2572. freeglut.kdevprj, freeglut13.dsp, freeglut13.plg, freeglut_static.dsp,
  2573. freeglutdll.dsp, src, src/Makefile.am, src/freeglut_callbacks.c,
  2574. src/freeglut_cursor.c, src/freeglut_display.c, src/freeglut_ext.c,
  2575. src/freeglut_font.c, src/freeglut_font_data.c,
  2576. src/freeglut_gamemode.c, src/freeglut_geometry.c, src/freeglut_init.c,
  2577. src/freeglut_internal.h, src/freeglut_joystick.c, src/freeglut_main.c,
  2578. src/freeglut_menu.c, src/freeglut_misc.c, src/freeglut_overlay.c,
  2579. src/freeglut_state.c, src/freeglut_stroke_mono_roman.c,
  2580. src/freeglut_stroke_roman.c, src/freeglut_structure.c,
  2581. src/freeglut_teapot.c, src/freeglut_videoresize.c,
  2582. src/freeglut_window.c, src/freeglutdll.def, src/templates,
  2583. src/templates/cpp_template, src/templates/header_template,
  2584. tests/Makefile.am: Changed all references to the 'freeglut-1.3'
  2585. directory to 'src', copied 'freeglut-1.3' to 'src' and added all files
  2586. from 'src' to the repository (TODO #34).
  2587. * ChangeLog: Updated ChangeLog with my aclocal.m4 change
  2588. * aclocal.m4: Updated aclocal.m4 with aclocal 1.7.3 (was created with
  2589. aclocal 1.5)
  2590. 2003-06-23 Brian Paul
  2591. * freeglut-1.3/freeglut_geometry.c: adjusted precision (John Fay)
  2592. * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_display.c,
  2593. freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
  2594. freeglut-1.3/freeglut_teapot.c, include/GL/freeglut_ext.h,
  2595. include/GL/glut.h: Assorted updates from John Fay.
  2596. 2003-06-20 Eric Sandall
  2597. * TODO: Updated TODO from John Fay
  2598. 2003-06-20 Brian Paul
  2599. * progs, progs/demos, progs/demos/Fractals,
  2600. progs/demos/Fractals/Fractals.dsp, progs/demos/Fractals/fractals.c,
  2601. progs/demos/Fractals/fractals.dat, progs/demos/Fractals_random,
  2602. progs/demos/Fractals_random/Fractals_random.dsp,
  2603. progs/demos/Fractals_random/fractals.dat,
  2604. progs/demos/Fractals_random/fractals_random.c: Fractal demo (John Fay)
  2605. 2003-06-20 Eric Sandall
  2606. * ChangeLog: Added the autogen.sh addition to ChangeLog
  2607. * autogen.sh: Initial version of autogen.sh, tested here and creates the
  2608. correct files
  2609. 2003-06-20 Brian Paul
  2610. * freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_state.c:
  2611. Windows patches (Eero Pajarre)
  2612. * NEWS: list the 1.4 release (fill in date) - this is a cvs check-in
  2613. test
  2614. 2003-06-19 Don Heyse <dheyse@hotmail.com>
  2615. * freeglut-1.3/freeglut_joystick.c: Oops, missed the
  2616. fghJoystickRawRead() fix for FreeBSD.
  2617. 2003-06-19 Brian Paul
  2618. * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_display.c,
  2619. freeglut-1.3/freeglut_ext.c, freeglut-1.3/freeglut_internal.h,
  2620. freeglut-1.3/freeglut_main.c: s/FreeGLUT/freeglut/
  2621. 2003-06-19 Don Heyse <dheyse@hotmail.com>
  2622. * freeglut-1.3/freeglut_joystick.c: Applied tthierry's patch to fix
  2623. compiling on FreeBSD.
  2624. 2003-06-19 Brian Paul
  2625. * freeglut-1.3/freeglut_internal.h: added VERSION_MAJOR/MINOR/PATCH
  2626. * doc/freeglut_user_interface.html: restore text lost from previous
  2627. check-in
  2628. * include/GL/glut.h: s/FREEGLUT_VERSION_1_3/FREEGLUT_VERSION_1_4/
  2629. 2003-06-19 Eric Sandall
  2630. * include/GL/freeglut_ext.h, include/GL/glut.h: GLUT_VERSION updates
  2631. from John Fay
  2632. 2003-06-18 Eric Sandall
  2633. * AUTHORS: Forgot a file...looked so innocous just sitting there... :)
  2634. * ChangeLog, doc/freeglut_user_interface.html,
  2635. freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_ext.c,
  2636. freeglut-1.3/freeglut_internal.h, freeglut-1.3/freeglut_menu.c,
  2637. freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_teapot.c,
  2638. freeglut-1.3/freeglut_window.c, include/GL/freeglut_ext.h: * Hopefully
  2639. I did THIS one right (used 'cvs update' to Merge)
  2640. Authors - The first update in quite a while
  2641. ChangeLog - Added the recent changes
  2642. freeglut_callbacks.c - Added Aleksandar Donev's menu destruction
  2643. callback
  2644. freeglut_internal.h - Added the user data to the structures and made
  2645. the menu state/status callbacks window-independent
  2646. freeglut_menu.c - Removed several OpenGL compiler warnings and added
  2647. A. Donev's menu user data functions
  2648. freeglut_structure.c - Added Aleksandar Donev's menu destruction
  2649. callback
  2650. freeglut_teapot.c - Removed or suppressed several compiler warnings
  2651. freeglut_window.c - Updated the window positioning code and added A.
  2652. Donev's window user data
  2653. freeglut_ext.h - Added the menu destruction callback and user data
  2654. functions
  2655. * freeglut-1.3/freeglut_ext.h: * Removed freeglut_ext.h (wasn't supposed
  2656. to be added)
  2657. 2003-06-18 Brian Paul
  2658. * doc/freeglut_user_interface.html, freeglut-1.3/freeglut_internal.h,
  2659. freeglut-1.3/freeglut_state.c, include/GL/freeglut_ext.h,
  2660. include/GL/glut.h: Added FREEGLUT_VERSION_1_3. Added GLUT_VERSION for
  2661. glutGet(). Added glutGet() documentation.
  2662. * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_ext.h,
  2663. freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_internal.h,
  2664. freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_state.c,
  2665. freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c:
  2666. remove DOS-style CR characters
  2667. * doc/freeglut_user_interface.html: added glutGetProcAddress and
  2668. GLUT_FPS info
  2669. * ChangeLog: added glutGetProcAddress() and GLUT_FPS
  2670. 2003-06-17 Brian Paul
  2671. * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_init.c,
  2672. freeglut-1.3/freeglut_internal.h: restore GLUT_FPS env var feature
  2673. lost in previous check-in
  2674. 2003-06-17 Eric Sandall
  2675. * ChangeLog: * Updated ChangeLog
  2676. * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c: Set
  2677. #4: * Fixes a couple of compiler warnings and other bugs. *
  2678. freeglut_main.c: Removes a compiler warning * freeglut_structure.c:
  2679. Sets the current window before calling the window closure callback *
  2680. Possibly other changes
  2681. * freeglut-1.3/freeglut_ext.h: * Rest of Set #3
  2682. * freeglut-1.3/freeglut_state.c: Set #3: Fixes for window positioning
  2683. problem Windows
  2684. * freeglut-1.3/freeglut_init.c: Eero Pajarre's GLUT_ICON code for
  2685. Windows
  2686. * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_internal.h,
  2687. freeglut-1.3/freeglut_window.c: First group of patches: Adds
  2688. single-buffered rendering (or its emulation) in Windows.
  2689. 2003-06-17 Brian Paul
  2690. * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_init.c,
  2691. freeglut-1.3/freeglut_internal.h: added GLUT_FPS env var option
  2692. * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_ext.c,
  2693. include/GL/freeglut_ext.h: added glutGetProcAddress()
  2694. 2003-06-12 Don Heyse <dheyse@hotmail.com>
  2695. * freeglut-1.3/freeglut_main.c: Fix the keyboard up callback and a
  2696. compiler warning.
  2697. * freeglut-1.3/freeglut_structure.c: Set the current window before
  2698. calling the window closure callback.
  2699. * freeglut-1.3/freeglut_state.c, include/GL/freeglut_ext.h: John's
  2700. window positioning corrections.
  2701. * freeglut-1.3/freeglut_init.c: Eero Pajarre's icon code.
  2702. * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_internal.h,
  2703. freeglut-1.3/freeglut_window.c: Single buffered rendering for Windows.
  2704. 2003-06-02 Don Heyse <dheyse@hotmail.com>
  2705. * doc/freeglut_user_interface.html: John Documented InitWindowPosition
  2706. extensions and added some kbd fn info.
  2707. * ChangeLog: Documented Johns changes from May 03.
  2708. * freeglut-1.3/freeglut_state.c: Do not allow glutGet to reposition the
  2709. window 1 pixel toward bottom right.
  2710. * freeglut-1.3/freeglut_main.c: Pass mouse pos to Windows kbd callback.
  2711. Resequenced a few things for UNIX.
  2712. 2003-03-23 Christopher John Purnell
  2713. * freeglut-1.3/freeglut_gamemode.c: Applied patch to fix GameMode issues
  2714. supplied by Bernhard Kaindl.
  2715. 2003-03-12 Don Heyse <dheyse@hotmail.com>
  2716. * include/GL/glut.h: Switch to ANSI C comments.
  2717. * freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
  2718. freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_geometry.c,
  2719. freeglut-1.3/freeglut_internal.h, freeglut-1.3/freeglut_joystick.c,
  2720. freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c,
  2721. freeglut-1.3/freeglut_window.c: Switch to ANSI C comments. Removed
  2722. always true tests on unsigned char. Single buffering fix..
  2723. 2003-02-13 Don Heyse <dheyse@hotmail.com>
  2724. * freeglut.dsp, freeglut.dsw, freeglut_static.dsp: Switching to John
  2725. Fays version of the VC++ project files.
  2726. 2003-02-08 Steve Baker <steve@sjbaker.org>
  2727. * freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_joystick.c:
  2728. Removed erroneous GPL license comments.
  2729. 2003-02-07 Don Heyse <dheyse@hotmail.com>
  2730. * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_cursor.c,
  2731. freeglut-1.3/freeglut_display.c, freeglut-1.3/freeglut_font_data.c,
  2732. freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
  2733. freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
  2734. freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_overlay.c,
  2735. freeglut-1.3/freeglut_stroke_mono_roman.c,
  2736. freeglut-1.3/freeglut_stroke_roman.c, freeglut-1.3/freeglut_teapot.c,
  2737. freeglut-1.3/freeglut_videoresize.c: Moved freeglut_internal.h to the
  2738. freeglut source code private directory.
  2739. * freeglut-1.3/freeglut_structure.c: SubWindow border thickness fix.
  2740. Overlay changes in glutGet.
  2741. * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
  2742. freeglut-1.3/freeglut_state.c, freeglut-1.3/freeglut_window.c: Johns
  2743. changes for layers, fgSetWindow, and fgSetupPixelFormat.
  2744. * freeglut-1.3/freeglut_font.c: John fixed a bug that make bitmap font
  2745. one pixel wider than its drawn.
  2746. * freeglut-1.3/freeglut_internal.h, include/GL/freeglut_internal.h:
  2747. Moved freeglut_internal.h to the private directory with the other
  2748. freeglut sources.
  2749. * include/GL/freeglut.h, include/GL/freeglut_ext.h, include/GL/glut.h:
  2750. Broke freeglut.h into glut.h and freeglut_ext.h
  2751. 2003-01-06 Don Heyse <dheyse@hotmail.com>
  2752. * freeglut-1.3/freeglutdll.def: Exports file for Win32 dll. One EXPORT
  2753. for each FGAPI line in freeglut.h
  2754. 2003-01-04 Steve Baker <steve@sjbaker.org>
  2755. * aclocal.m4, freeglut-1.3/freeglut_joystick.c: Cleanup joystick
  2756. deallocation.
  2757. 2002-12-10 Don Heyse <dheyse@hotmail.com>
  2758. * freeglut.dsw, freeglutdll.dsp: Allow DLL and static library build on
  2759. Windows.
  2760. * include/GL/freeglut.h: Added check for FREEGLUT_DLL to allow static &
  2761. DLL build on Windows.
  2762. 2002-12-04 Don Heyse <dheyse@hotmail.com>
  2763. * freeglut-1.3/freeglut_font_data.c: More bitmap font spacing fixes from
  2764. John.
  2765. 2002-11-29 Don Heyse <dheyse@hotmail.com>
  2766. * freeglut-1.3/freeglut_init.c: Fixed Win95 crash when getenv("DISPLAY")
  2767. returned NULL ptr.
  2768. * freeglut-1.3/freeglut_font_data.c: The lowercase t in helvetica12 was
  2769. too skinny.
  2770. * freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c:
  2771. Adjusted character spacing on a few fonts.
  2772. * ChangeLog: Many updates from John Fay.
  2773. * freeglutstatic.dsw: Added Visual C++ 6 Static library project for John
  2774. Fay.
  2775. 2002-11-28 Don Heyse <dheyse@hotmail.com>
  2776. * freeglut.dsp: Visual C++ 6 project file for static freeglut lib.
  2777. * include/GL/freeglut.h, include/GL/freeglut_internal.h: Many updates
  2778. from John Fay. (freeglut.h may need a small change to allow Win32 DLL
  2779. build again)
  2780. * freeglut-1.3/freeglut_geometry.c: Many updates from John Fay.
  2781. * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_cursor.c,
  2782. freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
  2783. freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_init.c,
  2784. freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
  2785. freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_state.c,
  2786. freeglut-1.3/freeglut_stroke_mono_roman.c,
  2787. freeglut-1.3/freeglut_stroke_roman.c,
  2788. freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c:
  2789. Many updates from John Fay.
  2790. * freeglut-1.3/freeglut_joystick.c: Fixes from freeglut_portable patch.
  2791. Memory leak fix from John. Return_if_fail fix.
  2792. 2002-11-26 Don Heyse <dheyse@hotmail.com>
  2793. * doc/freeglut_user_interface.html: Added on behalf of John Fay.
  2794. 2002-10-22 Don Heyse <dheyse@hotmail.com>
  2795. * freeglut-1.3/freeglut_geometry.c: Implemented tetrahedra, octahedra,
  2796. dodecahedra, and icosahedra. Checked in on behalf of John F. Fay
  2797. <john.fay@eglin.af.mil>.
  2798. 2002-05-20 Don Heyse <dheyse@hotmail.com>
  2799. * freeglut-1.3/freeglut_font.c: Fixed previous fix so it compiles.
  2800. 2002-05-20 Christopher John Purnell
  2801. * freeglut-1.3/freeglut_font.c: My bad.
  2802. 2002-05-18 Christopher John Purnell
  2803. * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_font.c,
  2804. freeglut-1.3/freeglut_stroke_mono_roman.c,
  2805. freeglut-1.3/freeglut_stroke_roman.c, genfonts/Roman_M.src,
  2806. genfonts/lex.l, genfonts/to_stroke.y, genfonts/wfont.h,
  2807. include/GL/freeglut.h, include/GL/freeglut_internal.h: Added stroke
  2808. fonts.
  2809. 2002-05-17 Christopher John Purnell
  2810. * freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
  2811. freeglut-1.3/freeglut_overlay.c, freeglut-1.3/freeglut_teapot.c,
  2812. freeglut-1.3/freeglut_videoresize.c, tests/one.c: Removed some DOS
  2813. line ends.
  2814. 2002-05-16 Christopher John Purnell
  2815. * freeglut-1.3/freeglut_main.c: Removed one last glib call.
  2816. 2002-01-20 Steve Baker <steve@sjbaker.org>
  2817. * README, freeglut-1.3/.deps/freeglut_callbacks.P,
  2818. freeglut-1.3/.deps/freeglut_cursor.P,
  2819. freeglut-1.3/.deps/freeglut_display.P,
  2820. freeglut-1.3/.deps/freeglut_font.P,
  2821. freeglut-1.3/.deps/freeglut_font_data.P,
  2822. freeglut-1.3/.deps/freeglut_gamemode.P,
  2823. freeglut-1.3/.deps/freeglut_geometry.P,
  2824. freeglut-1.3/.deps/freeglut_init.P,
  2825. freeglut-1.3/.deps/freeglut_joystick.P,
  2826. freeglut-1.3/.deps/freeglut_main.P,
  2827. freeglut-1.3/.deps/freeglut_menu.P,
  2828. freeglut-1.3/.deps/freeglut_misc.P,
  2829. freeglut-1.3/.deps/freeglut_overlay.P,
  2830. freeglut-1.3/.deps/freeglut_state.P,
  2831. freeglut-1.3/.deps/freeglut_structure.P,
  2832. freeglut-1.3/.deps/freeglut_teapot.P: Removed a bunch of '.P' files
  2833. that don't belong in the CVS archive.
  2834. 2001-08-05 Christopher John Purnell
  2835. * freeglut-1.3/freeglut_callbacks.c, freeglut-1.3/freeglut_main.c,
  2836. freeglut-1.3/freeglut_window.c, include/GL/freeglut_internal.h: Added
  2837. keyup events code. Added missing specal keys. Made menu callbacks
  2838. global.
  2839. * freeglut-1.3/freeglut_window.c: More position tweeks.
  2840. 2001-08-04 Christopher John Purnell
  2841. * freeglut-1.3/freeglut_main.c, include/GL/freeglut.h: Fixed redisplay
  2842. bug. Fixed modifier values.
  2843. * freeglut-1.3/freeglut_window.c: Improved window positioning.
  2844. 2001-07-30 Christopher John Purnell
  2845. * freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_structure.c: A
  2846. stupid bug fixed.
  2847. 2001-07-30 Andreas Umbach <marvin@dataway.ch>
  2848. * freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_main.c: one more
  2849. g_assert removed
  2850. * include/GL/freeglut_internal.h: removed glib dependencies from win32
  2851. * freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_init.c,
  2852. freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_window.c: -
  2853. removed glib dependencies from win32 code
  2854. 2001-07-29 Christopher John Purnell
  2855. * freeglut-1.3/freeglut_structure.c: Fixed bug list code.
  2856. * freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_callbacks.c,
  2857. freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
  2858. freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
  2859. freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
  2860. freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
  2861. freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_state.c,
  2862. freeglut-1.3/freeglut_structure.c, freeglut-1.3/freeglut_window.c,
  2863. genfonts/Makefile.am, genfonts/genfonts.c, genfonts/genstroke.c,
  2864. include/GL/freeglut.h, include/GL/freeglut_internal.h: Removed glib
  2865. dependency
  2866. * configure.in, freeglut-1.3/Makefile.am, genfonts/Makefile.am: The
  2867. build system now looks for X.
  2868. 2001-07-27 Steve Baker <steve@sjbaker.org>
  2869. * doc, doc/download.html, doc/freeglut.html, doc/freeglut_logo.png,
  2870. doc/index.html, doc/ogl_sm.png, doc/progress.html, doc/structure.html:
  2871. Added documents.
  2872. * genfonts/.deps, tests/.deps: Removed some more files that don't belong
  2873. in CVS
  2874. * configure, freeglut-1.3/Makefile, freeglut-1.3/Makefile.in,
  2875. genfonts/Makefile, genfonts/Makefile.in, include/GL/Makefile,
  2876. include/GL/Makefile.in, include/Makefile, include/Makefile.in,
  2877. tests/Makefile, tests/Makefile.in: Removed files checked in in error.
  2878. * freeglut-1.3/.deps, freeglut-1.3/.deps/freeglut_callbacks.P,
  2879. freeglut-1.3/.deps/freeglut_cursor.P,
  2880. freeglut-1.3/.deps/freeglut_display.P,
  2881. freeglut-1.3/.deps/freeglut_font.P,
  2882. freeglut-1.3/.deps/freeglut_font_data.P,
  2883. freeglut-1.3/.deps/freeglut_gamemode.P,
  2884. freeglut-1.3/.deps/freeglut_geometry.P,
  2885. freeglut-1.3/.deps/freeglut_init.P,
  2886. freeglut-1.3/.deps/freeglut_joystick.P,
  2887. freeglut-1.3/.deps/freeglut_main.P,
  2888. freeglut-1.3/.deps/freeglut_menu.P,
  2889. freeglut-1.3/.deps/freeglut_misc.P,
  2890. freeglut-1.3/.deps/freeglut_overlay.P,
  2891. freeglut-1.3/.deps/freeglut_state.P,
  2892. freeglut-1.3/.deps/freeglut_structure.P,
  2893. freeglut-1.3/.deps/freeglut_teapot.P,
  2894. freeglut-1.3/.deps/freeglut_videoresize.P,
  2895. freeglut-1.3/.deps/freeglut_window.P, freeglut-1.3/Makefile,
  2896. freeglut-1.3/Makefile.in: Initial revision
  2897. * ., AUTHORS, COPYING, ChangeLog, INSTALL, Makefile.am, NEWS, README,
  2898. TODO, acconfig.h, aclocal.m4, configure, configure.in, freeglut-1.3,
  2899. freeglut-1.3/Makefile.am, freeglut-1.3/freeglut_callbacks.c,
  2900. freeglut-1.3/freeglut_cursor.c, freeglut-1.3/freeglut_display.c,
  2901. freeglut-1.3/freeglut_font.c, freeglut-1.3/freeglut_font_data.c,
  2902. freeglut-1.3/freeglut_gamemode.c, freeglut-1.3/freeglut_geometry.c,
  2903. freeglut-1.3/freeglut_init.c, freeglut-1.3/freeglut_joystick.c,
  2904. freeglut-1.3/freeglut_main.c, freeglut-1.3/freeglut_menu.c,
  2905. freeglut-1.3/freeglut_misc.c, freeglut-1.3/freeglut_overlay.c,
  2906. freeglut-1.3/freeglut_state.c, freeglut-1.3/freeglut_structure.c,
  2907. freeglut-1.3/freeglut_teapot.c, freeglut-1.3/freeglut_videoresize.c,
  2908. freeglut-1.3/freeglut_window.c, freeglut-1.3/templates,
  2909. freeglut-1.3/templates/cpp_template,
  2910. freeglut-1.3/templates/header_template, freeglut.dsw,
  2911. freeglut.kdevprj, freeglut.lsm, freeglut13.dsp, freeglut13.plg,
  2912. genfonts, genfonts/.deps, genfonts/.deps/genfonts.P,
  2913. genfonts/.deps/genstroke.P, genfonts/Makefile, genfonts/Makefile.am,
  2914. genfonts/Makefile.in, genfonts/Roman.src, genfonts/Roman_M.src,
  2915. genfonts/genfonts.c, genfonts/genstroke.c, include, include/GL,
  2916. include/GL/Makefile, include/GL/Makefile.am, include/GL/Makefile.in,
  2917. include/GL/freeglut.h, include/GL/freeglut_internal.h,
  2918. include/Makefile, include/Makefile.am, include/Makefile.in,
  2919. install-sh, mkinstalldirs, stamp-h, stamp-h.in, tests, tests/.deps,
  2920. tests/.deps/one.P, tests/Makefile, tests/Makefile.am,
  2921. tests/Makefile.in, tests/one.c: Initial revision