Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 346799
Collapse All | Expand All

(-)src/org/eclipse/objectteams/otdt/internal/ui/wizards/NewTypeWizardPage.java (+30 lines)
Lines 52-57 Link Here
52
import org.eclipse.jdt.internal.corext.util.JavaModelUtil;
52
import org.eclipse.jdt.internal.corext.util.JavaModelUtil;
53
import org.eclipse.jdt.internal.corext.util.Messages;
53
import org.eclipse.jdt.internal.corext.util.Messages;
54
import org.eclipse.jdt.internal.corext.util.Resources;
54
import org.eclipse.jdt.internal.corext.util.Resources;
55
import org.eclipse.jdt.internal.ui.JavaPlugin;
55
import org.eclipse.jdt.internal.ui.JavaPluginImages;
56
import org.eclipse.jdt.internal.ui.JavaPluginImages;
56
import org.eclipse.jdt.internal.ui.dialogs.StatusInfo;
57
import org.eclipse.jdt.internal.ui.dialogs.StatusInfo;
57
import org.eclipse.jdt.internal.ui.dialogs.StatusUtil;
58
import org.eclipse.jdt.internal.ui.dialogs.StatusUtil;
Lines 76-81 Link Here
76
import org.eclipse.jdt.ui.wizards.NewContainerWizardPage;
77
import org.eclipse.jdt.ui.wizards.NewContainerWizardPage;
77
import org.eclipse.jface.contentassist.SubjectControlContentAssistant;
78
import org.eclipse.jface.contentassist.SubjectControlContentAssistant;
78
import org.eclipse.jface.dialogs.Dialog;
79
import org.eclipse.jface.dialogs.Dialog;
80
import org.eclipse.jface.text.ITextSelection;
79
import org.eclipse.jface.viewers.CellEditor;
81
import org.eclipse.jface.viewers.CellEditor;
80
import org.eclipse.jface.viewers.ICellModifier;
82
import org.eclipse.jface.viewers.ICellModifier;
81
import org.eclipse.jface.viewers.ISelection;
83
import org.eclipse.jface.viewers.ISelection;
Lines 99-104 Link Here
99
import org.eclipse.swt.widgets.Control;
101
import org.eclipse.swt.widgets.Control;
100
import org.eclipse.swt.widgets.Item;
102
import org.eclipse.swt.widgets.Item;
101
import org.eclipse.swt.widgets.Text;
103
import org.eclipse.swt.widgets.Text;
104
import org.eclipse.ui.IWorkbenchWindow;
102
import org.eclipse.ui.contentassist.ContentAssistHandler;
105
import org.eclipse.ui.contentassist.ContentAssistHandler;
103
106
104
/**
107
/**
Lines 779-784 Link Here
779
        initContainerPage(jelem);
782
        initContainerPage(jelem);
780
        initTypePage(jelem);
783
        initTypePage(jelem);
781
    }
784
    }
785
    
786
    @Override
787
    protected IJavaElement getInitialJavaElement(IStructuredSelection structuredSelection) {
788
    	IJavaElement element = super.getInitialJavaElement(structuredSelection);
789
    	if (element.getElementType() == IJavaElement.COMPILATION_UNIT) {
790
    		// try to improve:
791
    		IWorkbenchWindow window= JavaPlugin.getActiveWorkbenchWindow();
792
    		if (window != null) {
793
    			ISelection selection= window.getSelectionService().getSelection();
794
    			if (selection instanceof ITextSelection) {
795
    				ITextSelection textSelection = (ITextSelection) selection;
796
    				try {
797
						IJavaElement selected = ((ICompilationUnit)element).getElementAt(textSelection.getOffset());
798
						if (selected != null) {
799
							selected = selected.getAncestor(IJavaElement.TYPE);
800
							if (selected != null) {
801
								if (((IType)selected).isLocal())
802
									selected = ((IType)selected).getDeclaringType();
803
								return selected;
804
							}
805
						}
806
					} catch (JavaModelException e) { /* nop */ }
807
    			}
808
    		}
809
    	}
810
		return element;
811
    }
782
812
783
	/**
813
	/**
784
	 * Initializes all fields provided by the page with a given selection.
814
	 * Initializes all fields provided by the page with a given selection.

Return to bug 346799