File fox17.changes of Package fox17
-------------------------------------------------------------------
Fri Oct 6 13:34:16 UTC 2023 - lars@linux-schulserver.de - 1.7.84
- Update to 1.7.84
+ (Redrop of this version due to file missing from manifest).
+ New FXUndoList implementation. The new FXUndoList now supports an
alternate history mode, i.e. it remembers redo-command after taking
a different path. The internals of FXCommand have changed a bit,
it now sports a reference count; for the most part that does not
affect any user-code.
+ Also in FXUndoList: on 64-bit machines, space-accounting is now
performed in long to manage potentially large amounts of undo data.
+ Adie editor undo sytem now supports merging undo commands, if the
text is changed letter-by-letter it will consolidate contiguous commands,
assuming they are considered mergeable. Currently we're keying on
character classes to decide whether to merge or not. Idea is to
not back up over programming-language special characters.
+ Inlined some math functions for greater speed.
+ Inlined some character-class APIs in fxascii for greater spead.
+ Minor annoyance in sideways scrolling fixed in PathFinder.
+ Added "Seibenmeilenstiefel" scroll mode holding shift key.
+ FXRex now has option to excape regular expression special characters. Major convenience mode.
+ FXRex bug fix: could not always properly add control charactor using \cX syntax.
+ FXRex bug fix: signed vs unsigned charactar issues surfaced due to internal representation change.
+ Adie status-line indicator for current language mode.
+ When loading a new file, Adie checks "emacs" modeline presence first, if modelines are on.
+ New APIs added to Math namespace for hashing values (32- and 64-bit),
as well as unhashing values. Hashing float and double added so as to
use these in hash tables as a key.
+ FXText now uses new UTF8 navigation techniques, where it makes sense.
This is a performance upgrade.
+ Minor bug fixes in FXText widget.
+ Experimental -O3 when compiling for release mode; its a major
performance bump.
+ Inlined branch-free toUpper() and toLower() major boost in
case-insensitive comparisons.
+ PathFinder and Adie now has command line parameter to force
window size and placement.
- refreshed patches:
+ fox-1.7-remove_date_from_adie.patch
+ fox-1.7-remove_date_from_pathfinder.patch
- build again for Factory:
Build Requires pkgconfig(xorg-server) and pkgconfig(xft)
- require cups-devel for the devel package
-------------------------------------------------------------------
Wed Apr 21 07:10:47 UTC 2021 - lars@linux-schulserver.de - 1.7.77
- Update to 1.7.77
+ Subtle FXString::format() numeric rounding bugs fixed.
+ Adie text editor rare crash bug fixed.
+ FXString unicode conversion bug fixes.
+ Additional checking ensuring FXString::substitute() called properly.
+ Subtle FXString manipulation bug fixes.
-------------------------------------------------------------------
Sun Apr 4 18:49:51 UTC 2021 - lars@linux-schulserver.de - 1.7.76
- Update to 1.7.76
+ Add handy icon button to Adie file list widget to hide/show hidden files.
+ FXText widget parameter verification improved for content-modification APIs.
+ FXText widget block mode replace, block insert, and other block operation regressions fixed.
+ FXText widget block selection issues fixed.
+ FXRex grammar depiction fix.
+ In FXJSON parser, a single bad-utf8 prefix case label was missing.
+ Not all systems have pthread_rwlock_setkind_np(), causing compile to fail on those systems.
+ New FXASSERT_STATIC macro added; it is defined for C++ language > 2011.
+ Scoped FXReverseSpinLock class added, similar to FXReverseMutex scoped lock.
+ The unixToDos() API would potentially add a second CR if input was already DOS format; now fixed.
+ Adie text buffer loading and saving updated.
+ Adie extract range selection to file, and extract block selection to file option added.
+ Adie replace text range from file, or replace text block from file option added.
+ FXString::length() now returns boolean instead of throwing exception when out of space;
internals of FXString somewhat fortified against low-memory situations
+ A number of places are now defining specific trace topics using the new topic-tracing implementation.
FOX DEVELOPMENT 1.7.75
+ FXSystem::getUserDirectory() had bug on Windows with non-unicode build.
+ Configure scripts allows specification of freetype2 install locations.
+ Adie rules for C# language updated with current set of keywords.
+ Added TypeScript coloring rules to Adie syntax file.
+ FXDir::createDirectories() now insists on absolute path as input.
+ FXPath::upLevel() now works for relative paths as well.
+ FXPath::enquote() bug fix: enquoting string containing '#' was flawed.
+ Building using VC++ now keys on DEBUG not _DEBUG.
+ Adie syntax rule fix for CMake.
+ Some small fixes to FXPath::simplify() for path separators.
+ Set DPI Awareness upon launch on Windows.
+ Dropped unnecessary asserts in FXCursor (Windows).
+ Updated FXTRACE() implementation. Trace topics in addition to levels.
+ Removed fxstrhash() in favor of FXString::hash().
+ Support convert to/from Modified Rodrigues Parameter in quaternion classes.
+ Orthogonalize 2x2, 3x3, 4x4 matrices using Gram-Schmidt orthogonalization added.
+ Some further work in FXReactor, FXDispatcher.
+ Fix address sanitizer issues in FXDictionary, FXHash, FXReverseDictionary,
FXSettings, FXStringDictionary, FXVariantMap.
+ Leaked icon resource fix in Adie, ControlPanel, PathFinder Preference panel.
+ Fix to SUNRAS image loader loading 1-bit per pixel images.
+ Potential NULL cursor pointer issue during create() fixed.
+ Miscellaneous compiler warnings fixed here and there.
FOX DEVELOPMENT 1.7.74
+ API additions in FXAccelTable for convenient single call parse- and add to table.
+ Support for Borland C++, Digital Mars C++, and Watcom C++ removed.
+ FXXMLString class added; deserialize XML from an FXString.
+ Work-around for VC++ lack of support for hexadecimal floating point literals.
+ FXCursor.cpp non-compile bug fix.
+ Lots of warnings fixed.
+ All "register" declarations now expunged.
+ Miscompile and performance bug in FXRandom implementation fixed.
+ Engineering mode display option in Calculator.
+ Engineering mode option formatting doubles in FXString.
+ Expression now allows underscore in variable names; internal optimizations in parser.
+ Relaxed parsing of fractional seconds in systemTimeParse().
+ Obtain leap seconds given TAI, in addition to leapseconds from UTC.
+ Highlight text block via keyboard arrow keys in FXText.
FOX DEVELOPMENT 1.7.73
+ Added math function Math::pow10i(). Performs integer power of 10.
+ FXString::hash() now switched over to FNV1a algorithm; is slightly better than
old one on dictionary tests; the classname hashing in FXMetaClass was switched too.
Note this means libraries using FOX that need hashing would need to be recompiled!
+ Serious bug in FXText fixed: caused assertions from book-keeping discrepancies
in cursor movement.
+ More stringent checking floating point input containing thousands-grouping.
+ Hexadecimal floating point input (fxscanf) now supported.
+ Hexadecimal floating point output (fxprintf) now supported.
+ Possible speedup in FXDictionary, FXSettings, FXStringDictionary, and FXVariantMap.
+ Non-compile issue discovered in *BSD.
+ Finite wait-API added in FXSemaQueue.
+ Adie text editor bookmark menu labels slightly more intelligent caption.
+ Bug printing out denormalized numbers, in optimized mode
[FTZ/DAZ floating point flags in effect].
+ When printing out floating point numbers, correct exponent in case it was
denormalized.
Important note: we have reason to believe (a) glibc version of fprintf() has a
bug with small denormalized numbers printed with "%a", and (b) we believe both
GCC and clang++ compilers have bugs parsing hexadecimal denormalized floating
point numbers.
+ Some math functions renamed for consistency: ipow() to powi().
+ Change in behaviour: Math::fpExponent() now returns exponent without bias.
+ Change in behaviour: Math::fpMantissa() now returns mantissa including the
hidden bit [unless number is denormalized].
- refreshed patches:
+ fox-1.7-remove_date_from_adie.patch
+ fox-1.7-remove_date_from_pathfinder.patch
- recompress the sources, use xz (enhanced _service file)
-------------------------------------------------------------------
Wed Jul 15 10:43:27 UTC 2020 - lars@linux-schulserver.de - 1.7.72
- Update to 1.7.72
+ Added math function Math::pow10i(). Performs integer power of 10.
NOTE: function Math::pow10() will go away as this has been deprecated;
use Math::exp10() instead!
+ String to double conversion routines accuracy improvement fix
implemented; approximately 16th digit accuracy now.
+ Added %a and %A handling in fxscanf.cpp. Hex float support parsing
to be switched in soon; not yet 100% working at this time.
+ When parsing exponent-part of floating point number fails, properly
rewind input to the part before it; this will leave the rest of the
string for another conversion specifier if there is one.
+ When parsing number-separator, don't allow consecutive number
separators. Future implementations may be more strict still.
+ FXThread thread naming update for MacOSX and other operating systems.
+ The math.cpp test program now implements testing functions when they
are missing from the operating system.
From 1.7.71
+ FXSystem::Time not initialized inside FXSystem::systemTimeParse();
must initialize to zero prior to call. Reason: need to be able to
determine what fields were actually set during the parse.
+ Added FXSystem::daylightSavingsActive() API. Determines if daylight
savings time in effect at the given time.
+ On Windows, FXSystem::daylightSavingsActive() uses TIME_ZONE_INFORMATION
to determine when daylight savings is to be switched.
But Linux and Windows versions may need additional work.
+ FXSystem::localTimeZoneName() returns time zone name as known by
O.S. Note its returned as UTF8 string.
- make rpmlint happy and let the -devel package require the main package
-------------------------------------------------------------------
Mon Jun 29 08:32:20 UTC 2020 - lars@linux-schulserver.de - 1.7.70
- Update to 1.7.70
+ Changed order of paramter in FXSystem::systemTimeParse(); new order
allows default parameter for time parsing format, "%m/%d/%Y %H:%M:%S",
which is very convenient.
+ Added localTimeZoneName() API.
+ Changed parameter order and implementation of universalTime() and
localTime(); the new order now allows default parameter ("%m/%d/%Y %H:%M:%S")
for time formatting and parsing. New implementation using recently
added routines also allows adjustment for time zone offset if time
zone offset is parsed from time string (%Z or %z option).
+ FXSystem::systemTimeParse() does not initialize FXSystem::Time struct
anymore; thus, should be zeroed out prior to being called. However,
FXSystem::systemTimeParse() will assign as much as it can based on
the time- and date-components being parsed.
Also note, FXSystem::systemTimeParse() can properly parse ISO week
number and day, and compute proper date from that. Its a bit tricky.
FOX DEVELOPMENT 1.7.69
+ More FXSystem time related API changes.
+ FXString 16-bit character conversion fix.
+ Military time zone parse.
+ FXFileSelector onCmdDirectoryUp() selects directory we were in before,
for quick downward navigation.
+ FXFileList sets both current and anchor item when entering directory.
+ The fxprintf.cpp used in string formatting now supports %a and %A
for floating point printout.
FOX DEVELOPMENT 1.7.68
+ Added FXSystem::Time struct, system-independent time in parts. This
comes with (at the moment) two routines, FXSystem::systemTimeFromTime()
which converts FXTime to FXSystem::Time, and FXSystem::timeFromSystemTime()
which converts time in parts to FXTime (in nanoseconds).
+ New routine FXSystem::systemTimeFormat() formats FXSystem::Time to
a string, similar to strftime(), with a few extensions.
+ New routine FXSystem::systemTimeParse() parses FXSystem::Time
from a string, similar to strptime(), with a few (more) extensions.
+ New routine FXSystem::daysFromCivil() converts year, month, day to
days since Unix Epoch in days.
+ New routine FXSystem::civilFromDays() converts Unix Epoch in days
to year, month, day.
+ New routine FXSystem::timeFromNTPTime() Converts NTP time
(64-bit ssss:ffff) to FXTime, nanoseconds since Unix Epoch).
+ New routine FXSystem::ntpTimeFromTime() Converts FXTime time to
NTP time (64-bit ssss:ffff).
+ New routine FXSystem::leapSeconds() returns number of leap seconds
since FXTime. It can be used to compute UT1 time (plus or minus
fraction of a second).
+ The sysctl.h is now obsolete on Linux [still checked as not obsolete on *BSD].
+ Blending on in FXGLShape.
+ WM_ERASEBKGND message handler (on Windows) should return 1.
+ Small default width/height size calculation bug in FXTable fixed.
+ Some fixes in FXMat3d, FXMat3f with some SSE/AVX code.
+ Additional routines in fxendian.h: pop64(), pop32().
+ New routines in FXElement.
+ Some more missing math functions added in fxmath.h.
+ Fix in FXDate for pre-1970 time values (rounding wrong way).
+ FXTRACE in FXMetaClass constructors/destructors.
+ Some progress on new FXEventLoop/FXDispatcher/FXReactor classes.
+ FXThread naming.
+ Initialize FXQuatf/FXQuatd with Rodrigues angles, other APIs
for Rodrigues angles added.
+ FXJSON parser exponent parsing bug fix.
+ FXCallback bug fixes.
+ FXText bug fixes/improvements.
FOX DEVELOPMENT 1.7.67
+ Two subtle bug fixes in new double to string conversion fxprintf.cpp;
first, compiler optimization caused code to be generated that overflowed,
making results incorrect when optimization was on.
Second, another (unrelated) overflow situation happened converting double
to unsigned long. Now that both are fixed I believe we have a very fast
numerical conversion that appears to be reliably generating about 15 to
16 digits out output [last digit may be off by 1 or 2 in typical case].
+ Allow more bookmarks in FXFileSelector, for frequently visited directories.
+ Work-around for operating systems missing lrint() and lrintf() in fxmath.h.
Testing reveals replacement implementation to be very close to original,
with exception of tie-breaking rule rounding numbers that are exactly
midway between two integers; we are, however, mostly happy with the way
our implementation works if lrint() is needed on an operating system
where theses functions are missing.
FOX DEVELOPMENT 1.7.66
+ FXString::escape(): encode illegal UTF8 as hex-sequence regardless of flags.
+ FXJSON bug fixes for support of JSON5.
+ FXJSON parser strictly reject bad (ill-formatted) UTF8 characters.
+ FXPath UNICODE user home directory fix.
+ Fleshed out thousands-grouping in fxprintf (used by FXString and
other places for number-conversion). Print comma-separated thousands
in the integer fraction.
New: when in exponential mode, adjust the exponent and decimal
point location such that the exponent is a multiple of 3.
+ New, faster, and often more accurate floating point to string
conversion. No, this is not based on Ryu paper. New method
reliably generates 16 digits, and does much better rounding.
- refreshed patches:
+ fox-1.7-remove_date_from_adie.patch
+ fox-1.7-remove_date_from_pathfinder.patch
-------------------------------------------------------------------
Sun May 5 15:35:17 UTC 2019 - lars@linux-schulserver.de - 1.7.65
- Update to 1.7.65:
+ FXJSON now has JSON5 JSON5 support; line-comments, multi-line
comments, unquoted key names, etc.
+ Experimental block-selection in FXText widget.
+ Fixed fxscanf.cpp to be able to read NaN and Infinity/Inf.
+ Fixed strtod() to recognize Infinity.
+ The escape() of empty string returns "", not empty string.
+ The unescape() supports line-continuations.
+ Additions to Math namespace.
+ Additions to FXQuatd and FXQuatf.
+ Some missing functions added to FXExpression.
+ FXPath::convert() transforms foreign operating system-style
paths to local conventions (path separator, path list separator,
environment variable syntax).
+ Improved FXPath::expand().
+ FXReverseDictionary class added.
+ FXDirWatch class added.
- refreshed patches:
+ fox-1.7-remove_date_from_adie.patch
+ fox-1.7-remove_date_from_pathfinder.patch
- ran spec-cleaner
-------------------------------------------------------------------
Fri Oct 5 12:26:50 UTC 2018 - lars@linux-schulserver.de
- Update to 1.7.64:
+ Switched FXDir to use readdir() instead of now-deprecated
readdir_r(). Supposedly now thread-safe.
+ Some internal streamlining in FXRex.
+ In FXText, duplicate line leaves cursor in place, but highlights
the new line (if you duplicate one too many, you can therefore
immediately delete it again).
+ Add some help messages for PathFinder's Preferences dialog.
+ Add columnFromPos() and posFromColumn() functions in FXText.
+ Fixed bug in FXText not recalculating width if only single line
present (was introduced recently).
+ FXRex reverse algorithm was not working for verbatim mode; it does now.
+ Some limitations on FXRex regex-reversal algorithm removed.
+ Adie open-selected rework had introduced some bugs; is fixed now.
+ Added new convenient API's to Math namespace.
+ Added new API's to vector classes.
+ FXText block select, block copy to clipboard, and block delete now work.
+ FXText shiftText() had minor issue shifting text containing tabs;
this has been dealt with in a very sophisticated way, an internal
routine which is also needed for block operations.
+ PathFinder now stores execpath, which is used to locate executables
listed in icon-associations; it can be changed via Preferences Dialog.
This is for people who are not able to set system environment
variables directly.
+ Newly added arbitrary-length look-behind assertions in FXRex are
a bit more bullet-proofed.
+ Some bugs with partially filled buffers in FXText fixed.
+ Large number of updates to syntax patterns in Adie.stx.
+ Fixed some minor issues in reversing of regular expressions, needed
for arbitrary-lookbehind assertions in regular expression engine.
+ Bug fixes in FXDispatcher.
+ Added disconnect API to FXCallback, the new fast delegation class.
+ Word boundary in back-scanning regex engine fixed.
+ FXRex empty branch issue fixed; empty branches no longer allowed.
+ Removed limitations on message lenghts in fxerror(), fxwarning(), etc.
+ In FXRex, when patterns are reversed, some escape sequences are
dangerous; partially, this could be fixed by requiring that the hex
escape sequence require two hex characters. For octal character
sequences, however, this can not be done, so those are flagged as
unsupported in look-behind patterns.
+ Some bugs fixed for Windows build.
+ Added API to FXPath to check if a filename is a reserved filename,
such as "COM1", "PRN" etc.
+ Fixed FXDirBox flicker, particularly under Windows, due to bad implementation.
+ The call to ::system() does not work as desired under Windows. Calls
to ::system() are used to spawn child processes, for instance, clicking
on an icon in PathFinder. These calls have now all been replaced by
newly developed APIs in FXPath, like parseArgs().
+ A Windows-specific version of parseArgs() has been added, it follows
Windows commandline escaping rules.
+ More options in file-associations for launching applications from PathFinder.
Applications may be launched with the current file (%f), the list of
all selected files (%F), the url of the current file (%u), the url's
of all selected files (%U), or the current directory (%d). These options
can be used at the same time, for instance, an association
"tar cvfz %d.tar.gz %F" would tar up all the selected files into an
archive that's named after the current directory.
+ Updated Makefile colorizing.
+ PathFinder now as its own notion of executable paths; this allows users
to add additonal paths to the shell-provided PATH environment variable.
Handy as not everyone knows how, or is allowed to change system PATH variables.
+ Show exact bytes in tooltip on bottom of PathFinder window.
+ Fixed FXAtomic problems on Windows.
+ FXText widget has tooltip timer, and will be able to pop a tooltip with
location-dependent content.
+ Duplicate accelerator issue fixed in FXReplaceDialog.
+ Try and prevent Adie from loading insanely large files [for example,
accidentally clicking on an .iso].
+ Strange Dell mice issue issuing dual mouse-wheel reports. This caused
some minor issues with scrolling. The FXScrollBar has been fixed for this problem.
+ At the same time, changed anomation parameters of FXScrollBar slightly;
animation time-step is now raised to 16ms, which is about one frame-time
on 60Hz screen. This means scrolling is a bit less CPU-hoggy as the
amount of work is dropped to 1/3.
+ Find In Files has some utility improvements.
+ Regular expression now supports non-simple possessive matching.
+ Possible signed character issues fixed in fxscanf.
+ Some better feedback in Adie while searching patterns in multiple files.
+ Find in files in Adie remembers last-used patterns and folders.
+ APIs added to FXText to manage virtual columns (columns past end of line).
This will be needed for block select operations.
+ FXIconList lasso speedup, especially when YUGE numbers of files in a folder.
+ Minor PathFinder spruce-ups.
+ New APIs in FXPath: parseArgs() builds argv vector from command
line, suitable to passing to execve() (etc.) system calls (or FXProcess).
+ Improved enquote() and dequote() for UNIX in FXPath.
+ In Adie, ShellCommand now kicks off sub-command w/o needing a shell;
uses new API parseArgs() to assemble command and start sub-process with it.
+ Minor fixes in FXCallback template.
+ Added rotate() to FXVec3d and FXVec3f.
+ Added additional APIs to FXAtomic.
-------------------------------------------------------------------
Thu May 18 09:12:40 UTC 2017 - lars@linux-schulserver.de
- Update to 1.7.60:
+ Context back-up changed in incremental syntax recolorizer (Adie).
+ Some typos fixed here and there.
+ Configure script and makefile updates.
+ Many updates being worked on inside FXText.
+ Compiler warnings fixes for GCC 6.3.1, which seems to flag a
few new things.
+ Some FXText widget speedups.
+ Bug fixes in FXString.
+ Added visiting() API to FXDirVisitor.
+ Disable and enable buttons in FindInFiles dialog in Adie editor when
starting/stopping searches.
+ Brace-matching change: matching brace can now stay visible as long as
cursor on a brace (if enabled). Enabling permanent highlighting also
makes the match search outside of the visible part of the text buffer,
in case the matching brace is scrolled into view later. Thus, people
with slow machines may notice brace-match could take slightly more
time, when working with really large files.
- refreshed all patches
-------------------------------------------------------------------
Sun Apr 16 09:05:37 UTC 2017 - lars@linux-schulserver.de
- Update to 1.7.59:
* Changed the way bookmarks are done in Adie; you can delete them one by one.
* A fair number of changes and bug-fixes in FXText widget.
* Cursor doesn't blink during movement in FXText and FXTextField.
* Limit accumulation of repaint-areas yields less visible flicker in some case.
* Redraw of line numbers in FXText now with less flicker during resizing.
* Adie text editor now supports adie, emacs, and vim modeline parsing;
you can set language (syntax) mode, tab width, wrapping, and a few other things.
* Dropped jump-scroll mode support in Adie: never used by anyone.
* Some extra options added to Adie Preferences Dialog.
* Syntax file for Adie can now force hard-tabs, autoindent, and other
attributes. This means editing 'Makefile' will automatically
switch hard-tabs on!!.
* Adie on-line help updated with description of syntax for 'Adie.stx'
syntax description file.
* Documentation in FXAccelTable.h expanded to include syntax for
accelerator keys.
* Option for brace-matching added to FXText. Also, added option to
keep brace highlighted forever, or until cursor moves or a selection is made.
* Show 'indeterminate' state for checkbuttons in Preferences panel, if
default settings for tab-mode, wrap-mode, auto-indent have been
superceeded by attributes from the syntax-file or a parsed modeline.
* Added 'SaveTo' option in File Menu of Adie text editor.
* Adie improvement: don't clear bookmark selecting it 2nd time; now,
remove bookmark by invoking "Delete Bookmark" with the cursor on the
bookmark to be deleted.
* Bookmarks now at start of line; thus, only one per line.
* Use __buildin_bswapXX() only for GCC 4.8 and newer; older versions
buggy, apparently.
* Added SaveTo option in Adie text editor.
* FXText and FXTextField cursor blink fix; don't blink while moving
(so user doesn't lose track of where it is!).
* When multi-file mode in FXFileSelector, enquote files only when
needed; and escape quotes and backslashes if they appear.
* FXFileSelector now returns filenames as typed into the box in all
modes, including multi-file mode.
* Now allow relative search paths in Adie file search paths. This means
you can list places to look for files in your project directory subtree,
regardless of where the project subtree is referenced from; for example,
"../include:../lib" will let you open a file from "../include" when
you're in "lib", and vice-versa.
* FXFileList properly hops back to original directory when dragging
over directories.
* Major speedup in FXIconList lasso-selection mode. Much, much faster
when lassoing items in very large folders.
* FXFileSelector's getFilename() returns first of many, if box
contains multiple names.
* FXFileSelector scans for first non-wildcard extension when
substituting extensions when filter is changed.
* FXTreeList and FXFoldingList should issue SEL_EXPANDED message as
side effect of makeItemVisible expanding a subtree.
* Missing setPattern(), getPattern() API's added for
FXDirDialog and FXDirSelector.
* Added syntax pattern for hexadecimal floating point numbers.
- refreshed all patches
- adapted versions of adie, shutterbug ,calculator and pathfinder
-------------------------------------------------------------------
Sun Feb 19 22:11:00 UTC 2017 - jengelh@inai.de
- Update to new upstream release 1.7.57
* Return original user-data pointer in addTimeout() and
addDeadline(), addChore(), and removeChore(). This allows one
to delete user-objects that may be referenced by those
callbacks.
* Added non-wrap mode as output format in reswrap.
* Use nanosecond-accurate stat() output in FXStat.
* Factory function on abstract classes (FXIMPLEMENT_ABSTRACT)
now yields NULL object instead of cratering program.
* Added XML Parser capability. This is a SAX parser, which
generates callbacks for each XML element encountered. There
are two new classes, FXXML which is the core parser class,
and FXXMLFile which parses files or inputs from devices. The
FXXML class may also be used to parse from memory buffers.
* FXWSQueue implements a work-stealing queue. A Work-Stealing
queue supports a single thread adding or removing jobs from
the front end, and multiple threads removing jobs from the
backend.
* PathFinder now has new ways to select files quickly: by means
of wild-card patterns. The new selection method is based on
the list of file-patterns available from the normal filter
drop-down box (which may be configured from the Settings
Panel). It can be invoked from Edit/Select Files menu.
-------------------------------------------------------------------
Sun Jan 17 14:53:35 UTC 2016 - jengelh@inai.de
- Update to new upstream release 1.7.54
* New namespace Math collects most math library calls in C++
namespace.
* Block-cursor in FXText when in overstrike mode.
* Join-lines operation added to Adie.
* Removed deprecated API's from FXComplexd and FXComplexf.
* Handle NaN and Inf on floating point string input (fxstrtod).
* Warnings in fxstrtoll() and fxstrtoull() fixed.
* Added at() APIs to FXVariant, like FXDictionary and FXArray have
(syntactical convenience).
* Use FXival for FXVariant which allows large sizes on 64-bit
machines.
- Patches refreshed
-------------------------------------------------------------------
Wed Nov 25 08:01:16 UTC 2015 - lars@linux-schulserver.de
- update to 1.7.53
+ FXFontDialog initialized to sensible size when first-ran.
+ FXPath::match() algorithm major correctness improvements for nested
patterns, and better error detection for broken patterns.
+ Fixed some layout issues in PathFinder when choosing large fonts,
menubar icons were not centered vertically.
+ Dialog to search files for regular expression in Adie now fully functional.
+ Invalidated bookmark locations could cause trouble when bookmark
menu popped up; now fixed.
+ Some functions refactored in Adie.
+ Minor problem in groupbox example application fixed.
+ Added facility to change scroll bar width in ControlPanel.
+ Added checkbutton to search only for first occurrence of pattern
in file in FindInFiles dialog.
+ Pass base directory of search to FindInFiles visitor so we can
relativize paths to it when recording search matches.
+ Zero array in FXIcon to shut up valgrind.
+ FXComplexf and FXComplexd APIs more compatible to standard C++ library:
added norm(), abs(), arg(), exp(), log(), and conj(). The old names
conjugate(), logarithm() and exponent() will probably be deprecated.
+ Some improvements to Adie's incremental search capability.
+ FXDirVisitor recursion limit added.
+ FXDirVisitor now has skip as well as early-out return mode.
+ Included paper reference motivating FXRandom shift-xor counts changes.
+ Change file mode improvement in PathFinder.
+ FXPath::isValidPath() API added.
+ Some fixes to PathFinder directory handling.
+ Expand environment variables when switching directories in PathFinder.
+ Some compiler warnings fixed.
+ FXThread priority issue fixed.
+ FXSettings parser issues fixed.
+ Incremental search history now being saved in Adie.
+ Backward search issue fixed in Adie.
+ Search and Replace Dialog fixes.
- enhanced requirements for devel package on distributions newer
than openSUSE 13.1
-------------------------------------------------------------------
Wed Jul 1 17:32:31 UTC 2015 - lars@linux-schulserver.de
- update to 1.7.52:
+ Squeeze out useless instruction from fxgetticks().
+ Add adopt() of FXVariantArray API to FXVariant.
+ Fixes in Adie syntax parser.
+ Problem in FXIODevice fixed.
+ CMYK color conversion in JPEG image support fixed.
+ Improved FXRandom implementation.
+ Escape key to close dialogs now handled via FXAccelTable instead
of hard-wired.
+ FXReplaceDialog search history implementation improvement.
+ Improvements to FXDirVisitor, and added early-out option.
+ Fix Adie text editor core-dumping issue with backward searches.
+ FXPath::match implementation improvements; more to come.
+ Added return codes to FXIO, FXIODevice.
+ Added setMode() API to FXIO, FXIODevice.
+ Early-out in dictionary classes.
+ Improved speed of failed search in dictionary classes.
+ Better docs on FXExpression.
+ Execute shell commands feature added to Adie.
+ Scrolling Syntax menu in Adie; list of supported languages
getting too big.
+ Added some protection to FXMessageChannel.
-------------------------------------------------------------------
Wed Apr 15 09:26:36 UTC 2015 - lars@linux-schulserver.de
- update to 1.7.51:
+ Syntax-colors in Adie can now be language-specific. Language
families like C/C++/C#/Java share common syntax-colors.
+ Syntax-colors in Adie now have initial (default) foreground
color value in Adie.stx file. End-user can change, however.
+ Fixed syntax-file parser in Adie: token hash incorrectly calculated.
+ Fixed uninitialized value issue in FXFileSelector, flagged by Valgrind.
+ Use thread-safe time functions on Windows, when available.
+ Fixed potential endless loop in FXText::findText().
+ Some fixes for VS2008.
+ Removed deprecated FXMutexLock in favor of FXScopedMutex.
+ Many standard clipboard types pre-registered now.
+ Charset conversions moved into FXWindow getDNDData(), setDNDData().
UTF8, UTF16, and ASCII support, for FXString.
+ Off-by-one error fixed in fxscanf() when scanning character-sets.
+ Template FXHashOf added.
+ New class FXDispatcher being implemented (experimental).
+ Insertion of command output into Adie text buffer is now undo-able.
+ Log-window added to Adie; pops up when executing command outputs to stderr.
+ Implement Larsson, Moeller, Lengyel sphere-box overlap algorithm; use
branch-free fmax, fmin, fmaxf, fminf where possible.
+ Fix warning in fxendian.h.
+ Added encode/decode URL feature to Adie.
+ Equality operator in FXVariant has been removed.
+ Inherit handle option works on Windows.
+ Added return codes to FXIO, FXIODevice.
+ Added setMode() API to FXIO, FXIODevice.
+ Early-out in dictionary classes.
+ Improved speed of failed search in dictionary classes.
+ Better docs on FXExpression.
+ Execute shell commands feature added to Adie.
+ Scrolling Syntax menu in Adie; list of supported languages getting
too big.
+ Added some protection to FXMessageChannel.
- refreshed all patches
-------------------------------------------------------------------
Mon Dec 15 13:37:23 UTC 2014 - lars@linux-schulserver.de
- the -devel-static package must require the -devel-package,
see https://en.opensuse.org/openSUSE:Packaging_guidelines#Exception
-------------------------------------------------------------------
Mon Nov 17 15:37:36 UTC 2014 - lars@linux-schulserver.de
- update to 1.7.50:
+ Major changes in the regular expression engine. New API amatch()
for anchored match, and new API search which replaces match().
More sensible parameter order and moved some flags from run-time
to compile time.
+ Internals of FXRex are now ready for UTF8 matching; however parsing
part will need to follow before these new capabilities can be put to use.
+ FXRex::substitute() now interprets the usual escape sequences when
creating replacement pattern from regular expression match captures.
+ Speedup in FXText getByte(), getChar(), etc. by introduction of
branch-free handling of gapped-buffer accesses.
+ Moved hard-wired search and replace dialogs out of FXText and into
Adie text editor; this is part of the FXText widget slim-down program.
+ Adie text editor search and replace improvements.
Basically, stream-lines mouse-free usability.
+ Adie incremental search bar now pops up at bottom of window. This
is much less disruptive as text does not get "pushed down" when
this toolbar pops up.
+ The FXHash find() routine now returns the slot index, or -1 if not
found. If you use FXHash you should be aware that simply replacing
find() by at() will fix your code to the new system. This was done
based on request from a user who noted the find() API in FXHash
behaved differently from the find() in FXDictionary.
+ Strip leading and trailing space from display in Adie's bookmark menu.
+ Added ParallelMax constant declaration for FXParallelFor.
+ Change to FXText findText() API. The new version can perform not only
forward and backward search, but also anchored match. The anchored match
is performed if neither SEARCH_FORWARD or SEARCH_BACKWARD flags are passed.
+ Goto Line dialog moved from FXText to Adie text editor proper
(also part of FXText widget slimdown program).
+ Adie Replace Dialog now has Search button.
+ Adie Replace Dialog Replace function now first checks if current
highlighted text is the one being searched for, and only searches further
if it isn't. This logic will therefore replace already highlighted selection,
and make it less likely you accidentally "skip" the first item in a
search-and-replace session.
+ Also, Search and Replace dialogs stay up until explicitly closed.
It was often the case that the first search is not always the desired one,
and one had to bring up the dialog a second time. Note that Escape hides
the dialog, so no mouse interaction is required for "Power Users".
+ Search and Replace dialog can now replace within selected text only.
+ Some language pattern updates in Adie syntax coloring file.
+ CMake coloring patterns added to syntax file.
+ New match modes added to FXRex: Exact, and NotEmpty. The Exact mode
succeeds only if a successful match eats the entire string. The NotEmpty
mode succeeds only if the match eats at least one character. Note these
are compile time flags, and implemented through special asserts in the
matching engine. Thus, the engine will potentially backtrack earlier
matches to try other possibilities!
+ Regular expression match engine speeded up by streamlining
matcher-setup internally; this particularly affects search().
+ Fixed bug in FXHash::at().
+ Eliminated recursion in simple possessive match in FXRex.
+ Added handy isNull(), isBool(), etc. APIs to FXVariant.
+ Made selection-changing APIs virtual in FXText, for subclassing.
-------------------------------------------------------------------
Fri Aug 29 08:46:42 UTC 2014 - jengelh@inai.de
- Use verifiable https://en.opensuse.org/SourceUrls and
original tarball
- Source uses AC_DISABLE_OPTION_CHECKING which requires
autoconf >= 2.62
- Follow shared library package naming guidelines a bit closer
- Remove redundant %clean section
-------------------------------------------------------------------
Fri Aug 15 13:54:00 UTC 2014 - lars@linux-schulserver.de
- update to 1.7.49:
+ a lot of changes, please refer to
/usr/share/doc/packages/fox17/html/news.html
for details
- add freeglut-devel to BuildRequires
- remove support for really old (< 10.0) SUSE distributions
- refreshed fox-1.7-remove_date_from_adie.patch
- added fox-1.7-remove_date_from_pathfinder.patch
-------------------------------------------------------------------
Fri Oct 25 23:17:21 UTC 2013 - lars@linux-schulserver.de
- update to 1.7.43:
+ Added FXJSON JavaScript Object Notation I/O class. FXJSON loads
and saves JSON, and has a great number of options, extensive error
reporting, and great degree of control over output.
+ Problems in Windows version of fxcpuid.cpp fixed.
+ Line segment to box and line segment to sphere intersection
routines added; also computes intersection point..
+ FXString escape() and unescape() now do \uXXXX unicode escaping.
Old functions for these, fromAscii() and toAscii() have been
removed. The new implementation properly handles surrogate pairs.
+ Added some API's to FXGLGroup.
+ FXListBox current item fix.
+ Added new functions to FXElement.h. Particularly,
bulk-comparison function.
+ Use new fxstrlcpy() and fxstrlcat() where appropriate; these will
always produce null-terminated strings.
+ Passed wrong handle for error FD in FXProcess under Windows.
+ Fix introduced bugs in FXHash and FXDict.
+ Some extra checks added in GIF loader header detection.
+ Typo fix in lock-free queue class FXLFQueue.
+ Fast accessors added to FXVariant; they can be used if type
already known.
+ Fixed minor issues with FXVariant implementation.
+ Missing FXAPI declaration in FXArrayBase added.
+ Added area() and volume() calculation to FXRange and FXSphere
classes; added area() to FXExtent classes.
+ Added new FXDictionary class; this will replace FXDict at some
point in the future.
-------------------------------------------------------------------
Mon Sep 16 06:26:10 UTC 2013 - lars@linux-schulserver.de
- split out controlpanel package from libfox1_7 package
- added fox17-remove_date_from_pathfinder.patch to avoid unneeded
rebuilds in OBS
- update to 1.7.42:
+ Added class FXVariant, and supporting classes FXVariantMap and
FXVariantArray. The FXVariant class can store basic types like
bool, int, or float, but also arrays of variants, or maps of
variants. Thus, FXVariant can be used to store an arbitrarily
complex tree-like data structure.
+ Fix cased from (__m128) to _mm_castsi128_ps() intrinsic for portability.
+ Fix compare operation in FXSize.h.
+ Added fxstrlcpy() and fxstrlcat() for safe string copy and
string concatenation.
+ Added __noreturn macro for flagging non-returning functions like
fxerror(). This may help compilers generate better code for places
where these functions are called.
+ Removed fxsleep(), obsoleted by FXThread::sleep() and FXThread::wkaeat().
+ Allow out-of-source builds of FOX on configure-based systems.
+ Force end-of-string in value returned by gethostname().
+ Fix introduced bugs in FXHash and FXDict.
+ Added swapElms() to FXElement.h. Also added templated swap().
+ Added internal function memswap().
+ Don't include intrinsics header files unless target
architecture is x86 or x86-64.
+ Many changes to Matrix classes for AVX and SSE.
+ FXHash hash-table improvements.
+ FXHash, FXPtrList needlessly had virtual destructors.
+ API's equalElms() added to FXElement.h.
+ Problems with initial list fixed in FXFileList and FXDirList.
+ Dropped default parameter value for FXString::mid() API.
+ Signed/unsigned warning issues fixed in FXArray.h.
+ FXArray and FXHash now use FXival to allow truly large arrays
and dictionaries.
+ Fixed some warnings compiling synchronization classes.
+ Use FXuval for fxmalloc() and ilk.
+ Minor additional tweaks to CPU identification.
+ FXRefPtr moved into the Atomic Age:- use atomic swap when
changing pointer value.
+ Add overloads for long, unsigned long in FXElement.h.
+ FXArray now consists of single (never NULL) pointer, same as
FXString. This means FXArray takes up only a pointer's worth
of space when empty.
+ Sign-extend macro added to fxdefs.h.
+ Updated fxcpuid() with AVX, AVX2, FMA, XOP, etc. detection.
+ Updated tables for fxascii.cpp.
+ Added various macros for memory alignment in fxdefs.h.
+ Added API's to FXTreeList and FXFoldingList to replace one
item with custom item.
+ Added API to return processor index of calling thread in FXThread.
+ Bounds check in FXTabBook's setCurrent().
+ Added isAccessible API to FXStat.
+ Added API to rotate vector by quaternion to FXQuatd, FXQuatf.
+ Check valid path in FXPath.
+ FXFileList Drag and Drop now enabled.
+ Improvements to File Open Dialog right-click menu.
+ Add ability to remove as well as add directory bookmarks in
File Open Dialogs.
+ AVX capabilities added to matrix and vector classes
(if compiled with avx intrinsics).
+ FXThread sleep() function reverts to sleep if interrupted
by signal.
+ 4x4 Double matrix transpose using AVX permute intrinsic.
+ Check UTIME_OMIT before using utimensat().
+ Updates to PathFinder file manager.
+ Check for NULL name in FXMetaClass hash table additions.
+ Added isBinDigit() and isOctDigit() to Ascii character
class functions.
-------------------------------------------------------------------
Fri May 17 12:32:31 UTC 2013 - lars@linux-schulserver.de
- update to 1.7.39:
+ Small changes to return types in FXIO (and subclasses) for
flush(), eof().
+ FXMat4d and FXMat2d AVX accelerated when compiled for AVX.
+ ADA programming language patterns added to Adie's syntax file.
+ Fix in PathFinder escapement of filenames prior to spawning process
to open document.
+ Compile-time check improved before implementing call to
utimensat() in FXStat.
+ Totally revamped implementation of FXThreadPool. The new FXThreadPool
is organized about a lock-free queue, with semaphores managing
synchronization between producer- and worker-threads. Thus, threads
never block unless two edge conditions are reached: either the task-queue
is empty, in which case worker threads will block (nothing to do), or
task queue is filled up, and producer thread will block.
+ An important new capability is for an additional thread to enter into
the task-processing loop temporarily. Finally, the thread starting
FXThreadPool, as well as the worker threads belonging to the FXThreadPool
now have a thread-local variable referencing the FXThreadPool. This
allows the threads involved to locate the address of the FXThreadPool,
for instance to create an FXTaskGroup.
+ New FXTaskGroup class manages groups of task to be executed in parallel
on a FXThreadPool. Tasks started through the FXTaskGroup interface are
guaranteed to be completed within the lifetime of the FXTaskGroup instance.
+ New FXParallelInvoke and FXParallelFor template functions to implement
parallel function call, and parallel for loop. This uses the new
FXTaskGroup, and indirectly, FXThreadPool.
+ Pass optional stacksize when constructing FXWorker. Added stacksize
option to FXThreadPool with which new workers will be started.
+ FXBarrier wait primitive now sports API's to change break-through
threshold, and forced-release option.
+ FXSemaphore now has API's for timed wait, and try-wait for
non-blocking semaphore decrement.
+ Added additional atomic variable types in FXAtomic.h.
+ Added check for maximum dash-pattern length in FXDC and FXDCWindow.
+ Fixed some issues with FXStat of files.
+ Off-by-one error fixed in FXRex counted repeat of complex subpatterns.
+ Clear internal text pointers in FXRex prior to a match.
+ Added a few missing print-patterns to Adie.stx syntax file.
+ Added FXSemaphore-protected queue class FXSemaQueue; this is
itself a wrapper around FXPtrQueue.
+ Added lock-free queue class FXLFQueue.
+ Numeric conversion issues fixed in fxstrtod.cpp; in particular,
some corner cases now give more accurate results.
+ The function fxscanf.cpp does no longer eat the "e" when scanning
for a number, unless actually followed by digits.
+ Switch to statvfs() from statfs() in FXStat.
+ Indexing operator added to FXAutoPtr.
+ Added new class FXScopedThread. FXScopedThread automatically
performs a join() upon destruction.
-------------------------------------------------------------------
Tue Mar 12 11:42:10 UTC 2013 - lars@linux-schulserver.de
- added glu-devel to build requires
- refreshed patches
-------------------------------------------------------------------
>>>>>>> ./fox17.changes.r95
Wed Jan 23 12:34:51 UTC 2013 - lars@linux-schulserver.de
- update to 1.7.37:
+ Added auto-numbering in FXHeader.
+ Added alpha-numbering in FXHeader.
+ Fixes to FXProcess implementation on Windows.
+ Fixed aligned to unaligned store in FXMat2f SSE implementation.
+ Slightly stricter TGA header recognition.
+ Removed FXSemaphore value() API. Never used, and not really
useful.
+ FXRecentFiles allows for up to 32 entries;
still defaults to 10, however.
+ Fix in Windows non-UNICODE implementation of FXStat created(),
accessed(), and modified() API's.
+ Added API's to FXWorker class.
+ Added API to FXPtrQueue class.
+ FXPath::contract() should only replace whole path-components.
+ Prototype of wndproc() was not correct for 64-bit Windows.
-------------------------------------------------------------------
Sun Sep 9 14:36:17 UTC 2012 - lars@linux-schulserver.de
- update to 1.7.36:
+ FXPath::match is now UTF-8 aware in matching filenames.
+ Keep directories up front in FXFileList.
+ FXTable API additions for spanning cells.
+ FXTable fixes to issue only single callback for spanning cells
if multiple columns/rows fall in selection rectangle.
+ Added GO Language support for Adie Text Editor.
+ Added TENA .tdl Language support for Adie Text Editor.
+ Switch to C++ casts in certain places kills of const
cast warnings
+ The fox-config file for FOX project development has
been re-instated
+ New feature in FXHeader control: auto-renumbering captions based
on renumbering function; if a renumbering function (which computes
the caption from the caption index) is set, then captions are
automatically recomputed when the number of items in the FXHeader
is changed.
+ Updated FXTable to use this new feature in FXHeader. The old
options for renumbering have been removed.
+ Porting problem in FXMat4d, FXMat4f fixed, for CYGWIN32.
+ Added API's to FXTable to return first and last row (or column)
of a spanning cell.
+ Added API to check if a cell is horizontally spanning or
vertically spanning.
+ Cutoff angles in FXQuatd are smaller than in FXQuatf, due to much
greater precision of doubles versus floats.
- create symlinks in devel package where the binaries live
-------------------------------------------------------------------
Thu Jul 12 18:14:42 UTC 2012 - lars@linux-schulserver.de
- update to 1.7.34:
+ Added FXRandom fast, long-period, thread-safe psuedo-random
number generator.
+ Gamma-corrected image scaling option added.
+ FXPath::relative() corner-cases fixed.
+ FXPath::isHidden() now faster by scanning backward.
+ Adie syntax highlight algorithm had some possible issues.
Now expand context when incrementally recoloring.
+ Include glext.h on Windows; missing symbol otherwise.
+ Updated list of C++ keywords in Adie.stx style coloring file.
+ Added enable/disable item API's to FXComboBox, FXListBox, FXTreeListBox.
+ Added expression evaluate feature to Adie text editor.
+ Internal anynymous name spaces introduced in FXExpression and
FXRex due to symbol clashes on some compilers.
+ Added ?: alternative expression to FXExpression.
+ Array indexing problem fixed in FXFont.
+ Typo fixed in FXAtomic.cpp.
+ Fixed TIFF image save/load.
+ Fixed quaternion arc() for vectors that are 180 degrees apart.
+ Some tweaks in FXAtomic: more optimal code for non-PIC compiles;
also, check for PIE (position independent executable).
+ Fixed problem in FXRex regarding non-ASCII characters.
+ Repaired some broken syntax patterns in Adie.stx syntax file.
+ SSE-ified lerp() API added to vector classes.
+ Fixed SSE unaligned store problem in FXMat4d; exhibited itself
on 32-bit systems.
+ Setjmp()/longjmp() issue fixed in fxpngio.cpp.
+ Operator FXbool in FXAutoPtr and FXRefPtr interfered with
comparison operators; removed it.
+ Added API's to FXMat4 classes.
+ Added serialization capability to FXExpression class.
+ New FXWEBPIcon and FXWEBPImage image support classes; this requires
libwebp from google.
+ Some changes and speedups in FXHash implementation.
+ Define cpu_set_t for FreeBSD.
+ Undefine VOID if defined (Windows thing).
+ Removed copy constructor and assignment operator for FXDict;
was never correct anyway, and its not used.
+ Issue with FXMenuCheck and FXMenuRadio reimplementing ID_SETVALUE
with a boolean argument, whereas baseclass implements ID_SETVALUE
with string (since there is no check) This caused some breakage in apps.
+ Scrolling widgets like FXIconList no longer do makeItemVisible if
user clicks on item:- this was disconcerting and unnecessary; if
you can click on it, then you must have been able to see it!
+ Fixed few issues with incremental search bar visibility.
- specfile cleanup:
+ ran spec-cleaner
+ format license in spdx format
+ add new specfile header
- added fox17-remove_date_from_adie.patch to be able to support
build compare
-------------------------------------------------------------------
Tue Dec 13 10:01:24 UTC 2011 - lars@linux-schulserver.de
- update to 1.7.31:
+ Adie text editor Incremental Search Capability implemented.
+ Started on WebP image I/O support.
+ Problem in FXTable clipboard copy/cut operation fixed.
+ Fixes in FXAtomic for VC++.
+ Default value in FXURL url parser.
+ Fixed bounded repeat bug in FXRex.
+ Patch for FreeBSD processor affinity mask.
+ Fixed case-insensitive FXString comparecase() routine for UTF8.
+ Fixed potential issue using FXRex on non-x86 machines.
+ Major FXRex regular expression engine overhaul and bug fixes.
+ Startup of Adie editor now more sensible (thanks to Sander's
manu suggestions); start with initial directory set properly and
properly located untitled file.
+ FXDirList's setCurrentFile() improved.
+ Improvements in FXFileList and FXFileSelector; all and all removed
many unnecessary directory parses, with concomitant speedups of the
FXFileDialog panel.
+ Bookmarks popup menu in Adie text editor.
+ New Ctl-K keybinding clears current text line in FXTextField and FXText.
+ FXDirSelector cleaned up a little.
+ FXArrowButton made ever so slightly smaller/more distinguished.
+ Ability to set style flags in Adie syntax color setup subpanel.
+ Updated Adit text editor syntax style setup subpanel.
+ FXColorWell no longer grabs primary selection (was awkward to use!).
+ FXColorWell looks improvement: focus rectangle now inside well, well
observes frame style now, so you may need to update your code unless
default parameters were used.
+ API's added to FXColors: blendOver(), blendOverBlac(),
blendOverWhite() added.
+ Fixes and improvements to SyntaxParser in Adie.
-------------------------------------------------------------------
Fri Dec 9 08:47:40 UTC 2011 - lars@linux-schulserver.de
- update to 1.7.30:
+ Vastly expanded code docs for FXText widget.
+ Improved Syntax parser for Adie text editor.
+ FXFileList now issues proper callbacks when files or directories
are changed on the disk while FXFileList is displaying them.
+ FXFileSelector puts FXFileList into ICONLIST_SINGLESELECT mode
when SELECTFILE_ANY mode is in effect. This is as it should be
since the user may type a filename that doesn't yet exist.
+ Several unnecessary directory scans have been eliminated when
FXFileDialog first appears. This makes the FXFileDialog much
faster than it was before.
+ Python syntax rules updated in Adie.stx.
+ Added coloring rules for merge-conflicts for C, C++, and a
few other languages to Adie.stx.
+ Fixed bugs in Adie.stx now flagged by stricter syntax parser.
+ Non-recursive forceRefresh() in FXWindow.
+ FXIconList generates SEL_DELETED, SEL_INSERTED instead of
SEL_REPLACED. These callbacks are more useful.
+ PathFinder shows useful information in its status line.
+ Can now change permissions of multiple files from PathFinder
properties panel.
+ PathFinder can now change file-associations and icon-assignments,
just like ControlPanel. For now, these have effect only in PathFinder
itself, but this should change in the future.
+ Typo in FXComplexd fixed.
+ Workarounds for disk stat for MacOSX and other non-Linux Unices.
+ Fixed bug in FXMat3d SSE2 code. Was using aligned access.
+ FXFileList and FXDirList items keep track of mode-bits.
This actually simplifies stuff quite a bit.
+ Useless directory rescan eliminated when sort-function changed in
FXFilelist and FXDirList.
+ Issue SEL_CHANGED if current item is replaced in FXIconList,
FXList, etc.
+ Adie remembers if extension-less file syntax was changed by hand;
next time same file is loaded, syntax will be restored properly.
+ First-time bug in ControlPanel fixed; rare, issue only occurs
ControlPanel is ran first time and no registry exists yet on disk.
+ Option added to PathFinder to scale image to available space when
using internal image viewer.
+ Vendor-key in FXApp's constructor now defaults to FXString::null.
This is the more common usage pattern.
+ Option added to PathFinder to control file-item space and whether
or not to auto-size columns display.
+ Bold, strikethrough, underline style flags now saved in Adie.
+ New syntax rule option in Adie.stx: all-matching "background" rule.
When used, you can colorize all text not matched with the regular
rules, as override to the default colors used by the Adie editor.
-------------------------------------------------------------------
Thu Sep 15 14:31:42 UTC 2011 - lars@linux-schulserver.de
- update to 1.7.29:
+ Updated to Unicode 6.0 tables! This is a massive change!
Added Arabic Joing groups table.
+ We now have a FOX Forum! Register and log in to post articles
and converse with other FOX Users!
+ Added flag to FXString's shouldEscape() and escape(). If set,
escape utf8 strings, otherwise only escape control characters.
+ FXStatusLine bug fix: order is (1) text from help source (widget
under the cursor), (2) text from GUI update callback to its target,
(3) fallback text value supplied by setNormalText().
+ Fleshed out some missing API's in FXDirList, FXFileList.
+ Small problem in SSE2 in FXMat4f fixed.
+ File bindings setup panel in PathFinder added.
+ FXWindow::forceRefresh() now non-recursive (faster, stack-friendly).
+ Meaningful stuff displayed on status line in PathFinder.
+ FXString typo fixed.
+ Don't assume filename order is stable when listing directory
contents (FXFileList, FXDirList).
+ Suspect float to double promotions fixed (thanks to CLang++/LLVM
compiler!).
+ Fixed problem in FXFileList and FXDirList with dead symlinks.
+ Signed byte type added (FXschar).
+ Updated Python syntax coloring for Adie. Also added JavaScript
syntax coloring.
+ First-time use of FOX ControlPanel didn't work properly; fixed
this problem.
+ Updated and clarified doc-comments in FXThread.
+ Removed operator FXbool from FXComplexd and FXComplexf.
+ Fixed typo in FXComplexf and FXComplexd.
+ Added byte-swap built-ins for Microsoft C++ compiler.
+ Updated Doxygen scripts for reference documentation generation
from header files.
+ Fix small bug in FXThreadPool.
-------------------------------------------------------------------
Fri Aug 5 21:19:15 UTC 2011 - lars@linux-schulserver.de
- update to 1.7.28:
+ FXConcurrent can be subclassed to create subclassed FXWorker
threads.
+ Portability issue in FXFileList fixed.
+ Cleanups in FXGLVisual.
+ Added processor-affinity API's for FXThread.
+ Added __prefetch() macro to invoke underlying (GNU C++ only)
cache-prefetch instruction.
+ Added FXScopedReadLock and FXScopedWriteLock.
+ Fix to FXAutoPtr assignment operator.
-------------------------------------------------------------------
Mon Jul 25 10:45:33 UTC 2011 - lars@linux-schulserver.de
- update to 1.7.27:
+ New class FXProcess to manage child process creation in a
platform-independent way.
+ Split out FXThread into constituent files, one for each class
(FXMutex, FXSemaphore, etc).
+ Overstrike mode behaviour improved in FXText.
+ New collection of functions to deal with utf8/utf16/utf32 conversions
+ New macros for testing utf8, utf16 lead/follow properties.
+ New fxendian.h header file for fast byte swapping primitives
+ New macro FXLONG() to embed 64-bit integer constants in your code,
in a way that survives various compilers.
+ Added FXIO::Inheritable flag for i/o devices
+ Added new FXConcurrent class
+ Better method to force thread signal masks when starting new
threads using FXThread.
+ Issues in fxscanf() for parsing doubles fixed
+ API's added to determine free disk space
+ Some members of FXEvent were not initialized in the constructor
+ New intermediate class FXIODevice
+ New class FXWorker is a thread that runs a FXRunnable
+ Renamed FXMutexLock to FXScopedMutex; added FXScopedSpinLock as well
+ Fix to FXAutoPtr when using implicitly called constructors or
conversion operators
-------------------------------------------------------------------
Mon Feb 7 20:38:53 UTC 2011 - lars@linux-schulserver.de
- update to 1.7.25:
+ Small fixes in FXAutoPtr.h.
+ Added FXMat2f, FXMat2d.
+ Vectorized many functions in FXMat2d, FXMat2f, FXMat3d, FXMat3f,
FXMat4d, FXMat4f (using SSE/SSE2/SSE3).
+ Some fixes to FXPath::isInside().
+ New API FXPath::relativize() returns shortest (unique) relative
filename of file given a list of search directories and absolute
filename.
+ Added intrinsics includes to xincs.h
+ Small layout changes to FXFontDialog.
+ FXRegistry now uses the FreeDesktop.Org specification.
+ Better FXString::upper() and FXString::lower() implementation.
+ Major cleanup of xincs.h.
+ Major performance improvements in FXThreadPool
+ Improved FXString::escape() and FXString::unescape().
+ Updates to Adie syntax file.
+ and many other changes
-------------------------------------------------------------------
Sun Dec 13 13:14:15 UTC 2009 - lars@linux-schulserver.de
- update to 1.7.21:
* Added fastnormalize() API's in FXVec{2,3,4}f, which use SSE
rsqrtss and one Newton-Raphson step for fast and quite accurate
vector normalization.
* Added JPEG 2000 support (FXJP2Icon, FXJP2Image).
* Added soft-tab insert, force auto-indent and no-auto-indent
character entry.
* Fixed cursor-overhang issue (off-by-one redraw).
* Fixed FXCondition::wait().
* Added a few convenience-API's in FXMat{3,4}{d,f}.
* Obtain number of processors improved.
* Some small fixes in FXRex.
* Faster fxrandom() implementation using Marsaglia's algorithm;
its better as well!
* Fix issue in FXThreadPool waking threads.
* Variable amount of wait adding job to FXThreadPool.
* Fixed a few warnings.
* Fixes in FXFont rolled in.
* Outer product added in FXMat3{d,f} and FXMat4{d,f}.
- removed upstreamed fox-1.7.20-am111.patch
- add libmesagl-devel buildrequires for Mandriva
-------------------------------------------------------------------
Mon Aug 24 15:39:49 CEST 2009 - lars@linux-schulserver.de
- update to 1.7.20:
* too many changes to list here. Please read
http://www.fox-toolkit.org/news.html for all details
- added fox-1.7.20-am111.patch to fix build with automake 1.11
-------------------------------------------------------------------
Tue Jun 16 10:47:39 CEST 2009 - lrupp@suse.de
- update to 1.7.19:
+ FXSettings APIs now sport versions which take FXString reference
+ Added volume to FXStat
+ FXDirVisitor split off into its own file
+ Major speed improvement in FXMat4d, FXMat4f matrix inversion
+ Block editing of FXTable cells which are disabled
+ Eliminated automatic conversion of FXColor to- and from
FXVec4 and FXVec3
+ Added FXAtomicPtr template class for lock-free programming
support on SMP type systems
+ New code in FXThread for determining #processors
+ New API's added to FXImage. The colorize() API colorizes an
image by multiplying its luminance by a given color argument.
The fade() API fades the image to a uniform given color, based
on a fading-factor
+ Some more stringent checking and tracing in FXGLVisual
matching added
+ Workaround added for non-conforming handling or GLX 1.3 or newer
by allowing 0 for glXCreateWindow() in older glX implementations
- rename fox17-static to fox17-devel-static to follow the new
naming schema for static libs
-------------------------------------------------------------------
Tue Nov 25 14:04:23 CET 2008 - behrisch@informatik.hu-berlin.de
- update to 1.7.18
- fixing Mandriva requirements
-------------------------------------------------------------------
Sat Oct 31 23:33:23 CET 2008 - behrisch@informatik.hu-berlin.de
- patch added to remove double entry of icons.cpp in src/Makefile.am
- files section updated for ControlPanel
- minor modifications for requirements on non-SUSE distros
-------------------------------------------------------------------
Thu Jul 3 17:33:23 CEST 2008 - lrupp@suse.de
- update to 1.7.17:
+ New Image Type supported: FXDDSImage and FXDDSIcon support
".dds" file type images;
+ Added transform() API to FXSphere; it may be used to
transform bounding
+ sphere by affine transformation matrix.
Also added transform to FXRange.
+ Again, matrix must be an affine transformation matrix.
+ Editor improvements. Added head() and tail() API's to FXArray
and FXObjectList.
+ DND_ASK type. FXIconSource now supports FXDDSImage and FXDDSIcon.
+ Reimplemented utf2wcs(), utf2ncs(), wc2utfs() and nc2utfs()
to be buffer overrun-safe.
+ New API stackingOrder() added to FXTopWindow to control
window stacking order explicitly.
- remove the realversion tag
-------------------------------------------------------------------
Wed Jan 30 13:05:47 CET 2008 - lars@linux-schulserver.de
- update to 1.7.15:
+ Implemented PropertyNotify message from X11 to intercept
_NET_WM_STATE changes. This allows us to send SEL_RESTORE,
SEL_MAXIMIZE and SEL_MINIMIZE when the user manipulates an
application's top-level window.
-------------------------------------------------------------------
Sat Jan 5 21:59:32 CET 2008 - lars@linux-schulserver.de
- update to 1.7.14:
+ Added 3DConnexion SpaceNavigator support.
+ Revamped OpenGL support with GLX 1.3 or higher
(frame buffer config supprt).
+ Updated FXGLCanvas. FXGLCanvas now has the capability of using
externally created FXGLContext or to use a private FXGLContext.
+ FXGLContext has been rewritten to use the updated FXGLVisual.
+ Fixed bug in fxprintf.cpp with "%n" format.
+ Fixed core dump in fxtifio.cpp which was due to crappy TIFF
library not handling errorhandling function-pointers nicely.
+ Fixed GCC type-punning warnings in FXThread.cpp.
+ Fixed some warnings in FXApp.cpp.
+ Simplified some code in FXDCWindow.cpp, and FXVisual.
+ Added flag to force visual ID in FXVisual; this allows you to
create a 2D drawable with a compatible visual to a 3D drawable.
+ Added Space ball support for rotation, panning, and zooming
in FXGLViewer.
- split libfox1_7 package to follow the shared library packaging
policy of openSUSE
- added desktop files for adie, calculator and pathfinder
-------------------------------------------------------------------
Wed Oct 10 11:59:49 CEST 2007 - lrupp@suse.de
- update to 1.7.12:
+ Added additional API's to FXMat3d, FXMat3f, FXMat4d, FXMat4f.
+ FXSlider, FXRealSlider didn't update tickmarks (if shown) when
slider range was changed.
+ Small typo found in fxfilematch() was found which affected
character-range matching.
+ Change in the order FXSphered, FXSpheref is expanded when
bounding box is added, resulting, in most cases, in a smaller
bounding sphere.
+ API added to FXTreeListBox, FXListBox, to set shrink-wrap mode
for popup pane; this allows minimum size depending on actual
number of items in list.
+ Logic of sizing items in FXIconList changed slightly.
+ switched to Lesser GPL Version 3
+ Major improvements to FXChart widget, and introduced FX2DChart
and FX2DPlot widgets.
+ Extra constructors and set() API's added to FXRangef, FXRanged.
Made radius have default parameter value in FXSphere to match
the idea in FXRange.
+ Fixed FXDockSite moveToolBar() problem when FXDockSite is
docked at bottom side.
+ Fixed FXComboBox, FXListBox, FXTreeListBox potentially reading
freed memory.
+ FXIconSource now recognizes ".jpeg" extension.
+ Added "special stacking orders" capability for FXTopWindow.
+ FXSettings has had a major overhaul. Arbitrary size limits for
the strings have been removed.
+ FXMat3d, FXMat3f, FXMat4d, FXMat4f have equality operators now.
+ Added setOrtho(), setFrustum() to FXMat4d and FXMat4f.
+ FXMat3f, FXMat3d, FXMat4d, FXMat4f function eye() has been
replaced with identity().
+ New API getItem() added to FXOptionMenu.
- removed old Provides and Obsoletes for fox-unstable
- added fox17-rpmlintrc
-------------------------------------------------------------------
Tue Jun 5 16:29:04 CEST 2007 - lrupp@suse.de
- update to 1.7.10:
+ fxIsFinite(), fxIsInf(), fxIsNan() API's added.
+ FXGradientBar visual aspects have more control now.
+ FXShutter didn't issue message when shutter-item was pressed.
+ The fxgetticks() API is now official. It returns the CPU's clocktick-
counter, where supported. Otherwise it returns time in nanoseconds.
+ Fixed rare corner-case with active-line coloring in FXText.
+ Fixed regression in glUseFXFont() when using Xft instead of XLFD.
+ Small subtlety fixed with list widgets and drag-n-drop initiation.
+ Fixed bug in FXMemMap.
+ Fixed bug in FXVisual which caused drawing to FXBitmap to fail.
+ Fixed bug FXWindow setDNDData() which affected MS-Windows clipboard
operations.
+ FXbool can not be relied upon to be 1-byte size. Removed the FXASSERT
inside FXApp to that effect. Serialization should be OK since its cast
to FXuchar.
+ Added ability to set file-associations table in FXFileDialog,
FXDirDialog so the associations may be shared between multiple widgets.
+ Fixed issue with bold-face text not drawing correctly in FXText if gap
happens to be in the text-fragment being drawn.
+ Implemented __vsscanf() and __sscanf(). Since this native FOX
implementation, and its now used on all platforms, there will be no
more issues with 32-bit v.s. 64-bit architectures, or Windows v.s.
Solaris v.s. GLIBC based systems.
The new routine will always behave the same and support the same
conversions.
+ Decoration options interpreted under Windows-XP and UNIX as follows:
DECOR_SHRINKABLE means window may be smaller, but not larger, than
default size;
DECOR_STRETCHABLE means window may be larger, but not smaller, than
default size; and finally,
DECOR_RESIZE means window may be both smaller or larger than
default size.
+ Implemented __snprintf() and __vsnprintf(). This takes care of all
variability in these API's across platforms, and also 64- v.s. 32-bit issues.
+ FXMDIChild resize animation speed changed a little bit.
+ Added some exciting new applications to the list of projects.
- Remove libbz2 from BuildRequires (in buildsystem now)
- removed --with-xim option: breaks keyboard support
-------------------------------------------------------------------
Thu May 03 21:33:58 CET 2007 - lrupp@suse.de
- update to 1.7.9
-------------------------------------------------------------------
Thu Mar 15 15:33:58 CET 2007 - lrupp@suse.de
- update to 1.7.8
-------------------------------------------------------------------
Thu Dec 14 10:33:58 CET 2006 - lrupp@suse.de
- initial package 1.7.7