blob: 2385d48633fdb5391157dc10440f03e9bea8e0dd [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2004, 2008 Tasktop Technologies 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:
* Tasktop Technologies - initial API and implementation
*******************************************************************************/
package org.eclipse.mylyn.internal.java.ui.editor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.jdt.ui.text.folding.IJavaFoldingPreferenceBlock;
import org.eclipse.mylyn.commons.core.StatusHandler;
import org.eclipse.mylyn.internal.java.ui.JavaUiBridgePlugin;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label;
/**
* @author Mik Kersten
*/
public class AutoFoldPreferenceBlock implements IJavaFoldingPreferenceBlock {
// XXX never read
// private IPreferenceStore preferences;
// private Map checkBoxes = new HashMap();
// private Text minimumLines;
public AutoFoldPreferenceBlock() {
// preferences = ContextCore.getPreferenceStore(); XXX
// never used
}
public Control createControl(Composite parent) {
try {
Composite inner = new Composite(parent, SWT.NONE);
GridLayout layout = new GridLayout(1, true);
layout.verticalSpacing = 3;
layout.marginWidth = 0;
inner.setLayout(layout);
Label label = new Label(inner, SWT.LEFT);
label.setText(Messages.AutoFoldPreferenceBlock_Elements_of_low_interest_will_be_automatically_folded);
// Label label= new Label(inner, SWT.LEFT);
// label.setText( "collapse.title"); //$NON-NLS-1$
// addCheckBox(inner, "collapse.header", "collapse.header", 0);
// //$NON-NLS-1$
// addCheckBox(inner, "collapse.imports",
// FoldingKeys.COLLAPSE_IMPORTS, 0); //$NON-NLS-1$
// addCheckBox(inner, "collapse.inner_type",
// FoldingKeys.COLLAPSE_INNER_TYPES, 0); //$NON-NLS-1$
// addCheckBox(inner, "collapse.static_initializers",
// FoldingKeys.COLLAPSE_STATICS, 0); //$NON-NLS-1$
//
// addCheckBox(inner, "collapse.comment_blocks",
// FoldingKeys.COLLAPSE_COMMENT_BLOCKS, 0); //$NON-NLS-1$
// addCheckBox(inner, "collapse.javadocs",
// FoldingKeys.COLLAPSE_JAVADOCS, 0); //$NON-NLS-1$
// Label label2 = new Label(inner, SWT.LEFT);
// label2.setText( "minSize.title");
//
// minimumLines = new Text(inner, SWT.BORDER | SWT.SINGLE);
// GridData gd= new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING);
// gd.horizontalSpan= 1;
// gd.grabExcessVerticalSpace= false;
// minimumLines.setLayoutData(gd);
return inner;
} catch (Throwable t) {
StatusHandler.fail(new Status(IStatus.ERROR, JavaUiBridgePlugin.ID_PLUGIN,
"Could not create folding preferences page", t)); //$NON-NLS-1$
}
return null;
}
/*
* (non-Javadoc)
*
* @see org.eclipse.jdt.ui.text.folding.IJavaFoldingPreferenceBlock#initialize()
*/
public void initialize() {
// Iterator it= checkBoxes.keySet().iterator();
// while (it.hasNext()) {
// Button b= (Button) it.next();
// String key= (String) checkBoxes.get(b);
// b.setSelection(preferences.getBoolean(key));
// }
// minimumLines.setText(String.valueOf(preferences.getInt(FoldingKeys.MINIMUM_SIZE)));
}
/*
* (non-Javadoc)
*
* @see org.eclipse.jdt.ui.text.folding.IJavaFoldingPreferenceBlock#performOk()
*/
public void performOk() {
// Iterator it = checkBoxes.keySet().iterator();
// while(it.hasNext()) {
// Button b = (Button) it.next();
// String key = (String) checkBoxes.get(b);
// preferences.setValue(key, b.getSelection());
// }
//
// int minLines = Integer.parseInt(minimumLines.getText());
// preferences.setValue(FoldingKeys.MINIMUM_SIZE, minLines);
}
// private Button addCheckBox(Composite parent, String label, String key,
// int indentation) {
// Button checkBox= new Button(parent, SWT.CHECK);
// checkBox.setText(label);
//
// GridData gd= new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING);
// gd.horizontalIndent= indentation;
// gd.horizontalSpan= 1;
// gd.grabExcessVerticalSpace= false;
// checkBox.setLayoutData(gd);
//
// checkBoxes.put(checkBox, key);
//
// return checkBox;
// }
public void performDefaults() {
initialize();
}
public void dispose() {
// don't care if we are disposed
}
}