File: ChangeLog

package info (click to toggle)
gtkglarea-sharp 0.0.17-5
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 1,148 kB
  • ctags: 492
  • sloc: sh: 3,376; cs: 2,633; makefile: 421; xml: 126
file content (824 lines) | stat: -rw-r--r-- 32,059 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
2007-04-23T06:35  C.J. Adams-Collier  <cjac@colliertech.org>
	* gtkglarea/Makefile.am
	- removed generated-stamp and generated/* from CLEANFILES
	- added generated/* and generated-stamp to EXTRA_DIST so that the
	  build no longer requires that the builder have gapi
	* configure.ac
	- did a bunch of clean-up
	* gtkglarea/generated
	- Added gtkglarea/generated/*.cs to svn so they don't need to be
	  generated
	* TODO
	- added some things I'd like to do/see done

2007-04-09T20:54  C.J. Adams-Collier  <cjac@colliertech.org>
	- cleaned up example makefiles using automake's include
	* examples/.../Makefile.am
	- re-factored to take advantage of new Include.am files
	* examples/Include.am
	- placed common MCS_ARGS, MONO_PATH, CLEANFILES, EXTRA_DIST,
	  $(ASSEMBLY): target, run: target, and all: target here
	* examples/glade/Include.am,
	* examples/shapes/Include.am,
	* examples/util/Include.am
	- placed MCS_ARGS, MONO_PATH, and RESOURCE_FILES specific to these
	  libs here
	* README
	- updated
	* configure.ac
	- added AC_SUBST for variables that need to be set for the
	  Include.am files to function correctly
	- added a HAS_TAO_OPENGL conditional to help decide whether to
	  build examples
	* Makefile.am
	- using HAS_TAO_OPENGL to decide whether to build examples/*
	* gtkglarea/Makefile.am
	- replaced duplicated strings with variables
	- cleaned up a bit
	
	
2007-04-08T20:32  C.J. Adams-Collier  <cjac@colliertech.org>
	* examples/pick-object/Engine.cs
	- made comments more specific
	- cube now throbs, too

2007-04-08T08:56  C.J. Adams-Collier  <cjac@colliertech.org>
	* */Makefile.am
	- ensured that 'make distcheck' completes successfully
	- building .dll files for classes used outside of each particular
	  directory and using -lib: and -r: instead of mentioning the .cs
	  explicitly (Teapot.cs, GladeExample.cs, Trackball.cs)
	- using $(addprefix $(srcdir)/, $(SOURCE_FILES)) instead of
	  $(SOURCE_FILES) so that builddir can differ from srcdir
	- added *.mdb to CLEANFILES
	- using -lib:@top_builddir@ instead of -lib:$(top_srcdir) so that
	  source can be built from somewhere other than the source dir
	* configure.ac
	- using more modern version of AC_INIT
	- explicitly using tar-ustar and requiring automake 1.9
	- bumped version to 0.0.16
	- using AC_CONFIG_FILES to specify files
	- using non-deprecated AC_OUTPUT macro

2007-04-07T13:39  C.J. Adams-Collier  <cjac@colliertech.org>
	- modified svn:ignore properties
	* examples/util/GLObjectBase.cs
	- set defaults for translation matrix values
	- set defaults for scale matrix values
	- added some docs describing what trans and scale matrix values
	  are being set to
	- setting scale matrix correctly
	* examples/util/GLWidget.cs
	- replaced iterator with foreach
	* examples/pick-object/ObjectPickExample.mdp
	- removed dependency on trackball assembly
	- replaced Tao.OpenGl 0.0.0.0 and Tao.OpenGl.Glu with Tao.OpenGl
	  2.1.1.0
	* examples/pick-object/Engine.cs
	- fixed the Throb() method
	* examples/pick-object/PickWidget.cs
	- removed Trackball-related code
	* gtkglarea/Makefile.am
	- created the generated/ directory at make time
	- created teh docs/ directory at make time
	- re-formatted the gtkglarea-sharp.dll mcs line
	- added a -doc: argument to the mcs line
	- added a -package: line to the gacutil line
	* examples/GtkGlAreaSharpExamples.mds
	- removed LWObjectExample, since it's broken and breaking the
	  build

	

