blob: ec9e20a176eb33023f7ebe1b2e4a2b0d1ad81593 [file] [log] [blame]
/*****************************************************************
* Copyright (c) 2009 Texas Instruments and others
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Patrick Chuong (Texas Instruments) - Initial API and implementation (Bug 238956)
*****************************************************************/
package org.eclipse.debug.internal.ui.viewers.update;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.debug.core.model.IBreakpoint;
import org.eclipse.debug.internal.ui.breakpoints.provisional.IBreakpointContainer;
import org.eclipse.debug.internal.ui.viewers.model.provisional.ICheckboxModelProxy;
import org.eclipse.debug.internal.ui.viewers.model.provisional.IPresentationContext;
import org.eclipse.debug.internal.ui.viewers.provisional.AbstractModelProxy;
import org.eclipse.jface.viewers.TreePath;
/**
* Breakpoint container model proxy.
*
* @since 3.6
*/
public class BreakpointContainerProxy extends AbstractModelProxy implements ICheckboxModelProxy {
/**
* The breakpoint container
*/
private IBreakpointContainer fContainer;
/**
* Constructor.
*
* @param container the breakpoint container.
*/
public BreakpointContainerProxy(IBreakpointContainer container) {
fContainer = container;
}
@Override
public boolean setChecked(IPresentationContext context, Object viewerInput, TreePath path, boolean checked) {
boolean atLeastOne = false;
IBreakpoint[] breakpoints = fContainer.getBreakpoints();
for (int i = 0; i < breakpoints.length; ++i) {
try {
breakpoints[i].setEnabled(checked);
atLeastOne = true;
} catch (CoreException e) {}
}
return atLeastOne;
}
}