annotate arrows/@esender/construct.m @ 61:eff6bddf82e3 tip

Finally implemented perceptual brightness thing.
author samer
date Sun, 11 Oct 2015 10:20:42 +0100
parents 672052bd81f8
children
rev   line source
samer@0 1 function u=construct(s,sizes_in)
samer@0 2 fg=fig(s); figure(fg); clf;
samer@0 3 set(gcf,'Name',s.opts.name);
samer@0 4 hpanel = uipanel('title',s.opts.title,'bordertype','line');
samer@0 5 %hpanel = uigridcontainer('v0','GridSize',[1,1]);
samer@0 6 hedit = uicontrol('parent',hpanel,'style','edit','string',s.opts.init,'horizontalalignment','left');
samer@0 7 %hbtn = uicontrol('parent',hpanel,'style','pushbutton','string','send');
samer@0 8 set(hedit,'BackgroundColor',get(0,'DefaultAxesColor'));
samer@0 9 set(hedit,'units','normalized','position',[0,0,1,1]);
samer@0 10 %set(hedit,'ToolTipString','Enter a MATLAB expression to evaluate a send.');
samer@0 11 %set(hbtn,'ToolTipString','Press to resend the last entered expression.');
samer@0 12
samer@0 13 queue = {};
samer@0 14 u=mkunit(s);
samer@0 15 u.process=@proc;
samer@0 16 u.sizes_out = {[1,1]};
samer@0 17 u.dispose = @dispose;
samer@0 18 u.starting = @starting;
samer@0 19 u.stopping = @stopping;
samer@0 20 u.get_state = @()get(hedit,'string');
samer@0 21 u.set_state = @(s)set(hedit,'string',s);
samer@0 22
samer@0 23 function dispose, delete(hpanel); end
samer@0 24 function starting, set(hedit,'Callback',@send); end
samer@0 25 function stopping, set(hedit,'Callback',[]); end
samer@0 26 function x=proc, x=queue; queue={}; end
samer@0 27
samer@0 28 function send(varargin),
samer@0 29 str=get(hedit,'string');
samer@0 30 fprintf('* esender: evaluating %s\n',str);
samer@0 31 try, queue = [queue, {evalin('base',str)}];
samer@0 32 catch fprintf('* esender: ERROR evaluating.\n');
samer@0 33 end
samer@0 34 end
samer@0 35 end