2007-04-06T15:40  C.J. Adams-Collier  <cjac@colliertech.org>
	- added svn:ignore to all directories
	* configure.ac
	- cleaned up MCS definition
	- fixed the Tao dependency check
	* examples/NeHe/NeHe.mds
	- Meh.  Attribute order changed by md
	* */*.mdp
	- clr-version="Net_2_0"
	- ensured that the project runs correctly
	* */Makefile.am
	- changed mcs to $(MCS)
	* examples/NeHe/Lessons/*/Makefile.am
	- changed -pkg:tao-opengl to -pkg:Tao.OpenGl
	- fixed MONO_PATH to include examples/shapes/
	* examples/shapes/Teapot.cs, examples/rotate-buttons/OldTeapot.cs
	- removed ref attribute from call to gl.glMap2f

2007-03-07  C.J. Adams-Collier  <cjcollier@colliertech.org>
	Cleaning up build
	* configure.ac
	- Tao.Opengl -> Tao.OpenGl
	* examples/NeHe/Lessons/0*/Lesson0*.cs
	- renamed window to glwidget
2006-11-10  C.J. Adams-Collier  <cjcollier@colliertech.org>
	Submission made on behalf of "Nick" <Xedecimal@gmail.com>
	* examples/glade/Engine.cs
	- Added lots of comments
	- replaced multiple calls to Show() with a single ShowAll()
	* examples/glade/GladeExample.cs
	- added [Widget] attributes to Gtk widgets
	- renamed "window" to "glwidget" to match the .glade file
	- added lots of comments
	- added modal dialog thinger
	* examples/resources/glwidget.glad
	- added dialog for modal test

2006-10-21  C.J. Adams-Collier  <cjcollier@colliertech.org>
	* TODO
	- noted a need to remove hard dependency on Tao.*
	- also noted that we should build examples if we find Tao.*,
	otherwise not
	
2006-06-19T13:57  C.J. Adams-Collier  <cjcollier@colliertech.org>
	re-factored code under the examples/MdlLoader directory
	
2006-06-19  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview: This concludes the translation of the C version of
	Jenkara's mdl loader to C#.  To load a given .mdl file,
	instantiate the MdlLoader and call the Load() method on the
	object, passing the filename of the data file to load.  It won't
	do anything but print debugging info to STDOUT, but it looks like
	it correctly reads all the bytes :)
	
	* examples/MdlLoader/MdlLoader.cs
	- made struct members public
	- created readFrameData(), which reads frame data from the fstream
	passed as an argument.  Number of frames is retrieved from the
	mdl_t which is also passed as an argument
	- created readDAliasFrame(), which reads a frame from the fstream
	passed as an argument
	- created readDAliasGroup(), which reads a frame group from the
	fstream passed as an argument
	- created readTriVertX(), which reads a triangle and light normal
	index from the fstream passed as an argument
	
 
2006-06-18T19:56  C.J. Adams-Collier  <cjcollier@colliertech.org>
	* examples/MdlLoader/MdlLoader.cs
	- implemented methods to read the mdl_t struct and
	texgroup_struct[] array
	- publicized struct members
	- created a Mdl class and stub constructor
	* examples/MdlLoader/Makefile.am
	- added nowarn for warning #0169
	* examples/MdlLoader/Engine.cs
	- instantiating a Mdl.Mdl class

2006-06-18  C.J. Adams-Collier  <cjcollier@colliertech.org>
	* examples/MdlLoader
	- Created a set of build files to get the project off the ground


2006-04-12  C.J. Adams-Collier  <cjcollier@colliertech.org>
	* examples/util/EulerRotation.cs
	- Made EulerRotation.GimbalLock.GimbalLock() public
	* configure.ac
	- bumped version to 0.0.16

