www.gusucode.com > mbcguitools 工具箱 matlab 源码程序 > mbcguitools/@xregGui/@itemlist1/doDrawSelection.m
function doDrawSelection(h) %DODRAWSELECTION Draw the selection rectangle % % h.doDrawSelection % Copyright 2000-2010 The MathWorks, Inc. and Ford Global Technologies, Inc. if h.Value>0 && h.Value<=length(h.Items) && strcmp(h.HighlightSelection,'on') sc=xregGui.SystemColors; ForeIm=h.imageH(h.Value); sz=size(get(ForeIm, 'CData'))+[8 8 0]; bgdata=repmat(uint8(0),sz); bgdata(:,:,1)=h.BackgroundColor(1)*255; bgdata(:,:,2)=h.BackgroundColor(2)*255; bgdata(:,:,3)=h.BackgroundColor(3)*255; bgdata(:,end,1)=sc.CTRL_HILITE(1); bgdata(1,:,1)=sc.CTRL_HILITE(1); bgdata(end,:,1)=sc.CTRL_DK_SHADOW(1); bgdata(:,1,1)=sc.CTRL_DK_SHADOW(1); bgdata(:,end,2)=sc.CTRL_HILITE(2); bgdata(1,:,2)=sc.CTRL_HILITE(2); bgdata(end,:,2)=sc.CTRL_DK_SHADOW(2); bgdata(:,1,2)=sc.CTRL_DK_SHADOW(2); bgdata(:,end,3)=sc.CTRL_HILITE(3); bgdata(1,:,3)=sc.CTRL_HILITE(3); bgdata(end,:,3)=sc.CTRL_DK_SHADOW(3); bgdata(:,1,3)=sc.CTRL_DK_SHADOW(3); set(h.SelImH,'CData',bgdata,... 'XData',get(ForeIm,'XData')+[-4 4],... 'YData',get(ForeIm,'YData')+[-4 4],... 'Visible','on'); else set(h.SelImH,'Visible','off'); end