Home | History | Annotate | Download | only in events
      1 // Copyright 2014 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef AnimationPlayerEvent_h
      6 #define AnimationPlayerEvent_h
      7 
      8 #include "core/events/Event.h"
      9 
     10 namespace blink {
     11 
     12 struct AnimationPlayerEventInit : public EventInit {
     13     AnimationPlayerEventInit();
     14 
     15     double currentTime;
     16     double timelineTime;
     17 };
     18 
     19 class AnimationPlayerEvent FINAL : public Event {
     20     DEFINE_WRAPPERTYPEINFO();
     21 public:
     22     static PassRefPtrWillBeRawPtr<AnimationPlayerEvent> create()
     23     {
     24         return adoptRefWillBeNoop(new AnimationPlayerEvent);
     25     }
     26     static PassRefPtrWillBeRawPtr<AnimationPlayerEvent> create(const AtomicString& type, double currentTime, double timelineTime)
     27     {
     28         return adoptRefWillBeNoop(new AnimationPlayerEvent(type, currentTime, timelineTime));
     29     }
     30     static PassRefPtrWillBeRawPtr<AnimationPlayerEvent> create(const AtomicString& type, const AnimationPlayerEventInit& initializer)
     31     {
     32         return adoptRefWillBeNoop(new AnimationPlayerEvent(type, initializer));
     33     }
     34 
     35     virtual ~AnimationPlayerEvent();
     36 
     37     double currentTime() const;
     38     double timelineTime() const;
     39 
     40     virtual const AtomicString& interfaceName() const OVERRIDE;
     41 
     42     virtual void trace(Visitor*) OVERRIDE;
     43 
     44 private:
     45     AnimationPlayerEvent();
     46     AnimationPlayerEvent(const AtomicString& type, double currentTime, double timelineTime);
     47     AnimationPlayerEvent(const AtomicString&, const AnimationPlayerEventInit&);
     48 
     49     double m_currentTime;
     50     double m_timelineTime;
     51 };
     52 
     53 } // namespace blink
     54 
     55 #endif // AnimationPlayerEvent_h
     56