2006-01-25T13:27  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview: Added examples/pick-object and got the pyramid to throb

	* configure.ac
	- bumped version
	- added examples/pick-object/Makefile
	* TODO
	- removed some items, added others
	* checkbuild.sh.in
	- added pgp key signing
	- generalized the file a bit
	* examples/NeHe/Lessons/04/Lesson04.mdp
	- removed shapes from this project.  Getting them from shapes.dll
	* examples/NeHe/Lessons/04/Makefile.am
	- corrected a typo
	* examples/NeHe/Lessons/04/Lesson04.cs
	- qualified shape names
	* examples/NeHe/Lessons/05/Lesson05.mdp
	- removed shapes from this project.  Getting them from shapes.dll
	- added a reference to ShapesExample
	* examples/NeHe/Lessons/05/Makefile.am
	- removed shapes
	* examples/trackball/Makefile.am
	- added --debug to mcs args
	- added Teapot.cs from shapes/
	- added shapes/ dir to -libs list
	* examples/trackball/TrackballExample.mdp
	- added Trackball.cs
	* examples/GtkGlAreaSharpExamples.mds
	- added ObjectPickExample and ShapesExample, LWObjectExample
	* examples/lwo/lw.c
	- yoinked from gtkglarea
	* examples/lwo/lw.h
	- see above
	* examples/lwo/penguin.lwo
	- also the same
	* examples/shapes/ColoredTriangle.cs
	- changed namespace
	* examples/shapes/Cube.cs
	- changed namespace
	- changed color3f to color4f
	* examples/shapes/Square.cs
	- changed namespace
	* examples/shapes/Triangle.cs
	- changed namespace
	* examples/shapes/ColoredSquare.cs
	- changed namespace
	* examples/Makefile.am
	- added the pick-object/ directory to the list of SUBDIRS
	* examples/rotate-buttons/OldGLObjectBase.cs
	- tweaked the API so it follows the same API, but doesn't
	implement much of the functionality.  Really, folks... don't use
	this one.  Go with the other one.  I should throw NotImplemented
	exceptions.
	* examples/pick-object/ObjectPickExample.mdp
	- created a new MDP
	* examples/pick-object/Engine.cs
	- This is where the Throb() method is implemented.  It is also
	where the GL window is instantiated.
	* examples/pick-object/Makefile.am

2006-01-25  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview: Added beginnings of support for gtkglext in this package

	* sources/gtkglext-sharp.sources.xml
	- Added a sources file that describes the code hierarchy
	* sources/Makefile.am
	- added the commands and variables for GTKGLEXT
	* gtkglext/
	- created a directory for the generated code to live in

2006-01-12T17:39  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview: Changed internal representation of Translation, Scale
	and Rotation from Euler Rotation + Quaternion + Rotation Matrix to
	Quaternion + scale vector + translation vector.  I moved the old
	code into rotate-buttons, which is the only example that relies on
	internal representation as Euler angles.  This change makes NeHe
	example 4 work correctly

	* 04/Lesson04.mdp
	- added Colored*.cs
	* 04/Makefile.am
	- added Colored*.cs
	- added reference to GladeExample.cs
	- added run: target
	- using $(SOURCE_FILES)
	* 04/Lesson04.cs
	- changed namespace name to NeHe
	- threw out old code and replaced with the new hotnes from
	...-util.  Read the diff :)
	* util/GLObjectBase
	- re-factored euler rotations out and quaternion + scale,
	translation vectors in
	- TransMatrix get{} now constructs a translation matrix from the
	quat and vectors
	- all of the set{}s now manipulate quat, translation, and scale
	- Translate() now manipulates translation
	- Rotate() methods now convert the passed arg and call the quat version
	- ResetRotation() sets Quat instead of ERot
	- GetTransformationMatrix() now returns TransMatrix
	- Draw now calls glMultMatrixd(this.TransMatrix.Matrix)
	
