01: // THIS SOFTWARE IS PROVIDED BY SOFTARIS PTY.LTD. AND OTHER METABOSS
02: // CONTRIBUTORS ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING,
03: // BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
04: // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SOFTARIS PTY.LTD.
05: // OR OTHER METABOSS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
06: // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
07: // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
08: // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
09: // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
10: // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
11: // EVEN IF SOFTARIS PTY.LTD. OR OTHER METABOSS CONTRIBUTORS ARE ADVISED OF THE
12: // POSSIBILITY OF SUCH DAMAGE.
13: //
14: // Copyright 2000-2005 © Softaris Pty.Ltd. All Rights Reserved.
15: package com.metaboss.applications.designstudio.components;
16:
17: import java.awt.Color;
18: import java.awt.Graphics;
19:
20: import org.jgraph.graph.DefaultEdge;
21: import org.jgraph.graph.EdgeRenderer;
22: import org.jgraph.graph.GraphConstants;
23:
24: import com.metaboss.applications.designstudio.Application;
25: import com.metaboss.applications.designstudio.BaseUserObject;
26:
27: public class DesignEdgeRenderer extends EdgeRenderer {
28: public Color getForeground() {
29: Object lCell = view.getCell();
30: if (lCell instanceof DefaultEdge) {
31: Color lColor = Color.black;
32: DefaultEdge lEdge = (DefaultEdge) lCell;
33: if (lEdge.getSource() == null || lEdge.getTarget() == null)
34: return Color.red;
35: else {
36: BaseUserObject lObject = (BaseUserObject) lEdge
37: .getUserObject();
38: if (lObject != null
39: && Application
40: .isErrorElementID(lObject.getID()))
41: return Color.red;
42: }
43: }
44: return super .getForeground();
45: }
46:
47: public void paint(Graphics g) {
48: Object lCell = view.getCell();
49: if (lCell instanceof DefaultEdge) {
50: beginFill = GraphConstants
51: .isBeginFill(((DefaultEdge) lCell).getAttributes());
52: }
53: super.paint(g);
54: }
55:
56: }
|