blob: cd9006c9fc33207fb8a20e1a322aed45604e7ae3 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2004 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
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.wst.css.core.internal.provisional.preferences;
import org.eclipse.core.runtime.Preferences;
import org.eclipse.wst.css.core.internal.CSSCorePlugin;
import org.eclipse.wst.css.core.internal.preferences.CSSCorePreferenceNames;
import org.eclipse.wst.css.core.internal.provisional.document.ICSSModel;
/**
* @deprecated just access preferences directly
*/
public class CSSPreferenceHelper {
/**
*
*/
public synchronized static CSSPreferenceHelper getInstance() {
if (fInstance == null) {
fInstance = new CSSPreferenceHelper();
}
return fInstance;
}
/**
*
*/
public String getBetweenValueString() {
return getPreferences().getString(CSSCorePreferenceNames.FORMAT_BETWEEN_VALUE);
}
/**
*
*/
public String getIndentString() {
StringBuffer indent = new StringBuffer();
Preferences preferences = getPreferences();
if (preferences != null) {
char indentChar = ' ';
String indentCharPref = preferences.getString(CSSCorePreferenceNames.INDENTATION_CHAR);
if (CSSCorePreferenceNames.TAB.equals(indentCharPref)) {
indentChar = '\t';
}
int indentationWidth = preferences.getInt(CSSCorePreferenceNames.INDENTATION_SIZE);
for (int i = 0; i < indentationWidth; i++) {
indent.append(indentChar);
}
}
return indent.toString();
}
/**
*
*/
public int getMaxLineWidth() {
Preferences prefs = getPreferences();
return prefs.getInt(CSSCorePreferenceNames.LINE_WIDTH);
}
/**
*
*/
public String getQuoteString(ICSSModel model) {
// nakamori_TODO css pref transition
return getPreferences().getString(CSSCorePreferenceNames.FORMAT_QUOTE);
}
/**
*
*/
public int getSpacesPostDelimiter() {
return getPreferences().getInt(CSSCorePreferenceNames.FORMAT_PROP_POST_DELIM);
}
/**
*
*/
public int getSpacesPreDelimiter() {
return getPreferences().getInt(CSSCorePreferenceNames.FORMAT_PROP_PRE_DELIM);
}
/**
*
*/
public boolean isIdentUpperCase() {
if (getPreferences().getInt(CSSCorePreferenceNames.CASE_IDENTIFIER) == CSSCorePreferenceNames.UPPER)
return true;
return false;
}
/**
*
*/
public boolean isNewLineOnOpenBrace() {
return getPreferences().getBoolean(CSSCorePreferenceNames.WRAPPING_NEWLINE_ON_OPEN_BRACE);
}
/**
*
*/
public boolean isOnePropertyPerLine() {
return getPreferences().getBoolean(CSSCorePreferenceNames.WRAPPING_ONE_PER_LINE);
}
/**
*
*/
public boolean isProhibitWrapOnAttr() {
return getPreferences().getBoolean(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR);
}
/**
*
*/
public boolean isPropNameUpperCase() {
if (getPreferences().getInt(CSSCorePreferenceNames.CASE_PROPERTY_NAME) == CSSCorePreferenceNames.UPPER)
return true;
return false;
}
/**
*
*/
public boolean isPropValueUpperCase() {
if (getPreferences().getInt(CSSCorePreferenceNames.CASE_PROPERTY_VALUE) == CSSCorePreferenceNames.UPPER)
return true;
return false;
}
/**
*
*/
public boolean isQuoteInURI() {
return getPreferences().getBoolean(CSSCorePreferenceNames.FORMAT_QUOTE_IN_URI);
}
/**
*
*/
protected void setBetweenValueString(String newBetweenValueString) {
getPreferences().setValue(CSSCorePreferenceNames.FORMAT_BETWEEN_VALUE, newBetweenValueString);
}
/**
*
*/
protected void setIdentUpperCase(boolean newIdentUpperCase) {
int theCase = CSSCorePreferenceNames.LOWER;
if (newIdentUpperCase)
theCase = CSSCorePreferenceNames.UPPER;
getPreferences().setValue(CSSCorePreferenceNames.CASE_IDENTIFIER, theCase);
}
/**
*
*/
protected void setOnePropertyPerLine(boolean newOnePropertyPerLine) {
getPreferences().setValue(CSSCorePreferenceNames.WRAPPING_ONE_PER_LINE, newOnePropertyPerLine);
}
/**
*
*/
protected void setProhibitWrapOnAttr(boolean newProhibitWrapOnAttr) {
getPreferences().setValue(CSSCorePreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR, newProhibitWrapOnAttr);
}
/**
*
*/
protected void setPropNameUpperCase(boolean newPropNameUpperCase) {
int theCase = CSSCorePreferenceNames.LOWER;
if (newPropNameUpperCase)
theCase = CSSCorePreferenceNames.UPPER;
getPreferences().setValue(CSSCorePreferenceNames.CASE_PROPERTY_NAME, theCase);
}
/**
*
*/
protected void setPropValueUpperCase(boolean newPropValueUpperCase) {
int theCase = CSSCorePreferenceNames.LOWER;
if (newPropValueUpperCase)
theCase = CSSCorePreferenceNames.UPPER;
getPreferences().setValue(CSSCorePreferenceNames.CASE_PROPERTY_VALUE, theCase);
}
/**
*
*/
public void setQuoteString(String quote) {
getPreferences().setValue(CSSCorePreferenceNames.FORMAT_QUOTE, quote);
}
/**
*
*/
public void setSpacesPostDelimiter(int num) {
getPreferences().setValue(CSSCorePreferenceNames.FORMAT_PROP_POST_DELIM, num);
}
/**
*
*/
public void setSpacesPreDelimiter(int num) {
getPreferences().setValue(CSSCorePreferenceNames.FORMAT_PROP_PRE_DELIM, num);
}
private Preferences getPreferences() {
CSSCorePlugin cssModelPlugin = CSSCorePlugin.getDefault();
return cssModelPlugin.getPluginPreferences();
}
private CSSPreferenceHelper() {
super();
}
private static CSSPreferenceHelper fInstance = null;
}