2006-01-12  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview: removed lighting from default GtkGL.GLWidget
	configuration.  The examples that use lighting now explicitly turn
	it on.  The GL Window is hidden by default.  The examples that use
	it must explicitly .Show() it.  ColoredTriangle and ColoredSquare
	classes are now fully implemented, and NeHe lesson 03 now uses
	them.  Added the NeHe.mds solution.

	* 01/Lesson01.cs
	- re-factored to use GtkGL.GladeExample class for basic class
	construction
	* 01/Makefile.am
	- Added dependancy on GladeExample.cs
	- added a run target
	- added $(SOURCE_FILES) to mcs commandline instead of explicitly
	listing the .cs file
	* 02/Square.cs
	- now in the NeHe namespace
	- Renamed DrawSquare to DrawObject (changed this in GLObjectBase, too)
	- re-factored common code into GLObjectBase
	* 02/Lesson02.cs
	- re-factored common code into GladeExample and GLObjectBase
	* 02/Makefile.am
	- added dependency on GladeExample.cs
	- created run: target
	* 02/Triangle.cs
	- see Square.cs
	* 03/ColoredTriangle
	- created.  Based on 02/Triangle, but colored :)
	* 03/Lesson03.mdp
	- added Colored*
	* 03/Makefile.am
	- added GladeExample and Colored* to the dependency list
	- added run: target
	- now using $(SOURCE_FILES)
	* 03/Lesson03.cs
	- see 02/Lesson02.cs
	* 03/ColoredSquare
	- see 03/ColoredTriangle
	* trackball/TrackballExample.cs
	- now explicitly showing the window and glw
	* trackball/TrackballWidget.cs
	- explicitly enabled lighting
	* trackball/Makefile.am
	- added the .pidb file to CLEAN targets
	* rotate-button/RotateButtonExample.cs
	- explicitly enabled lighting
	- now explicitly showing the window and glw
	* glade/GladeExample.mdp
	- added Engine.cs
	* glade/Makefile.am
	- added Engine.cs
	* glade/GladeExample.cs
	- re-factored common stuff into GladeExample and specific stuff
	into Engine
	* util/Teapot.cs
	- re-named DrawTeapot to DrawObject in order to make the method
	more generic
	- moved common methods into GtkGL.GLObjectBase
	* util/GLObjectBase.cs
	- Now firing the Updated handler from here
	- placed generic Init() method here
	- Quat is protected
	- TransMatrix is protected
	* GLWidget.cs
	- corrected incorrect comment
	- moved the Clear command to before the LoadIdentity call
	- added an EnableLighting method
	- added an eventHandler to make extending the GL setup easier
	- moved GL setup into InitGL()

	
2006-01-11T19:10  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview: Moved Lessons/Lesson0N.* to Lessons/0N/Lesson0N.*,
	removed excess debug print statements, moved Triangle.cs and
	Square.cs into NeHe/Lessons/02/


2006-01-11  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview:Renamed RotationMatrix to TransformationMatrix (I'm
	thinking of getting rid of the matrix and replacing it with a
	quaternion for rotation + a vector for scale and a vector for
	translation).  Triangle and Square objects now draw themselves
	correctly.  I've also had a chance to straighten out the IGLObject
	Translate() methods.

	* configure.ac
	- Bumped version
	* TODO
	- removed GimbalLock issue from TODO list
	- added item for re-factoring Euler angles
	- added item for .mdl / .md3 files
	* examples/NeHe/Lessons/Lesson01.cs
	- changed namespace from NeHe.Lesson01 to NeHe
	- basically replaced with GladeExample code
	* examples/NeHe/Lessons/Lesson02.cs
	- changed namespace from NeHe.Lesson02 to NeHe
	- added Triangle, Square objects.  Translated them
	- removed methods that are implemented in GLObjectBase
	- added onquit and onwindowdeleteevent methods
	* examples/NeHe/Lessons/Makefile.am
	- re-organized sources into SOURCE_FILES
	- created a MCS_ARGS variable to reduce duplicate code
	* examples/trackball/TrackballExample.mdp
	- added resources directory to project
	* examples/GtkGlAreaSharpExamples.mds
	- renamed *test to *example
	- added NeHe project
	- added GtkGLAreaUtil
	- added GladeExample
	* examples/util/TransformationMatrix.cs
	- renamed from RotationMatrix.cs
	- added operator *()
	* examples/util/Teapot.cs
	- added Translate() methods	
	* examples/util/EulerRotation.cs
	- renamed rotationmatrix to transformationmatrix	
	* examples/util/IGLObject.cs
	- added Translate() methods
	- renamed rotationmatrix to transformationmatrix
	* examples/util/GLObjectBase.cs
	- renamed rotationmatrix to transformationmatrix	
	* examples/util/RotationMatrix.cs
	- renamed to TransformationMatrix.cs
	* examples/util/Makefile.am
	- renamed rotationmatrix to transformationmatrix
	- added Triangle, Square
	* examples/util/Quaternion.cs
	- renamed rotationmatrix to transformationmatrix
	* examples/util/GLWidget.cs
	- moved the projection translation into the resize handler


2006-01-10  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview: Moved common code into examples/util/ and compiled them
	down to a gtkglarea-sharp-util.dll file.  I added a make run entry
	for each of the examples, since they require a modification to the
	MONO_PATH environment variable.

