1
2 package org.freehep.graphicsio.swf;
3
4 import java.io.IOException;
5
6
7
8
9
10
11
12
13 public class ClipEventFlags {
14
15 private boolean keyPress, dragOut, dragOver, rollOut, rollOver;
16
17 private boolean releaseOutside, release, press, initialize, data;
18
19 private boolean keyUp, keyDown, mouseUp, mouseDown, mouseMove;
20
21 private boolean unload, enterFrame, load;
22
23
24
25
26 public ClipEventFlags(SWFInputStream swf) throws IOException {
27
28 if (swf.getVersion() >= 6) {
29 swf.readUBits(14);
30 keyPress = swf.readBitFlag();
31 dragOut = swf.readBitFlag();
32 }
33
34 dragOver = swf.readBitFlag();
35 rollOut = swf.readBitFlag();
36 rollOver = swf.readBitFlag();
37 releaseOutside = swf.readBitFlag();
38 release = swf.readBitFlag();
39 press = swf.readBitFlag();
40 initialize = swf.readBitFlag();
41 data = swf.readBitFlag();
42 keyUp = swf.readBitFlag();
43 keyDown = swf.readBitFlag();
44 mouseUp = swf.readBitFlag();
45 mouseDown = swf.readBitFlag();
46 mouseMove = swf.readBitFlag();
47 unload = swf.readBitFlag();
48 enterFrame = swf.readBitFlag();
49 load = swf.readBitFlag();
50 }
51
52 public void write(SWFOutputStream swf) throws IOException {
53 if (swf.getVersion() >= 6) {
54 swf.writeUBits(0, 14);
55 swf.writeBitFlag(keyPress);
56 swf.writeBitFlag(dragOut);
57 }
58
59 swf.writeBitFlag(dragOver);
60 swf.writeBitFlag(rollOut);
61 swf.writeBitFlag(rollOver);
62 swf.writeBitFlag(releaseOutside);
63 swf.writeBitFlag(release);
64 swf.writeBitFlag(press);
65 swf.writeBitFlag(initialize);
66 swf.writeBitFlag(data);
67 swf.writeBitFlag(keyUp);
68 swf.writeBitFlag(keyDown);
69 swf.writeBitFlag(mouseUp);
70 swf.writeBitFlag(mouseDown);
71 swf.writeBitFlag(mouseMove);
72 swf.writeBitFlag(unload);
73 swf.writeBitFlag(enterFrame);
74 swf.writeBitFlag(load);
75 }
76
77 public boolean isKeyPress() {
78 return keyPress;
79 }
80
81 public boolean isEndFlag() {
82
83 return !(keyPress || dragOut || dragOver || rollOut || rollOver
84 || releaseOutside || release || press || initialize || data
85 || keyUp || keyDown || mouseUp || mouseDown || mouseMove
86 || unload || enterFrame || load);
87 }
88
89 public String toString() {
90 return "ClipEventFlags";
91 }
92 }