Home | History | Annotate | Download | only in animator
      1 
      2 /*
      3  * Copyright 2006 The Android Open Source Project
      4  *
      5  * Use of this source code is governed by a BSD-style license that can be
      6  * found in the LICENSE file.
      7  */
      8 
      9 
     10 #ifndef SkDisplayEvents_DEFINED
     11 #define SkDisplayEvents_DEFINED
     12 
     13 #include "SkEvent.h"
     14 #include "SkDisplayEvent.h"
     15 
     16 struct SkEventState {
     17     SkEventState();
     18     int fCode;
     19     SkBool fDisable;
     20     SkDisplayable* fDisplayable;
     21     SkScalar fX;
     22     SkScalar fY;
     23 };
     24 
     25 class SkEvents {
     26 public:
     27     SkEvents();
     28     ~SkEvents();
     29     void addEvent(SkDisplayEvent* evt) { *fEvents.append() = evt; }
     30     bool doEvent(SkAnimateMaker& , SkDisplayEvent::Kind , SkEventState* );
     31 #ifdef SK_DUMP_ENABLED
     32     void dump(SkAnimateMaker& );
     33 #endif
     34     void reset() { fEvents.reset(); }
     35     void removeEvent(SkDisplayEvent::Kind kind, SkEventState* );
     36 private:
     37     SkTDDisplayEventArray fEvents;
     38     SkBool fError;
     39     friend class SkDisplayXMLParser;
     40 };
     41 
     42 #endif // SkDisplayEvents_DEFINED
     43