tomwalters@0: % procedure for 'aim-mat' tomwalters@0: % tomwalters@0: % INPUT VALUES: tomwalters@0: % tomwalters@0: % RETURN VALUE: tomwalters@0: % tomwalters@0: % bleeck@3: % tomwalters@0: % (c) 2011, University of Southampton bleeck@3: % Maintained by Stefan Bleeck (bleeck@gmail.com) bleeck@3: % download of current version is on the soundsoftware site: bleeck@3: % http://code.soundsoftware.ac.uk/projects/aimmat bleeck@3: % documentation and everything is on http://www.acousticscale.org tomwalters@0: tomwalters@0: tomwalters@0: function aim_resize_function(obj,eventdata,handles) tomwalters@0: tomwalters@0: fig = gcbo;%returns the handle of the graphics object whose callback is executing. tomwalters@0: old_units = get(fig,'Units'); tomwalters@0: set(fig,'Units','pixels'); tomwalters@0: global figpos tomwalters@0: figpos = get(fig,'Position'); tomwalters@0: tomwalters@0: % if figpos(3) < 640 & figpos(3) >0 tomwalters@0: % figpos(3)=640; tomwalters@0: % set(fig,'Position',figpos); tomwalters@0: % end tomwalters@0: % tomwalters@0: % if figpos(4) < 400 tomwalters@0: % figpos(4)=400; tomwalters@0: % set(fig,'Position',figpos); tomwalters@0: % end tomwalters@0: tomwalters@0: cur_axis=gca; % this is the full size axis with the full size area tomwalters@0: set(cur_axis,'units','pixel'); tomwalters@0: fax=get(gcf,'Position'); % the size of the figure tomwalters@0: relative_axis(1)=10/fax(3); % bottom fixed tomwalters@0: relative_axis(2)=111/fax(4); % bottom right fixed tomwalters@0: relative_axis(3)=(fax(3)-40)/fax(3); % height tomwalters@0: relative_axis(4)=(fax(4)-220)/fax(4); % height tomwalters@0: tomwalters@0: [myaxes1,myaxes2,myaxes3,myaxes4]=aim_define_plot_areas(handles,relative_axis); tomwalters@0: tomwalters@0: % screens=get(0,'ScreenSize'); tomwalters@0: % if figpos(1)+figpos(3)>screens(3) tomwalters@0: % figpos(1)=screens(3)-figpos(3)-5; tomwalters@0: % set(fig,'Position',figpos); tomwalters@0: % end tomwalters@0: % if figpos(2)+figpos(4)>screens(4) tomwalters@0: % figpos(2)=screens(4)-figpos(4)-30; tomwalters@0: % set(fig,'Position',figpos); tomwalters@0: % end tomwalters@0: tomwalters@0: % keep everything on top tomwalters@0: dist1=46; tomwalters@0: dist3=74; tomwalters@0: dist4=104; tomwalters@0: dist5=110; tomwalters@0: tomwalters@0: distr1=107; tomwalters@0: keepontop('frame7',dist5); tomwalters@0: keepontop('frame10',dist5); tomwalters@0: % keepontopright('frame10',dist5,distr1+10); tomwalters@0: tomwalters@0: % keepontop('pushbutton10',dist1-1); tomwalters@0: keepontop('pushbutton0',dist1); tomwalters@0: keepontop('pushbutton2',dist1); tomwalters@0: keepontop('pushbutton3',dist1); tomwalters@0: keepontop('pushbutton4',dist1); tomwalters@0: keepontop('pushbutton5',dist1); tomwalters@0: keepontop('pushbutton6',dist1); tomwalters@0: % keepontopright('pushbutton6',dist1,distr1); tomwalters@0: keepontop('pushbutton21',dist1); tomwalters@0: tomwalters@0: % keepontop('pushbutton11',dist3+2); tomwalters@0: % keepontop('pushbutton8',dist4+3); tomwalters@0: % keepontopright('pushbutton9',179,distr1-6); tomwalters@0: tomwalters@0: keepontop('listbox1',dist3); tomwalters@0: keepontop('listbox2',dist3); tomwalters@0: keepontop('listbox0',dist3); tomwalters@0: keepontop('listbox3',dist3); tomwalters@0: keepontop('listbox4',dist3); tomwalters@0: keepontop('listbox5',dist3); tomwalters@0: % keepontopright('listbox5',dist3,distr1-1); tomwalters@0: keepontop('listbox6',dist3); tomwalters@0: tomwalters@0: keepontop('checkbox0',dist4-5); tomwalters@0: keepontop('checkbox1',dist4-5); tomwalters@0: keepontop('checkbox2',dist4-5); tomwalters@0: keepontop('checkbox3',dist4-5); tomwalters@0: keepontop('checkbox4',dist4-5); tomwalters@0: keepontop('checkbox8',dist4-5); tomwalters@0: keepontop('checkbox5',dist4-5); tomwalters@0: % keepontopright('checkbox5',dist4-5,distr1-38); tomwalters@0: tomwalters@0: tomwalters@0: distr2=101; tomwalters@0: distr3=85; tomwalters@0: distr4=95; tomwalters@0: tomwalters@0: % keeponbottomright('text13',distr2); tomwalters@0: % keeponbottomright('edit1',distr2); tomwalters@0: % keeponbottomright('pushbuttonautoscale',distr2); tomwalters@0: % keeponbottomright('slider1',distr3); tomwalters@0: % keeponbottomright('frame5',distr4); tomwalters@0: tomwalters@0: tomwalters@0: % set the axes to nice sizes: tomwalters@0: hoben=107; % soviel muss oben freibleiben tomwalters@0: hunten=110; % soviel muss unten freibleiben tomwalters@0: hv=figpos(4)-hunten-hoben; % soviel ist verfügbar in der Mitte tomwalters@0: % davon bekommen das Profile und das signal je 14% und das SAI 72%: tomwalters@0: h1=hv*0.14; tomwalters@0: h2=hv*0.72; tomwalters@0: h3=hv*0.14; tomwalters@0: tomwalters@0: tomwalters@0: b1=20; % soweit weg vom linken Rand tomwalters@0: b2=38;% soweit weg vom rechten Rand tomwalters@0: bv=figpos(3)-b1-b2; % soviel Breite ist verfügbar tomwalters@0: % davon bekommen die linken 89% und das Profile 11% tomwalters@0: b3=bv*0.11; tomwalters@0: b4=bv*0.89; tomwalters@0: tomwalters@0: ax1 = findobj('Tag','axes1'); tomwalters@0: ax2 = findobj('Tag','axes2'); tomwalters@0: ax3 = findobj('Tag','axes3'); tomwalters@0: ax4 = findobj('Tag','axes4'); tomwalters@0: set(ax1,'Position',[b1-1 hunten+h1+h2+2 b4 h1]); tomwalters@0: set(ax2,'Position',[b1 hunten+h1+1 b4 h2]); tomwalters@0: set(ax3,'Position',[b1 hunten b4 h3]); tomwalters@0: set(ax4,'Position',[b1+b4+1 hunten+h1+1 b3 h2]); tomwalters@0: tomwalters@0: tomwalters@0: tomwalters@0: set(fig,'Units',old_units); tomwalters@0: tomwalters@0: aim_savecurrentstate(handles);% save the state of the project and the window to a file tomwalters@0: % handles=replotgraphic(handles); tomwalters@0: tomwalters@0: tomwalters@0: function keepontop(name,dist) tomwalters@0: global figpos tomwalters@0: u = findobj('Tag',name); tomwalters@0: correct=+9; tomwalters@0: upos=get(u,'Position'); tomwalters@0: upos = [upos(1), figpos(4) - dist+correct, upos(3), upos(4)]; tomwalters@0: set(u,'Position',upos); tomwalters@0: tomwalters@0: function keepontopright(name,disttop,distright) tomwalters@0: global figpos tomwalters@0: u = findobj('Tag',name); tomwalters@0: correct=+9; tomwalters@0: upos=get(u,'Position'); tomwalters@0: upos = [figpos(3)-distright, figpos(4) - disttop+correct, upos(3), upos(4)]; tomwalters@0: set(u,'Position',upos); tomwalters@0: tomwalters@0: function keeponbottomright(name,distright) tomwalters@0: global figpos tomwalters@0: u = findobj('Tag',name); tomwalters@0: upos=get(u,'Position'); tomwalters@0: upos = [figpos(3)-distright, upos(2), upos(3), upos(4)]; tomwalters@0: set(u,'Position',upos);