Source code: com/anotherbigidea/flash/structs/LineStyle.java
1 /****************************************************************
2 * Copyright (c) 2001, David N. Main, All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or
5 * without modification, are permitted provided that the
6 * following conditions are met:
7 *
8 * 1. Redistributions of source code must retain the above
9 * copyright notice, this list of conditions and the following
10 * disclaimer.
11 *
12 * 2. Redistributions in binary form must reproduce the above
13 * copyright notice, this list of conditions and the following
14 * disclaimer in the documentation and/or other materials
15 * provided with the distribution.
16 *
17 * 3. The name of the author may not be used to endorse or
18 * promote products derived from this software without specific
19 * prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY
22 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
23 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
24 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25 * AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
27 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
28 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
30 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
31 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
32 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33 ****************************************************************/
34 package com.anotherbigidea.flash.structs;
35
36 import java.io.*;
37 import com.anotherbigidea.io.OutStream;
38
39 public class LineStyle implements Style
40 {
41 protected int width;
42 protected Color color;
43
44 public int getWidth() { return width; }
45 public Color getColor() { return color; }
46
47 public LineStyle( int width, Color color )
48 {
49 this.width = width;
50 this.color = color;
51 }
52
53 public void write( OutStream out, boolean hasAlpha ) throws IOException
54 {
55 out.writeUI16( width );
56
57 if( hasAlpha ) color.writeWithAlpha( out );
58 else color.writeRGB( out );
59 }
60
61 public static void writeMorphLineStyle( OutStream out,
62 LineStyle startStyle,
63 LineStyle endStyle )
64 throws IOException
65 {
66 out.writeUI16( startStyle.width );
67 out.writeUI16( endStyle .width );
68
69 startStyle.color.writeWithAlpha( out );
70 endStyle .color.writeWithAlpha( out );
71 }
72 }