fsleyes-props
release history
This document contains the fsleyes-props
release history in reverse
chronological order.
1.12.0 (Friday 8th November 2024)
Added
The
Choice.setChoices()
method now accepts a newChoice argument, allowing the new choice value to be set when the choices are updated.New onUser argument when creating a
Widget
for a .Choice property, which is called whenever the user interacts with the widget.
1.11.0 (Monday 18th September 2023)
Added
New
prefix
option forColourMap
properties - when a prefix is set, assignments to the property, e.g.obj.cmap = 'red'
, will cause a colour map named{prefix}_red
to be chosen over a colour map namedred
, if the former is registered with matplotlib.
Changed
The
ColourMap
property no longer supports looking up colour maps by their name or registered key. This is because matplotlib 3.8 has made it impossible to give a colour map a name different to the key under which it registered.
1.10.0 (Tuesday 18th July 2023)
Changed
Array
property types can now be set toNone
.Replaced
setup.py
-based build system withpyproject.toml
.
1.9.6 (Monday 10th July 2023)
Changed
The type-specific equality function is now used when the
'default'
attribute value is changed, instead of a naive equality (==
) comparison. This is primarily to allow the default value to be set to anumpy.array
(e.g. for theArray
type), for which a naive equality test would result in an error.
1.9.5 (Thursday 6th July 2023)
Added
1.9.4 (Thursday 6th July 2023)
Changed
Adjusted the
buildGUI()
function so that initial widget states (as determined byenabledWhen
/visibleWhen
) are correctly set.
1.9.3 (Monday 20th March 2023)
Fixed
Fixed potential infinite loop if a property value is set to the
HasProperties
instance.
1.9.2 (Wednesday 15th March 2023)
Added
New
HasProperties.wlisten()
method, an alias foraddListener(weak=False)
.
1.9.1 (Tuesday 21st February 2023)
Changed
Adjustments to the
ColourMap
property so that it prefers colour maps that are specified with theColourMap
over built-inmatplotlib
colour maps.
1.9.0 (Monday 20th February 2023)
Changed
fsleyes-props
now requiresmatplotlib >= 3.5.0
, and has been updated to use the newmatplotlib.colormaps
registry.
1.8.3 (Tuesday 7th February 2023)
Fixed
Fixed an issue in dependency specification.
1.8.2 (Monday 22nd August 2022)
Fixed
Fixed a bug whereby property definitions from a base class would be used when creating a
HasProperties
object, even if those properties were overwritten in a sub class.
1.8.1 (Thursday 18th August 2022)
Changed
Changed the initialisation logic for
Bounds
properties, so that if adefault
andminval
/maxval
are specified, the former is not overwritten by the latter.
1.8.0 (Thursday 18th August 2022)
Added
New
fsleyes_props.Props
,HasProperties.listen()
,HasProperties.ilisten()
,HasProperties.remove()
,HasProperties.bind()
,HasProperties.unbind()
,HasProperties.getatt()
, andHasProperties.setatt()
aliases.
Changed
Property value listener functions can be defined to accept no arguments, if none are needed.
The
Bounds
property type now acceptsminval
andmaxval
options, for setting the initial minimum/maximum limits for each axis.The
suppress()
andskip()
functions now accept one or more property names.
1.7.3 (Wednesday April 21st 2021)
Changed
Fixed deprecated usage of the
matplotilb.cm.cmap_d
colour map dictionary.
1.7.2 (Saturday March 27th 2021)
Changed
The
Color
property type now accepts any value that is accepted by the matplotlib.to_rgba function.Properties of type The
Int
andReal
can be set toNone
(unlessrequired=True and allowInvalid=False
).
1.7.1 (Tuesday March 9th 2021)
Changed
The
fsleyes-props
API documentation is now hosted at https://open.win.ox.ac.uk/pages/fsl/fsleyes/props/fsleyes-props
is now tested against Python 3.7, 3.8, and 3.9.Removed
six
as a dependency.
1.7.0 (Tuesday May 26th 2020)
Added
Added a short-hand alias for
HasProperties
-HasProps
.
1.6.7 (Friday October 4th 2019)
Changed
Minor GTK3 compatibility fixes.
1.6.6 (Wednesday September 18th 2019)
Changed
fsleyes-props
is no longer tested against Python 2.7-3.5, but is now tested against Python 3.6-3.8, and GTK3.
1.6.5 (Monday January 7th 2019)
Changed
Removed the
deprecation
library as a dependency.
1.6.4 (Friday October 5th 2018)
Changed
Development (test and documentation dependencies) are no longer listed in
setup.py
- they now need to be installed manually.Removed conda build infrastructure.
1.6.3 (Thursday July 5th 2018)
Changed
Removed
pytest-runner
as a dependency.
1.6.2 (Tuesday June 5th 2018)
Added
Fixed
Fixed a regression in the
SyncableHasProperties
class.
1.6.1 (Friday May 11th 2018)
Fixed
Fixed an issue in the behaviour of the
HasProperties.addProperty()
method and thesyncable
module, with handling of class hierarchies.
Deprecated
Deprecated the
PropertyOwner
metaclass - property initialisation now occurs at the instance level withinHasProperties.__new__()
.
1.6.0 (Thursday May 3rd 2018)
Changed
Adjustment to the
widgets_choice
module needed due to changes in theBitmapRadioBox
API.
1.5.1 (Wednesday March 7th 2018)
Changed
Adjustments to the
conda
package build and deployment process.
1.5.0 (Tuesday February 27th 2018)
1.4.0 (Monday January 8th 2018)
The
ColourMap
widget no longer complains when its property is set to a colour map that is registered withmatplotlib
, but not with the property. The error message when an unknown colour map is specified has also been improved.The
cli._Choice()
function allows additional arguments to be passed through to theArgumentParser.add_argument
method.
1.3.1 (Wednesday January 3rd 2018)
Fixed issue in
syncable
where sync property change listeners were not being called after calls tosyncToParent()
orunsyncFromParent()
.
1.3.0 (Wednesday January 3rd 2018)
The
SyncableHasProperties
raises a custom error type, instead of aRuntimeError
, when an illegal attempt is made to synchronise or unsynchronise a property.
1.2.5 (Wednesday December 6th 2017)
Fixed a problem with the API documentation build failing again.
Unit tests are now run against wxPython 3.0.2.0.
1.2.4 (Thursday November 9th 2017)
Fixed use of deprecated
fsl.utils.async
module from thefslpy
library.
1.2.3 (Thursday October 26th 2017)
Fixed a problem with the API documentation build failing.
1.2.2 (Saturday October 21st 2017)
cli
custom transform functions can now raise aSkipArgument
exception to indicate that the argument shouid be skipped, either when applying or generating arguments.
1.2.1 (Thursday September 21st 2017)
cli.generateArguments()
function wraps string values in quotes.cli.generateArguments()
allows extra arguments to be passed through to custom transform functions.
1.2.0 (Monday September 11th 2017)
Deprecated
get
/setConstraint
in favour ofget
/setAttribute
, onHasProperties
andPropertyBase
classes.
1.1.2 (Friday August 25th 2017)
Even more adjustement to
PropertyValueList
item notification/ synchronisation.
1.1.1 (Thursday August 24th 2017)
Further adjustement to
PropertyValueList
item notification/ synchronisation.
1.1.0 (Wednesday August 23rd 2017)
HasProperties.__init__()
now acceptskwargs
which allow initial property values to be set.SyncableHasProperties
has new/renamed methodsdetachFromParent
anddetachAllFromParent
, allowing individual properties to be permanently un-synchronised.Bugfix to
PropertyValueList.getLast
suppress.skip()
function has option to ignore non-existent/deleted listeners.Fix to
PropertyValueList
item notification.
1.0.4 (Thursday August 10th 2017)
New function
makeListWidget()
, which creates a widget for a specific item in a property value list.
1.0.3 (Friday July 14th 2017)
Bug fix to
fsleyes_props.bindable
- could potentially pass GC’d functions to thecallqueue
.Tweaks to CI build process
1.0.2 (Thursday June 8th 2017)
Added CI build script
Fixed some unit tests.
1.0.1 (Sunday June 4th 2017)
Adjustments to pypi package metadata.
1.0.0 (Saturday May 27th 2017)
props
renamed tofsleyes_props
pwidgets
removed (moved to separate projectfsleyes-widgets
)Removed
WeakFunctionRef
- this is now defined in thefslpy
project.Removed
Bounds
centering logicAdjusted
CallQueue
interface to allow arbitrary arguments to be passed through to queued functions.
0.10.1 (Thursday April 20th 2017)
First public release as part of FSL 5.0.10