From bdf214f098e9e4e18da70c26264fa89537f6a4e0 Mon Sep 17 00:00:00 2001 From: Alexander Zolotov Date: Wed, 24 Apr 2013 19:09:58 +0400 Subject: [PATCH] WEB-7606 Settings are not saved in emmet plugin --- .../emmet/CssEditPrefixesListPanel.java | 12 ++++++---- .../options/emmet/EmmetConfigurable.java | 2 +- .../options/emmet/EmmetOptions.java | 22 +++++++++---------- 3 files changed, 20 insertions(+), 16 deletions(-) diff --git a/xml/impl/src/com/intellij/application/options/emmet/CssEditPrefixesListPanel.java b/xml/impl/src/com/intellij/application/options/emmet/CssEditPrefixesListPanel.java index 5cb55b2f0c43..765c00e4d051 100644 --- a/xml/impl/src/com/intellij/application/options/emmet/CssEditPrefixesListPanel.java +++ b/xml/impl/src/com/intellij/application/options/emmet/CssEditPrefixesListPanel.java @@ -28,6 +28,10 @@ import javax.swing.table.TableCellEditor; import javax.swing.table.TableCellRenderer; import java.util.ArrayList; import java.util.List; +import java.util.Set; + +import static com.google.common.collect.Lists.newArrayList; +import static com.google.common.collect.Sets.newHashSet; /** * User: zolotov @@ -66,12 +70,12 @@ public class CssEditPrefixesListPanel { myPrefixesTableView.setEnabled(value); } - public void setState(List prefixInfos) { - myPrefixesModel.setItems(prefixInfos); + public void setState(Set prefixInfos) { + myPrefixesModel.setItems(newArrayList(prefixInfos)); } - public List getState() { - return myPrefixesModel.getItems(); + public Set getState() { + return newHashSet(myPrefixesModel.getItems()); } public JPanel createMainComponent() { diff --git a/xml/impl/src/com/intellij/application/options/emmet/EmmetConfigurable.java b/xml/impl/src/com/intellij/application/options/emmet/EmmetConfigurable.java index a702df6fde61..9dbfc55456fd 100644 --- a/xml/impl/src/com/intellij/application/options/emmet/EmmetConfigurable.java +++ b/xml/impl/src/com/intellij/application/options/emmet/EmmetConfigurable.java @@ -137,7 +137,7 @@ public class EmmetConfigurable implements SearchableConfigurable, Disposable, Co public void apply() throws ConfigurationException { EmmetOptions emmetOptions = EmmetOptions.getInstance(); emmetOptions.setEmmetEnabled(myEnableEmmetJBCheckBox.isSelected()); - emmetOptions.setEnableBemFilterByDefault(myEnableBEMFilterJBCheckBox.isSelected()); + emmetOptions.setBemFilterEnabledByDefault(myEnableBEMFilterJBCheckBox.isSelected()); emmetOptions.setEmmetExpandShortcut(getSelectedEmmetExpandShortcut()); emmetOptions.setAutoInsertCssPrefixedEnabled(myAutoInsertCssVendorJBCheckBox.isSelected()); emmetOptions.setFuzzySearchEnabled(myEnabledFuzzySearchJBCheckBox.isSelected()); diff --git a/xml/impl/src/com/intellij/application/options/emmet/EmmetOptions.java b/xml/impl/src/com/intellij/application/options/emmet/EmmetOptions.java index dd005841293c..614e17a736a7 100644 --- a/xml/impl/src/com/intellij/application/options/emmet/EmmetOptions.java +++ b/xml/impl/src/com/intellij/application/options/emmet/EmmetOptions.java @@ -15,6 +15,7 @@ */ package com.intellij.application.options.emmet; +import com.google.common.collect.Sets; import com.intellij.application.options.editor.WebEditorOptions; import com.intellij.openapi.application.PathManager; import com.intellij.openapi.components.*; @@ -29,10 +30,10 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.io.File; -import java.util.List; +import java.util.Collection; import java.util.Map; +import java.util.Set; -import static com.google.common.collect.Lists.newLinkedList; import static com.google.common.collect.Maps.newHashMap; import static com.google.common.io.Resources.getResource; @@ -48,7 +49,7 @@ import static com.google.common.io.Resources.getResource; )} ) public class EmmetOptions implements PersistentStateComponent, ExportableComponent { - private boolean myEnableBemFilterByDefault = false; + private boolean myBemFilterEnabledByDefault = false; private boolean myEmmetEnabled = WebEditorOptions.getInstance().isZenCodingEnabled(); private int myEmmetExpandShortcut = WebEditorOptions.getInstance().getZenCodingExpandShortcut(); private boolean myFuzzySearchEnabled = true; @@ -56,7 +57,7 @@ public class EmmetOptions implements PersistentStateComponent, Exp @Nullable private Map prefixes = null; - public void setPrefixInfo(List prefixInfos) { + public void setPrefixInfo(Collection prefixInfos) { prefixes = newHashMap(); for (CssPrefixInfo state : prefixInfos) { prefixes.put(state.getPropertyName(), state.toIntegerValue()); @@ -67,8 +68,8 @@ public class EmmetOptions implements PersistentStateComponent, Exp return CssPrefixInfo.fromIntegerValue(propertyName, getPrefixes().get(propertyName)); } - public List getAllPrefixInfo() { - List result = newLinkedList(); + public Set getAllPrefixInfo() { + Set result = Sets.newHashSetWithExpectedSize(getPrefixes().size()); for (Map.Entry entry : getPrefixes().entrySet()) { result.add(CssPrefixInfo.fromIntegerValue(entry.getKey(), entry.getValue())); } @@ -76,11 +77,11 @@ public class EmmetOptions implements PersistentStateComponent, Exp } public boolean isBemFilterEnabledByDefault() { - return myEnableBemFilterByDefault; + return myBemFilterEnabledByDefault; } - public void setEnableBemFilterByDefault(boolean enableBemFilterByDefault) { - myEnableBemFilterByDefault = enableBemFilterByDefault; + public void setBemFilterEnabledByDefault(boolean enableBemFilterByDefault) { + myBemFilterEnabledByDefault = enableBemFilterByDefault; } public void setEmmetExpandShortcut(int emmetExpandShortcut) { @@ -141,7 +142,6 @@ public class EmmetOptions implements PersistentStateComponent, Exp return ServiceManager.getService(EmmetOptions.class); } - @SuppressWarnings("UnusedDeclaration") @NotNull public Map getPrefixes() { if (prefixes == null) { @@ -155,7 +155,7 @@ public class EmmetOptions implements PersistentStateComponent, Exp this.prefixes = prefixes; } - public static Map loadDefaultPrefixes() { + public Map loadDefaultPrefixes() { Map result = newHashMap(); try { Document document = JDOMUtil.loadDocument(getResource(EmmetOptions.class, "emmet_default_options.xml"));