WylieWord/WylieWord development copy.dot
a1tsal 4b8013770f Version 2.0b1p5 (16 November 03, sent only to knowone@zensearch.com)
Fixed SourceForge bug #835911, reported by knowone@zensearch.com,
  viz. that if you did control-alt-O before anything else, it blew out.
  This actually only occurred when loading from the Startup folder, because
  doing that bypasses the initialization procedure (AAARGH -- yet another
  way in which loading from Startup differs from normal template loading).
  Fixed this by reorganizing several functions to get the initialization to
  happen anyway.

  knowone@zensearch.com reported that hrIM did not come out correctly: the
  default bindu was used rather than the gigu bindu.  This problem also
  occurred with hr-IM, although he did not report that.  The bug was that
  a-chung came after the gigu (or reverse gigu), so the bindu code saw A as
  the vowel.  Two changes were required to fix this.  One was to put the
  gigu after the a-chung (which is legal and equivalent) in InsertVowel.
  The other was that FixTMW2WylieConversion didn't know about -I at all.
  (This bug was left over from Than's code.)  I also corrected various
  confused code comments in FixTMW2WylieConversion, InsertPlainBindu, and
  InsertChandraBindu.

  Commented out code that suppressed screen updating in
  InsertTibetanLetter.  As reported by knowone@zensearch.com, this caused
  severe "screen flashing" because it forced Word to recompute the screen
  image from scratch (rather than incrementally).  However, removing it
  causes local flashing (of the current tsheg bar), which may be worse in
  some cases (notably long Sanskrit words).  Not sure what to do about
  this.  Ideally, WW could avoid having to delete and replace the whole
  tsheg bar, but would only update the character(s) that are changed as a
  result of the user's typing.  Unfortunately, this would be fairly
  difficult to do -- it would require a complete re-write of ConvertWylie,
  for starters.

  In Options dialog, select the TibFontSize widget text and give it focus.
  (Feature requested by knowone@zensearch.com on the grounds that this is the
  thing most likely to be changed.)

  Changed default for interlineal capitalization mode to "Never" (from "Unless
  first"). (This is more consistent with the rest of the program; requested by
  knowone@zensearch.com.)

  In InsertTibetanLetter, change the data type of 'position' from integer
  to long, to avoid overflow error on very long documents.

  Fixed bug in interlineal root-letter capitalization: its algorithm for
  "unless first" checked only for prefixes, not for superscripts, so it did
  not capitalize the k in "sku".  (Bug introduced in 2.0a7.)

  Changed some initializeWylieWord calls to reinitializeWylieWordIfNecessary,
  to avoid creating multiple copies of the event handler (which I thought
  was a likely cause of flashing/performance degradation reported by
  knowone@zensearch.com, but seems not to have been a significant factor).

  Changed the Options dialog OK procedure to not call the full initialization
  routine, but only LoadPhoneticsFile (which is all that was needed).  This was
  to avoid creating duplicate event handlers.

  Changed the functions that looked up Wylie in the font data tables to use
  hash tables rather than linear search of the arrays, on the theory that
  this might alleviate a performance bottleneck.  But it doesn't seem to
  have helped much.  In fact, testing shows that repeatedly simply
  inserting and deleting English text causes (approximately) quadratic
  performance degredation, probably due to maintaining Undo information.
  So some of the problem is inherent to Word (or VBA) and there is nothing
  I can do about it.

  Restored the Startup installation code (removed in p4) pending a ruling on this
  from David Germano.
2003-11-16 02:25:41 +00:00

981 KiB