source: trunk/src/org/expeditee/items/widgets/WidgetEdge.java@ 214

Last change on this file since 214 was 214, checked in by ra33, 16 years ago

Added charts

File size: 2.6 KB
Line 
1package org.expeditee.items.widgets;
2
3import java.awt.Color;
4import java.awt.Polygon;
5
6import org.expeditee.items.Item;
7import org.expeditee.items.Line;
8
9/**
10 * Widget edges define the boundries of an interactive widget.
11 *
12 * @author Brook Novak
13 */
14public class WidgetEdge extends Line {
15
16 private InteractiveWidget _widgetSource;
17
18 WidgetEdge(WidgetCorner start, WidgetCorner end, int id,
19 InteractiveWidget widgetSource) {
20 super(start, end, id);
21
22 /* TODO: REVISE
23 super.setThickness(2.0f);
24 super.setColor(Color.black);
25 */
26
27 if (widgetSource == null)
28 throw new NullPointerException("widgetSource");
29 _widgetSource = widgetSource;
30 }
31
32 public InteractiveWidget getWidgetSource() {
33 return _widgetSource;
34 }
35
36 @Override
37 public Item forceMerge(Item merger, int mouseX, int mouseY) {
38 return null; // Don't allow breaking up of borders
39 }
40
41 @Override
42 public void toggleArrow() {
43 // Ignore
44 }
45
46 @Override
47 public void toggleDashed(int amount) {
48 // Ignore
49 }
50
51 @Override
52 public void toggleArrowHeadRatio(int amount) {
53 // Ignore
54 }
55
56 @Override
57 public void toggleArrowHeadLength(int amount) {
58 // Ignore
59 }
60
61 @Override
62 public void setAnnotation(boolean val) {
63 // Ignore
64 }
65
66 @Override
67 public boolean isAnnotation() {
68 return false;
69 }
70
71 @Override
72 public void setArrow(float length, double ratio) {
73 }
74
75 @Override
76 public void setArrowhead(Polygon arrow) {
77 }
78
79 @Override
80 public void setArrowheadLength(float length) {
81 }
82
83 @Override
84 public void setArrowheadRatio(double ratio) {
85 }
86
87 @Override
88 public void setBottomShadowColor(Color bottom) {
89 }
90
91 @Override
92 public void setFillColor(Color c) {
93 }
94
95 @Override
96 public void setFillPattern(String patternLink) {
97 }
98
99 @Override
100 public void setSize(float size) {
101 }
102
103 @Override
104 public boolean contains(int x, int y) {
105 return super.contains(x, y) && !getEnclosedShape().contains(x, y);
106 }
107
108 @Override
109 public Polygon getEnclosedShape() {
110 return getStartItem().getEnclosedShape();
111 }
112
113 @Override
114 public String getLink() {
115 return _widgetSource.getSource().getLink();
116 }
117
118 @Override
119 public void setLink(String link) {
120 _widgetSource.setLink(link);
121 }
122
123 @Override
124 public void setThickness(float newThickness, boolean setConnected) {
125 if (_widgetSource != null) {
126 float minThickness = _widgetSource.getMinimumBorderThickness();
127 if(newThickness < minThickness)
128 newThickness = minThickness;
129 super.setThickness(newThickness, setConnected);
130 _widgetSource.getSource().setThickness(newThickness, false);
131 }
132 }
133
134 @Override
135 public void setBackgroundColor(Color c) {
136 if (_widgetSource != null) {
137 super.setBackgroundColor(c);
138 _widgetSource.getSource().setBackgroundColor(c);
139 }
140 }
141}
Note: See TracBrowser for help on using the repository browser.