diff --git a/platform/platform-api/src/com/intellij/ui/AbstractCollectionComboBoxModel.java b/platform/platform-api/src/com/intellij/ui/AbstractCollectionComboBoxModel.java deleted file mode 100644 index 1fce5a333a96..000000000000 --- a/platform/platform-api/src/com/intellij/ui/AbstractCollectionComboBoxModel.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright 2000-2015 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.intellij.ui; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import javax.swing.*; -import java.util.List; - -/** - * @author traff - */ -public abstract class AbstractCollectionComboBoxModel extends CollectionListModel implements ComboBoxModel { - protected T mySelection; - - public AbstractCollectionComboBoxModel(@Nullable T selection) { - mySelection = selection; - } - - public AbstractCollectionComboBoxModel(@Nullable T selection, @NotNull List items) { - super(items, true); - - mySelection = selection; - } - - @Override - public void setSelectedItem(@Nullable Object item) { - if (mySelection != item) { - //noinspection unchecked - mySelection = (T)item; - update(); - } - } - - @Override - @Nullable - public Object getSelectedItem() { - return mySelection; - } - - @Nullable - public T getSelected() { - return mySelection; - } - - public void update() { - super.fireContentsChanged(this, -1, -1); - } - - public boolean contains(T item) { - return getElementIndex(item) != -1; - } -} \ No newline at end of file diff --git a/platform/platform-api/src/com/intellij/ui/CollectionComboBoxModel.java b/platform/platform-api/src/com/intellij/ui/CollectionComboBoxModel.java index f9306bd63f28..7ce6bf74097a 100644 --- a/platform/platform-api/src/com/intellij/ui/CollectionComboBoxModel.java +++ b/platform/platform-api/src/com/intellij/ui/CollectionComboBoxModel.java @@ -15,24 +15,60 @@ */ package com.intellij.ui; +import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import javax.swing.*; import java.util.List; /** - * @author yole + * @author traff */ -public class CollectionComboBoxModel extends AbstractCollectionComboBoxModel { - public CollectionComboBoxModel(@NotNull List items, @Nullable T selection) { - super(selection, items); +public class CollectionComboBoxModel extends CollectionListModel implements ComboBoxModel { + protected T mySelection; + + public CollectionComboBoxModel() { + super(); + + mySelection = null; } public CollectionComboBoxModel(@NotNull List items) { - super(items.isEmpty() ? null : items.get(0), items); + this(items, ContainerUtil.getFirstItem(items)); } - public CollectionComboBoxModel() { - super(null); + public CollectionComboBoxModel(@NotNull List items, @Nullable T selection) { + super(items, true); + + mySelection = selection; } -} + + @Override + public void setSelectedItem(@Nullable Object item) { + if (mySelection != item) { + //noinspection unchecked + mySelection = (T)item; + update(); + } + } + + @Override + @Nullable + public Object getSelectedItem() { + return mySelection; + } + + @Nullable + public T getSelected() { + return mySelection; + } + + public void update() { + super.fireContentsChanged(this, -1, -1); + } + + public boolean contains(T item) { + return getElementIndex(item) != -1; + } +} \ No newline at end of file diff --git a/platform/platform-api/src/com/intellij/ui/MutableCollectionComboBoxModel.java b/platform/platform-api/src/com/intellij/ui/MutableCollectionComboBoxModel.java index 16a874ad6229..a190ee609cb2 100644 --- a/platform/platform-api/src/com/intellij/ui/MutableCollectionComboBoxModel.java +++ b/platform/platform-api/src/com/intellij/ui/MutableCollectionComboBoxModel.java @@ -15,7 +15,6 @@ */ package com.intellij.ui; -import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -24,17 +23,17 @@ import java.util.List; /** * @author traff */ -public class MutableCollectionComboBoxModel extends AbstractCollectionComboBoxModel { +public class MutableCollectionComboBoxModel extends CollectionComboBoxModel { public MutableCollectionComboBoxModel(@NotNull List items) { - this(items, ContainerUtil.getFirstItem(items)); + super(items); } public MutableCollectionComboBoxModel() { - super(null); + super(); } public MutableCollectionComboBoxModel(@NotNull List items, @Nullable T selection) { - super(selection, items); + super(items, selection); } public void update(@NotNull List items) {