private PreviewProperty createLegendProperty(Item item, int property, Object value) { PreviewProperty previewProperty = null; Integer itemIndex = item.getData(LegendItem.ITEM_INDEX); String propertyString = LegendModel.getProperty(LegendProperty.LEGEND_PROPERTIES, itemIndex, property); switch (property) { case LegendProperty.LABEL: { previewProperty = PreviewProperty.createProperty( this, propertyString, String.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.label.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.label.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.IS_DISPLAYING: { previewProperty = PreviewProperty.createProperty( this, propertyString, Boolean.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.isDisplaying.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.isDisplaying.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.USER_ORIGIN_X: { previewProperty = PreviewProperty.createProperty( this, propertyString, Float.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.originX.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.originX.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.USER_ORIGIN_Y: { previewProperty = PreviewProperty.createProperty( this, propertyString, Float.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.originY.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.originY.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.WIDTH: { previewProperty = PreviewProperty.createProperty( this, propertyString, Float.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.width.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.width.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.HEIGHT: { previewProperty = PreviewProperty.createProperty( this, propertyString, Float.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.height.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.height.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.BACKGROUND_IS_DISPLAYING: { previewProperty = PreviewProperty.createProperty( this, propertyString, Boolean.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.background.isDisplaying.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.background.isDisplaying.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.BACKGROUND_COLOR: { previewProperty = PreviewProperty.createProperty( this, propertyString, Color.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.background.color.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.background.color.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.BORDER_IS_DISPLAYING: { previewProperty = PreviewProperty.createProperty( this, propertyString, Boolean.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.border.isDisplaying.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.border.isDisplaying.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.BORDER_COLOR: { previewProperty = PreviewProperty.createProperty( this, propertyString, Color.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.border.color.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.border.color.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.BORDER_LINE_THICK: { previewProperty = PreviewProperty.createProperty( this, propertyString, Integer.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.border.lineThick.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.border.lineThick.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.TITLE_IS_DISPLAYING: { previewProperty = PreviewProperty.createProperty( this, propertyString, Boolean.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.title.isDisplaying.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.title.isDisplaying.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.TITLE: { previewProperty = PreviewProperty.createProperty( this, propertyString, String.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.title.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.title.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.TITLE_FONT: { previewProperty = PreviewProperty.createProperty( this, propertyString, Font.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.title.font.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.title.font.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.TITLE_FONT_COLOR: { previewProperty = PreviewProperty.createProperty( this, propertyString, Color.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.title.font.color.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.title.font.color.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.TITLE_ALIGNMENT: { previewProperty = PreviewProperty.createProperty( this, propertyString, Alignment.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.title.alignment.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.title.alignment.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.DESCRIPTION_IS_DISPLAYING: { previewProperty = PreviewProperty.createProperty( this, propertyString, Boolean.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.description.isDisplaying.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.description.isDisplaying.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.DESCRIPTION: { previewProperty = PreviewProperty.createProperty( this, propertyString, String.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.description.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.description.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.DESCRIPTION_FONT: { previewProperty = PreviewProperty.createProperty( this, propertyString, Font.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.description.font.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.description.font.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.DESCRIPTION_FONT_COLOR: { previewProperty = PreviewProperty.createProperty( this, propertyString, Color.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.description.font.color.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.description.font.color.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); break; } case LegendProperty.DESCRIPTION_ALIGNMENT: { previewProperty = PreviewProperty.createProperty( this, propertyString, Alignment.class, NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.description.alignment.displayName"), NbBundle.getMessage( AbstractLegendItemBuilder.class, "LegendItem.property.description.alignment.description"), PreviewProperty.CATEGORY_LEGEND_PROPERTY) .setValue(value); } } return previewProperty; }