Bug 88563 [code manipulation] Offer implicit functions as override/implement options
A class that implements Cloneable may need to implement clone(). A class that implements Serializable may need to implement readObject/writeObject. These special methods could usefully be offered as Source->Override/Implement Methods options.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/OverrideMethodDialog.java
import org.eclipse.jdt.internal.corext.util.Messages;
import org.eclipse.jdt.internal.ui.IJavaHelpContextIds;
import org.eclipse.jdt.internal.ui.JavaPlugin;
import org.eclipse.jdt.internal.ui.JavaPluginImages;
import org.eclipse.jdt.internal.ui.JavaUIMessages;
import org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor;
import org.eclipse.jdt.internal.ui.util.ViewerPane;
import org.eclipse.jdt.internal.ui.viewsupport.BindingLabelProvider;
public class OverrideMethodDialog extends SourceActionDialog {
	private class OverrideFlatTreeAction extends Action {
		private boolean fToggle;
		public OverrideFlatTreeAction() {
			setToolTipText(JavaUIMessages.OverrideMethodDialog_groupMethodsByTypes); 
			JavaPluginImages.setLocalImageDescriptors(this, "impl_co.gif"); 
			fToggle= getOverrideContentProvider().isShowTypes();
			setChecked(fToggle);
		}
		private OverrideMethodContentProvider getOverrideContentProvider() {
			return (OverrideMethodContentProvider) getContentProvider();
		}
		public void run() {
			
			Object[] elementList= getOverrideContentProvider().getViewer().getCheckedElements();
			fToggle= !fToggle;
			setChecked(fToggle);
			getOverrideContentProvider().setShowTypes(fToggle);
			getOverrideContentProvider().getViewer().setCheckedElements(elementList);
		}
	}
	private static class OverrideMethodContentProvider implements ITreeContentProvider {