From 2959577d9295f645e6635f372fce407e560c1d9d Mon Sep 17 00:00:00 2001 From: nik Date: Fri, 20 Nov 2009 18:52:12 +0300 Subject: [PATCH] tabs in artifact editor reordered --- .../packaging/ui/ArtifactPropertiesEditor.java | 6 +++--- .../artifacts/ArtifactPropertiesEditors.java | 16 +++++++++++++++- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/java/compiler/openapi/src/com/intellij/packaging/ui/ArtifactPropertiesEditor.java b/java/compiler/openapi/src/com/intellij/packaging/ui/ArtifactPropertiesEditor.java index f70f7dbdf3db..220b0791fef3 100644 --- a/java/compiler/openapi/src/com/intellij/packaging/ui/ArtifactPropertiesEditor.java +++ b/java/compiler/openapi/src/com/intellij/packaging/ui/ArtifactPropertiesEditor.java @@ -21,9 +21,9 @@ import com.intellij.openapi.options.UnnamedConfigurable; * @author nik */ public abstract class ArtifactPropertiesEditor implements UnnamedConfigurable { - protected static final String VALIDATION_TAB = "Validation"; - protected static final String POST_PROCESSING_TAB = "Post-processing"; - protected static final String PRE_PROCESSING_TAB = "Pre-processing"; + public static final String VALIDATION_TAB = "Validation"; + public static final String POST_PROCESSING_TAB = "Post-processing"; + public static final String PRE_PROCESSING_TAB = "Pre-processing"; public abstract String getTabName(); diff --git a/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/artifacts/ArtifactPropertiesEditors.java b/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/artifacts/ArtifactPropertiesEditors.java index 5c265eb31790..cafa0c2289fa 100644 --- a/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/artifacts/ArtifactPropertiesEditors.java +++ b/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/artifacts/ArtifactPropertiesEditors.java @@ -32,6 +32,9 @@ import java.util.*; * @author nik */ public class ArtifactPropertiesEditors { + private static final List STANDARD_TABS_ORDER = Arrays.asList( + ArtifactPropertiesEditor.VALIDATION_TAB, ArtifactPropertiesEditor.PRE_PROCESSING_TAB, ArtifactPropertiesEditor.POST_PROCESSING_TAB + ); private Map myMainPanels; private final ArtifactEditorContext myContext; private final Artifact myOriginalArtifact; @@ -65,7 +68,18 @@ public class ArtifactPropertiesEditors { public void addTabs(TabbedPaneWrapper tabbedPane) { List sortedTabs = new ArrayList(myMainPanels.keySet()); - Collections.sort(sortedTabs); + Collections.sort(sortedTabs, new Comparator() { + public int compare(String o1, String o2) { + int i1 = STANDARD_TABS_ORDER.indexOf(o1); + if (i1 == -1) i1 = STANDARD_TABS_ORDER.size(); + int i2 = STANDARD_TABS_ORDER.indexOf(o2); + if (i2 == -1) i2 = STANDARD_TABS_ORDER.size(); + if (i1 != i2) { + return i1 - i2; + } + return o1.compareTo(o2); + } + }); for (String tab : sortedTabs) { tabbedPane.addTab(tab, myMainPanels.get(tab)); }