/* ******************************************************************************
* Copyright (c) 2006-2012 XMind Ltd. and others.
*
* This file is a part of XMind 3. XMind releases 3 and
* above are dual-licensed under the Eclipse Public License (EPL),
* which is available at http://www.eclipse.org/legal/epl-v10.html
* and the GNU Lesser General Public License (LGPL),
* which is available at http://www.gnu.org/licenses/lgpl.html
* See http://www.xmind.net/license.html for details.
*
* Contributors:
* XMind Ltd. - initial API and implementation
*******************************************************************************/
package org.xmind.ui.internal.properties;
import org.eclipse.jface.resource.ImageDescriptor;
import org.xmind.ui.mindmap.IMindMapImages;
import org.xmind.ui.mindmap.MindMapUI;
import org.xmind.ui.style.Styles;
public enum LinePattern {
Solid(Styles.LINE_PATTERN_SOLID, PropertyMessages.LinePattern_Solid,
IMindMapImages.PATTERN_SOLID), //
Dash(Styles.LINE_PATTERN_DASH, PropertyMessages.LinePattern_Dash,
IMindMapImages.PATTERN_DASH), //
Dot(Styles.LINE_PATTERN_DOT, PropertyMessages.LinePattern_Dot,
IMindMapImages.PATTERN_DOT), //
DashDot(Styles.LINE_PATTERN_DASH_DOT, PropertyMessages.LinePattern_DashDot,
IMindMapImages.PATTERN_DASHDOT), //
DashDotDot(Styles.LINE_PATTERN_DASH_DOT_DOT,
PropertyMessages.LinePattern_DashDotDot,
IMindMapImages.PATTERN_DASHDOTDOT);
private String value;
private String name;
private String iconName;
private LinePattern(String value, String name, String iconName) {
this.value = value;
this.name = name;
this.iconName = iconName;
}
public String getValue() {
return value;
}
public String getName() {
return name;
}
public ImageDescriptor getIcon() {
return MindMapUI.getImages().get(iconName);
}
public static String[] getValues() {
LinePattern[] instances = values();
String[] values = new String[instances.length];
for (int i = 0; i < instances.length; i++) {
values[i] = instances[i].getValue();
}
return values;
}
public static LinePattern findByValue(String value) {
if (value == null)
return null;
for (LinePattern linePattern : values()) {
if (linePattern.getValue().equals(value))
return linePattern;
}
return null;
}
}