/******************************************************************************* * Copyright (c) 2014 Jonas Hugo, Markus Wahl. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Jonas Hugo <Jonas.Hugo@jeppesen.com>, * Markus Wahl <Markus.Wahl@jeppesen.com> - initial API ******************************************************************************/ package org.eclipse.nebula.widgets.nattable.selection; import org.eclipse.swt.graphics.Point; import org.eclipse.swt.graphics.Rectangle; /** * Selection model that holds markers such as anchors and last selection * properties in order to keep them up-to-date after underlying data has * changed. */ public interface IMarkerSelectionModel extends ISelectionModel { /** * @return point of the anchor expressed in position coordinates */ Point getSelectionAnchor(); /** * @return point of the last selected cell expressed in position coordinates */ Point getLastSelectedCell(); /** * @return rectangle of the last selected region expressed in position * coordinates */ Rectangle getLastSelectedRegion(); /** * @param position * coordinate of the anchor */ void setSelectionAnchor(Point position); /** * @param position * coordinate of the last selected */ void setLastSelectedCell(Point position); /** * Will set the Rectangle object of the last selected region to be the same * as the parameter object region. * * @param region * the last selection position region */ void setLastSelectedRegion(Rectangle region); /** * Will copy the information of the parameters to the already existing * Rectangle object of last selected region. * * @param x * origin of the last selection position region * @param y * origin of the last selection position region * @param width * of the last selection position region * @param height * of the last selection position region */ void setLastSelectedRegion(int x, int y, int width, int height); }