X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse.debug.ui/src/net/sourceforge/phpdt/internal/debug/ui/actions/ManageBreakpointActionDelegate.java b/net.sourceforge.phpeclipse.debug.ui/src/net/sourceforge/phpdt/internal/debug/ui/actions/ManageBreakpointActionDelegate.java deleted file mode 100644 index 979daa8..0000000 --- a/net.sourceforge.phpeclipse.debug.ui/src/net/sourceforge/phpdt/internal/debug/ui/actions/ManageBreakpointActionDelegate.java +++ /dev/null @@ -1,256 +0,0 @@ -package net.sourceforge.phpdt.internal.debug.ui.actions; -import net.sourceforge.phpdt.debug.core.PHPDebugModel; -import org.eclipse.debug.core.DebugPlugin; -import net.sourceforge.phpdt.internal.debug.core.breakpoints.PHPLineBreakpoint; -import org.eclipse.jface.action.IAction; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.ui.IWorkbenchWindow; -import org.eclipse.ui.IWorkbenchWindowActionDelegate; -import org.eclipse.ui.texteditor.IEditorStatusLine; -import org.eclipse.ui.texteditor.ITextEditor; -import org.eclipse.core.resources.IFile; -import org.eclipse.ui.IEditorPart; -import org.eclipse.jface.text.IDocument; -import org.eclipse.ui.IWorkbenchPage; -import org.eclipse.ui.IPartListener; -import org.eclipse.jface.text.ITextSelection; -import org.eclipse.ui.IFileEditorInput; -import org.eclipse.jface.viewers.ISelectionProvider; -import org.eclipse.ui.IEditorInput; -import org.eclipse.ui.IWorkbenchPart; -import org.eclipse.core.runtime.CoreException; - -import net.sourceforge.phpdt.internal.debug.ui.PHPDebugUiPlugin; - -/* (non-Javadoc) - * @see IWorkbenchWindowActionDelegate - */ -public class ManageBreakpointActionDelegate implements IWorkbenchWindowActionDelegate, IPartListener { - - protected boolean fInitialized= false; - private ITextEditor fTextEditor= null; - private IAction fAction= null; - private IFile fFile = null; - private IWorkbenchWindow fWorkbenchWindow= null; - - - /* (non-Javadoc) - * @see org.eclipse.ui.IPartListener#partActivated(IWorkbenchPart) - */ - public void partActivated( IWorkbenchPart part ) - { - if ( part instanceof ITextEditor ) - { - setTextEditor( (ITextEditor)part ); - } - } - - /* (non-Javadoc) - * @see org.eclipse.ui.IPartListener#partBroughtToTop(IWorkbenchPart) - */ - public void partBroughtToTop( IWorkbenchPart part ) - { - } - - /* (non-Javadoc) - * @see org.eclipse.ui.IPartListener#partClosed(IWorkbenchPart) - */ - public void partClosed( IWorkbenchPart part ) - { - if ( part == getTextEditor() ) - { - setTextEditor( null ); - if ( getAction() != null ) - { - getAction().setEnabled( false ); - } - } - } - - /* (non-Javadoc) - * @see org.eclipse.ui.IPartListener#partDeactivated(IWorkbenchPart) - */ - public void partDeactivated( IWorkbenchPart part ) - { - } - - /* (non-Javadoc) - * @see org.eclipse.ui.IPartListener#partOpened(IWorkbenchPart) - */ - public void partOpened( IWorkbenchPart part ) - { - if ( part instanceof ITextEditor ) - { - if ( getTextEditor() == null ) - { - setTextEditor( (ITextEditor)part ); - } - } - } - - - /** - * Manages a breakpoint. - */ - protected void manageBreakpoint(IEditorInput editorInput) { - ISelectionProvider sp= getTextEditor().getSelectionProvider(); - if (sp == null || getFile() == null) { - report("ManageBreakpointActionDelegate.No_Breakpoint"); //$NON-NLS-1$ - return; - } - report(null); - ISelection selection= sp.getSelection(); - if ( selection instanceof ITextSelection ) { - if ( getFile() == null ) - return; - IDocument document = getTextEditor().getDocumentProvider().getDocument( editorInput ); -// BreakpointLocationVerifier bv = new BreakpointLocationVerifier(); -// int lineNumber = bv.getValidLineBreakpointLocation( document, ((ITextSelection)selection).getStartLine()); - int lineNumber = ((ITextSelection)selection).getStartLine() +1; - if ( lineNumber > -1 ) { - - try { - PHPLineBreakpoint breakpoint=PHPDebugModel.lineBreakpointExists(lineNumber); - if (breakpoint==null) - PHPDebugModel.createLineBreakpoint(getFile(), lineNumber, 0, true, null); - else - DebugPlugin.getDefault().getBreakpointManager().removeBreakpoint( breakpoint, true ); - - } catch( CoreException ce ) { - PHPDebugUiPlugin.errorDialog( "Cannot add breakpoint", ce ); - } - } - } - } - - public ManageBreakpointActionDelegate() { - } - - /* (non-Javadoc) - * @see IWorkbenchWindowActionDelegate#run - */ - public void run(IAction action) { - if ( getTextEditor() != null ) { - update(); - manageBreakpoint( getTextEditor().getEditorInput() ); - } - } - - /* (non-Javadoc) - * @see IWorkbenchWindowActionDelegate#selectionChanged - */ - public void selectionChanged(IAction action, ISelection selection) { - if (!fInitialized) { - initialize(action); - } - } - - protected void update( ISelection selection ) - { - setEnabledState( getTextEditor() ); - } - - protected void initialize(IAction action) { - setAction( action ); - if (getWorkbenchWindow() != null) { - IWorkbenchPage page= getWorkbenchWindow().getActivePage(); - if (page != null) { - IEditorPart part= page.getActiveEditor(); - if (part instanceof ITextEditor) { - setTextEditor((ITextEditor)part); - update( getTextEditor().getSelectionProvider().getSelection() ); - } - } - } - fInitialized= true; - } - - /* (non-Javadoc) - * @see IWorkbenchWindowActionDelegate#dispose - */ - public void dispose() { - getWorkbenchWindow().getPartService().removePartListener( this ); - } - - /* (non-Javadoc) - * @see IWorkbenchWindowActionDelegate#init - */ - public void init(IWorkbenchWindow window) { - setWorkbenchWindow( window ); - window.getPartService().addPartListener( this ); - } - - protected ITextEditor getTextEditor() { - return fTextEditor; - } - - - protected IAction getAction() { - return fAction; - } - - protected void setAction(IAction action) { - fAction = action; - } - - protected IWorkbenchWindow getWorkbenchWindow() { - return fWorkbenchWindow; - } - - protected void setWorkbenchWindow(IWorkbenchWindow workbenchWindow) { - fWorkbenchWindow = workbenchWindow; - } - - protected IFile getFile() - { - return fFile; - } - - protected void setFile( IFile file ) - { - fFile = file; - } - - protected void setTextEditor(ITextEditor editor) { - fTextEditor = editor; - if ( fTextEditor != null ) { - IEditorInput input = fTextEditor.getEditorInput(); - setFile( ( input != null && input instanceof IFileEditorInput ) ? ((IFileEditorInput)input).getFile() : null ); - } - setEnabledState(editor); - } - protected void setEnabledState(ITextEditor editor) { - if ( getAction() != null ) { - getAction().setEnabled( editor != null ); - } - } - - protected void update() { - IAction action= getAction(); - if (action != null) { - if (getTextEditor() != null) { - breakpointExists(getTextEditor().getEditorInput()); - } - } - } - - protected boolean breakpointExists(IEditorInput editorInput){ - return false; - } - - protected void report(String message) { - if (getTextEditor() != null) { - IEditorStatusLine statusLine= (IEditorStatusLine) getTextEditor().getAdapter(IEditorStatusLine.class); - if (statusLine != null) { - if (message != null) { - statusLine.setMessage(true, message, null); - } else { - statusLine.setMessage(true, null, null); - } - } - } - if (message != null && PHPDebugUiPlugin.getActiveWorkbenchShell() != null) { - PHPDebugUiPlugin.getActiveWorkbenchShell().getDisplay().beep(); - } - } -}