view nodejs/observer.m4 @ 1161:a7faab54e8f8

Fix broken of running animation - Running animation is stop automatically after a certain time. - It is 300ms according MBScene._updateUI(). - It is caused by notification of changing DOM tree. The notification handlers would call MBScene.updateUI() to update framelines and buttons. - MBScene.updateUI() would call MBScene.show() after 300ms, MBScene.show() calls MBScene.parseScene() in turn. - MBScene.parseScene() would remove duplicate group that is using by code of running animation, MBScene.doRunNext(). It make running animation stop. - fixed by setting MBScene.lockui when a running animation is started or stoped.
author Thinker K.F. Li <thinker@codemud.net>
date Tue, 28 Dec 2010 13:35:34 +0800
parents 799c852b9065
children
line wrap: on
line source

define([PROJ_PREFIX], [xnjsmb_auto_])dnl
dnl
STRUCT([observer], [observer_t],
       [INT([type])], [])

STRUCT([subject], [subject_t], [],
       [METHOD([add_event_observer], [_subject_add_event_observer],
       	       (INT([type]), FUNC([handler])), 2,
	       [OBJ([observer], [observer_t])]),
        METHOD([remove_observer], [_subject_remove_observer],
	       (OBJ([observer], [observer], [observer_t])), 1, [])])

STRUCT([event], [event_t],
       [INT([type]),
        ACCESSOR([tgt], [xnjsmb_event_tgt_getter], [xnjsmb_event_tgt_setter]),
        ACCESSOR([cur_tgt], [xnjsmb_event_cur_tgt_getter],
	    [xnjsmb_event_cur_tgt_setter]),
	INT([flags])], [], (([STMOD], [xnjsmb_event_mod])))