Statistics
| Revision:

root / trunk / extensions / extCAD / sm / PolygonCADTool.sm @ 4365

History | View | Annotate | Download (1.84 KB)

1 3782 caballero
// -*- tab-width: 4; -*-
2
3
%{
4
//
5
// Vicente Caballero Navarro
6
%}
7
8 3978 caballero
%start Polygon::NumberOrCenterPoint
9 3782 caballero
%class PolygonCADTool
10
%package com.iver.cit.gvsig.gui.cad.tools.smc
11
%import com.iver.cit.gvsig.gui.cad.tools.PolygonCADTool
12 4324 caballero
%import java.awt.event.InputEvent
13 3782 caballero
14 3978 caballero
%map Polygon
15 3782 caballero
%%
16
// A task begins life in suspended animation.
17
18 3978 caballero
NumberOrCenterPoint
19 3782 caballero
20
	Entry {
21 3844 caballero
		setQuestion("POLIGONO" + "\n" +
22
		"Insertar numero de lados<5>");
23 3883 caballero
		setDescription(new String[]{"Cancelar"});
24 3782 caballero
		}
25
	Exit{
26
		}
27
28
	{
29 3828 caballero
		addValue(d:double)
30 3978 caballero
			CenterPoint {
31 3782 caballero
				setQuestion("Insertar punto central del poligono");
32 3883 caballero
				setDescription(new String[]{"Cancelar"});
33 3828 caballero
				addValue(d);
34 3782 caballero
				}
35 4324 caballero
		addPoint( pointX:double,pointY:double,event:InputEvent)
36 3978 caballero
			OptionOrRadiusOrPoint {
37 3883 caballero
				setQuestion("Inscrito en el c?rculo[I] o Circunscrito[C]<C>");
38
				setDescription(new String[]{"Inscrito","Circunscrito","Cancelar"});
39 4365 caballero
				addPoint( pointX,pointY,event);
40 3782 caballero
				}
41
42
	}
43 3978 caballero
CenterPoint{
44 4324 caballero
	addPoint( pointX:double,pointY:double,event:InputEvent)
45 3978 caballero
		OptionOrRadiusOrPoint {
46 3782 caballero
			setQuestion("Inscrito en el c?rculo[I] o Circunscrito[C]<C>");
47 3883 caballero
			setDescription(new String[]{"Inscrito","Circunscrito","Cancelar"});
48 4365 caballero
			addPoint( pointX,pointY,event);
49 3782 caballero
			}
50
}
51 3978 caballero
OptionOrRadiusOrPoint{
52 3828 caballero
	addOption(s:String)
53 3978 caballero
		RadiusOrPoint {
54 3782 caballero
			setQuestion("Precise r?dio(r)");
55 3883 caballero
			setDescription(new String[]{"Cancelar"});
56 3828 caballero
			addOption(s);
57 3782 caballero
			}
58 3828 caballero
	addValue(d:double)
59 3978 caballero
		NumberOrCenterPoint{
60 3828 caballero
			addValue(d);
61 3782 caballero
			end();
62
			}
63 4324 caballero
	addPoint( pointX:double,pointY:double,event:InputEvent)
64 3978 caballero
		NumberOrCenterPoint {
65 4365 caballero
			addPoint( pointX,pointY,event);
66 3782 caballero
			end();
67
			}
68
}
69 3978 caballero
RadiusOrPoint{
70 4324 caballero
	addPoint( pointX:double,pointY:double,event:InputEvent)
71 3978 caballero
		NumberOrCenterPoint {
72 4365 caballero
			addPoint( pointX,pointY,event);
73 3782 caballero
			end();
74
			}
75 3828 caballero
	addValue(d:double)
76 3978 caballero
		NumberOrCenterPoint{
77 3828 caballero
			addValue(d);
78 3782 caballero
			end();
79
			}
80
}
81 3978 caballero
82 3782 caballero
Default
83
{
84 3883 caballero
	addOption(s:String)
85
		[s.equals("Cancelar")]
86 3978 caballero
		NumberOrCenterPoint{
87 3883 caballero
			end();
88
			}
89 3782 caballero
}
90
%%