Commit Graph

9 Commits

Author SHA1 Message Date
Chris PeBenito
ffd28e90bb Remove permission map parameter from analysis tabs.
This is not the common case.

Signed-off-by: Chris PeBenito <pebenito@ieee.org>
2024-02-14 09:11:35 -05:00
Chris PeBenito
dd88511836 setoolsgui: Clean up criteria widget class names.
Remove "criteria" and "widget" from final classes.

Signed-off-by: Chris PeBenito <pebenito@ieee.org>
2024-02-14 09:11:35 -05:00
Chris PeBenito
c02b2628d7 Address issues uncovered by mypy 1.6.1.
Signed-off-by: Chris PeBenito <pebenito@ieee.org>
2024-02-14 09:11:35 -05:00
Chris PeBenito
7e9d0fded9 Update to PyQt6.
Signed-off-by: Chris PeBenito <pebenito@ieee.org>
2024-02-14 09:11:35 -05:00
Chris PeBenito
3040f2b6af MLSLevelRangeWidget: Refactor to RangedCriteriaWidget.
The RangedCriteriaWidget will, generically, handle entering ranges of
objects.  This is in preparation for adding a port range criteria
widget.

Split MLSLevelRangeWidget into MLSRangeName and MLSLevelName since levels
can have a more specific validator.

Also add options placement field.

Signed-off-by: Chris PeBenito <pebenito@ieee.org>
2024-02-14 09:11:35 -05:00
Chris PeBenito
cd24446963 setoolsgui: Address new errors in mypy 1.6.0.
Most come from the union-attr check, throwing errors because PyQt returns,
for example, "QObjecet | None", so code is using attributes on the PyQt
object that don't exist on None.

In some cases, classes gained new overridden method implementations that
do type narrowing to ensure a non-None object is returned.

This also includes a new QListView subclass with the above overrides.  With
the new class, there is some light refactoring in ListCriteriaWidget,
moving the selection methods to the new class.

The test code (unit tests and module __main__) simply ignore union-attr
errors, since we want that kind of runtime error to pop loudly.

There are some remaining issues, but they seem to be issues in the PyQt5
typing.

Signed-off-by: Chris PeBenito <pebenito@ieee.org>
2024-02-14 09:11:35 -05:00
Chris PeBenito
5f83443516 setoolsgui: Update to Python 3.10 typing syntax and features.
Also clean up lint warnings, such as missing docstrings and shadowing
variables in the __main__ (testing) functions.

No functional change.

Signed-off-by: Chris PeBenito <pebenito@ieee.org>
2024-02-14 09:11:35 -05:00
Chris PeBenito
2d755c46ca Clean up item model classes.
* Remove "Model" from names of model classes.
* Remove remaining *_detail() functions.
* Add typing.
* Make models dir a package.
* Update for superclass data() method as fallback.
* Switch to match/case statements.

Signed-off-by: Chris PeBenito <pebenito@ieee.org>
2024-02-14 09:11:28 -05:00
Chris PeBenito
60d3423b2a Add new MLS rule query tab.
Also enhance tooltips and what's this in MLSRuleTableModel.

Signed-off-by: Chris PeBenito <pebenito@ieee.org>
2024-01-31 10:11:55 -05:00