-- FILE ---------------------------------------------------------------------
-- name : BuildNews.txt
-- project : BoarderZone: Development Environment
-- created : Leon Poyyayil - 2003.01.25
-- language : English
-- environment: the human readers mind ... ;-)
-- copyright : (c) 1990-2010 by Leon Poyyayil (private), Switzerland
-- license : this is free software licensed under the GPL. see COPYING
-----------------------------------------------------------------------------
This file contains a description of the major code changes between builds of
the java and web-site code for BoarderZone.net which are relevant to developers.
See doc/BuildVersioning.txt for a more detailed description of how to read it.
=============================================================================
version: 0.12.545
creator: Leon Poyyayil
created: 2010.10.10-20:45:26
status: developmental
----------------------------
- package net.boarderzone.apps.file.checker:
- FileChecker: fixed to ensure system line.separator is always restored
- package net.boarderzone.apps.text.fixlf:
- FixLF:
- removed support for std-in and std-out (now operates only on files)
- removed support for explicit output file (now always in-place)
- added support for directory iteration with include/exclude filters
- added support for specifying multiple files for the 'in' option
- package net.boarderzone.apps.text.search:
- TextSearch:
- added new command line option to only wait/loop when matches are found
- added verbose output of the number of found matches
- package net.boarderzone.gui:
- DesktopActionThreaded: changed to run the thread with prio below normal
to prevent it from blocking the ui thread
- package net.boarderzone.gui.widget:
- AboutDialog: changed to be undecorated but have a thin border as splash screen
- FileHandler: added method isCloseAllowed()
- FileHandlerBase: implemented method isCloseAllowed()
- FileHandlerFrame: added support for preventing a file handler from closing
if it doesn't desire to be closed -> display a notification dialog
- TextComponentLineEndingTracker: new utility class
- TextStreamDialog: added access to text area for derivations
- package net.boarderzone.modules.diary:
- Category: added method isRoot()
- Diary: added methods countMatchingActivities() and removeMatchingActivities()
- DiaryTextFile: added possibility to specify line ending when saving
- package net.boarderzone.plugins.filehandler.checksumverifier:
- ChecksumVerifierHandler: preventing closing during verification
- package net.boarderzone.plugins.filehandler.diaryeditor:
- ActivityStatsTable: changed to display hours in non-decimal h:mm format
- CategoryTreePanel: added method removeCategory()
- DeleteAction: new command
- DiaryEditor:
- fixed to properly work on systems with differing line.separators
- added a new command button to delete the selected category along with all
its sub-categories and activities
- fixed to keep the loaded line ending upon save
- EditSourceDialog: enhanced to place text cursor at end when opening
- package net.boarderzone.plugins.filehandler.diskeditor:
- DiskEditor: fixed to not throw exceptions when opening a file on which the
user has no access rights to modify its contents. -> silently open the file
in read-only mode and prevent any changes.
- package net.boarderzone.plugins.filehandler.javacodesnippeteditor:
- JavaCodeSnippetEditor: changed to compile and execute in a separate thread
- JavaCodeSnippetEditorHandler: preventing closing during execution
- package net.boarderzone.plugins.filehandler.httpclient:
- HttpClientHandler: preventing closing during execution of a request
- package net.boarderzone.plugins.filehandler.sntpclient:
- SntpClientHandler: preventing closing during execution of a query
- package net.boarderzone.plugins.filehandler.texteditor:
- TextEditor:
- added support for displaying and changing the line ending
- changed to use the system default line ending for empty files
- package net.boarderzone.util:
- TextFileData: added method detecteLineEnding()
- TextFileMatcherConfig: extended to allow relative paths for the matchFile
attribute on <Spec> elements in the config xml
=============================================================================
version: 0.12.544
creator: Leon Poyyayil
created: 2010.04.19-23:59:46
status: developmental
----------------------------
- build process:
- lib/batik.jar: new library to handle svg files
- lib/javascript.jar: new library to support javascript in svg files
- lib/xml-apis.jar: new library to support new xml features in batik
- lib/xml-apis-ext.jar: new library to support new xml features in batik
- script/admin.xml: added new jars to javadoc classpath
- package net.boarderzone.apps.file.backup:
- FileBackupJobContext: fixed to replace '\' by '/' in paths in zip files
- package net.boarderzone.gui.action:
- HelpReleaseNews: fixed to properly close file on error
- package net.boarderzone.gui.widget:
- HelpCommandLineDialog: changed to derive from TextStreamDialog
- LicenseDialog: changed to derive from TextStreamDialog
- TextStreamDialog: added support for editing (cancel-btn, confirmation-flag)
- package net.boarderzone.plugins.filehandler.diaryeditor:
- DiaryEditor: added support for editing the raw source text of the diary
- EditSourceAction: new action
- EditSourceDialog: new class
- package net.boarderzone.plugins.filehandler.svgviewer:
- new viewer plugin for scalable vector graphics files
- package net.boarderzone.plugins.filehandler.xmltools:
- XmlEditorHandler: fixed to support variable lookup for mime types which
contain a '+' sign (e.g. 'image/svg+xml')
- package net.boarderzone.plugins.filehandler.zipviewer:
- ZipEntryTableRow: fixed to support zip-entries with '\' instead of '/' in paths
=============================================================================
version: 0.12.543
creator: Leon Poyyayil
created: 2010.04.07-22:15:25
status: developmental
----------------------------
- package net.boarderzone.gui.action:
- ShowScreenZoom: new class
- ShowThreadMonitor: new class
- package net.boarderzone.gui.widget:
- ScreenZoomFrame: new class
- SystemInformationFrame: removed thread tab
- ThreadInfo*: new classes for monitoring active threads
- ThreadMonitorFrame: new class
- package net.boarderzone.plugins.filehandler.audioviewer:
- AudioViewer:
- added support for displaying frame boundaries
- added support for displaying MP3 meta data in a sub dialog
- changed to only set cursor upon double click without modifiers
- added support for jumping the cursor to marked positions via player prev/next
- added support for selection of a range via shift-(double)-click
- added support for loading from CUE sheets (audio & index markers)
- MP3InfoAction: new action to display MP3 meta data in a sub dialog
- package net.boarderzone.plugins.filehandler.mp3info:
- moved generic gui classes to new package sound.mp3.gui
- package net.boarderzone.sound:
- AudioPlayer:
- added support for playing back only a selected range of samples
- added support for auto repeat
- AudioSampleRange: new class
- package net.boarderzone.sound.cue: new package for parsing CUE sheet files
- package net.boarderzone.sound.gui:
- AudioPlayerIcon: added support for new REPEAT and INFO types
- AudioPlayerIconType: added REPEAT and INFO members
- AudioPlayerPanel:
- added tooltips for time display
- added prev/next/info buttons with support for executing foreign actions
- added support for auto repeat with own toggle button
- AudioSampleDisplayPanel:
- added support for displaying frame boundaries
- added support for hand cursor during dragging
- changed to drag only if left mouse button is pressed without modifiers
- added support for markers: toggle via ctrl-double-click
- added support for displaying a selection range
- AudioSampleDisplayRange:
- added support for displaying frame boundaries
- added support for displaying a selection range
- AudioSampleDisplaySetup:
- added support for displaying frame boundaries
- added support for mark and selection colors
- AudioSampleDisplaySetupPanel:
- added support for displaying frame boundaries
- added support for mark and selection colors
- package net.boarderzone.sound.mp3.gui: new package with mp3info viewer gui classes
- MP3MetaDataDialog: new utility class
=============================================================================
version: 0.12.542
creator: Leon Poyyayil
created: 2010.03.14-18:51:05
status: developmental
----------------------------
- build process:
- lib/jlayer.jar: new library to decode mp3 music
- script/admin.xml:
- updated modules list for JDepend metrics generation
- added jlayer.jar to javadoc classpath
- script/buildLibSound.xml: added dependency to jlayer.jar
- script/compile.xml: excluded classes depending on foreign code from jlayer.jar
- package net.boarderzone.gui.widget:
- SystemInformationFrame: added display of thread state in threads tab
- package net.boarderzone.plugins.filehandler.audioviewer: renamed from wavviewer
- AudioViewer:
- added AudioPlayerPanel, support for cursor display & playback
- added support for mp3 files
- package net.boarderzone.plugins.filehandler.mp3infoviewer:
- MP3InfoViewer: added support for displaying scanning duration in dump tab
- package net.boarderzone.plugins.filehandler.wavviewer: renamed to audioviewer
- package net.boarderzone.sound:
- AudioPlayer*: new classes
- AudioPointer: extended to support samples instead of millis
- AudioSampleBuffer: completely reworked
- AudioSampleDecoder: changed api
- AudioSampleFormat: extended api
- AudioSampleProvider: changed api
- AudioSampleProviderPCM: renamed and moved to wav package
- package net.boarderzone.sound.data:
- DataAccessInputStream: new class
- package net.boarderzone.sound.gui:
- AudioPlayerPanel: new class
- AudioSampleDisplayRange: updated to changed provider/decoder api
- AudioSampleDisplaySetup: changed display toggle defaults: only show connecting lines
- package net.boarderzone.sound.mp3:
- LameTag: added some convenience methods
- MP3FileInfo: added member to record scanning duration
- MP3MetaData: added problem detection for missing VBR seek table
- MP3Scanner:
- added (optional) support for recording scanning duration
- added (optional) support for building a sample accurate seek table
- MPEGAudioFrameHeader: added methods createAudioSampleFormat() and
getMaximumNecessaryPredecessorFrames()
- MPEGAudioFrameStatistics: added (optional) support for seek table calculation
- package net.boarderzone.sound.mp3.decoder: new package for mp3 decoding support
- package net.boarderzone.sound.wav:
- AudioSampleProviderWav: renamed from former AudioSampleProviderPCM
- package net.boarderzone.util:
- MemoryOutputStream: new class
=============================================================================
version: 0.12.541
creator: Leon Poyyayil
created: 2010.02.08-14:47:29
status: developmental
----------------------------
- build process:
- replaced all calls to java.awt.Component.requestFocus() by requestFocusInWindow()
- package net.boarderzone.gui.action.desktop: new package for desktop commands
- DesktopArrange: new command to arrange the desktop frame relative to the screen
- DesktopPos: renamed from DesktopFramePos
- DesktopSize: renamed from DesktopFrameSize
- package net.boarderzone.gui.action.frame:
- FrameArrange: new command to arrange a single frame relative to the desktop
- FrameArrangeAll: renamed from FrameArrange
- package net.boarderzone.gui.widget:
- FileHandler:
- added method getInitialFocusComponent
- added method shouldScrollPaneScrollBarBeFocusable
- FileHandlerBase: fixed to properly close in case of a loading exception
- FileHandlerFrame:
- added support for new getInitialFocusComponent() method
- added support for new shouldScrollPaneScrollBarBeFocusable() method
- Variable(Config|Editor|Select)Panel: fixed to properly initialize wrapping
- package net.boarderzone.image.png: new package
- package net.boarderzone.modules.international: new module
- package net.boarderzone.plugins.filehandler.javacodesnippeteditor:
- JavaCodeSnippetEditor: fixed to adapt classpath to platforms path delimiter
- JavaCodeSnippetEditorHandler: added support for new getInitialFocusComponent()
- package net.boarderzone.plugins.filehandler.jcetool:
- JceKeyStoreViewerHandler: added support for new getInitialFocusComponent()
- package net.boarderzone.plugins.filehandler.pcapeditor:
- PCAPEditorHandler: added support for new getInitialFocusComponent()
- package net.boarderzone.plugins.filehandler.pgptools:
- PGPKeyRingViewerHandler: added support for new getInitialFocusComponent()
- package net.boarderzone.plugins.filehandler.rifftreeviewer:
- RIFFTreeViewerHandler: added support for new getInitialFocusComponent()
- package net.boarderzone.plugins.filehandler.serializationviewer:
- SerializationViewerHandler: fixed to adapt classpath to platforms path delimiter
- package net.boarderzone.plugins.filehandler.textlineviewer:
- TextLineViewerHandler: added support for new getInitialFocusComponent()
- package net.boarderzone.plugins.filehandler.wavviewer:
- WavViewer:
- finished basic implementation
- added support for zooming by mouse wheel and for horizontal dragging
- added display of visible range and mouse cursor position
- package net.boarderzone.plugins.filehandler.xmltools:
- XmlEditorHandler: added support for new getInitialFocusComponent()
- package net.boarderzone.plugins.javashell.filesystem:
- FileCopyRange: new command
- FileCopyUrl: new command
- package net.boarderzone.plugins.javashell.imagetool:
- ImageTrimPNG: new command
- package net.boarderzone.sound:
- AudioSampleBuffer: added method getTotalByteCount()
- AudioSampleData:
- fixed implementation of getSampleIndex(sample, channel)
- added testing method getSampleValue(sample, channel)
- added method getTotalByteCount()
- AudioSampleDecoder: added method getTargetFormat()
- AudioSampleDecoderBase: fixed decode() to properly set the valid sample count
- AudioSampleDecoderBaseFloat64: new class
- AudioSampleDecoderBaseInt16: new class
- AudioSampleDecoderBaseInt32: new class
- AudioSampleDecoderBaseInt8: new class
- AudioSampleProvider: added methods isDecoderSupported(type) and createDecoder(type)
- AudioSampleType: added informational properties
- package net.boarderzone.sound.data:
- DataAccessImplFile: fixed to properly check range boundaries
- DataAccessImplMemory:
- fixed to properly work with a data range
- added c'tor with a data range
- package net.boarderzone.sound.gui:
- AudioSampleDisplayBlock: new class
- AudioSampleDisplayPanel: finished basic implementation
- AudioSampleDisplayRange: new class
- package net.boarderzone.sound.riff:
- RIFFScanner:
- fixed to properly wrap RuntimeExceptions in RIFFExceptions
- added c'tor with behavior flag
- package net.boarderzone.sound.wav:
- AudioSampleDecoderWavToFloat32:
- added possiblity to validate float range
- fixed scaling of int sample values
- AudioSampleDecoderWavToFloat64: new class
- AudioSampleDecoderWavToInt16: new class
- AudioSampleDecoderWavToInt32: new class
- AudioSampleDecoderWavToInt8: new class
- package net.boarderzone.util:
- JavaTool: added method fixClasspathDelimiters()
- Platform: added flag whether running on windows
- TextFileMatcherConfig: added support for 'DYN_*' date and time variables
- package net.boarderzone.util.testing:
- JUnit:
- added methods assertNotEmpty(String)
- added method getRequiredResourceAsStream(name)
=============================================================================
version: 0.12.540
creator: Leon Poyyayil
created: 2010.01.19-10:34:29
status: developmental
----------------------------
- build process:
- updated own tools/libs in lib.dev/
- bin/buildParserLogic.bat|.sh: scripts to invoke the corresponding ant project
- bin/buildPatchSableCC.bat|.sh: mini scripts to invoke the ant project to
build the patch for the SableCC parser generator
- lib.dev/sablecc.jar: SableCC: new parser generator library
- lib.dev/sablecc-bz.jar: patched version of SableCC with support for custom
code templates and additional command line options
- script/admin.xml: excluded more binary file types when updating dev-vars
- script/buildParser.xml: new generic parser build script
- script/buildParserLogic.xml: build script for the new logic parser library
- script/compile.xml: excluded SableCC *ParserAlgo.java from checkstyle check
- script/library.xml: ignoring *.sablecc in jars
- script/SableCC/*: the files necessary for the SableCC patch and extension
- script/style/findbugs-filter.xml: ignored some SableCC generated code patterns
- script/style/TextLayout.FileMatcher: adapted to new SableCC file types
- products:
- FileBrowser: added missing bz-image.jar to binary distribution package
- package net.boarderzone.afw:
- ShellApplication:
- fixed NPE in case of entering ctrl-c or ctrl-z followed by enter
- added 'ver' alias for 'version' command
- package net.boarderzone.afw.cmds:
- ShellCommandComment: new command
- ShellCommandConfig: changed output to be locale independent
- ShellCommandConfigCopy: new command
- ShellCommandEnvironmentCopy: renamed from ShellCommandProperties
- ShellCommandMeasureTimeLap: new command
- ShellCommandMeasureTimeStart: new command
- ShellCommandMeasureTimeStop: new command
- ShellCommandSleep: new command
- ShellCommandWaitOnExit: new command
- package net.boarderzone.apps.file.browser:
- FileBrowser.desktop: added ToggleAlwaysOnTop command to window menu
- moved frame specific commands to new gui.action.frame package
- package net.boarderzone.apps.java.jartool:
- JarTool:
- added new option 'inplace' to rewrite a jar in place
- fixed to give a proper error message when attempting to rewrite a jar and
no 'out' parameter was specified (and the new 'inplace' option is not true)
- package net.boarderzone.gui:
- fixed all occurrences where a JSplitPane stored its divider locations into
the dialog property registry to properly support the min/max expanded state
- Desktop.xsd: extended to allow menus in toolbars
- DesktopApplication:
- added support for the new 'full-screen' and 'always-on-top' config items upon startup
- fixed to honor the 'show-tooltips' option upon startup
- DesktopApplicationConfig.xml: added new items 'full-screen' and 'always-on-top'
- DesktopFrame: added support for menu buttons in toolbars
- DesktopFrameNavigatorButton: added support for tooltip when taskbar is hidden
- DesktopSiblingFrame: new class
- ToolbarMenuAction: new class
- package net.boarderzone.gui.action:
- Help: changed title of the help window to have 'help' at the beginning and
the application name at the end (-> better visibility)
- ShowClipboardMonitor:
- renamed from ClipboardMonitor
- changed to only allow one active (open) window instance
- ShowSystemInformation:
- renamed from SystemInformation
- changed to only allow one active (open) window instance
- ToggleAlwaysOnTop: new command
- ToggleFullscreenMode: changed to be a normal config-item toggle
- package net.boarderzone.gui.action.capture:
- new package with screen capturing commands
- package net.boarderzone.gui.action.frame:
- new package with frame specific commands
- package net.boarderzone.gui.navigation:
- NavigationFrame:
- changed to be derived from new DesktopSiblingFrame for proper always-on-top support
- package net.boarderzone.gui.widget:
- ClipboardMonitor: renamed from ClipboardMonitorDialog
- fixed to invoke gui update in event dispatcher thread when auto-refresh is
turned on
- changed to be derived from JFrame instead of JDialog -> can be behind desktop
- changed window title to have the application name at the end (-> better visibility)
- changed to be derived from new DesktopSiblingFrame for proper always-on-top support
- extracted some code into new ClipboardTool for better reuse
- ClipboardTool: new utility class
- DirectoryTreePanel: added support for a new command to create a new file from the
contents of the clipboard
- LoggerConsole:
- changed window title to have the application name at the end (-> better visibility)
- changed to be derived from new DesktopSiblingFrame for proper always-on-top support
- StatusbarItemClock: fixed to invoke gui update in event dispatcher thread
- SystemInformationFrame:
- renamed from SystemInformationDialog
- fixed to invoke gui update in event dispatcher thread
- changed to be derived from JFrame instead of JDialog -> can be behind desktop
- changed window title to have the application name at the end (-> better visibility)
- changed to be derived from new DesktopSiblingFrame for proper always-on-top support
- XmlTextArea: fixed exception when validating strange xml processing instructions
- ZoomableImage: fixed to update the tooltip text upon zoom changes
- package net.boarderzone.gui.util:
- ImageTool: new class
- ImageTransferable: new class
- package net.boarderzone.net.pcap:
- PCAPPacketFilter.xsd: added support for 'nand' and 'nor' filters
- package net.boarderzone.net.wsal:
- LogFileEntryFilter.xsd: added support for 'nand' and 'nor' filters
- package net.boarderzone.parsers.logic:
- new package which contains a simple parser for boolean logic expressions
- package net.boarderzone.plugins.filehandler.diaryeditor:
- ActivityStatsTable: added more summary rows
- package net.boarderzone.plugins.filehandler.exifviewer:
- ExifViewer: added support for copying the thumbnail image to the clipboard
- package net.boarderzone.plugins.filehandler.icoviewer:
- IcoViewer: added support for copying the thumbnail image to the clipboard
- package net.boarderzone.plugins.filehandler.imageviewer:
- GifFrameViewer: added support for copying the frame images to the clipboard
- ImageViewer: added support for copying the image to the clipboard
- package net.boarderzone.plugins.filehandler.javacodesnippeteditor:
- JavaCodeSnippetEditor: added comment describing the dynamic var names
- package net.boarderzone.plugins.filehandler.mp3infoviewer:
- MP3MetaDataID3v2PanelBase: added support for copying picture frames to the clipboard
- MP3MetaDataMusicMatchPanel: added support for copying the image to the clipboard
- MP3MetaDataOverviewPanel: added support for copying the cover image to the clipboard
- package net.boarderzone.plugins.filehandler.serializationviewer:
- ForeignObjectInputStream: new class
- SerializationViewerHandler:
- added support for a classpath variable to aid in resolving classes not on
the app/system classpath: 'SerializationViewer.Classpath'
- added separate error message for invalid/incompatible classes
- package net.boarderzone.plugins.filehandler.textlineviewer:
- TextFileModel:
- added support for proper displaying tabs
- fixed array bound exception when file shrinks during refresh
- TextLineViewer: fixed to invoke gui update in event dispatcher thread
when auto-refresh is turned on
- package net.boarderzone.plugins.filehandler.xmltools:
- XmlEditor: added support for detecting the encoding from the xml declaration
when no UTF byte order mark is found
- package net.boarderzone.plugins.javashell.filesystem:
- FileExists: new command
- FileRecurseDir: fixed to properly support quoted directory arguments
- package net.boarderzone.plugins.javashell.imagetool:
- ImageCapture: new command
- ImageLoadClip: new command
- ImageSaveClip: new command
- package net.boarderzone.plugins.javashell.logic:
- new plugin with commands to evaluate logical expressions and control execution
of other commands depending on the result
- package net.boarderzone.plugins.javashell.process:
- new plugin with commands to execute os system commands as separate processes
- package net.boarderzone.sound:
- AudioSampleFormat: added an optional description
- AudioSampleFormatImpl: added support for new description
- package net.boarderzone.sound.gui:
- AudioSampleFormatPanel: added support for new description
- package net.boarderzone.sound.riff:
- RIFFWaveFormat: added support for new description in format descriptor
- package net.boarderzone.sound.wav:
- package net.boarderzone.util:
- ReplacementMapperConfigXmlHelper:
- added method parseProperties()
- added support for importing .properties files in java format
- StreamTool: added overload of autoDetectEncodingFromUnicodeByteOrderMark()
with support for detection of encoding from xml declaration
- TextFileMatcher: added support for 'DYN_*' date and time variables
- package net.boarderzone.util.filter:
- Filter.xsd: added support for 'nand' and 'nor' filters
- FilterAcceptAnd: adapted to changes in base class
- FilterAcceptNand: new filter
- FilterAcceptNor: new filter
- FilterAcceptOr: adapted to changes in base class
- FilterBaseCombined: added support for inverting the result
- FilterFactoryBase: added support for 'nand' and 'nor' filters
- StringFilter.xsd: added support for 'nand' and 'nor' filters
-- EOF ----------------------------------------------------------------------