2006-01-09  C.J. Adams-Collier  <cjcollier@colliertech.org>
	* examples/trackball/Vector.cs
	- New link to ../rotate-buttons/Vector.cs
	* examples/trackball/TrackballWidget.cs
	- removed debug print statements
	* examples/trackball/Makefile.am
	- Added Vector.cs
	* examples/trackball/trackballTest.mdp
	- re-structured for new code
	* examples/GtkGlAreaSharpExamples.mds
	- removed old project
	- added new projects
	! moved common to util:
	examples/common
	examples/common/Teapot.cs
	examples/common/glwidget.glade
	examples/common/Trackball.cs
	examples/common/Makefile.am
	examples/common/GLWidget.cs
	* examples/rotate-buttons/GLObjectBase.cs
	- changed += to *=
	* examples/rotate-buttons/Quaternion.cs
	- shortened line
	- changed operator+ to operator*
	- re-wrote operator* based on Vector code
	- removed Vector-specific code and placed in Vector.cs
	* examples/rotate-buttons/Vector.cs
	- Moved vector-specific code from Quaternion.cs to Vector.cs
	* examples/resources
	- created a directory to contain images and glade-ish things
	* examples/util
	- renamed common to util


2006-01-06T15:17  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview: Applying new classes from rotate-buttons to this
	example.  Linked to the new class files from ../rotate-buttons and
	got a compiling version working.  Runtime errors, though.

	* EulerRotation.cs
	- created link
	* trackballTest.cs
	- There is now a class variable called glw
	- Set glw to a new instance of TrackballWidget
	- created a new Teapot
	- added teapot to glw
	- replaced glw.glArea with glw
	* IGLObject.cs
	- created link	
	* TrackballWidget.cs
	- replaced the float[] quat with a Quaternion
	- replaced glArea. with this.
	- placed into the GtkGL. namespace
	- when OnMotionNotify is called, all glObjects associated with
	this glArea get Rotate()d
	- removed onExposed.  parent class will handle exposed event.
	* GLObjectBase.cs
	- created link	
	* RotationMatrix.cs
	- created link	
	* Makefile.am
	- re-structured to be like Makefile.am from ../rotation-buttons/
	* Quaternion.cs
	- created link	
	* GLWidget.cs
	- created link	


	

2006-01-06T12:06  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview: Fixed EulerRotation.ToRotationMatrix()
	
	* examples/rotate-buttons/GLObjectRotationController.cs
	- remove TODO from GLObjectRotationController.cs (complete)
	- Created Get*Rotation, for Euler, Quaternion and Matrix
	- fixed docs
	* examples/rotate-buttons/ObjectRotationButton.cs
	- added bools to make sure the handlers aren't connected >1 times
	* examples/rotate-buttons/RotationMatrix.cs
	- Added an operator + for RotationMatrix objects
	* examples/rotate-buttons/GLObjectBase.cs
	- made setting of euler, matrix, quat an atomic action
	- cleaned up the Rotate() methods
	- ResetRotation sets eRot to EulerRotation.Identity()
	- added Get*Rotation() methods
	* examples/rotate-buttons/Quaternion.cs
	- added an Identity property
	* examples/rotate-buttons/EulerRotation.cs
	- added Get
	- cleaned up the null test in operator +
	- fixed the ToRotationMatrix() method
	* examples/rotate-buttons/IGLObject.cs
	- added Get*Rotation to the interface


