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

    function doSetup(obj)
%DOSETUP Setup listeners for object
%
%  DOSETUP(OBJ)

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


obj.Listeners = [ ...
        handle.listener(obj, obj.findprop('Min'), 'PropertyPostSet', {@i_setaxprops, obj.axis, 'min'}); ...
        handle.listener(obj, obj.findprop('Max'), 'PropertyPostSet', {@i_setaxprops, obj.axis, 'max'}); ...
        handle.listener(obj, obj.findprop('Label'), 'PropertyPostSet', {@i_setaxprops, obj.axis, 'string'}); ...
        handle.listener(obj, obj.findprop('Orientation'), 'PropertyPostSet', {@i_setorient, obj.axis}); ...
        handle.listener(obj, obj.findprop('AxisEdgeOffset'), 'PropertyPostSet', @i_setpos); ...
        handle.listener(obj, obj.findprop('AxisFrontOffset'), 'PropertyPostSet', @i_setpos); ...
        handle.listener(obj, obj.findprop('Value'), 'PropertyPostSet', {@i_setaxprops, obj.axis, 'value'}); ...
        handle.listener(obj, obj.findprop('BackgroundColor'), 'PropertyPostSet', {@i_setbg, obj.Display}); ...
    ];

obj.connect(xregfigurehook(obj.Parent), 'up');


function i_setpos(src, evt)
evt.AffectedObject.doPosition;

function i_setaxprops(src, evt, ax, prop)
set(ax, prop, evt.NewValue);

function i_setorient(src, evt, ax)
obj = evt.AffectedObject;
set(ax, 'Orientation', obj.Orientation);
obj.doPosition;

function i_setbg(src, evt, pnl)
set(pnl, 'BackgroundColor', evt.NewValue);