Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -185,6 +185,7 @@
WidgetProperties_BorderAlarmSensitive,
WidgetProperties_BorderColor,
WidgetProperties_BorderWidth,
WidgetProperties_InnerPadding,

Check warning on line 188 in app/display/model/src/main/java/org/csstudio/display/builder/model/Messages.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Make this "public static WidgetProperties_InnerPadding" field final

See more on https://sonarcloud.io/project/issues?id=ControlSystemStudio_phoebus&issues=AZ1ZMU7Pr-X0o8pqMOnl&open=AZ1ZMU7Pr-X0o8pqMOnl&pullRequest=3767

Check warning on line 188 in app/display/model/src/main/java/org/csstudio/display/builder/model/Messages.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Rename this field "WidgetProperties_InnerPadding" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.

See more on https://sonarcloud.io/project/issues?id=ControlSystemStudio_phoebus&issues=AZ1ZMU7Pr-X0o8pqMOnn&open=AZ1ZMU7Pr-X0o8pqMOnn&pullRequest=3767

Check warning on line 188 in app/display/model/src/main/java/org/csstudio/display/builder/model/Messages.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Make WidgetProperties_InnerPadding a static final constant or non-public and provide accessors if needed.

See more on https://sonarcloud.io/project/issues?id=ControlSystemStudio_phoebus&issues=AZ1ZMU7Pr-X0o8pqMOnj&open=AZ1ZMU7Pr-X0o8pqMOnj&pullRequest=3767
WidgetProperties_CellColors,
WidgetProperties_Class,
WidgetProperties_ColorHiHi,
Expand Down Expand Up @@ -326,6 +327,7 @@
WidgetProperties_ShowLoLo,
WidgetProperties_ShowMinorTicks,
WidgetProperties_PerpendicularTickLabels,
WidgetProperties_ShowScaleLabels,

Check warning on line 330 in app/display/model/src/main/java/org/csstudio/display/builder/model/Messages.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Make this "public static WidgetProperties_ShowScaleLabels" field final

See more on https://sonarcloud.io/project/issues?id=ControlSystemStudio_phoebus&issues=AZ1ZMU7Pr-X0o8pqMOnm&open=AZ1ZMU7Pr-X0o8pqMOnm&pullRequest=3767

Check warning on line 330 in app/display/model/src/main/java/org/csstudio/display/builder/model/Messages.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Make WidgetProperties_ShowScaleLabels a static final constant or non-public and provide accessors if needed.

See more on https://sonarcloud.io/project/issues?id=ControlSystemStudio_phoebus&issues=AZ1ZMU7Pr-X0o8pqMOnk&open=AZ1ZMU7Pr-X0o8pqMOnk&pullRequest=3767

Check warning on line 330 in app/display/model/src/main/java/org/csstudio/display/builder/model/Messages.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Rename this field "WidgetProperties_ShowScaleLabels" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.

See more on https://sonarcloud.io/project/issues?id=ControlSystemStudio_phoebus&issues=AZ1ZMU7Pr-X0o8pqMOno&open=AZ1ZMU7Pr-X0o8pqMOno&pullRequest=3767
WidgetProperties_ShowOK,
WidgetProperties_ShowScale,
WidgetProperties_ShowUnits,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,10 @@
import org.csstudio.display.builder.model.WidgetProperty;
import org.csstudio.display.builder.model.WidgetPropertyCategory;
import org.csstudio.display.builder.model.WidgetPropertyDescriptor;
import org.phoebus.ui.color.NamedWidgetColors;
import org.phoebus.ui.color.WidgetColorService;
import org.csstudio.display.builder.model.properties.EnumWidgetProperty;
import org.phoebus.ui.color.NamedWidgetColors;
import org.phoebus.ui.color.WidgetColor;
import org.phoebus.ui.color.WidgetColorService;
import org.phoebus.ui.vtype.ScaleFormat;

/** Base class for PV widgets that display a numeric value on a scale
Expand All @@ -46,7 +46,7 @@
* overrides the manual LOLO/LO/HI/HIHI levels. New property;
* old Phoebus silently ignores the XML element.</li>
* <li>Manual {@code minimum} / {@code maximum} range.</li>
* <li>A {@code show_limits} toggle for alarm-limit visual markers.</li>
* <li>A {@code show_alarm_limits} toggle for alarm-limit visual markers.</li>
* <li>Manual LOLO / LO / HI / HIHI thresholds (NaN = inactive).</li>
* <li>Configurable minor/major alarm colours defaulting to the named
* {@code ALARM_MINOR} / {@code ALARM_MAJOR} palette entries.</li>
Expand Down Expand Up @@ -125,6 +125,36 @@ public EnumWidgetProperty<ScaleFormat> createProperty(final Widget widget,
newColorPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "major_alarm_color",
Messages.WidgetProperties_MajorAlarmColor);

/** 'scale_visible' — show the numeric scale (tick marks and labels) */
public static final WidgetPropertyDescriptor<Boolean> propScaleVisible =
newBooleanPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "scale_visible",
Messages.WidgetProperties_ScaleVisible);

