Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tables #22

Merged
merged 14 commits into from
Jul 12, 2023
Merged

Tables #22

merged 14 commits into from
Jul 12, 2023

Conversation

GDYendell
Copy link
Member

@GDYendell GDYendell commented Dec 16, 2022

@GDYendell
Copy link
Member Author

This is currently only static tables.

There is a problem with the device schema test which I have not yet investigated.

@GDYendell
Copy link
Member Author

As far as inspecting the display in phoebus without real PVs to point at I think Tables and ComboBox-with-choices both work now.

Is someone else waiting to try this or is there something I can test?

@GDYendell
Copy link
Member Author

Note I would like to refactor the now 1000+ line _format/utils.py before merging this...

src/pvi/_format/utils.py Outdated Show resolved Hide resolved
@GDYendell GDYendell force-pushed the tables branch 2 times, most recently from d112716 to 45b4f20 Compare June 29, 2023 07:38
@GDYendell GDYendell force-pushed the tables branch 2 times, most recently from 3c546be to 225087f Compare July 6, 2023 13:05
@GDYendell GDYendell marked this pull request as ready for review July 6, 2023 13:09
@GDYendell GDYendell force-pushed the tables branch 4 times, most recently from 277f080 to b2993ea Compare July 6, 2023 14:25
@GDYendell
Copy link
Member Author

@coretl this is ready now. I am not sure to what extent you want to review this, as it is a big diff, but I would appreciate comments on Refactor _format module as to whether you think it makes things clearer or not.

@GDYendell GDYendell force-pushed the tables branch 2 times, most recently from a0fe350 to 452116d Compare July 7, 2023 16:59
- Rename classes and methods
  - Use Factory for classes that have methods to create class instances
  - Use Formatter for classes that have a format method that produces
    a text representation of a widget for a UI file. This distinguishes
    from Device Widgets that determine the widget that will be created
    for a Signal.
  - Class renames:
    - WidgetTemplate -> UITemplate
    - WidgetFactory -> WidgetFormatter
    - GroupFactory -> GroupWidgetFormatter
    - LayoutProperties -> ScreenLayout
    - ScreenWidgets -> WidgetFormatterFactory
    - Screen -> ScreenFormatterFactory
  - Screen method renames:
    - screen -> create_screen_formatter
    - create_sub_screens -> create_sub_screen_formatters
    - component -> generate_component_formatters
    - make_group_widget -> create_group_formatters
    - group -> create_group_formatter
    - make_component_widgets -> create_component_widget_formatters
- Make passing of ui properties to formatter more explicit and pass
  widget to formatter as a parameter separate to the properties map
- Expand one character variables
- mypy fixes
- Update docs ref
Add 3.10 to setup.cfg, as it is tested.
@GDYendell GDYendell merged commit 4a32a19 into master Jul 12, 2023
8 checks passed
@GDYendell GDYendell deleted the tables branch July 12, 2023 15:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add choices to ComboBox and make phoebus support it
2 participants