2006-01-06  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview: GtkGL.Rotation has been deprecated.  Now replaced with
	one of EulerRotation, Quaternion or RotationMatrix.  Replacing
	float variables with double.  Let's see how this works...  Also,
	turned on debugging symbols

	* configure.ac
	- bumped version to 0.0.8
	* checkbuild.sh.in
	- added command to push new version to colliertech.com/downloads/...
	* examples/rotate-buttons/GLObjectRotationController.cs
	- rather than storing a local copy, we get the rotation from the object
	- using EulerRotation rather than Rotation
	* examples/rotate-buttons/ObjectRotationButton.cs
	- removed GtkGL.Rotation and replaced with GtkGL.EulerRotation
	* examples/rotate-buttons/GLObjectBase.cs
	- now using a GtkGL.RotationMatrix instead of a float[16]
	- adding a GtkGL.EulerRotation and GtkGL.Quaternion for flavor
	- added implementations of Rotate() that accept Quaternion,
	EulerRotation and RotationMatrix
	- removed the one that accepts GtkGL.Rotation
	- ResetRotation sets the rotation to the identity rather than null
	- GetRotation catches gimbal lock exception
	- Instead of converting from RotationMatrix, it should return the local EulerRotation object.
	* examples/rotate-buttons/RotationMatrix.cs
	- Added file.  Represents a Rotation Matrix
	* examples/rotate-buttons/Quaternion.cs
	- Added file.  Represents a Quaternion
	* examples/rotate-buttons/EulerRotation.cs
	Added file.  Represents a Euler Rotation
	* examples/rotate-buttons/Teapot.cs
	- replaced Rotate() methods with new versions
	- changed f to d in glMultMatrixf
	* examples/rotate-buttons/RotationUtil.cs
	- removed EulerRotation, since there is now a EulerRotation.cs
	- using Accessors rather than hitting the member variables directly
	* examples/rotate-buttons/IGLObject.cs
	- replaced GtkGL.Rotation version of Rotate with Euler, Quat and Matrix
	* examples/rotate-buttons/Makefile.am
	- added Euler Quat and Matrix cs files
	- added -debug to the mcs command line
	* examples/rotate-buttons/rotateButtonTest.mdp
	- added Euler Quat and Matrix cs files


2006-01-02  C.J. Adams-Collier  <cjcollier@colliertech.org>
	
	Overview: The entry fields may now be used to rotate the object as
	well as the buttons.  They are updated when the buttons are
	pressed, and if a number is entered into them, the object is
	rotated to that angle

	* examples/rotate-buttons/Teapot.cs
	- added methods to rotate and reset rotation that take a third
	argument which indicates whether or not the handler should be
	fired
	* examples/rotate-buttons/GLObjectRotationController.cs
	- added lots of documentation
	- added a method to update the rotation of the object based on the
	values entered into the entry fields
	- aligned numbers left
	- added the UpdateObjectRotation method to the event object's
	Activated and FocusOutEvent events
	* examples/rotate-buttons/RotationUtil.cs
	- documented the EulerRotation struct
	* examples/rotate-buttons/IGLObject.cs
	- added the method signatures for optional Updated event firing
	* examples/rotate-buttons/GLObjectBase.cs
	- whitespace
	
2006-01-01  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview: Completed writing code to update the entry fields when
	the +/- buttons are pressed

	* examples/NeHe/Lessons/Makefile
	- Added our build testing script
	* examples/rotate-buttons/GLObjectRotationController.cs
	- Added an EulerRotation object to the class to keep track of the
	rotations represented to the user
	- re-bound to ObjectRotationButton's Rotated event instead of
	IGLObject's Updated event
	- now resetting the Euler rotation values and re-displaying when
	the reset button is triggered.
	* examples/rotate-buttons/ObjectRotationButton.cs
	- made the rotation member public
	- added a Rotated event
	! RotateObjects()
	- fire the Rotated event after the object has been rotated


2005-12-31T22:46  C.J. Adams-Collier  <cjcollier@colliertech.org>

	Overview: Entry fields are now filled in when the buttons are
	pressed.  Sort of.  There's a gimbal lock error causing strange
	things to happen.  Try it out.  Please tell me if you know how to
	fix it.

	* rotate-buttons/GLObjectRotationController.cs

	- Created a Hashtable called entryMap.  It maps between the keys,
	'x', 'y', and 'z'.and the entry widgets (values) for X, Y and Z
	rotation, respectively.  I think of this as a %hash variable in
	perl (pseudocode shown here):

	%entryMap = (
	chr('x') => gtkglWidget("X rotation entry widget"),
	chr('y') => gtkglWidget("Y rotation entry widget"),
	chr('z') => gtkglWidget("Z rotation entry widget"),
	);

	! UpdateRotationValues()
	- This handler is connected to the IGLObject's Updated event
	- Every time the object fires an Updated event, the Euler
	rotation angles are calculated from the internal representation of
	the object's rotation (currently a rotation matrix, possibly in
	the future a quaternion) and displayed in the appropriate entry
	widget.
	! GLObjectRotationController()
	- connect afore-mentioned handler to the Updated signal
	- create afore-mentioned entryMap
	* rotate-buttons/IGLObject.cs
	- corrected a comment
	- add a method to the interface requirements called GetRotation()
	that returns an euler rotation.  Perhaps it should be called
	getEulerRotation() instead...  Please don't consider this part of
	the API hard and fast.  Thanks.
	* rotate-buttons/GLObjectBase.cs
	- implemented above-mentioned GetRotation() method in this "base" class
	* rotate-buttons/Makefile.am
	- Added RotationUtil.cs and GLObjectRotationController.cs to the
	prereqs list for rotateButtonTest.exe.  I should have caught the
	latter sooner than I did.  But I haven't pushed a build in a
	while, so it's okay :)
	- added RotationUtil.cs to the mcs command line
	* rotate-buttons/rotateButtonTest.mdp
	- Added RotationUtil.cs to the mdp file
		
	