/** 'show_minor_ticks' — show minor tick marks on the scale */
public static final WidgetPropertyDescriptor<Boolean> propShowMinorTicks =
newBooleanPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "show_minor_ticks",
Messages.WidgetProperties_ShowMinorTicks);

/** 'opposite_scale_visible' — show a second scale on the opposite side */
public static final WidgetPropertyDescriptor<Boolean> propOppositeScaleVisible =
newBooleanPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "opposite_scale_visible",
Messages.WidgetProperties_OppositeScaleVisible);

/** 'perpendicular_tick_labels' — draw scale labels perpendicular to the axis */
public static final WidgetPropertyDescriptor<Boolean> propPerpendicularTickLabels =
newBooleanPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "perpendicular_tick_labels",
Messages.WidgetProperties_PerpendicularTickLabels);

/** 'show_scale_labels' — show tick label text on the scale (ticks are always drawn) */
public static final WidgetPropertyDescriptor<Boolean> propShowScaleLabels =
newBooleanPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "show_scale_labels",
Messages.WidgetProperties_ShowScaleLabels);

/** 'border_width' — width in pixels of the border drawn around the widget (0..5) */
public static final WidgetPropertyDescriptor<Integer> propBorderWidth =
newIntegerPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "border_width",
Messages.WidgetProperties_BorderWidth, 0, 5);

// ---- Instance fields ------------------------------------------------

private volatile WidgetProperty<ScaleFormat> format;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,7 @@
*******************************************************************************/
package org.csstudio.display.builder.model.widgets;

import static org.csstudio.display.builder.model.properties.CommonWidgetProperties.newBooleanPropertyDescriptor;
import static org.csstudio.display.builder.model.properties.CommonWidgetProperties.newColorPropertyDescriptor;
import static org.csstudio.display.builder.model.properties.CommonWidgetProperties.newIntegerPropertyDescriptor;
import static org.csstudio.display.builder.model.properties.CommonWidgetProperties.propBackgroundColor;
import static org.csstudio.display.builder.model.properties.CommonWidgetProperties.propFillColor;
import static org.csstudio.display.builder.model.properties.CommonWidgetProperties.propFont;
Expand Down Expand Up @@ -74,36 +72,9 @@
}
};

/** 'tank_border_width' — width in pixels of the border drawn around the
* tank body; 0 (default) means no border, preserving the original look.
*/
public static final WidgetPropertyDescriptor<Integer> propTankBorderWidth =
newIntegerPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "tank_border_width",
Messages.WidgetProperties_BorderWidth, 0, 5);

/** 'empty_color' */
public static final WidgetPropertyDescriptor<WidgetColor> propEmptyColor =
newColorPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "empty_color", Messages.WidgetProperties_EmptyColor);
/** 'scale_visible' */
public static final WidgetPropertyDescriptor<Boolean> propScaleVisible =
newBooleanPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "scale_visible", Messages.WidgetProperties_ScaleVisible);

/** 'show_minor_ticks' */
public static final WidgetPropertyDescriptor<Boolean> propShowMinorTicks =
newBooleanPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "show_minor_ticks", Messages.WidgetProperties_ShowMinorTicks);

/** 'perpendicular_tick_labels' &mdash; draw scale labels perpendicular
* to the axis direction (horizontal text beside vertical scale)
*/
public static final WidgetPropertyDescriptor<Boolean> propPerpendicularTickLabels =
newBooleanPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "perpendicular_tick_labels", Messages.WidgetProperties_PerpendicularTickLabels);

/** 'opposite_scale_visible' &mdash; show a second scale on the opposite
* side of the tank (right for vertical, bottom for horizontal).
* Inspired by CS-Studio BOY which could show markers on both sides.
*/
public static final WidgetPropertyDescriptor<Boolean> propOppositeScaleVisible =
newBooleanPropertyDescriptor(WidgetPropertyCategory.DISPLAY, "opposite_scale_visible", Messages.WidgetProperties_OppositeScaleVisible);

/** Widget configurator to read legacy *.opi files*/
private static class CustomConfigurator extends WidgetConfigurator
Expand Down Expand Up @@ -168,6 +139,7 @@
private volatile WidgetProperty<WidgetColor> empty_color;
private volatile WidgetProperty<Boolean> scale_visible;
private volatile WidgetProperty<Boolean> show_minor_ticks;
private volatile WidgetProperty<Boolean> show_scale_labels;

