# 2.09.01 (48362) Jan 31, 2011 1/31/11 dev version for testing KSU credits 1/31/11 #2624,KSU credits: put problematic "parenthesis and text between them" on a separate line (3rd line) 1/13/11 #2624, add target="_blank" to ksu.credits so that hyperlink opens in a new window/tab 1/4/11 #2624, revise ksu.credits again, remove email address line 1/4/11 #2624, revise ksu.credits 1/4/11 #107,#2624, if translation.credits=="KSU", add ksu.credits to strings file 1/3/11 #107, add help button for translation.credits 1/3/11 #107, put translation.credits at top of TranslationPanel 1/3/11 simplify sorting of properties 1/3/11 #107,#2624, add translation.credits property, for specifying translation credits 9/20/10 #2492,#2497 move translationutility.jar to buildtools.jar, add dependency on build-tools 9/20/10 #2492,#2497 migrate DocumentIO to phetcommon XMLUtils 9/20/10 rename DocumentAdapter to FlashStringsAdapter 9/20/10 move stuff out of JavaUtils that specific to Flash strings XML schema 9/20/10 #2492,#2497 move methods related to string file names into JarCreator hierarchy 9/20/10 promote FlashJarCreator and JavaJarCreator to top-level types 9/20/10 #2492,#2497, push duplicate code into base class for creating localized jars 9/20/10 #2492,#2497, rename JarFactory to JarCreator, since this isn't a factory pattern (no objects are created) 9/20/10 delete Simulation.manifest, unused member 9/20/10 #2492,#2497, reorganization to remove duplicate code 9/18/10 simplify class hierarchy by removing redundant ISimulation interface 9/18/10 get rid of PropertiesIO class, what it was doing was trivial and only used in one place 9/18/10 #2492, move all related code to new translationutility.jar package 9/15/10 #2492, phase 2: move jar localization code to JarFactory (lightly tested) 9/15/10 #2492, move more general jar function to JarUtil # 2.09.00 (44031) Sep 13, 2010 9/9/10 #2463, Java sim fix: missing strings should be left blank, not populated with English 9/9/10 #2463, fix: use type=java in simulation.properties for Java sim test jars 9/9/10 #2497, use better/consistent variable names in createTestJar methods 9/9/10 remove '_' prefix in member data names for older code, so that convention is the same throughout 9/9/10 converted ArrayLists to use generics 9/9/10 #2492, first phase: prepare code related to jar creation for migration to phetcommon (not completed, not fully tested) 8/30/10 #2463, add simulation.properties support for all sim, which facilitates multiple sims per Flash project 8/30/10 change all Logger messages to level "info" 7/13/10 #2406, ensure that main frame size doesn't exceed primary display size 7/13/10 #2421, update URLs that changed with move to wicket-based website 7/13/10 #2436, consolidate all URLs and email addresses in TUConstants 7/13/10 fix contractions (eg "don't") in HTML strings that weren't rendering correctly 5/28/10 #1506, problems with log4j, changed logging to java.util.logging 5/28/10 adhoc logging replaced with log4j by JO 4/1/10 changed "Brazilian Portuguese" to "Portuguese, Brazil" to be consistent with website (see #2250) # 2.08.00 (39581) Apr 1, 2010 4/1/10 added locale "es_CO" for "Spanish, Colombia" (see #2244) # 2.07.00 (39060) Mar 3, 2010 3/3/10 deprecate locale "no", it's the same as "nb" (see #2146) # 2.06.00 (37959) Jan 8, 2010 1/8/10 fixes for languages that use preferred font + preferred font for Georgian # 2.05.02 (37958) Jan 8, 2010 1/8/10 fix: use preferred font for target text areas, broken in eariler changes # 2.05.01 (37909) Jan 5, 2010 1/5/10 #1891, add preferred fonts for Georgian (ka) 1/5/09 #2083, display font face names below the language names at the top of each column # 2.05.00 (37895) Jan 5, 2010 1/5/10 #2075, change custom locale for Friulian from "fu_IT" to "fu" # 2.04.00 (37830) Dec 30, 2009 12/30/09 #2075, add custom locale for "Friulian, Italy" # 2.03.00 (36202) Oct 29, 2009 10/29/09 new production version with many enhancements and fixes # 2.02.03 (35607) Oct 8, 2009 10/8/09 new icons for preview and error buttons # 2.02.02 (35572) Oct 7, 2009 10/7/09 dev version to verify changes and new features 10/1/09 #1627, HTML preview feature 9/29/09 #110,1794,1795, fix scrolling issues in main scroll pane 9/29/09 #1799, file chooser filters for Save/Load feature 9/28/09 #1798, toolbar enhancements (tooltips, order, spacing) 9/28/09 #97, check for unsaved changes 9/25/09 #1794, limit displayed key name length to 40 chars, show ellipsis in middle for longer keys 9/25/09 #110, prevent unwanted scroll pane autoscrolling by deleting listener in MainFrame 9/25/09 #1629, validate MessageFormat and HTML translations, user-interface for accessing validation error details 9/24/09 #1793, initialize all strings statically # 2.02.01 (35168) Sep 21, 2009 9/21/09 publish dev version to verify changes 9/17/09 convert usage of collections to Java 5 9/17/09 #1787, use sim JAR directory as default for Save/Load 9/16/09 #1781, changes to prevent confusion about Save feature # 2.02.00 (34911) Sep 9, 2009 9/9/09 deploy changes for km (#1750) and ar_SA (#1680) 9/9/09 #1680, add locale for ar_SA (Arabic, Saudi Arabia) # 2.01.00 (31673) May 14, 2009 5/14/09 deploy to tigercat to include new preferred fonts 5/14/09 #1653, when testing translations use phetcommon-fonts.properties from translation-utility.jar # 2.00.00 (31012) Apr 28, 2009 4/28/09 deploy 2.00 to tigercat after IOM release 4/21/09 #1249, delete backward compatibility after IOM release 4/21/09 #1582, revise Chinese and Portuguese locales 3/5/09 log version info 3/5/09 show timestamp in version information # 1.12.00 (29256) Mar 5, 2009 make translation utility usable with signed jars (#1389) 3/5/09 add logging that can be turned on via command line with -log 3/5/09 replace getActualProjectName mess, use getStringsBasename to handle name mapping for common strings 3/5/09 #1389, exclude files related to digital signature 3/5/09 #1389, exclude files from jar based on regular expressions 3/5/09 use FlashLauncher.ARS_FILENAME, add flash-launcher build dependency # 1.11.00 (29003) Feb 24, 2009 2/24/09 #933, deploying support for flash common strings 2/24/09 - #933, add support for Flash common strings "flash-common-strings.jar" 2/24/09 - #933, adjustment for name change of Java common strings to "java-common-strings.jar" # 1.10.00 (28666) Feb 17, 2009 new production version with backward compatibility for all sims 2/16/09 - #1249, tag all backward-compatibility code 2/16/09 - #1221, write jar-launcher.properties to specify language 2/16/09 - #1246, add backward compatibility for all historical methods of setting locale 2/16/09 - #1222, add backward compatibility for project.properties 2/13/09 - #249, integrate into PhetBuildGUI, delete old build files # 1.09.01 (28509) Feb 13, 2009 testing addition of translation-utility to PBG 2/9/09 - #1198, change format what is written to flash-launcher-args.txt, for testing translations 1/6/09 - #1081, update user-visible language names to match PhET website # 1.09.00 (26682) > add PhET-assigned language code for Chinese-Taiwan 12/11/08 - #1035, assign a language code for Chinese-Taiwan (tc) 12/3/08 - #249, add buildfile targets for deploying 11/6/08 - see #912, generate Java 1.4 bytecode when creating translation-utility JAR # 1.08.00 (25822) > add PhET-assigned language code for Brazilian Portuguese 11/5/08 - #893, assign a language code for Brazilian Portuguese (bp) 11/5/08 - #893, use separate properties for ISO-standard and PhET-assigned language codes # 1.07.00 (25634) 10/28/08 - [864, comment 1] fix this problem by using '/' as the path separator for JAR resources on all platforms, not System.getProperty("file.separator") # 1.06.00 (25624) 10/28/08 - [870] translation utility broken for common strings by [865] # 1.05.00 (25607) 10/27/08 - [864] Flash translation files are missing the header found in Java translation files 10/27/08 - [865] add sim version number to header of translation files 10/8/08 - eliminated need for PhetApplicationConfig, get everything needed from PhetResources 9/22/08 - center Close button in ExceptionDialog # 1.04.00 (24643) 9/22/08 - explicitly read and add manifest to test jar for Flash sims, same problem here as Java sims (Unfuddle 720) 9/22/08 - move shared instance data, interfaces, and utilities to AbstractSimulation 9/22/08 - ignore manifest file when copying jar entries, this causes problems on Mac (Unfuddle 720) 9/22/08 - explicitly read manifest from Java sim jars, use to create JarOutputStream, needed by Windows (Unfuddle 720) # 1.03.00 (24629) 9/22/08 - build jar file with line# and source file debugging info enabled, so that this info is in stack traces (Unfuddle 720) 9/22/08 - add info to exception dialog (version, stack trace, etc), to be reported to phethelp (Unfuddle 720) 9/22/08 - replace JOptionPane with custom ExceptionDialog for notifying the user about exceptions (Unfuddle 720) 9/22/08 - fix title on dialog that reports non-fatal exceptions # 1.02.00 (24619) 9/21/08 - comparison of SVN revision numbers in update feature was "remote != local", should be "remote > local" so that dev versions aren't confused 9/21/08 - workaround for problem with "Test" feature, couldn't find manifest in Offline JAR files after they had been modified by deploy-translation task # 1.01.00 (24616) 9/21/08 - fix version number, it was displaying 1.-1.00 9/5/08 - remove uses of DialogUtils, replace with JOptionPane 9/5/08 - improve validation code for InitializationDialog 9/5/08 - move error messages out of strings file and into InitializationDialog 8/27/08 - manually update and publish website files for 1.00.00 release # 1.00.00 (23942) 8/27/08 - add missing jnlp.jar to proguard in buildfile, needed to open web browser by UpdateManager 8/27/08 - add hack to read common string files when project.name=common-strings 8/21/08 - inspect project.properties in JAR file to retrieve project.name; fallback to discovery algorithm # 0.02.01 (23665) 8/12/08 - exclude the source language (English) from the choices for destination language 8/12/08 - look for English strings in project-strings_en.properties, then fallback to project-strings.properties if not found 8/12/08 - move constants to TUConstants 6/25/08 - change URL for translation utility homepage to reflect new website organization 6/25/08 - catch FileNotFoundException when looking for translation-utility.properties on server 6/16/08 - discover project name from jar files named curve-fit.jar or curve-fit_fr.jar 6/16/08 - wrap main in SwingUtility.invokeLater 6/16/08 - remove HTML file generation for Flash, handled dynamically by FlashLauncher 6/16/08 - cleanup JavaSimulation and FlashSimulation 6/16/08 - move common.projects and language properties to their own properties files, since project properties file may lose its formatting 6/16/08 - add HTML file to jar for FlashLauncher, so that "test" feature works 6/16/08 - add support for Flash sims (test isn't working yet, missing HTML file) 6/16/08 - add factory for creating proper type of Simulation 6/16/08 - rename UpdateManager 6/16/08 - refactor to create Simulation type hierarchy 6/16/08 - delete dead code for using Google Translate to provide an automatic translation 6/13/08 - PropertiesFlashAdapter, for converting to/from Properties and format required by Flash sims (XML) 6/11/08 - check for updates and alert the user [537] # 0.02.00 (21098) 4/29/08 - delete test JAR on VM exit [98] 4/29/08 - properties file header: add version number, shorten filename [256] 1/7/08 - get preferred fonts from PhetCommonResources.getPreferredFonts # 0.01.00 (19216) 1/2/08 - switch new language codes (he,yi,id) to old language codes (iw,ji,in) because java.util.Locale does this mapping # 0.00.11 (19013) 12/13/07 - add hand cursor to help buttons on initial dialog # 0.00.10 (18912) 12/10/07 - show language names at top of columns in TranslationPanel 12/10/07 - revise help for language selection 12/10/07 - select language from a combo box, with option to enter a PhET-assigned language code for a non-ISO language 12/10/07 - add ISO language codes and names to project properties file 12/10/07 - put Help buttons next to each file in init dialog, remove existing Help button # 0.00.09 (18815) 12/5/07 - organize imports 12/5/07 - reorganize package structure 12/5/07 - absorb ProjectProperties into TUResources 12/5/07 - move properties file i/o operations out of JarIO and into PropertiesIO 12/5/07 - rename JarFileManager to JarIO 12/5/07 - cleanup JarFileManager interface 12/5/07 - in FindDialog, make pressing Return/Enter the same as pressing the Next button 12/5/07 - fix Find selection so that it persists when Find dialog is closed 12/5/07 - ensure that Component with focus is always visible in the JScrollPane 12/5/07 - replace deprecated focus traversal call with a custom FocusTraversalPolicy 12/5/07 - bugfix and clean up in Translation.findNext and findPrevious 12/5/07 - add cause to JarIOExceptions 12/5/07 - remove unused autoTranslate flag in various constructors 12/5/07 - use HashMap for entry and tag mappings in GoogleTranslateService 12/5/07 - delete AutoTranslator 12/5/07 - replace google-api-translate-java with more robust GoogleTranslateStrategy 12/5/07 - add strategy interface to AutoTranslator 12/4/07 - refactor TranslationPanel, move functionality into ToolBar and MainFrame 12/4/07 - add MainFrame 12/4/07 - set font for textfield in Find dialog based on source language code 12/3/07 - organized imports 12/3/07 - minor reorganization of constructors for custom dialogs 12/3/07 - javadoc # 0.00.08 (18685) 12/3/07 - select preferred fonts for the source and target JTextAreas based on fonts.XX entries in properties file 12/3/07 - remove tooltips from init dialog, they are annoying, Help provides the info 12/3/07 - change common.projects property separator to ',' to be consistent with font.ja separator 12/3/07 - add fonts.XX property for specifying the font for language code XX # 0.00.07 (18642) 11/30/07 - revise Help 11/30/07 - move button to top of the main panel, like a toolbar 11/30/07 - revise Help, add Find feature, fix typo 11/30/07 - move Find feature from menubar to button panel 11/30/07 - add button icons # 0.00.06 (18633) 11/29/07 - clear selection in target textfield when focus is lost so that it works with Find feature 11/29/07 - Find Previous feature 11/29/07 - start from the top when Find text changes 11/29/07 - Find multiple occurrences in the same JTextArea 11/29/07 - Find Next feature 11/29/07 - modify focus traversal so that source textfields can be focusable (and therefore display Find selection) 11/29/07 - framework and dialog for Find feature # 0.00.05 (18601) 11/19/07 - fix help to format properly on Java 1.5 11/19/07 - help for the main panel 11/19/07 - change terminology: country code -> language code 11/19/07 - recover from non-fatal errors related to file I/O and running 'java' command 11/19/07 - save/load work in progress 11/19/07 - show URLs in Help dialog in case a browser fails to launch (eg, on Win98) 11/19/07 - make it possible to copy/paste filename and email address in Submit dialog # 0.00.04 (18588) 11/16/07 - add Help text with hyperlinks for init dialog 11/16/07 - add Help button to init dialog 11/16/07 - select all text when text field gains focus 11/16/07 - remap tab and shift-tab to move between text fields 11/16/07 - tab traversal between editable (target) text fields 11/16/07 - filter on .jar extension in JAR file chooser # 0.00.03 (18545) 11/13/07 - add disabled Save and Load buttons (for discussion) 11/13/07 - add PhET logo to init dialog, delete lame instructions that no one will read 11/13/07 - localize all strings in InitializationDialog 11/13/07 - reduce vertical height of frame on Windows to account for Windows task bar 11/13/07 - center frame on screen 11/13/07 - revert to better implementation of JarFileManager.writeProperties 11/13/07 - don't modify original JAR file, test using phet-test-translation.jar 11/13/07 - check in eclipse .classpath file 11/13/07 - disable "use Google Translate" checkbox 11/13/07 - rewrite JarFileManager.writeProperties similar to developer.com example, otherwise tmpFile rename fails 11/13/07 - test apps for inserting file into a JAR 11/13/07 - TUMenuBar 11/12/07 - test what happens when calling Google Translate with an unsupported language (HTTP response code 400, bad request) 11/12/07 - clean up tmp JAR file if something goes wrong 11/12/07 - remember current directory while browsing for JAR file 11/12/07 - extract common method for forming localization file names 11/12/07 - bugfix: JarFileManager.discoverProjectName exception due to '\' being both the regex escape char and Windows file.separator 11/12/07 - test whitespace in file pathnames on Windows 11/9/07 - handle whitespace in file pathnames, use Process.exec(String[]) to prevent Java from tokenizing at whitespace 11/9/07 - add "use Google Translate" checkbox to init dialog 11/9/07 - add menu bar with File>Exit menu item 11/9/07 - implement "Submit" that creates properties file with instructions to email it to phethelp@colorado.edu 11/9/07 - increase frame width so we don't get a horizontal scrollbar 11/9/07 - support for flavors of sims (where jar filename is not same as project name) 11/6/07 - move all string literals to localization file 11/6/07 - make exception handling more robust, post dialogs when unrecoverable errors occur 11/5/07 - project properties file for translation-utility 11/5/07 - remove dependency on "jar" command, replace with java.util.jar API 11/2/07 - disable Google Translate feature, defer 11/2/07 - integrate with Google Translate 11/2/07 - Sam Reid added contrib/google-translate-api and related test programs # 0.00.02 (18434) 11/1/07 - first version that works on Win and Mac 11/1/07 - version that works as double-clickable JAR on Win98 with JDK installed 11/1/07 - use System.getProperty("file.separator") for forming path names 11/1/07 - version that works under Cygwin on Win98 with JDK installed 11/1/07 - convert all pathnames to use UNIX file separators (for testing with Cygwin on Windows) 11/1/07 - enable debug output for exec'ed commands 11/1/07 - don't use full pathnames for jar and java, assume they're in the user's path 10/30/07 - if a translation exists for the target country code, use it 10/30/07 - add dialog to request JAR file and target country code # 0.00.01 (18366) 10/29/07 - quick-&-dirty (non-portable, UNIX/Mac only) solution to allow testing of translation using Runtime.exec