2005-12-31  C.J. Adams-Collier  <cjcollier@colliertech.org>
	Overview: Created an GLObjectRotationController, which encompases
	the object rotation UI and the handlers associated with it.  This
	controller contains ObjectRotationButton widgets; a Clockwise and
	CounterClockwise button for each each axis, X, Y and Z.  The
	GLObjectRotationController class was refactored out of
	rotateButtonTest.cs and lives in GLObjectRotationController.cs.
	Also, the object manipulation widgegt was refactored from the
	glwidget.glade file into its own rotation-controller.glade file

	* examples/rotate-buttons/Teapot.cs
	- explicitly specified "new" in method signature.  Yes, we know
	we're overriding.
	* examples/rotate-buttons/GLObjectRotationController.cs
	- created this file by refactoring code out of rotateButtonTest.cs
	* IGLObject.cs: Newline changes
	* GLObjectBase.cs
	- swapped rotation directions.  Had CC-wise going C-wise and vice versa
	* Makefile.am
	- Mentioned new .cs and .glade files
	* rotateButtonTest.mdp
	- Mentioned new .cs and .glade files
	* GLWidget.cs
	- now using Gtk
	- AddGLObject(): Added object to list *after* connecting handler
	- Init(): added some comments
	- Init(): moved handlers into Init() from connectHandlers()
	- deleted connectHandlers()
	- OnSizeAllocated(): added comment, removed newline
	- OnExposed(): modified comment, removed debugging message
	- OnRealized(): Added comment, removed debugging message
	- added OnQuit(), OnWindowDeleteEvent() handlers to the class
	* rotation-controller.glade: Created
	* rotateButtonTest.cs
	- created a member variable for the glw widget
	- same for GLObjectRotationController object
	- refactored GLObjectRotationController code into new class
	- moved GLWidget-specific handlers into GLWidget

