package tk.eclipse.plugin.htmleditor.assist;
import java.util.ArrayList;
import java.util.List;
import org.eclipse.jface.preference.IPreferenceStore;
import tk.eclipse.plugin.htmleditor.HTMLPlugin;
/**
* @author Naoki Takezoe
*/
public class CustomAttribute {
private String targetTag;
private String attributeName;
public CustomAttribute(String targetTag, String attributeName){
this.targetTag = targetTag;
this.attributeName = attributeName;
}
public String getAttributeName() {
return attributeName;
}
public void setAttributeName(String attributeName) {
this.attributeName = attributeName;
}
public String getTargetTag() {
return targetTag;
}
public void setTargetTag(String targetTag) {
this.targetTag = targetTag;
}
public static List<CustomAttribute> loadFromPreference(boolean defaults){
IPreferenceStore store = HTMLPlugin.getDefault().getPreferenceStore();
String value = null;
if(defaults){
value = store.getDefaultString(HTMLPlugin.PREF_CUSTOM_ATTRS);
} else {
value = store.getString(HTMLPlugin.PREF_CUSTOM_ATTRS);
}
List<CustomAttribute> list = new ArrayList<CustomAttribute>();
if(value!=null){
String[] values = value.split("\n");
for(int i=0;i<values.length;i++){
String[] split = values[i].split("\t");
if(split.length==2){
list.add(new CustomAttribute(split[0], split[1]));
}
}
}
return list;
}
public static void saveToPreference(List<CustomAttribute> list){
IPreferenceStore store = HTMLPlugin.getDefault().getPreferenceStore();
StringBuffer sb = new StringBuffer();
for(int i=0;i<list.size();i++){
CustomAttribute attrInfo = list.get(i);
sb.append(attrInfo.getTargetTag());
sb.append("\t");
sb.append(attrInfo.getAttributeName());
sb.append("\n");
}
store.setValue(HTMLPlugin.PREF_CUSTOM_ATTRS, sb.toString());
}
}