Improved support for comment folding
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / internal / ui / text / folding / DefaultJavaFoldingPreferenceBlock.java
index 84b49a7..2ed9f83 100644 (file)
@@ -32,42 +32,53 @@ import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Control;
 import org.eclipse.swt.widgets.Label;
 
-
 /**
  * Java default folding preferences.
- * 
+ *
  * @since 3.0
  */
 public class DefaultJavaFoldingPreferenceBlock implements IJavaFoldingPreferenceBlock {
 
        private IPreferenceStore fStore;
+
        private OverlayPreferenceStore fOverlayStore;
+
        private OverlayKey[] fKeys;
-       private Map fCheckBoxes= new HashMap();
-       private SelectionListener fCheckBoxListener= new SelectionListener() {
+
+       private Map fCheckBoxes = new HashMap();
+
+       private SelectionListener fCheckBoxListener = new SelectionListener() {
                public void widgetDefaultSelected(SelectionEvent e) {
                }
+
                public void widgetSelected(SelectionEvent e) {
-                       Button button= (Button) e.widget;
+                       Button button = (Button) e.widget;
                        fOverlayStore.setValue((String) fCheckBoxes.get(button), button.getSelection());
                }
        };
-       
 
        public DefaultJavaFoldingPreferenceBlock() {
-               fStore= PHPeclipsePlugin.getDefault().getPreferenceStore();
-               fKeys= createKeys();
-               fOverlayStore= new OverlayPreferenceStore(fStore, fKeys);
+               fStore = PHPeclipsePlugin.getDefault().getPreferenceStore();
+               fKeys = createKeys();
+               fOverlayStore = new OverlayPreferenceStore(fStore, fKeys);
        }
-       
+
        private OverlayKey[] createKeys() {
-               ArrayList overlayKeys= new ArrayList();
+               ArrayList overlayKeys = new ArrayList();
+
+               overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN,
+                               PreferenceConstants.EDITOR_FOLDING_JAVADOC));
+               overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN,
+                               PreferenceConstants.EDITOR_FOLDING_HEADERS));
+               // overlayKeys.add(new
+               // OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN,
+               // PreferenceConstants.EDITOR_FOLDING_INNERTYPES));
+               overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN,
+                               PreferenceConstants.EDITOR_FOLDING_METHODS));
+               // overlayKeys.add(new
+               // OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN,
+               // PreferenceConstants.EDITOR_FOLDING_IMPORTS));
 
-               overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, PreferenceConstants.EDITOR_FOLDING_JAVADOC));
-               overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, PreferenceConstants.EDITOR_FOLDING_INNERTYPES));
-               overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, PreferenceConstants.EDITOR_FOLDING_METHODS));
-               overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, PreferenceConstants.EDITOR_FOLDING_IMPORTS));
-               
                return (OverlayKey[]) overlayKeys.toArray(new OverlayKey[overlayKeys.size()]);
        }
 
@@ -77,64 +88,71 @@ public class DefaultJavaFoldingPreferenceBlock implements IJavaFoldingPreference
        public Control createControl(Composite composite) {
                fOverlayStore.load();
                fOverlayStore.start();
-               
-               Composite inner= new Composite(composite, SWT.NONE);
-               GridLayout layout= new GridLayout(1, true);
-               layout.verticalSpacing= 3;
-               layout.marginWidth= 0;
+
+               Composite inner = new Composite(composite, 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 label = new Label(inner, SWT.LEFT);
                label.setText(FoldingMessages.getString("DefaultJavaFoldingPreferenceBlock.title")); //$NON-NLS-1$
-               
-               addCheckBox(inner, FoldingMessages.getString("DefaultJavaFoldingPreferenceBlock.comments"), PreferenceConstants.EDITOR_FOLDING_JAVADOC, 0); //$NON-NLS-1$
-               addCheckBox(inner, FoldingMessages.getString("DefaultJavaFoldingPreferenceBlock.innerTypes"), PreferenceConstants.EDITOR_FOLDING_INNERTYPES, 0); //$NON-NLS-1$
-               addCheckBox(inner, FoldingMessages.getString("DefaultJavaFoldingPreferenceBlock.methods"), PreferenceConstants.EDITOR_FOLDING_METHODS, 0); //$NON-NLS-1$
-               addCheckBox(inner, FoldingMessages.getString("DefaultJavaFoldingPreferenceBlock.imports"), PreferenceConstants.EDITOR_FOLDING_IMPORTS, 0); //$NON-NLS-1$
-               
+
+               addCheckBox(inner,
+                               FoldingMessages.getString("DefaultJavaFoldingPreferenceBlock.comments"), PreferenceConstants.EDITOR_FOLDING_JAVADOC, 0); //$NON-NLS-1$
+               addCheckBox(inner,
+                               FoldingMessages.getString("DefaultJavaFoldingPreferenceBlock.headers"), PreferenceConstants.EDITOR_FOLDING_HEADERS, 0);//$NON-NLS-1$
+               // addCheckBox(inner,
+               // FoldingMessages.getString("DefaultJavaFoldingPreferenceBlock.innerTypes"),
+               // PreferenceConstants.EDITOR_FOLDING_INNERTYPES, 0); //$NON-NLS-1$
+               addCheckBox(inner,
+                               FoldingMessages.getString("DefaultJavaFoldingPreferenceBlock.methods"), PreferenceConstants.EDITOR_FOLDING_METHODS, 0); //$NON-NLS-1$
+               // addCheckBox(inner,
+               // FoldingMessages.getString("DefaultJavaFoldingPreferenceBlock.imports"),
+               // PreferenceConstants.EDITOR_FOLDING_IMPORTS, 0); //$NON-NLS-1$
+
                return inner;
        }
-       
-       private Button addCheckBox(Composite parent, String label, String key, int indentation) {               
-               Button checkBox= new Button(parent, SWT.CHECK);
+
+       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;
+
+               GridData gd = new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING);
+               gd.horizontalIndent = indentation;
+               gd.horizontalSpan = 1;
+               gd.grabExcessVerticalSpace = false;
                checkBox.setLayoutData(gd);
                checkBox.addSelectionListener(fCheckBoxListener);
-               
+
                fCheckBoxes.put(checkBox, key);
-               
+
                return checkBox;
        }
-       
+
        private void initializeFields() {
-               Iterator it= fCheckBoxes.keySet().iterator();
+               Iterator it = fCheckBoxes.keySet().iterator();
                while (it.hasNext()) {
-                       Button b= (Button) it.next();
-                       String key= (String) fCheckBoxes.get(b);
+                       Button b = (Button) it.next();
+                       String key = (String) fCheckBoxes.get(b);
                        b.setSelection(fOverlayStore.getBoolean(key));
                }
        }
-       
+
        /*
         * @see net.sourceforge.phpdt.internal.ui.text.folding.AbstractJavaFoldingPreferences#performOk()
         */
        public void performOk() {
                fOverlayStore.propagate();
        }
-       
-       
+
        /*
         * @see net.sourceforge.phpdt.internal.ui.text.folding.AbstractJavaFoldingPreferences#initialize()
         */
        public void initialize() {
                initializeFields();
        }
-       
+
        /*
         * @see net.sourceforge.phpdt.internal.ui.text.folding.AbstractJavaFoldingPreferences#performDefaults()
         */
@@ -142,7 +160,7 @@ public class DefaultJavaFoldingPreferenceBlock implements IJavaFoldingPreference
                fOverlayStore.loadDefaults();
                initializeFields();
        }
-       
+
        /*
         * @see net.sourceforge.phpdt.internal.ui.text.folding.AbstractJavaFoldingPreferences#dispose()
         */