public class VisualEditorPanel extends JPanel implements MouseListener, MouseMotionListener { public VisualEditorPanel() { super(); setAutoscrolls(true); addMouseListener(this); addMouseMotionListener(this); } public void paintComponent(Graphics g) { super.paintComponent(g); config.paintPicture(g); } public void mousePressed(MouseEvent e) { int x = e.getX(); int y = e.getY(); config.mousePressed(x, y); //dragBaseX = x; //dragBaseY = y; } public void mouseReleased(MouseEvent e) { int x = e.getX(); int y = e.getY(); config.mouseReleased(x, y); } public void mouseClicked(MouseEvent e) { int x = e.getX(); int y = e.getY(); config.mouseClicked(x, y); } public void mouseDragged(MouseEvent e) { int x = e.getX(); int y = e.getY(); config.mouseDragged(x, y); //Point p = picturePane.getViewport().getViewPosition(); // //int x = p.x - e.getX() + dragBaseX; //if (x<0) x=0; //int y = p.y - e.getY() + dragBaseY; //if (y<0) y=0; // //Point q = new Point(x, y); // //picturePane.getViewport().setViewPosition(q); } public void mouseEntered(MouseEvent e) {} public void mouseExited(MouseEvent e) {} public void mouseMoved(MouseEvent e) { } } }