Search in sources :

Example 1 with ComplexDataProperty

use of org.csstudio.opibuilder.properties.ComplexDataProperty in project yamcs-studio by yamcs.

the class AbstractWidgetModel method configureBaseProperties.

protected void configureBaseProperties() {
    addProperty(new IntegerProperty(PROP_WIDTH, "Width", WidgetPropertyCategory.Position, 100, 1, 10000));
    addProperty(new IntegerProperty(PROP_HEIGHT, "Height", WidgetPropertyCategory.Position, 100, 1, 10000));
    addProperty(new IntegerProperty(PROP_XPOS, "X", WidgetPropertyCategory.Position, 0));
    addProperty(new IntegerProperty(PROP_YPOS, "Y", WidgetPropertyCategory.Position, 0));
    addProperty(new ColorProperty(PROP_COLOR_BACKGROUND, "Background Color", WidgetPropertyCategory.Display, new RGB(240, 240, 240)));
    addProperty(new ColorProperty(PROP_COLOR_FOREGROUND, "Foreground Color", WidgetPropertyCategory.Display, new RGB(192, 192, 192)));
    addProperty(new FontProperty(PROP_FONT, "Font", WidgetPropertyCategory.Display, MediaService.DEFAULT_FONT));
    addProperty(new ColorProperty(PROP_BORDER_COLOR, "Border Color", WidgetPropertyCategory.Border, new RGB(0, 128, 255)));
    addProperty(new ComboProperty(PROP_BORDER_STYLE, "Border Style", WidgetPropertyCategory.Border, BorderStyle.stringValues(), 0));
    addProperty(new IntegerProperty(PROP_BORDER_WIDTH, "Border Width", WidgetPropertyCategory.Border, 1, 0, 1000));
    addProperty(new BooleanProperty(PROP_ENABLED, "Enabled", WidgetPropertyCategory.Behavior, true));
    addProperty(new BooleanProperty(PROP_VISIBLE, "Visible", WidgetPropertyCategory.Behavior, true));
    addProperty(new ScriptProperty(PROP_SCRIPTS, "Scripts", WidgetPropertyCategory.Behavior));
    addProperty(new ActionsProperty(PROP_ACTIONS, "Actions", WidgetPropertyCategory.Behavior));
    addProperty(new StringProperty(PROP_TOOLTIP, "Tooltip", WidgetPropertyCategory.Display, "", true));
    addProperty(new RulesProperty(PROP_RULES, "Rules", WidgetPropertyCategory.Behavior));
    addProperty(new ComplexDataProperty(PROP_SCALE_OPTIONS, "Scale Options", WidgetPropertyCategory.Position, new WidgetScaleData(this, true, true, false), "Set Scale Options"));
    addProperty(new StringProperty(PROP_WIDGET_UID, "Widget UID", WidgetPropertyCategory.Basic, new UID().toString()));
    // update the WUID saved in connections without triggering anything
    getProperty(PROP_WIDGET_UID).addPropertyChangeListener(new PropertyChangeListener() {

        @Override
        public void propertyChange(PropertyChangeEvent evt) {
            for (ConnectionModel connection : sourceConnections) {
                connection.setPropertyValue(ConnectionModel.PROP_SRC_WUID, evt.getNewValue(), false);
            }
            for (ConnectionModel connection : targetConnections) {
                connection.setPropertyValue(ConnectionModel.PROP_TGT_WUID, evt.getNewValue(), false);
            }
        }
    });
    setPropertyVisibleAndSavable(PROP_WIDGET_UID, false, true);
    WidgetDescriptor descriptor = WidgetsService.getInstance().getWidgetDescriptor(getTypeID());
    String name;
    name = descriptor == null ? getTypeID().substring(getTypeID().lastIndexOf(".") + 1) : descriptor.getName();
    addProperty(new StringProperty(PROP_NAME, "Name", WidgetPropertyCategory.Basic, name));
    addProperty(new UnchangableStringProperty(PROP_WIDGET_TYPE, "Widget Type", WidgetPropertyCategory.Basic, name));
    addProperty(new UnsavableListProperty(PROP_SRC_CONNECTIONS, "Source Connections", WidgetPropertyCategory.Display, sourceConnections));
    setPropertyVisible(PROP_SRC_CONNECTIONS, false);
    addProperty(new UnsavableListProperty(PROP_TGT_CONNECTIONS, "Target Connections", WidgetPropertyCategory.Display, targetConnections));
    setPropertyVisible(PROP_TGT_CONNECTIONS, false);
}
Also used : ComboProperty(org.csstudio.opibuilder.properties.ComboProperty) IntegerProperty(org.csstudio.opibuilder.properties.IntegerProperty) ComplexDataProperty(org.csstudio.opibuilder.properties.ComplexDataProperty) PropertyChangeEvent(java.beans.PropertyChangeEvent) PropertyChangeListener(java.beans.PropertyChangeListener) BooleanProperty(org.csstudio.opibuilder.properties.BooleanProperty) ActionsProperty(org.csstudio.opibuilder.properties.ActionsProperty) UnchangableStringProperty(org.csstudio.opibuilder.properties.UnchangableStringProperty) ScriptProperty(org.csstudio.opibuilder.properties.ScriptProperty) StringProperty(org.csstudio.opibuilder.properties.StringProperty) UnchangableStringProperty(org.csstudio.opibuilder.properties.UnchangableStringProperty) WidgetDescriptor(org.csstudio.opibuilder.util.WidgetDescriptor) RGB(org.eclipse.swt.graphics.RGB) RulesProperty(org.csstudio.opibuilder.properties.RulesProperty) FontProperty(org.csstudio.opibuilder.properties.FontProperty) UID(java.rmi.server.UID) UnsavableListProperty(org.csstudio.opibuilder.properties.UnsavableListProperty) ColorProperty(org.csstudio.opibuilder.properties.ColorProperty) WidgetScaleData(org.csstudio.opibuilder.datadefinition.WidgetScaleData)

