aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/views/SkEvent.cpp
diff options
context:
space:
mode:
authorGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2011-08-03 19:41:24 +0000
committerGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2011-08-03 19:41:24 +0000
commitc514dde99e10fb3dbfff5a15537211a7eb094365 (patch)
treee309517c6ecfb794b28991a526cadd5f04835a57 /src/views/SkEvent.cpp
parent81c3f8de1cbb93a8b99d730a75ab16d864612e95 (diff)
allow events to store their target sink ID
git-svn-id: http://skia.googlecode.com/svn/trunk@2036 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/views/SkEvent.cpp')
-rw-r--r--src/views/SkEvent.cpp28
1 files changed, 14 insertions, 14 deletions
diff --git a/src/views/SkEvent.cpp b/src/views/SkEvent.cpp
index 2c09bc3bcb..d330636207 100644
--- a/src/views/SkEvent.cpp
+++ b/src/views/SkEvent.cpp
@@ -58,20 +58,6 @@ static size_t makeCharArray(char* buffer, size_t compact)
return strlen(buffer);
}
-#if 0
-const char* SkEvent::getType() const
-{
- if ((size_t) fType & 1) { // not a pointer
- char chars[sizeof(size_t) + 1];
- size_t len = makeCharArray(chars, (size_t) fType);
- fType = (char*) sk_malloc_throw(len);
- SkASSERT(((size_t) fType & 1) == 0);
- memcpy(fType, chars, len);
- }
- return fType;
-}
-#endif
-
void SkEvent::getType(SkString* str) const
{
if (str)
@@ -370,6 +356,20 @@ bool SkEvent::PostTime(SkEvent* evt, SkEventSinkID sinkID, SkMSec time)
return true;
}
+bool SkEvent::postDelay(SkMSec delay) {
+ return SkEvent::Post(this, this->getTargetID(), delay);
+}
+
+bool SkEvent::postTime(SkMSec time) {
+ SkEventSinkID target = this->getTargetID();
+ if (target) {
+ return SkEvent::PostTime(this, target, time);
+ } else {
+ delete this;
+ return false;
+ }
+}
+
bool SkEvent::Enqueue(SkEvent* evt)
{
SkEvent_Globals& globals = *(SkEvent_Globals*)SkGlobals::Find(SK_Event_GlobalsTag, create_globals);