/*
* 增删子元素事件监听器接口
* author: 吴安国
* version: 1.0
*/
function ChildChangeEventListener() {
EventListener.call(this, null);
}
ChildChangeEventListener.prototype = new EventListener();
/**
* 增删子元素模板方法
* @param childChangeEvent 增删子元素事件对象
**/
ChildChangeEventListener.prototype.childChange = function(childChangeEvent) {
var source = childChangeEvent.getSource();
var childView = childChangeEvent.getChildView();
var type = childChangeEvent.getType();
if(type === ChildChangeEvent.CHILD_CHANGE_TYPE_ADD)
{
this.addChild(source, childView);
} else if (type === ChildChangeEvent.CHILD_CHANGE_TYPE_REMOVE) {
this.removeChange(source, childView);
}
};
/*
* 增加子元素 (抽象方法)
* @param source 页面元素
* @param childView 子元素
*/
ChildChangeEventListener.prototype.addChild = function(source, childView){};
/**
* 删除子元素 (抽象方法)
* @param source 页面元素
* @param childView 子元素
**/
ChildChangeEventListener.prototype.removeChange = function(source, childView){};
/*
* 增删子元素事件监听器实现类
* author: 吴安国
* version: 1.0
*/
function ChildChangeEventListenerImpl(){
ChildChangeEventListener.call(this, null);
};
ChildChangeEventListenerImpl.prototype = new ChildChangeEventListener();
/**
* 增加子元素
* @param source 页面元素
* @param childView 子元素
**/
ChildChangeEventListenerImpl.prototype.addChild = function(source, childView){
source.addChild(childView);
};
/**
* 删除子元素
* @param source 页面元素
* @param childView 子元素
**/
ChildChangeEventListenerImpl.prototype.removeChange = function(source, childView){
source.removeChild(childView);
};