Example 2 with ComplexDataProperty

use of org.csstudio.opibuilder.properties.ComplexDataProperty in project yamcs-studio by yamcs.

the class DisplayModel method configureProperties.

@Override
protected void configureProperties() {
    addProperty(new IntegerProperty(PROP_GRID_SPACE, "Grid Space", WidgetPropertyCategory.Display, 6, 1, 1000));
    addProperty(new BooleanProperty(PROP_SHOW_GRID, "Show Grid", WidgetPropertyCategory.Display, true));
    addProperty(new BooleanProperty(PROP_SHOW_RULER, "Show Ruler", WidgetPropertyCategory.Display, true));
    addProperty(new BooleanProperty(PROP_SNAP_GEOMETRY, "Snap to Geometry", WidgetPropertyCategory.Display, true));
    addProperty(new BooleanProperty(PROP_SHOW_EDIT_RANGE, "Show Edit Range", WidgetPropertyCategory.Display, true));
    addProperty(new BooleanProperty(PROP_AUTO_ZOOM_TO_FIT_ALL, "Auto Zoom to Fit All", WidgetPropertyCategory.Behavior, false));
    addProperty(new ComplexDataProperty(PROP_AUTO_SCALE_WIDGETS, "Auto Scale Widgets (at Runtime)", WidgetPropertyCategory.Behavior, new DisplayScaleData(this), "Scale Widgets as windows resizes"));
    addProperty(new BooleanProperty(PROP_SHOW_CLOSE_BUTTON, "Show Close Button", WidgetPropertyCategory.Display, true));
    Version version = new Version(0, 0, 0);
    addProperty(new VersionProperty(PROP_BOY_VERSION, "BOY Version", WidgetPropertyCategory.Basic, version.toString()));
    addProperty(new DoubleProperty(PROP_FRAME_RATE, "Frame Rate", WidgetPropertyCategory.Display, -1.0));
    setPropertyVisible(PROP_BORDER_COLOR, false);
    setPropertyVisible(PROP_BORDER_STYLE, false);
    setPropertyVisible(PROP_BORDER_WIDTH, false);
    setPropertyVisible(PROP_VISIBLE, false);
    setPropertyVisible(PROP_ENABLED, false);
    setPropertyVisible(PROP_TOOLTIP, false);
    setPropertyVisible(PROP_ACTIONS, false);
    setPropertyVisible(PROP_FONT, false);
    setPropertyVisibleAndSavable(PROP_FRAME_RATE, false, false);
    setPropertyVisibleAndSavable(PROP_BOY_VERSION, false, true);
    addProperty(new ActionsProperty(PROP_ACTIONS, "Actions", WidgetPropertyCategory.Behavior, false));
    setPropertyDescription(PROP_COLOR_FOREGROUND, "Grid Color");
    // $NON-NLS-1$
    setPropertyValue(PROP_NAME, "");
    removeProperty(PROP_SCALE_OPTIONS);
}
Also used : IntegerProperty(org.csstudio.opibuilder.properties.IntegerProperty) ComplexDataProperty(org.csstudio.opibuilder.properties.ComplexDataProperty) Version(org.osgi.framework.Version) BooleanProperty(org.csstudio.opibuilder.properties.BooleanProperty) ActionsProperty(org.csstudio.opibuilder.properties.ActionsProperty) VersionProperty(org.csstudio.opibuilder.properties.VersionProperty) DoubleProperty(org.csstudio.opibuilder.properties.DoubleProperty) DisplayScaleData(org.csstudio.opibuilder.datadefinition.DisplayScaleData)

Aggregations

ActionsProperty (org.csstudio.opibuilder.properties.ActionsProperty)2 BooleanProperty (org.csstudio.opibuilder.properties.BooleanProperty)2 ComplexDataProperty (org.csstudio.opibuilder.properties.ComplexDataProperty)2 IntegerProperty (org.csstudio.opibuilder.properties.IntegerProperty)2 PropertyChangeEvent (java.beans.PropertyChangeEvent)1 PropertyChangeListener (java.beans.PropertyChangeListener)1 UID (java.rmi.server.UID)1 DisplayScaleData (org.csstudio.opibuilder.datadefinition.DisplayScaleData)1 WidgetScaleData (org.csstudio.opibuilder.datadefinition.WidgetScaleData)1 ColorProperty (org.csstudio.opibuilder.properties.ColorProperty)1 ComboProperty (org.csstudio.opibuilder.properties.ComboProperty)1 DoubleProperty (org.csstudio.opibuilder.properties.DoubleProperty)1 FontProperty (org.csstudio.opibuilder.properties.FontProperty)1 RulesProperty (org.csstudio.opibuilder.properties.RulesProperty)1 ScriptProperty (org.csstudio.opibuilder.properties.ScriptProperty)1 StringProperty (org.csstudio.opibuilder.properties.StringProperty)1 UnchangableStringProperty (org.csstudio.opibuilder.properties.UnchangableStringProperty)1 UnsavableListProperty (org.csstudio.opibuilder.properties.UnsavableListProperty)1 VersionProperty (org.csstudio.opibuilder.properties.VersionProperty)1 WidgetDescriptor (org.csstudio.opibuilder.util.WidgetDescriptor)1