[237143] Source > Cleanup Document... for CSS can lower-case ids and classnames
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategy.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategy.java
index eb6d86e..d1551ce 100644
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategy.java
+++ b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategy.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
+ * Copyright (c) 2004, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -42,6 +42,10 @@
*/
short getSelectorTagCase();
+ short getClassSelectorCase();
+
+ short getIdSelectorCase();
+
/**
*
* @return boolean
@@ -95,4 +99,8 @@
* short
*/
void setSelectorTagCase(short selectorTagCase);
+
+ void setClassSelectorCase(short classSelectorCase);
+
+ void setIdSelectorCase(short idSelectorCase);
}
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategyImpl.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategyImpl.java
index 5b190f4..9c01902 100644
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategyImpl.java
+++ b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/cleanup/CSSCleanupStrategyImpl.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
+ * Copyright (c) 2004, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -26,6 +26,8 @@
protected short fSelectorTagCase = UPPER;
protected boolean fQuoteValues = true;
protected boolean fFormatSource = true;
+ protected short fClassCase = ASIS;
+ protected short fIdCase = ASIS;
/**
* CSSCleanupStrategyImpl constructor comment.
@@ -86,6 +88,8 @@
fPropNameCase = getCleanupCaseValue(prefs.getInt(CSSCorePreferenceNames.CLEANUP_CASE_PROPERTY_NAME));
fPropValueCase = getCleanupCaseValue(prefs.getInt(CSSCorePreferenceNames.CLEANUP_CASE_PROPERTY_VALUE));
fSelectorTagCase = getCleanupCaseValue(prefs.getInt(CSSCorePreferenceNames.CLEANUP_CASE_SELECTOR));
+ fIdCase = getCleanupCaseValue(prefs.getInt(CSSCorePreferenceNames.CLEANUP_CASE_ID_SELECTOR));
+ fClassCase = getCleanupCaseValue(prefs.getInt(CSSCorePreferenceNames.CLEANUP_CASE_CLASS_SELECTOR));
fQuoteValues = prefs.getBoolean(CSSCorePreferenceNames.QUOTE_ATTR_VALUES);
fFormatSource = prefs.getBoolean(CSSCorePreferenceNames.FORMAT_SOURCE);
}
@@ -183,8 +187,26 @@
CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.CLEANUP_CASE_PROPERTY_NAME, fPropNameCase);
CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.CLEANUP_CASE_PROPERTY_VALUE, fPropValueCase);
CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.CLEANUP_CASE_SELECTOR, fSelectorTagCase);
+ CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.CLEANUP_CASE_ID_SELECTOR, fIdCase);
+ CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.CLEANUP_CASE_CLASS_SELECTOR, fClassCase);
CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.QUOTE_ATTR_VALUES, fQuoteValues);
CSSCorePlugin.getDefault().getPluginPreferences().setValue(CSSCorePreferenceNames.FORMAT_SOURCE, fFormatSource);
CSSCorePlugin.getDefault().savePluginPreferences();
}
+
+ public short getClassSelectorCase() {
+ return fClassCase;
+ }
+
+ public short getIdSelectorCase() {
+ return fIdCase;
+ }
+
+ public void setClassSelectorCase(short classSelectorCase) {
+ fClassCase = classSelectorCase;
+ }
+
+ public void setIdSelectorCase(short idSelectorCase) {
+ fIdCase = idSelectorCase;
+ }
}
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/DeclContainerFormatter.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/DeclContainerFormatter.java
index ea79996..d8b4e2a 100644
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/DeclContainerFormatter.java
+++ b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/formatter/DeclContainerFormatter.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2004, 2008 IBM Corporation and others.
+ * Copyright (c) 2004, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -48,14 +48,24 @@
text = region.getText();
String type = region.getType();
- if (type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_NAME || type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_VALUE || type == CSSRegionContexts.CSS_SELECTOR_CLASS || type == CSSRegionContexts.CSS_SELECTOR_ELEMENT_NAME || type == CSSRegionContexts.CSS_SELECTOR_ID || type == CSSRegionContexts.CSS_SELECTOR_PSEUDO) {
- short selCase = stgy.getSelectorTagCase();
- if (selCase == org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy.UPPER) {
- return text.toUpperCase();
- }
- else if (selCase == org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy.LOWER) {
- return text.toLowerCase();
- }
+ short selCase = -1;
+ if (type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_NAME || type == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_VALUE || type == CSSRegionContexts.CSS_SELECTOR_ELEMENT_NAME || type == CSSRegionContexts.CSS_SELECTOR_PSEUDO) {
+ selCase = stgy.getSelectorTagCase();
+ }
+ else if (type == CSSRegionContexts.CSS_SELECTOR_CLASS) {
+ selCase = stgy.getClassSelectorCase();
+ }
+ else if (type == CSSRegionContexts.CSS_SELECTOR_ID) {
+ selCase = stgy.getIdSelectorCase();
+ }
+
+ if (selCase == org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy.UPPER) {
+ return text.toUpperCase();
+ }
+ else if (selCase == org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy.LOWER) {
+ return text.toLowerCase();
+ }
+ else if (selCase == org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy.ASIS) {
return text;
}
diff --git a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/preferences/CSSCorePreferenceNames.java b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/preferences/CSSCorePreferenceNames.java
index d6fdf06..bce17d8 100644
--- a/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/preferences/CSSCorePreferenceNames.java
+++ b/bundles/org.eclipse.wst.css.core/src/org/eclipse/wst/css/core/internal/preferences/CSSCorePreferenceNames.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2009 IBM Corporation and others.
+ * Copyright (c) 2005, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -38,6 +38,8 @@
public static final String CLEANUP_CASE_PROPERTY_NAME = "cleanupPropNameCase"; //$NON-NLS-1$
public static final String CLEANUP_CASE_PROPERTY_VALUE = "cleanupPropValueCase"; //$NON-NLS-1$
public static final String CLEANUP_CASE_SELECTOR = "cleanupSelectorCase"; //$NON-NLS-1$
+ public static final String CLEANUP_CASE_ID_SELECTOR = "cleanupIdSelectorCase"; //$NON-NLS-1$
+ public static final String CLEANUP_CASE_CLASS_SELECTOR = "cleanupClassSelectorCase"; //$NON-NLS-1$
/**
* The default extension to use when none is specified in the New CSS File
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIMessages.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIMessages.java
index 56040a5..692fed1 100644
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIMessages.java
+++ b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIMessages.java
@@ -35,6 +35,7 @@
return fResourceBundle;
}
+ public static String ID_Selector_Case__UI_;
public static String INFO_Not_Categorized_1;
public static String PrefsLabel_WrappingWithoutAttr;
public static String PrefsLabel_WrappingInsertLineBreak;
@@ -83,6 +84,7 @@
public static String Title_InvalidValue;
public static String Message_InvalidValue;
public static String FormatMenu_label;
+ public static String Class_Selector_Case__UI_;
public static String CleanupDocument_label; // resource bundle
public static String CleanupDocument_tooltip; // resource bundle
public static String CleanupDocument_description; // resource bundle
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPluginResources.properties b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPluginResources.properties
index d165328..238c540 100644
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPluginResources.properties
+++ b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPluginResources.properties
@@ -9,6 +9,7 @@
# IBM Corporation - initial API and implementation
###############################################################################
+ID_Selector_Case__UI_=ID Selector case:
INFO_Not_Categorized_1=Not Categorized
## CSS Preferences -- source ##
@@ -71,6 +72,7 @@
Message_InvalidValue=Invalid property value.
# Copied from sse.ui
FormatMenu_label=F&ormat
+Class_Selector_Case__UI_=Class Selector case:
CleanupDocument_label=C&leanup Document...
CleanupDocument_tooltip=Cleanup Document
CleanupDocument_description=Cleanup Document
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/edit/ui/CleanupDialogCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/edit/ui/CleanupDialogCSS.java
index 7c60678..1bab4fd 100644
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/edit/ui/CleanupDialogCSS.java
+++ b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/edit/ui/CleanupDialogCSS.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
+ * Copyright (c) 2004, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -41,6 +41,12 @@
protected Button fRadioButtonSelectorTagCaseAsis;
protected Button fRadioButtonSelectorTagCaseLower;
protected Button fRadioButtonSelectorTagCaseUpper;
+ protected Button fRadioButtonSelectorIdCaseAsis;
+ protected Button fRadioButtonSelectorIdCaseLower;
+ protected Button fRadioButtonSelectorIdCaseUpper;
+ protected Button fRadioButtonSelectorClassCaseAsis;
+ protected Button fRadioButtonSelectorClassCaseLower;
+ protected Button fRadioButtonSelectorClassCaseUpper;
protected Button fCheckBoxQuoteValues;
protected Button fCheckBoxFormatSource;
@@ -158,6 +164,36 @@
fRadioButtonSelectorTagCaseUpper = new Button(selectorTagCase, SWT.RADIO);
fRadioButtonSelectorTagCaseUpper.setText(CSSUIMessages.Upper_UI_);
fRadioButtonSelectorTagCaseUpper.addSelectionListener(this);
+
+ Group selectorIdCase = new Group(panel, SWT.NULL);
+ selectorIdCase.setText(CSSUIMessages.ID_Selector_Case__UI_);
+ hLayout = new GridLayout();
+ hLayout.numColumns = 3;
+ selectorIdCase.setLayout(hLayout);
+ fRadioButtonSelectorIdCaseAsis = new Button(selectorIdCase, SWT.RADIO);
+ fRadioButtonSelectorIdCaseAsis.setText(CSSUIMessages.As_is_UI_);
+ fRadioButtonSelectorIdCaseAsis.addSelectionListener(this);
+ fRadioButtonSelectorIdCaseLower = new Button(selectorIdCase, SWT.RADIO);
+ fRadioButtonSelectorIdCaseLower.setText(CSSUIMessages.Lower_UI_);
+ fRadioButtonSelectorIdCaseLower.addSelectionListener(this);
+ fRadioButtonSelectorIdCaseUpper = new Button(selectorIdCase, SWT.RADIO);
+ fRadioButtonSelectorIdCaseUpper.setText(CSSUIMessages.Upper_UI_);
+ fRadioButtonSelectorIdCaseUpper.addSelectionListener(this);
+
+ Group selectorClassCase = new Group(panel, SWT.NULL);
+ selectorClassCase.setText(CSSUIMessages.Class_Selector_Case__UI_);
+ hLayout = new GridLayout();
+ hLayout.numColumns = 3;
+ selectorClassCase.setLayout(hLayout);
+ fRadioButtonSelectorClassCaseAsis = new Button(selectorClassCase, SWT.RADIO);
+ fRadioButtonSelectorClassCaseAsis.setText(CSSUIMessages.As_is_UI_);
+ fRadioButtonSelectorClassCaseAsis.addSelectionListener(this);
+ fRadioButtonSelectorClassCaseLower = new Button(selectorClassCase, SWT.RADIO);
+ fRadioButtonSelectorClassCaseLower.setText(CSSUIMessages.Lower_UI_);
+ fRadioButtonSelectorClassCaseLower.addSelectionListener(this);
+ fRadioButtonSelectorClassCaseUpper = new Button(selectorClassCase, SWT.RADIO);
+ fRadioButtonSelectorClassCaseUpper.setText(CSSUIMessages.Upper_UI_);
+ fRadioButtonSelectorClassCaseUpper.addSelectionListener(this);
}
// Quote attribute values
@@ -236,6 +272,24 @@
fRadioButtonSelectorTagCaseAsis.setSelection(true);
}
+ if (fRadioButtonSelectorIdCaseAsis != null) {
+ if (stgy.getIdSelectorCase() == CSSCleanupStrategy.UPPER)
+ fRadioButtonSelectorIdCaseUpper.setSelection(true);
+ else if (stgy.getIdSelectorCase() == CSSCleanupStrategy.LOWER)
+ fRadioButtonSelectorIdCaseLower.setSelection(true);
+ else
+ fRadioButtonSelectorIdCaseAsis.setSelection(true);
+ }
+
+ if (fRadioButtonSelectorClassCaseAsis != null) {
+ if (stgy.getClassSelectorCase() == CSSCleanupStrategy.UPPER)
+ fRadioButtonSelectorClassCaseUpper.setSelection(true);
+ else if (stgy.getClassSelectorCase() == CSSCleanupStrategy.LOWER)
+ fRadioButtonSelectorClassCaseLower.setSelection(true);
+ else
+ fRadioButtonSelectorClassCaseAsis.setSelection(true);
+ }
+
if (fCheckBoxQuoteValues != null)
fCheckBoxQuoteValues.setSelection(stgy.isQuoteValues());
@@ -296,6 +350,24 @@
stgy.setSelectorTagCase(CSSCleanupStrategy.ASIS);
}
+ if (fRadioButtonSelectorIdCaseAsis != null) {
+ if (fRadioButtonSelectorIdCaseUpper.getSelection())
+ stgy.setIdSelectorCase(CSSCleanupStrategy.UPPER);
+ else if (fRadioButtonSelectorIdCaseLower.getSelection())
+ stgy.setIdSelectorCase(CSSCleanupStrategy.LOWER);
+ else
+ stgy.setIdSelectorCase(CSSCleanupStrategy.ASIS);
+ }
+
+ if (fRadioButtonSelectorClassCaseAsis != null) {
+ if (fRadioButtonSelectorClassCaseUpper.getSelection())
+ stgy.setClassSelectorCase(CSSCleanupStrategy.UPPER);
+ else if (fRadioButtonSelectorClassCaseLower.getSelection())
+ stgy.setClassSelectorCase(CSSCleanupStrategy.LOWER);
+ else
+ stgy.setClassSelectorCase(CSSCleanupStrategy.ASIS);
+ }
+
if (fCheckBoxQuoteValues != null)
stgy.setQuoteValues(fCheckBoxQuoteValues.getSelection());
@@ -313,6 +385,8 @@
|| ((fRadioButtonPropNameCaseLower != null && fRadioButtonPropNameCaseLower.getSelection()) || (fRadioButtonPropNameCaseUpper != null && fRadioButtonPropNameCaseUpper.getSelection()))
|| ((fRadioButtonPropValueCaseLower != null && fRadioButtonPropValueCaseLower.getSelection()) || (fRadioButtonPropValueCaseUpper != null && fRadioButtonPropValueCaseUpper.getSelection()))
|| ((fRadioButtonSelectorTagCaseLower != null && fRadioButtonSelectorTagCaseLower.getSelection()) || (fRadioButtonSelectorTagCaseUpper != null && fRadioButtonSelectorTagCaseUpper.getSelection()))
+ || ((fRadioButtonSelectorIdCaseLower != null && fRadioButtonSelectorIdCaseLower.getSelection()) || (fRadioButtonSelectorIdCaseUpper != null && fRadioButtonSelectorIdCaseUpper.getSelection()))
+ || ((fRadioButtonSelectorClassCaseLower != null && fRadioButtonSelectorClassCaseLower.getSelection()) || (fRadioButtonSelectorClassCaseUpper != null && fRadioButtonSelectorClassCaseUpper.getSelection()))
;
getButton(OK).setEnabled(okEnabled);