www.gusucode.com > mbcguitools 工具箱 matlab 源码程序 > mbcguitools/@xregGui/@itemlist1/doSetup.m

    function doSetup(h)
%DOSETUP  Perform setup tasks

%  Copyright 2000-2010 The MathWorks, Inc. and Ford Global Technologies, Inc.


h.CallBackL=handle.listener(h,'ItemSelected','disp null');
if isempty(h.callback)
   h.CallbackL.enabled='off';
else
   h.CallbackL.callback=h.Callback;
end

h.PropL=[handle.listener(h,'ObjectBeingDestroyed',@i_deleting);...
      handle.listener(h,h.findprop('BackGroundColor'),'PropertyPostSet',@i_setcolor);...
      handle.listener(h,h.findprop('ForeGroundColor'),'PropertyPostSet',@i_setcolor);...
      handle.listener(h,h.findprop('Callback'),'PropertyPostSet',@i_setcb);...
      handle.listener(h,h.findprop('Enable'),'PropertyPostSet',@i_seten);...
      handle.listener(h,h.findprop('Innerborder'),'PropertyPostSet',@i_redraw);...
      handle.listener(h,h.findprop('Items'),'PropertyPostSet',@i_redraw);...
      handle.listener(h,h.findprop('Parent'),'PropertyPostSet',@i_setprnt);...
      handle.listener(h,h.findprop('Position'),'PropertyPostSet',@i_setpos);...
      handle.listener(h,h.findprop('Spacing'),'PropertyPostSet',@i_redraw);...
      handle.listener(h,h.findprop('Visible'),'PropertyPostSet',@i_setvis);...
      handle.listener(h,h.findprop('TransparentColor'),'PropertyPostSet',@i_redraw);...
      handle.listener(h,h.findprop('TransparentColorMode'),'PropertyPostSet',@i_redraw);...
      handle.listener(h,h.findprop('Value'),'PropertyPostSet',@i_redrawsel);...
   ];

h.connect(xregfigurehook(h.Parent),'up');  % connect to figure hook



function i_deleting(h,evt)
h.doDelete;

function i_setcolor(srcobj,evt)
h=evt.AffectedObject;
h.doColor;

function i_setcb(srcobj,evt)
h=evt.AffectedObject;
h.doCallback;

function i_seten(srcobj,evt)
h=evt.AffectedObject;
h.doEnable;

function i_setprnt(srcobj,evt)
h=evt.AffectedObject;
h.doParent;

function i_setpos(srcobj,evt)
h=evt.AffectedObject;
h.doPosition;

function i_redraw(srcobj,evt)
h=evt.AffectedObject;
h.doDraw;
h.doDrawSelection;

function i_redrawsel(srcobj,evt)
h=evt.AffectedObject;
h.doDrawSelection;

function i_setvis(srcobj,evt)
h=evt.AffectedObject;
h.doVisible;