schrodinger.ui.qt.filter_dialog_dir.filter_core module¶
A simple, JSON-serializable property-based filter used by the filter_dialog module and compatible backends.
- class schrodinger.ui.qt.filter_dialog_dir.filter_core.Criterion(prop, limiter, checked=True)¶
Bases:
object
Object representing a single criteria of a filter. It consists of a property name and a “limiter”, which is a filter string for str types, a range of values for int/real types and True or False value for boolean types.
- __init__(prop, limiter, checked=True)¶
Initialize criterion.
- Parameters
prop (str) – name of property used in this criterion
limiter (str or bool or Tuple) – criterion limiting values: True or False if property is boolen, str if property is string and tuple that contains min and max values if property is numerical.
checked (bool) – indicates whether this criterion is ‘checked’. True by default
- valueMatches(value)¶
Return True if the given value matches the criteria; False otherwise.
- Parameters
value (str or None) – Value to test
- class schrodinger.ui.qt.filter_dialog_dir.filter_core.Filter(name, criteria=None)¶
Bases:
object
A filter objects is made up of a name and a list of criteria.
- __init__(name, criteria=None)¶
- Parameters
name (str) – Filter name
criteria (list of
Criterion
) – List of criteria to filter by
- doPropsMatch(lig_props)¶
Returns True if the given dict of property names/values matches all criteria; returns False if at least one criteria doesn’t match.
- serialize()¶
Encode the criteria from this filter into a JSON string.
- classmethod fromJSON(json_str)¶
Create a Filter instance from the given JSON string.
- Parameters
json_str (str or None) – JSON string specifying the filtering criteria. If None an empty filter is returned.
- classmethod fromFile(filename)¶
Create a Filter instance from a file (may be None).
- Parameters
filename (str or NoneType) – name of JSON file specifying the filtering criteria. If None, an empty filter is returned.
- Return type
- toFile(filename)¶
Write filter object to JSON file.
- Parameters
filename (str) – name of JSON file, where filter object will be stored.
- isChecked()¶
Checks whether any criterion is toggled on.
- Returns
True if any criterion is toggled ‘on’ and False otherwise.
- Return type
bool