diff options
author | Bo Yang <struggleyb.nku@gmail.com> | 2009-08-13 09:33:24 +0000 |
---|---|---|
committer | Bo Yang <struggleyb.nku@gmail.com> | 2009-08-13 09:33:24 +0000 |
commit | 13fadb12fb400818e0ccb4c38b3bfce70ccfdad2 (patch) | |
tree | 19c55b39d97567a37b88b49aaaac13b21b9f24ee /include/dom/events/document_event.h | |
parent | bf6bc398bd40e39a016725550f5b8446a01ee2d1 (diff) | |
download | libdom-13fadb12fb400818e0ccb4c38b3bfce70ccfdad2.tar.gz libdom-13fadb12fb400818e0ccb4c38b3bfce70ccfdad2.tar.bz2 |
Merge the Events module (branches/struggleyb/libdom-events) back to trunk. :)
svn path=/trunk/dom/; revision=9236
Diffstat (limited to 'include/dom/events/document_event.h')
-rw-r--r-- | include/dom/events/document_event.h | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/include/dom/events/document_event.h b/include/dom/events/document_event.h new file mode 100644 index 0000000..e349bc2 --- /dev/null +++ b/include/dom/events/document_event.h @@ -0,0 +1,47 @@ +/* + * This file is part of libdom. + * Licensed under the MIT License, + * http://www.opensource.org/licenses/mit-license.php + * Copyright 2009 Bo Yang <struggleyb.nku@gmail.com> + */ + +#ifndef dom_events_document_event_h_ +#define dom_events_document_event_h_ + +#include <dom/core/exceptions.h> + +struct dom_string; +struct dom_event; +struct dom_document; +struct lwc_context_s; +struct lwc_string_s; + +typedef struct dom_document dom_document_event; + +/** + * The default action fetcher + * + * @note: When the implementation reach the end of the event flow, it will call + * this function to get the default action handler. If it does not return a + * NULL, the returned dom_event_listener will be invoked as the event is not + * canceled. + */ +typedef struct dom_event_listener *(*dom_events_default_action_fetcher) + (struct lwc_string_s *name, struct lwc_string_s *type); + +dom_exception _dom_document_event_create_event(dom_document_event *de, + struct dom_string *type, struct dom_event **evt); +#define dom_document_event_create_event(d, t, e) \ + _dom_document_event_create_event((dom_document_event *) (d), \ + (struct dom_string *) (t), (struct dom_event **) (e)) + +dom_exception _dom_document_event_can_dispatch(dom_document_event *de, + struct dom_string *namespace, struct dom_string *type, + bool* can); +#define dom_document_event_can_dispatch(d, n, t, c) \ + _dom_document_event_can_dispatch((dom_document_event *) (d), \ + (struct dom_string *) (n), (struct dom_string *) (t),\ + (bool *) (c)) + +#endif + |