[Ham-Mac] fldigi-3.21.59 posted
w1hkj
w1hkj at bellsouth.net
Wed Oct 31 15:14:26 EDT 2012
http://www.w1hkj.com/
Version 3.21.59
Thumbdrive
* discover application executable location
* if the directory in which "fldigi" / "fldigi.exe" resides
contains a file named NBEMS.DIR then base all NBEMS file
locations to that drive-folder
* this allows a fully portble NBEMS installation
to a thumbdrive (or other portable drive)
* it also allows a very easy way to install multiple NBEMS suites
for different target uses on a single hard drive
UTF-8 overhaul
* Refactor get_tx_char()
* Reset to stock version, call byte_at()
The class Fl_Text_Buffer_mod (borrowed from FLTK) contained a
modified
version of the method char_at() that effectively made it behave as
byte_at(). Silently modifying a library-provided method not
only disables
the access to a certain functionality of the library, but can
also cause
other unforeseen consequences. The method was thus reverted to
the stock
version and the code that previously called the modified
version was
changed to call byte_at() instead.
* Remove unneeded code in FTextTX::nextChar()
* Libtiniconv
- Added libtiniconv (charset conversion library)
- Library Version 1.0.1 fetched from http://tiniconv.sf.net
A small fix made to change a misspelled macro name.
Build system adapted to fit into the fldigi build model.
* Added CharsetDistiller class
- Sanitize input data and convert it into UTF-8
- CharsetDistiller receives input data one byte at a time and
converts this
data stream from a particular character set into UTF-8.
Invalid input data
is treated as if it was encoded in CP1252. Character set
conversion is
performed as soon as possible, i.e., when enough input is
received to
constitute a valid character in the input character set, this
character is
immediatly converted into UTF-8 and made available at the output.
* Make put_rx_char_flmain() use charsetDistiller
* Make put_echo_char() use CharsetDistiller
* Make pskBrowser use CharsetDistiller
* Added OutputEncoder class
- Used for encoding transmitted data
- OutputEncoder accepts UTF-8 strings at input, converts them
to the
selected encoding and outputs them one byte at a time.
* TX character set conversion using OutputEncoder
* Fix backspace for >2byte UTF-8 characters
* Global setting for RX/TX charset
* Cleanup modem UTF-8 code
- PSK, Olivia, MT63 and MFSK modems:
cleanup of unneeded UTF-8 handling code
- Everything that deals with output character set conversion
and data
sequencing is now done using OutputEncoder, so the modems can
become
completely agnostic about the character set used. As far as
they are
concerned, everything is just byte-sized data.
* Added an array of character set names and identifiers
* UTF-8 code cleanup
- Cleanup of unneeded UTF-8 handling code in add_rxtx_char()
and family
* Character set selection menu
- Add menu button to select the active TX/RX charset to the
colors-fonts
configure dialog. The setting defaults to UTF-8 (selected
at program
startup). The selection is saved to the program defaults
configuration
file when "Config/Save" is executed.
73, Dave, W1HKJ
More information about the Ham-Mac
mailing list