Check warning on line 142 in app/display/model/src/main/java/org/csstudio/display/builder/model/widgets/TankWidget.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Rename this field "show_scale_labels" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.

See more on https://sonarcloud.io/project/issues?id=ControlSystemStudio_phoebus&issues=AZ1ZMU1Er-X0o8pqMOng&open=AZ1ZMU1Er-X0o8pqMOng&pullRequest=3767
private volatile WidgetProperty<Boolean> perpendicular_tick_labels;
private volatile WidgetProperty<Boolean> opposite_scale_visible;
private volatile WidgetProperty<Boolean> log_scale;
Expand All @@ -193,10 +165,11 @@
properties.add(scale_visible = propScaleVisible.createProperty(this, true));
properties.add(opposite_scale_visible = propOppositeScaleVisible.createProperty(this, false));
properties.add(show_minor_ticks = propShowMinorTicks.createProperty(this, true));
properties.add(show_scale_labels = propShowScaleLabels.createProperty(this, true));

Check warning on line 168 in app/display/model/src/main/java/org/csstudio/display/builder/model/widgets/TankWidget.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Extract the assignment out of this expression.

See more on https://sonarcloud.io/project/issues?id=ControlSystemStudio_phoebus&issues=AZ1ZMU1Er-X0o8pqMOne&open=AZ1ZMU1Er-X0o8pqMOne&pullRequest=3767
properties.add(perpendicular_tick_labels = propPerpendicularTickLabels.createProperty(this, false));
properties.add(log_scale = propLogscale.createProperty(this, false));
properties.add(horizontal = propHorizontal.createProperty(this, false));
properties.add(border_width_prop = propTankBorderWidth.createProperty(this, 0));
properties.add(border_width_prop = propBorderWidth.createProperty(this, 0));

Check warning on line 172 in app/display/model/src/main/java/org/csstudio/display/builder/model/widgets/TankWidget.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Extract the assignment out of this expression.

See more on https://sonarcloud.io/project/issues?id=ControlSystemStudio_phoebus&issues=AZ1ZMU1Er-X0o8pqMOnf&open=AZ1ZMU1Er-X0o8pqMOnf&pullRequest=3767
}

@Override
Expand Down Expand Up @@ -250,6 +223,12 @@
return show_minor_ticks;
}

/** @return 'show_scale_labels' property */
public WidgetProperty<Boolean> propShowScaleLabels()

Check failure on line 227 in app/display/model/src/main/java/org/csstudio/display/builder/model/widgets/TankWidget.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Rename method "propShowScaleLabels" to prevent any misunderstanding/clash with field "propShowScaleLabels" defined in superclass "org.csstudio.display.builder.model.widgets.ScaledPVWidget".

See more on https://sonarcloud.io/project/issues?id=ControlSystemStudio_phoebus&issues=AZ1ZMU1Er-X0o8pqMOnh&open=AZ1ZMU1Er-X0o8pqMOnh&pullRequest=3767
{
return show_scale_labels;
}

/** @return 'perpendicular_tick_labels' property */
public WidgetProperty<Boolean> propPerpendicularTickLabels()
{
Expand All @@ -275,7 +254,7 @@
}

/** @return 'border_width' property (0 = no border) */
public WidgetProperty<Integer> propBorderWidth()

Check failure on line 257 in app/display/model/src/main/java/org/csstudio/display/builder/model/widgets/TankWidget.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Rename method "propBorderWidth" to prevent any misunderstanding/clash with field "propBorderWidth" defined in superclass "org.csstudio.display.builder.model.widgets.ScaledPVWidget".

See more on https://sonarcloud.io/project/issues?id=ControlSystemStudio_phoebus&issues=AZ1ZMU1Er-X0o8pqMOni&open=AZ1ZMU1Er-X0o8pqMOni&pullRequest=3767
{
return border_width_prop;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,7 @@ WidgetProperties_Bit=Bit
WidgetProperties_BorderAlarmSensitive=Alarm Border
WidgetProperties_BorderColor=Border Color
WidgetProperties_BorderWidth=Border Width
WidgetProperties_InnerPadding=Inner Padding
WidgetProperties_CellColors=Cell Colors
WidgetProperties_Class=Class
WidgetProperties_ColorHiHi=Color HiHi
Expand Down Expand Up @@ -310,6 +311,7 @@ WidgetProperties_ShowLimits=Show Limits
WidgetProperties_ShowLow=Show Low
WidgetProperties_ShowLoLo=Show LoLo
WidgetProperties_ShowMinorTicks=Show minor ticks
WidgetProperties_ShowScaleLabels=Show scale labels
WidgetProperties_PerpendicularTickLabels=Labels perpendicular to axis
WidgetProperties_ShowOK=Show OK
WidgetProperties_ShowScale=Show Scale
Expand Down
Loading
Loading