pyFAI.gui.utils package¶
pyFAI.gui.utils.FilterBuilder module¶
This module provides helper to build filter descriptions.
-
class
pyFAI.gui.utils.FilterBuilder.
FilterBuilder
¶ Bases:
object
Helper to create extension filters for file dialog
-
COMPRESSED_IMAGE_EXTENSIONS
= ['gz', 'bz2']¶ List of compressed file extension supported by fabio by default.
-
__init__
()¶ Initialize self. See help(type(self)) for accurate signature.
-
addFileFormat
(description, extensions)¶ Add a file format to the filters
- Parameters
description (str) – Description of the file format
extensions (Union[str,List]) – Description of the file format
-
addImageFormat
(description, extensions, compressedExtensions=True)¶ Add an image format to the filters
- Parameters
description (str) – Description of the file format
extensions (Union[str,List]) – Description of the file format
compressedExtensions (bool) – Includes derived compressed files like gz and bz2.
-
getFilters
()¶ Returns the filters as supported by
qt.QFileDialog.setNameFilters()
.- Return type
List[str]
-
pyFAI.gui.utils.ProxyAction module¶
-
class
pyFAI.gui.utils.ProxyAction.
CustomProxyAction
(parent, source)¶ Bases:
pyFAI.gui.utils.ProxyAction.ProxyAction
Create a QAction synchronized with a source action.
Some properties of the source can be overrided.
-
__init__
(parent, source)¶ Initialize self. See help(type(self)) for accurate signature.
-
forceIconText
(iconText)¶ Override the iconText of the the source action.
Property can be removed by using None. In this case the text set back using the sourceAction.
-
forceText
(text)¶ Override the text of the the source action.
Property can be removed by using None. In this case the text set back using the sourceAction.
-
setIconText
(self, str)¶
-
setText
(self, str)¶
-
-
class
pyFAI.gui.utils.ProxyAction.
ProxyAction
(parent, source)¶ Bases:
PyQt5.QtWidgets.QAction
Create a QAction synchronized with a source action.
This allow to intercept all the gettes and setters by inheritance.
-
__init__
(parent, source)¶ Initialize self. See help(type(self)) for accurate signature.
-
hover
(self)¶
-
sourceAction
()¶
-
toggle
(self)¶
-
trigger
(self)¶
-
pyFAI.gui.utils.colorutils module¶
-
pyFAI.gui.utils.colorutils.
getFreeColorRange
(colormap)¶ Returns a list of 10 colors in range not covered by colormap.
- Return type
List[qt.QColor]
pyFAI.gui.utils.eventutils module¶
This module provides convenient functions about Qt events.
-
class
pyFAI.gui.utils.eventutils.
QtProxifier
(target)¶ Bases:
PyQt5.QtCore.QObject
Provide a safe Qt object from an unsafe object.
-
__init__
(target)¶ Initialize self. See help(type(self)) for accurate signature.
-
-
class
pyFAI.gui.utils.eventutils.
SimulatedSignal
¶ Bases:
object
Simulated signal to create signal at runtime.
Note
Code from http://abstractfactory.io/blog/dynamic-signals-in-pyqt/
-
__init__
()¶ Initialize self. See help(type(self)) for accurate signature.
-
connect
(func)¶
-
disconnect
(func)¶
-
emit
(*args, **kwargs)¶
-
subs
()¶
-
-
pyFAI.gui.utils.eventutils.
createCloseSignal
(widget)¶ Create a Qt close signal to the widget as sigClosed attribute
-
pyFAI.gui.utils.eventutils.
createHideSignal
(widget)¶ Create a Qt hidden signal to the widget as sigHidden attribute
-
pyFAI.gui.utils.eventutils.
createShowSignal
(widget)¶ Create a Qt shown signal to the widget as sigShown attribute
pyFAI.gui.utils.imageutils module¶
This module provides convenient functions to use with Qt objects.
-
pyFAI.gui.utils.imageutils.
convertArrayToQImage
(image)¶ Convert an array-like RGB888 image to a QImage.
The created QImage is using a copy of the array data.
Limitation: Only supports RGB888 and RGBA8888 format.
- Parameters
image (numpy.ndarray of uint8 of dimension HxWx3) – Array-like image data
- Returns
Corresponding Qt image
- Return type
QImage
-
pyFAI.gui.utils.imageutils.
maskArrayToRgba
(mask, falseColor, trueColor)¶ Returns an RGBA uint8 numpy array using colors to map True (usually masked pixels) and Flase (valid pixel) from the mask array.
pyFAI.gui.utils.projecturl module¶
-
pyFAI.gui.utils.projecturl.
get_documentation_url
(subpath)¶ Returns the URL to the documentation
pyFAI.gui.utils.setup module¶
-
pyFAI.gui.utils.setup.
configuration
(parent_package='', top_path=None)¶
pyFAI.gui.utils.timeutils module¶
This module provides convenient functions about time.
-
class
pyFAI.gui.utils.timeutils.
Timer
(seconds)¶ Bases:
object
Kind of context manager to call a code while the amount of seconds is not finished.
timer = Timer(seconds=10) while not timer.isTimeout(): print("Tick")
-
__init__
(seconds)¶ Initialize self. See help(type(self)) for accurate signature.
-
isTimeout
()¶ Returns True if the timeout was reached.
-
pyFAI.gui.utils.tree module¶
-
class
pyFAI.gui.utils.tree.
DataSet
(path, h5=None, nframes=None, shape=None)¶ Bases:
object
-
__init__
(path, h5=None, nframes=None, shape=None)¶ Initialize self. See help(type(self)) for accurate signature.
-
as_tuple
()¶
-
is_hdf5
()¶ Return True if the object is hdf5
-
-
pyFAI.gui.utils.tree.
DataSetNT
¶ alias of
pyFAI.gui.utils.tree.DataSet
pyFAI.gui.utils.units module¶
-
class
pyFAI.gui.utils.units.
Dimentionality
¶ Bases:
pyFAI.third_party._local.enum.Enum
-
ANGLE
= <Dimentionality.ANGLE: 'Angle'>¶
-
LENGTH
= <Dimentionality.LENGTH: 'Length'>¶
-
PIXEL
= <Dimentionality.PIXEL: 'Pixel'>¶
-
SCATTERING_VECTOR
= <Dimentionality.SCATTERING_VECTOR: 'Scattering vector'>¶
-
WAVELENGTH
= <Dimentionality.WAVELENGTH: 'Wavelength'>¶
-
-
class
pyFAI.gui.utils.units.
Unit
¶ Bases:
pyFAI.third_party._local.enum.Enum
-
ANGSTROM
= <Unit.ANGSTROM: (('Ångström', 'Å', <Dimentionality.WAVELENGTH: 'Wavelength'>, 1),)>¶
-
CENTIMETER
= <Unit.CENTIMETER: (('Centimeter', 'cm', <Dimentionality.LENGTH: 'Length'>, 1),)>¶
-
DEGREE
= <Unit.DEGREE: (('Degree', 'deg', <Dimentionality.ANGLE: 'Angle'>, 1),)>¶
-
ENERGY
= <Unit.ENERGY: (('Energy', 'keV', <Dimentionality.WAVELENGTH: 'Wavelength'>, -1),)>¶
-
INV_ANGSTROM
= <Unit.INV_ANGSTROM: (('Inverse Ångström', 'Å⁻¹', <Dimentionality.SCATTERING_VECTOR: 'Scattering vector'>, 1),)>¶
-
INV_NANOMETER
= <Unit.INV_NANOMETER: (('Inverse nanometer', 'nm⁻¹', <Dimentionality.SCATTERING_VECTOR: 'Scattering vector'>, 1),)>¶
-
METER
= <Unit.METER: (('Meter', 'm', <Dimentionality.LENGTH: 'Length'>, 1),)>¶
-
METER_WL
= <Unit.METER_WL: (('Meter', 'm', <Dimentionality.WAVELENGTH: 'Wavelength'>, 1),)>¶
-
MILLIMETER
= <Unit.MILLIMETER: (('Millimeter', 'mm', <Dimentionality.LENGTH: 'Length'>, 1),)>¶
-
PIXEL
= <Unit.PIXEL: (('Pixel', 'px', <Dimentionality.PIXEL: 'Pixel'>, 1),)>¶
-
RADIAN
= <Unit.RADIAN: (('Radian', 'rad', <Dimentionality.ANGLE: 'Angle'>, 1),)>¶
-
-
pyFAI.gui.utils.units.
convert
(value, inputUnit, outputUnit)¶
pyFAI.gui.utils.unitutils module¶
-
pyFAI.gui.utils.unitutils.
from2ThRad
(twoTheta, unit, wavelength=None, directDist=None, ai=None)¶
-
pyFAI.gui.utils.unitutils.
tthToRad
(twoTheta, unit, wavelength=None, directDist=None)¶ Convert a two theta angle from original unit to radian.
directDist = ai.getFit2D()[“directDist”]
pyFAI.gui.utils.validators module¶
-
class
pyFAI.gui.utils.validators.
AdvancedDoubleValidator
(parent=None)¶ Bases:
pyFAI.gui.utils.validators.DoubleValidator
Validate double values and provides features to allow or disable other things.
-
__init__
(parent=None)¶ Initialize self. See help(type(self)) for accurate signature.
-
setAllowEmpty
(allow)¶ Allow the field to be empty. Default is false.
An empty field is represented as a None value.
- Parameters
allow (bool) – New state.
-
setIncludedBound
(minBoundIncluded, maxBoundIncluded)¶ Allow the include or exclude boundary ranges. Default including both boundaries.
-
toText
(value)¶ Convert the input string into an interpreted value
- Parameters
value (object) – Input object
- Return type
str
-
toValue
(text)¶ Convert the input string into an interpreted value
- Parameters
text (str) – Input string
- Return type
Tuple[object,bool]
- Returns
A tuple containing the resulting object and True if the string is valid
-
validate
(inputText, pos)¶ Reimplemented from QDoubleValidator.validate.
Allow to provide an empty value.
- Parameters
inputText (str) – Text to validate
pos (int) – Position of the cursor
-
-
class
pyFAI.gui.utils.validators.
DoubleValidator
(parent=None)¶ Bases:
PyQt5.QtGui.QDoubleValidator
Double validator with extra feature.
The default locale used is not the default one. It uses locale C with RejectGroupSeparator option. This allows to have consistant rendering of double using dot separator without any comma.
QLocale provides an API to support or not groups on numbers. Unfortunatly the default Qt QDoubleValidator do not filter out the group character in case the locale rejected it. This implementation reject the group character from the validation, and remove it from the fixup. Only if the locale is defined to reject it.
This validator also allow to type a dot anywhere in the text. The last dot replace the previous one. In this way, it became convenient to fix the location of the dot, without complex manual manipulation of the text.
-
__init__
(parent=None)¶ Initialize self. See help(type(self)) for accurate signature.
-
fixup
(inputText)¶ Remove group characters from the input text if the locale is defined to do so.
- Parameters
inputText (str) – Text to validate
-
toText
(value)¶ Convert the input string into an interpreted value
- Parameters
value (object) – Input object
- Return type
str
-
toValue
(text)¶ Convert the input string into an interpreted value
- Parameters
text (str) – Input string
- Return type
Tuple[object,bool]
- Returns
A tuple containing the resulting object and True if the string is valid
-
validate
(inputText, pos)¶ Reimplemented from QDoubleValidator.validate.
- Parameters
inputText (str) – Text to validate
pos (int) – Position of the cursor
-
-
class
pyFAI.gui.utils.validators.
IntegerAndEmptyValidator
¶ Bases:
PyQt5.QtGui.QIntValidator
Validate double values or empty string.
-
toText
(value)¶ Convert the input string into an interpreted value
- Parameters
value (object) – Input object
- Return type
str
-
toValue
(text)¶ Convert the input string into an interpreted value
- Parameters
text (str) – Input string
- Return type
Tuple[object,bool]
- Returns
A tuple containing the resulting object and True if the string is valid
-
validate
(inputText, pos)¶ Reimplemented from QIntValidator.validate.
Allow to provide an empty value.
- Parameters
inputText (str) – Text to validate
pos (int) – Position of the cursor
-
Module contents¶
Module providing gui util tools
-
class
pyFAI.gui.utils.
Event
(width, height)¶ Bases:
object
Dummy class for dummy things
-
__init__
(width, height)¶ Initialize self. See help(type(self)) for accurate signature.
-
-
pyFAI.gui.utils.
maximize_fig
(fig=None)¶ Try to set the figure fullscreen
-
pyFAI.gui.utils.
update_fig
(fig=None)¶ Update a matplotlib figure with a Qt4 backend
- Parameters
fig – pylab figure