michael@0: michael@0: /* michael@0: * Copyright 2006 The Android Open Source Project michael@0: * michael@0: * Use of this source code is governed by a BSD-style license that can be michael@0: * found in the LICENSE file. michael@0: */ michael@0: michael@0: michael@0: #ifndef SkDisplayEvents_DEFINED michael@0: #define SkDisplayEvents_DEFINED michael@0: michael@0: #include "SkEvent.h" michael@0: #include "SkDisplayEvent.h" michael@0: michael@0: struct SkEventState { michael@0: SkEventState(); michael@0: int fCode; michael@0: SkBool fDisable; michael@0: SkDisplayable* fDisplayable; michael@0: SkScalar fX; michael@0: SkScalar fY; michael@0: }; michael@0: michael@0: class SkEvents { michael@0: public: michael@0: SkEvents(); michael@0: ~SkEvents(); michael@0: void addEvent(SkDisplayEvent* evt) { *fEvents.append() = evt; } michael@0: bool doEvent(SkAnimateMaker& , SkDisplayEvent::Kind , SkEventState* ); michael@0: #ifdef SK_DUMP_ENABLED michael@0: void dump(SkAnimateMaker& ); michael@0: #endif michael@0: void reset() { fEvents.reset(); } michael@0: void removeEvent(SkDisplayEvent::Kind kind, SkEventState* ); michael@0: private: michael@0: SkTDDisplayEventArray fEvents; michael@0: SkBool fError; michael@0: friend class SkDisplayXMLParser; michael@0: }; michael@0: michael@0: #endif // SkDisplayEvents_DEFINED