Additional PVS not related to cavities.
As of now, the RF Learning app stores only cavity related information. In addition to cavities we need to store general beam information such as: average beam current, beam length other timing parameters.
We want to be able to add any arbitrary PV to our saved document. Those PVs should be shown in a separate Parameter Table with following columns:
- Name
- Value
- Value live.
- Delta
There would be a a button "Add PV" that opens up a dialog. In this dialog user will fill out following elements:
- Textfield: Parameter Name
- Textfield:PV Name
- Textfield: Threshold
- Button: Submit After user presses Submit button the dialog will close and a row will be added to Parameter Table, corresponding PV will be connected and Value/Live Value/Delta columns will expose behavior similar to cavity table columns. A row should become red if delta is higher than the threshold.
When user saves a document, the Parameter Table should be saved as well (Parameter name, PV name, Value, Value live, Threshold). Consider different layouts to use screen space effectively. This new table should not use the full window width, since it has just several fields.
Design a class that will represent a row in the Parameter Table.