eu.future.earth.gwt.client.date.month.MonthPanelDropController Maven / Gradle / Ivy
The newest version!
/*
* Copyright 2007 Future Earth, [email protected]
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package eu.future.earth.gwt.client.date.month;
import com.allen_sauer.gwt.dnd.client.DragContext;
import com.allen_sauer.gwt.dnd.client.VetoDragException;
import com.allen_sauer.gwt.dnd.client.drop.AbstractDropController;
import eu.future.earth.gwt.client.date.EventPanel;
/**
* DropController which allows a widget to be dropped on a SimplePanel drop target when the drop target does not yet have a child widget.
*/
public class MonthPanelDropController extends AbstractDropController {
public MonthPanelDropController(MonthPanelDayPanel newDropTarget) {
super(newDropTarget);
}
@SuppressWarnings("unchecked")
public void onDrop(DragContext context) {
final MonthPanelDayPanel dropTarget = (MonthPanelDayPanel) getDropTarget();
final EventPanel toMove =(EventPanel) context.draggable;
// if(!dropTarget.isDay(toMove.getData())){
dropTarget.addEventByDrop(toMove);
// } else {
//Edit ?
// }
super.onDrop(context);
}
@SuppressWarnings("unchecked")
public void onPreviewDrop(DragContext context) throws VetoDragException {
final MonthPanelDayPanel dropTarget = (MonthPanelDayPanel) getDropTarget();
final EventPanel toMove =(EventPanel) context.draggable;
if(dropTarget.isDay(toMove.getValue())){
throw new VetoDragException();
}
super.onPreviewDrop(context);
}
}