EMMA Coverage Report (generated Wed Feb 13 07:49:24 ICT 2008)
[all classes][net.sourceforge.hiveboard.drawing]

COVERAGE SUMMARY FOR SOURCE FILE [RectangleTool.java]

nameclass, %method, %block, %line, %
RectangleTool.java100% (1/1)100% (3/3)100% (102/102)100% (26/26)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class RectangleTool100% (1/1)100% (3/3)100% (102/102)100% (26/26)
RectangleTool (): void 100% (1/1)100% (3/3)100% (1/1)
draw (Graphics2D, int, int, int, int): void 100% (1/1)100% (33/33)100% (12/12)
stop (): DrawingAction 100% (1/1)100% (66/66)100% (13/13)

1//  Copyright 2004-2007 Jean-Francois Poilpret
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14 
15package net.sourceforge.hiveboard.drawing;
16 
17import java.awt.Graphics2D;
18 
19public class RectangleTool extends AbstractRubberBandTool
20{
21        public DrawingAction        stop()
22        {
23                // Convert points list into a DrawingAction
24                int[] x = new int[NUM_POINTS];
25                int[] y = new int[NUM_POINTS];
26                x[TOP_LEFT] = _startX;
27                y[TOP_LEFT] = _startY;
28                x[TOP_RIGHT] = _lastX;
29                y[TOP_RIGHT] = _startY;
30                x[BOTTOM_RIGHT] = _lastX;
31                y[BOTTOM_RIGHT] = _lastY;
32                x[BOTTOM_LEFT] = _startX;
33                y[BOTTOM_LEFT] = _lastY;
34                x[TOP_LEFT_LOOP] = _startX;
35                y[TOP_LEFT_LOOP] = _startY;
36                return new PenFreeDrawingAction(x, y, _penColor, _stroke);
37        }
38 
39        @Override protected void draw(Graphics2D graf, int x1, int y1, int x2, int y2)
40        {
41                int width = x2 - x1;
42                int xstart = x1;
43                if (width < 0)
44                {
45                        width = -width;
46                        xstart = x2;
47                }
48                int height = y2 - y1;
49                int ystart = y1;
50                if (height < 0)
51                {
52                        height = -height;
53                        ystart = y2;
54                }
55                graf.drawRect(xstart, ystart, width, height);
56        }
57        
58        private final static int        TOP_LEFT                = 0;
59        private final static int        TOP_RIGHT                = 1;
60        private final static int        BOTTOM_RIGHT        = 2;
61        private final static int        BOTTOM_LEFT                = 3;
62        private final static int        TOP_LEFT_LOOP        = 4;
63        private final static int        NUM_POINTS                = 5;
64}

[all classes][net.sourceforge.hiveboard.drawing]
EMMA 2.0.5312 (C) Vladimir Roubtsov