2005-12-30  C.J. Adams-Collier  <cjcollier@colliertech.org>
	Overview: Rotation on button click has (finally) been implemented.
	IGLObject objects are required to have an Update EventHandler now.
	Update is triggered when rotations are applied.  The same method
	that the GLArea's OnExpose event handler fires off is now being
	fired off by Teapot's Update EventHandler.  Thus: a) button is
	pressed which b) rotates object which c) triggers the Update
	handler, which d) draws the glarea, including the object
	
	* examples/rotate-buttons/Teapot.cs
	- Created an EventHandler called Update which fires when object is rotated
	- moved Draw() method.  It now applies the rotation matrix, if one exists
	- Rotate() method now hands work off to base.Rotate() (GLObjectBase.cs)
	- Rotate() method now fires off the Updated event
	- added ResetRotation() method
	- ResetRotation() method calls base.ResetRotation() and then fires the Updated handler
	* examples/rotate-buttons/Rotation.cs
	- uhm... added a newline
	* examples/rotate-buttons/ObjectRotationButton.cs
	- ObjectRotationButton now contains an object that implemts IGLObject instead of a GLArea
	- the member variable is now called glObject instead of glArea
	- removed rotMult member variable definition.  Should remove the variable, now that it's not used anymore.
	- handing rotation code off to glObject.Rotate(rotAngle, rotation)
	* examples/rotate-buttons/IGLObject.cs
	- The interface now enforces the use of a Update event handler
	- The interface now enforces the use of a ResetRotation() method
	* examples/rotate-buttons/GLObjectBase.cs
	- now using gl=Tao.OpenGl.Gl
	- removed abstract Draw() method
	- added a rotMatrix member variable
	- the Rotate() method calculates a rotation matrix and stores it
	in rotMatrix
	- The rotMatrix can then be used when Draw() is called to rotate
	the object as desired at draw time
	- ResetRotation() merely sets the rotation matrix to null
	* examples/rotate-buttons/Makefile.am
	- added a bunch of .cs files to our EXTRA_DIST variable
	* examples/rotate-buttons/GLWidget.cs
	- created an AddGLObject(IGLObject ob) method
	- This method adds the passed object to the widget's "associated"
	object list
	- removed teapot addition code from Init() (moved to
	rotateButtonTest.cs
	* examples/rotate-buttons/rotateButtonTest.cs
	- in buildControlWindow(), the teapot is created and associated with the GLWidget
	- ObjectRotationButton now takes an object that implements
	IGLObject rather than a GLArea.  teapot is being passed now
	instead of glw
	

2005-12-29  C.J. Adams-Collier  <cjcollier@colliertech.org>
	* examples/rotate-buttons/Teapot.cs
	- Copied from ../shared
	- Will be merged back in after changes are complete to new code
	- Teapot is now implements IGLObject and inherits from GLObjectBase
	- The teapot is drawn and cached by calling Init()
	- We now know how to Draw() ourselves.
	* examples/rotate-buttons/Rotation.cs
	- copied from ../shared
	- Will be merged back in after changes are complete to new code
	- This is a convenient way to refer to a clockwise or c-clockwise rotation in any direction
	* IGLObject.cs
	- This is an interface intended to make GL Object creation easier: Today, Teapots.  Tomorrow the world.  Or quake modles, or whatever.
	* examples/rotate-buttons/ObjectRotationButton.cs
	- This is a widget that inherits from Gtk.Button.  It rotates a GLObject  in a GtkGL.Rotation direction when the button is clicked.
	- It is also the next file to get some love from yours truly
	* examples/rotate-buttons/GtkGLObjectBase.cs
	- This is where methods common to all GLObjects will be implemented
	- Also, common member variables are defined here
	* examples/rotate-buttons/Makefile.am
	- added rotateButtonTest.exe target
	* examples/rotate-buttons/rotateButtonTest.md[ps]
	- created MonoDevelop solution.  I don't think it works right now, but I will be maing it work in the futrue
	* GLWidget.cs
	- Copied from ../shared
	- Will be merged back in after changes are complete to new code
	- now inherits from GLArea
	- we are now calling Teapot.Init() in order to build the teapot
	- we are now calling Teapot.Draw() in order to draw the teapot
	- GLWidget is now a GLArea, so we now use glw instead of glw.glArea
	- there is a control widget.  Did I mention I updated ../common/glwidget.glade ?
	
2005-12-25  C.J. Adams-Collier  <cjcollier@colliertech.org>
	* examples/trackball/shapes.cs:
	- depricated this file.  Soon it will be svn rm'd
	- Broke up the content into examples/common/GlWidget.cs, TrackballWidget.cs and trackballTest.cs
	* examples/trackball/Makefile.am:
	- Corrected the all: target
	- made the trackballTest.exe target work
	- fixed EXTRA_DIST and CLEANFILES
	* examples/common/glwidget.glade:
	- changed from glwidgets to glwidget
	- removed silly frame
	- removed statusbar
	* examples/common/GLWidget.cs:
	- created a connectHandlers() method that the handler connection code lives in now
	- added a link to the gluPerspective() man page
	- made OnExposed() a protected method so GLWidget's derived classes can remove it from the event queue
	- shapeList is now protected so derived classes can fiddle with it
	* examples/glade/glwidget.glade
	- moved the file to common/glwidget.glade
	* examples/glade/Makefile.am:
	- changed glwidget.glade to ../shared/glwidget.glade
	* examples/trackball/trackballTest.cs:
	- simple wrapper around TrackballWidget.cs

2005-12-23  C.J. Adams-Collier  <cjcollier@colliertech.org>
	* examples/: reorganized the examples that were there, added new ones

	
2005-12-13  C.J. Adams-Collier  <cjcollier@colliertech.org>

	* configure.am: added Makefiles for NeHe examples
	* examples/NeHe: Created directory structure for NeHe examples
	* examples/NeHe/Lesson01: Created a minimal OpenGL display
	* examples/NeHe/Lesson02: Created a triangle, square display