We initialize our GUI with some initial filter names and radio buttons are made with the switch labels.
Our GUI allows users to change the filter labels. When that happens, we assign the the switch label with the entered filter label text.
// lfS is the lower filter switch
// lfSP is the lower filter switch vector property
strcpy( lfS.label, filter_text );
IDSetSwitch(&lfSP, NULL);
The client does not see this switch label change. The switch label (the user entered filter text) is only updated when the client is disconnected and reconnected.
How can I push this switch label change so the client sees and updates the GUI?
Unfortunately, the INDI wire protocol does not support this. For this to work, you have to delete the property and redefine it again. You cannot change the label dynamically.
Hey Jasem, thanks for the reply. We have a workaround for now (basically refreshing the browser window for our web based GUI).
In the future, do you have recommendations for what property we should use to accomplish our original goal of allowing users to update labels of filters in our control GUIs?
I can think of some workarounds, but I wonder if INDI supports this in any way.