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:
ExceptionThe Exception we raise when there is no way of figuring out the monitor position of windows
- class pympress.util.ScreenArea(obj)[source]
Bases:
objectConvenience 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
rectincandidates- 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
rectincandidates- 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
Noneif there is no intersection- Return type:
ScreenAreaorNone
- equal(other)[source]
Check whether 2 areas cover the exact same space
- Parameters:
other (
ScreenArea) – The screen area to compare with- Returns:
Trueiff 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:
Trueiff 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:
Trueiff the areas have an intersection- Return type:
- class pympress.util.Monitor(obj, id_=None, num=None)[source]
Bases:
ScreenAreaA specialised
ScreenArearepresenting a monitor, with an descriptive string and a monitor number