Skip to content

Commit 5ab8f4e

Browse files
committed
fix dependency and add auto converter fixes for BOY thumbwheel
1 parent a163586 commit 5ab8f4e

File tree

2 files changed

+42
-2
lines changed

2 files changed

+42
-2
lines changed

app/display/thumbwheel/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,13 @@
2525
<dependency>
2626
<groupId>org.phoebus</groupId>
2727
<artifactId>app-display-representation</artifactId>
28-
<version>4.6.6-SNAPSHOT</version>
28+
<version>4.7.1-SNAPSHOT</version>
2929
<scope>compile</scope>
3030
</dependency>
3131
<dependency>
3232
<groupId>org.phoebus</groupId>
3333
<artifactId>app-display-representation-javafx</artifactId>
34-
<version>4.6.6-SNAPSHOT</version>
34+
<version>4.7.1-SNAPSHOT</version>
3535
<scope>compile</scope>
3636
</dependency>
3737
<dependency>

app/display/thumbwheel/src/main/java/org/csstudio/display/widget/ThumbwheelWidget.java

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,26 @@
11
package org.csstudio.display.widget;
22

3+
import org.csstudio.display.builder.model.Version;
34
import org.csstudio.display.builder.model.Widget;
45
import org.csstudio.display.builder.model.WidgetCategory;
6+
import org.csstudio.display.builder.model.WidgetConfigurator;
57
import org.csstudio.display.builder.model.WidgetDescriptor;
68
import org.csstudio.display.builder.model.WidgetProperty;
79
import org.csstudio.display.builder.model.WidgetPropertyCategory;
810
import org.csstudio.display.builder.model.WidgetPropertyDescriptor;
11+
import org.csstudio.display.builder.model.persist.ModelReader;
912
import org.csstudio.display.builder.model.persist.NamedWidgetFonts;
1013
import org.csstudio.display.builder.model.persist.WidgetFontService;
1114
import org.csstudio.display.builder.model.properties.WidgetColor;
1215
import org.csstudio.display.builder.model.properties.WidgetFont;
16+
import org.csstudio.display.builder.model.widgets.PolygonWidget;
1317
import org.csstudio.display.builder.model.widgets.WritablePVWidget;
18+
import org.phoebus.framework.persistence.XMLUtil;
19+
import org.w3c.dom.Element;
1420

1521
import java.util.Arrays;
1622
import java.util.List;
23+
import java.util.Optional;
1724

1825
import static org.csstudio.display.builder.model.properties.CommonWidgetProperties.newBooleanPropertyDescriptor;
1926
import static org.csstudio.display.builder.model.properties.CommonWidgetProperties.newColorPropertyDescriptor;
@@ -192,4 +199,37 @@ public WidgetProperty<Boolean> propSpinnerShaped()
192199
return spinner_shaped;
193200
}
194201

202+
@Override
203+
public WidgetConfigurator getConfigurator(final Version persisted_version)
204+
throws Exception
205+
{
206+
return new LegacyWidgetConfigurator(persisted_version);
207+
}
208+
209+
private static class LegacyWidgetConfigurator extends WidgetConfigurator
210+
{
211+
public LegacyWidgetConfigurator(Version xml_version) {
212+
super(xml_version);
213+
}
214+
215+
@Override
216+
public boolean configureFromXML(ModelReader model_reader, Widget widget, Element widget_xml) throws Exception {
217+
if (!super.configureFromXML(model_reader, widget, widget_xml))
218+
return false;
219+
220+
final Optional<String> integerDigits = XMLUtil.getChildString(widget_xml, "integerDigits");
221+
if(integerDigits.isPresent())
222+
{
223+
int integer_digits = Integer.parseInt(integerDigits.get());
224+
widget.getProperty(propIntegerDigits).setValue(integer_digits);
225+
}
226+
final Optional<String> decimalDigits = XMLUtil.getChildString(widget_xml, "decimalDigits");
227+
if(decimalDigits.isPresent())
228+
{
229+
int decimal_digits = Integer.parseInt(decimalDigits.get());
230+
widget.getProperty(propDecimalDigits).setValue(decimal_digits);
231+
}
232+
return true;
233+
}
234+
}
195235
}

0 commit comments

Comments
 (0)