Skip to content

CSSTUDIO-3793 Display of description in PV Table for values of type VEnum, VBoolean, and VString - #3967

Open
abrahamwolk wants to merge 4 commits into
masterfrom
CSSTUDIO-3793
Open

abrahamwolk wants to merge 4 commits into
masterfrom
CSSTUDIO-3793

Conversation

@abrahamwolk

@abrahamwolk abrahamwolk commented Oct 19, 2026 •

Copy link
Copy Markdown
Collaborator

Summary. This pull request implements the display of description for values of types VEnum, VBoolean, and VString in the PV Table application in Phoebus. The implementation depends on the changes to the epics-vtype library implemented in epics-base/epicsCoreJava#146.

Handling the possible presence of AdvancedEnumDisplay in values of type VEnum. One complication in the implementation arises from the possible presence of AdvancedEnumDisplay in instances of VEnum. This is handled by a special case of the switch-expression that computes the description in PVTableItem:

case VEnum vEnum when vEnum.getDisplay() instanceof DescriptionProvider descriptionProvider -> descriptionProvider.getDescription().orElse("");
This mirrors the existing implementation, which also treats this as a special case, but it would be preferable to have a unified mechanism for all VTypes.

Testing. I have tested the change manually for instances of VEnum, VBoolean, and VString that contain descriptions. I have not tested the changes for Tango values, since I don't know how to generate a Tango data source for testing.

Dependency on changes in epics-vtype. This merge request depends on the changes in epics-base/epicsCoreJava#146, and should not be merged before those changes have been merged, made part of a release, and the dependency on epics-vtype in this pull request has been updated to point to a release of epics-vtype that contains the changes.

@sonarqubecloud

Copy link
Copy Markdown

This branch has not been deployed

No deployments
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.

1 participant