private ClipActionRecord decodeClipActionRecord() { int flags = decodeClipEventFlags(reader); if (flags != 0) { ClipActionRecord c = new ClipActionRecord(); c.eventFlags = flags; // this tells us how big the action block is int size = (int)reader.readUI32(); if ((flags & ClipActionRecord.keyPress) != 0) { size--; c.keyCode = reader.readUI8(); } c.actionList = decode(size); return(c); } else { return(null); } }
public virtual ClipActions decodeClipActions(int length) { ClipActions a = new ClipActions(); reader.readUI16(); // must be 0 a.allEventFlags = decodeClipEventFlags(reader); System.Collections.ArrayList list = new System.Collections.ArrayList(); ClipActionRecord record = decodeClipActionRecord(); while (record != null) { list.Add(record); record = decodeClipActionRecord(); } a.clipActionRecords = list; return(a); }
private ClipActionRecord decodeClipActionRecord() { int flags = decodeClipEventFlags(reader); if (flags != 0) { ClipActionRecord c = new ClipActionRecord(); c.eventFlags = flags; // this tells us how big the action block is int size = (int) reader.readUI32(); if ((flags & ClipActionRecord.keyPress) != 0) { size--; c.keyCode = reader.readUI8(); } c.actionList = decode(size); return c; } else { return null; } }