| /******************************************************************************* |
| * Copyright (c) 2008 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.jst.jsp.ui.internal.preferences.ui; |
| |
| import org.eclipse.jface.preference.IPreferenceStore; |
| import org.eclipse.jst.jsp.ui.internal.JSPUIMessages; |
| import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin; |
| import org.eclipse.jst.jsp.ui.internal.preferences.JSPUIPreferenceNames; |
| import org.eclipse.swt.layout.GridData; |
| import org.eclipse.swt.widgets.Button; |
| import org.eclipse.swt.widgets.Composite; |
| import org.eclipse.swt.widgets.Control; |
| import org.eclipse.swt.widgets.Group; |
| import org.eclipse.wst.sse.ui.internal.preferences.ui.AbstractPreferencePage; |
| |
| public class JSPTypingPreferencePage extends AbstractPreferencePage { |
| |
| private Button fCloseBraces; |
| private Button fCloseScriptlets; |
| private Button fCloseComments; |
| private Button fCloseStrings; |
| private Button fCloseBrackets; |
| |
| protected Control createContents(Composite parent) { |
| Composite composite = super.createComposite(parent, 1); |
| |
| createAutoComplete(composite); |
| createJavaGroup(composite); |
| |
| setSize(composite); |
| loadPreferences(); |
| |
| return composite; |
| } |
| |
| private void createAutoComplete(Composite parent) { |
| Group group = createGroup(parent, 2); |
| |
| group.setText(JSPUIMessages.JSPTyping_Auto_Complete); |
| |
| fCloseBraces = createCheckBox(group, JSPUIMessages.JSPTyping_Complete_Braces); |
| ((GridData) fCloseBraces.getLayoutData()).horizontalSpan = 2; |
| |
| fCloseComments = createCheckBox(group, JSPUIMessages.JSPTyping_Complete_Comments); |
| ((GridData) fCloseComments.getLayoutData()).horizontalSpan = 2; |
| |
| fCloseScriptlets = createCheckBox(group, JSPUIMessages.JSPTyping_Complete_Scriptlets); |
| ((GridData) fCloseScriptlets.getLayoutData()).horizontalSpan = 2; |
| } |
| |
| private void createJavaGroup(Composite parent) { |
| Group group = createGroup(parent, 2); |
| |
| group.setText(JSPUIMessages.JSPTyping_Java_Code); |
| |
| fCloseStrings = createCheckBox(group, JSPUIMessages.JSPTyping_Close_Strings); |
| ((GridData) fCloseStrings.getLayoutData()).horizontalSpan = 2; |
| |
| fCloseBrackets = createCheckBox(group, JSPUIMessages.JSPTyping_Close_Brackets); |
| ((GridData) fCloseBrackets.getLayoutData()).horizontalSpan = 2; |
| } |
| |
| public boolean performOk() { |
| boolean result = super.performOk(); |
| |
| JSPUIPlugin.getDefault().savePluginPreferences(); |
| |
| return result; |
| } |
| |
| protected void initializeValues() { |
| initCheckbox(fCloseBraces, JSPUIPreferenceNames.TYPING_COMPLETE_EL_BRACES); |
| initCheckbox(fCloseScriptlets, JSPUIPreferenceNames.TYPING_COMPLETE_SCRIPTLETS); |
| initCheckbox(fCloseComments, JSPUIPreferenceNames.TYPING_COMPLETE_COMMENTS); |
| initCheckbox(fCloseStrings, JSPUIPreferenceNames.TYPING_CLOSE_STRINGS); |
| initCheckbox(fCloseBrackets, JSPUIPreferenceNames.TYPING_CLOSE_BRACKETS); |
| } |
| |
| protected void performDefaults() { |
| defaultCheckbox(fCloseBraces, JSPUIPreferenceNames.TYPING_COMPLETE_EL_BRACES); |
| defaultCheckbox(fCloseScriptlets, JSPUIPreferenceNames.TYPING_COMPLETE_SCRIPTLETS); |
| defaultCheckbox(fCloseComments, JSPUIPreferenceNames.TYPING_COMPLETE_COMMENTS); |
| defaultCheckbox(fCloseStrings, JSPUIPreferenceNames.TYPING_CLOSE_STRINGS); |
| defaultCheckbox(fCloseBrackets, JSPUIPreferenceNames.TYPING_CLOSE_BRACKETS); |
| } |
| |
| protected void storeValues() { |
| getPreferenceStore().setValue(JSPUIPreferenceNames.TYPING_COMPLETE_EL_BRACES, (fCloseBraces != null) ? fCloseBraces.getSelection() : false); |
| getPreferenceStore().setValue(JSPUIPreferenceNames.TYPING_COMPLETE_SCRIPTLETS, (fCloseScriptlets != null) ? fCloseScriptlets.getSelection() : false); |
| getPreferenceStore().setValue(JSPUIPreferenceNames.TYPING_COMPLETE_COMMENTS, (fCloseComments != null) ? fCloseComments.getSelection() : false); |
| getPreferenceStore().setValue(JSPUIPreferenceNames.TYPING_CLOSE_STRINGS, (fCloseStrings != null) ? fCloseStrings.getSelection() : false); |
| getPreferenceStore().setValue(JSPUIPreferenceNames.TYPING_CLOSE_BRACKETS, (fCloseBrackets != null) ? fCloseBrackets.getSelection() : false); |
| } |
| |
| protected IPreferenceStore doGetPreferenceStore() { |
| return JSPUIPlugin.getDefault().getPreferenceStore(); |
| } |
| |
| } |