/******************************************************************************* * Copyright (c) 2005, 2009 Zend Technologies. * All rights reserved. This program and the accompanying materials * are the copyright of Zend Technologies and is protected under * copyright laws of the United States. * You must not copy, adapt or redistribute this document for * any use. * *******************************************************************************/ package org.eclipse.php.internal.debug.ui.breakpoint; import java.util.Collections; import java.util.HashSet; import java.util.Set; import org.eclipse.debug.ui.actions.IToggleBreakpointsTarget; import org.eclipse.debug.ui.actions.IToggleBreakpointsTargetFactory; import org.eclipse.jface.viewers.ISelection; import org.eclipse.php.internal.ui.editor.PHPStructuredEditor; import org.eclipse.ui.IWorkbenchPart; public class PHPToggleBreakpointsTargetFactory implements IToggleBreakpointsTargetFactory { private static final String ID = "org.eclipse.php.debug.ui.PHPtoggleTargetFactory"; //$NON-NLS-1$ public PHPToggleBreakpointsTargetFactory() { } public IToggleBreakpointsTarget createToggleTarget(String targetID) { return new ScriptLineBreakpointAdapter(); } public String getDefaultToggleTarget(IWorkbenchPart part, ISelection selection) { return ID; } public String getToggleTargetDescription(String targetID) { return Messages.PHPToggleBreakpointsTargetFactory_1; } public String getToggleTargetName(String targetID) { return Messages.PHPToggleBreakpointsTargetFactory_2; } public Set getToggleTargets(IWorkbenchPart part, ISelection selection) { if (getEditor(part) != null) { Set targets = new HashSet(); targets.add(ID); return targets; } return Collections.EMPTY_SET; } private PHPStructuredEditor getEditor(IWorkbenchPart part) { if (part instanceof PHPStructuredEditor) { return (PHPStructuredEditor) part; } return null; } }