@Override
    public void mouseMoved(MouseEvent e) {
        Point point = e.getPoint();
        
        if (e.getSource() == _north) {            
            if (point.x <= _borderWidth) {
                // Mouse located at North-West edge
                _north.setCursor(new Cursor(Cursor.NW_RESIZE_CURSOR));
            } else if (point.x > _north.getWidth()-_borderWidth) {
                // Mouse located at North-East edge
                _north.setCursor(new Cursor(Cursor.NE_RESIZE_CURSOR));
            } else {
                // Mouse located at North side
                _north.setCursor(new Cursor(Cursor.N_RESIZE_CURSOR));
            }            
        }
        
        if (e.getSource() == _south) {
            if (point.x <= _borderWidth) {
                // Mouse located at Sounth-West edge
                _south.setCursor(new Cursor(Cursor.SW_RESIZE_CURSOR));
            } else if (point.x > _south.getWidth()-_borderWidth) {
                // Mouse located at Sounth-East edge
                _south.setCursor(new Cursor(Cursor.SE_RESIZE_CURSOR));
            } else {
                // Mouse located at Sounth side
                _south.setCursor(new Cursor(Cursor.S_RESIZE_CURSOR));
            }
        }
        
        if (e.getSource() == _east) {
            // Mouse located at East side
            _east.setCursor(new Cursor(Cursor.E_RESIZE_CURSOR));
        }
        
        if (e.getSource() == _west) {
            // Mouse located at West side
            _west.setCursor(new Cursor(Cursor.W_RESIZE_CURSOR));
        }   
    }