${package_declaration}

import org.eclipse.jface.text.IDocument;
import org.eclipse.jface.text.ITextSelection;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.texteditor.IDocumentProvider;
import org.eclipse.ui.texteditor.ITextEditor;

import com.ibm.xtools.pluglets.Pluglet;

/**
 * Replace the selected text in the active editor with SOMETHING.
 */
public class ${type_name} extends Pluglet {

	public void plugletmain(String[] args) {
		try {
			IWorkbench wb = PlatformUI.getWorkbench();
			IWorkbenchWindow wbw = wb.getActiveWorkbenchWindow();
			IWorkbenchPage wbp = wbw.getActivePage();
			IEditorPart ep = wbp.getActiveEditor();
			if (!(ep instanceof ITextEditor)) return;
			ITextEditor te = (ITextEditor)ep;
			ISelection s = te.getSelectionProvider().getSelection();
			if (!(s instanceof ITextSelection)) return;
			ITextSelection ts = (ITextSelection)s;
			IDocumentProvider dp = te.getDocumentProvider();
			IDocument d = dp.getDocument(ep.getEditorInput());
			d.replace(ts.getOffset(), ts.getLength(), "SOMETHING"); //$NON-NLS-1$
		} catch (Throwable t) {
			printStackTrace(t);
		}
	}

}
