/** * ColumnDragController.java * * Copyright 2000 Eliad Technologies, Inc. All Rights Reserved. * * This software is the proprietary information of Eliad Technologies, Inc. */ package example10; import java.util.*; import java.awt.event.*; import java.beans.*; import com.eliad.model.*; import com.eliad.swing.*; /** * This class is a controller for dragging columns. * * @author Patrick Mérissert-Coffinières * @version 1.0 */ public class ColumnDragController extends GridAdapter { private int pos_; public void gridMousePressed(GridEvent e) { JSmartGrid grid=(JSmartGrid)e.getSource(); if (grid.isDraggable(JSmartGrid.HORIZONTAL)) { grid.setFirstDraggingItem(JSmartGrid.HORIZONTAL,e.getColumn()); pos_=((MouseEvent)e.getSourceEvent()).getX(); } } public void gridMouseDragged(GridEvent e) { JSmartGrid grid=(JSmartGrid)e.getSource(); if (grid.isDragging(JSmartGrid.HORIZONTAL)) { int newpos=((MouseEvent)e.getSourceEvent()).getX(); grid.setDraggingDistance(JSmartGrid.HORIZONTAL,newpos-pos_); int delta=grid.getDraggingDistance(JSmartGrid.HORIZONTAL); pos_=newpos-delta; } } public void gridMouseReleased(GridEvent e) { JSmartGrid grid=(JSmartGrid)e.getSource(); if (grid.isDragging(JSmartGrid.HORIZONTAL)) grid.resetDragging(JSmartGrid.HORIZONTAL); } }