Pympress package
This page contains the inline documentation, generated from the code using sphinx.
The code is documented in the source using the Google style for docstrings. Sphinx has gathered a set of examples which serves as a better crash course than the full style reference.
Retructured text (rst) can be used inside the comments and docstrings.
Modules
pympress.util
– various utility functions
- pympress.util.get_pympress_meta()[source]
Get metadata (version, etc) from pympress’ __init__.py or git describe.
- Returns:
metadata properties (version, contributors) mapped to their values
- Return type:
- pympress.util.close_opened_resources()[source]
Close all importlib context managers for resources that we needed over the program lifetime.
- pympress.util.get_translation(domain)[source]
Returns a gettext translation object.
This re-implements gettext’s translation() and find() to allow using a python 3.9 Traversable as localedir
- Returns:
A gettext translation object with the strings for the domain loaded
- Return type:
- pympress.util.get_portable_config()[source]
Returns the path to the configuration file for a portable install (i.e. in the install root).
May return None if the install root is not a real directory (e.g. in a zip file).
- pympress.util.get_default_config()[source]
Returns the path to the configuration file containing the defaults.
- Returns:
The path to the portable configuration file.
- Return type:
- pympress.util.get_user_config()[source]
Returns the path to the configuration file in the user config directory
- Returns:
path to the user configuration file.
- Return type:
- pympress.util.load_style_provider(style_provider)[source]
Load the css and in a style provider
- Parameters:
style_provider (
CssProvider
) – The style provider in which to load CSS- Returns:
The style provider with CSS loaded
- Return type:
- pympress.util.get_ui_resource_file(name, ext='.glade')[source]
Load an UI definition file from pympress’ resources
- pympress.util.get_log_path()[source]
Returns the appropriate path to the log file in the user app dirs.
- Returns:
path to the log file.
- Return type:
- pympress.util.fileopen(f)[source]
Call the right function to open files, based on the platform.
- Parameters:
f (path-like) – path to the file to open
- pympress.util.introspect_flag_value(flags_class, nick, fallback)[source]
Get the value of a flag from its class, given a value’s name (or nick)
Introspection technique (in particular __flags_values__ dict) inspired from pygtkcompat. This is needed because there is no typelib for libgstplayback.
- exception pympress.util.NoMonitorPositions[source]
Bases:
Exception
The Exception we raise when there is no way of figuring out the monitor position of windows
- class pympress.util.ScreenArea(obj)[source]
Bases:
object
Convenience class to represent monitors or windows in terms of the area (position and size) they use on screen
This is similar to
Monitor
, but necessary as we want to handle “mirrored” monitors as if they were a single monitor, and only use “extended” monitors as target for content window position and/or fullscreening.- most_intersection(candidates)[source]
Find the rectangle that intersects most with
rect
incandidates
- Parameters:
candidates (iterable of `ScreenArea`s) – The monitor areas to check for intersection
- Returns:
The best candidate screen area, i.e. that has the largest intersection
- Return type:
- least_intersection(candidates)[source]
Find the rectangle that intersects least with
rect
incandidates
- Parameters:
candidates (iterable of `ScreenArea`s) – The monitor areas to check for intersection
- Returns:
The best candidate screen area, i.e. that has the smallest intersection
- Return type:
- intersection(other)[source]
Compute the intersection of 2 screen areas
- Parameters:
other (
ScreenArea
) – The screen area to compare with- Returns:
An area representing the intersection, or
None
if there is no intersection- Return type:
ScreenArea
orNone
- equal(other)[source]
Check whether 2 areas cover the exact same space
- Parameters:
other (
ScreenArea
) – The screen area to compare with- Returns:
True
iff the areas are identical- Return type:
- contains(other)[source]
Check whether this area contains
other
- Parameters:
other (
ScreenArea
) – The screen area to compare with- Returns:
True
iff the area is contained- Return type:
- intersects(other)[source]
Check whether this area intersects
other
- Parameters:
other (
ScreenArea
) – The screen area to compare with- Returns:
True
iff the areas have an intersection- Return type:
- class pympress.util.Monitor(obj, id_=None, num=None)[source]
Bases:
ScreenArea
A specialised
ScreenArea
representing a monitor, with an descriptive string and a monitor number