www.gusucode.com > wavelet工具箱matlab源码程序 > wavelet/wavedemo/dguiwpdi.m
function varargout = dguiwpdi(varargin) %DGUIWPDI Shows wavelet packet display GUI tools in the Wavelet Toolbox. % % This is a slideshow file for use with wshowdrv.m % To see it run, type 'wshowdrv dguiwpdi', % M. Misiti, Y. Misiti, G. Oppenheim, J.M. Poggi 12-Mar-96. % Last Revision: 23-May-2012. % Copyright 1995-2012 The MathWorks, Inc. % Initialization and Local functions if necessary. if nargin>0 action = varargin{1}; switch action case 'auto' , wshowdrv('#autoMode',mfilename,'close'); case 'gr_auto' , wshowdrv('#gr_autoMode',mfilename,'close'); case 'getFigParam' figName = getWavMSG('Wavelet:wavedemoMSGRF:DGUI_WPDI'); showType = 'command'; varargout = {figName,showType}; case 'slidePROC_Init' figHandle = varargin{2}; localPARAM = wtbxappdata('get',figHandle,'localPARAM'); if ~isempty(localPARAM) active_fig = localPARAM{1}; delete(active_fig); wtbxappdata('del',figHandle,'localPARAM'); end case 'slidePROC' [figHandle,idxSlide] = deal(varargin{2:end}); localPARAM = wtbxappdata('get',figHandle,'localPARAM'); if isempty(localPARAM) active_fig = wpdtool; wenamngr('Inactive',active_fig); localPARAM = {active_fig}; wtbxappdata('set',figHandle,'localPARAM',localPARAM); wshowdrv('#modify_cbClose',figHandle,active_fig,'wpdtool'); else active_fig = deal(localPARAM{:}); end numDEM = idxSlide-1; switch numDEM case 1 , paramDEM = {'haar'}; case 2 , paramDEM = {'db2'}; case 3 , paramDEM = {'db8'}; end wpdtool('demo',active_fig,paramDEM{:}); wenamngr('Inactive',active_fig); end return end if nargout<1, wshowdrv(mfilename) else idx = 0; slide(1).code = {}; slide(1).text = {}; %========== Slide 1 ========== idx = idx+1; slide(idx).code = { 'figHandle = gcf;' [mfilename ,'(''slidePROC_Init'',figHandle);'] '' }; %========== Slide 3:4 ========== for idx = 2:4 slide(idx).code = { [mfilename ,'(''slidePROC'',figHandle,', int2str(idx), ');'] }; end varargout{1} = slide; end