www.gusucode.com > mbcguitools 工具箱 matlab 源码程序 > mbcguitools/@mbcwidgets/@scrollTable/deleteObjects.m
function deleteObjects( obj, h_del, cachename) %DELETEOBJECTS Delete given display objects % % DELETEOBJECTS(OBJ, h_DEL, CACHE) % Copyright 2000-2010 The MathWorks, Inc. and Ford Global Technologies, Inc. if nargin<3 % No caching requested delete(h_del); else Ndel = numel(h_del); if Ndel>0 switch cachename case 'row' Nincache = length(obj.rowObjectCache); if Nincache<obj.headObjectCacheSize Ntocache = min(Ndel, obj.headObjectCacheSize-Nincache); h_keep = h_del(1:Ntocache); set(h_keep, 'Visible','off'); obj.rowObjectCache = [obj.rowObjectCache; h_keep(:)]; if Ntocache<Ndel delete(h_del(Ntocache+1:end)); end else delete(h_del); end case 'col' Nincache = length(obj.colObjectCache); if Nincache<obj.headObjectCacheSize Ntocache = min(Ndel, obj.headObjectCacheSize-Nincache); h_keep = h_del(1:Ntocache); set(h_keep, 'Visible','off'); obj.colObjectCache = [obj.colObjectCache; h_keep(:)]; if Ntocache<Ndel delete(h_del(Ntocache+1:end)); end else delete(h_del); end case 'main' Nincache = length(obj.mainObjectCache); if Nincache<obj.mainObjectCacheSize Ntocache = min(Ndel, obj.mainObjectCacheSize-Nincache); h_keep = h_del(1:Ntocache); set(h_keep, 'Visible','off'); obj.mainObjectCache = [obj.mainObjectCache; h_keep(:)]; if Ntocache<Ndel delete(h_del(Ntocache+1:end)); end else delete(h_del); end otherwise error(message('mbc:scrolltable:InvalidArgument')); end end end