private void doPaintBucketNoDia(int x, int y, int newCol, int currentCol)
    {
        // make sure it's on the image
        if (x > -1 && y > -1 && x < this.getDrawingWidth()
            && y < this.getDrawingHeight() && this.getPoint(x, y) == currentCol)
        {
            this.drawPoint(x, y, newCol);
            doPaintBucketNoDia(x - 1, y, newCol, currentCol);
            doPaintBucketNoDia(x + 1, y, newCol, currentCol);
            doPaintBucketNoDia(x, y - 1, newCol, currentCol);
            doPaintBucketNoDia(x, y + 1, newCol, currentCol);
        }
    }