Mercurial > hg > ltpda
view m-toolbox/classes/@specwinViewer/buildMainfig.m @ 0:f0afece42f48
Import.
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Wed, 23 Nov 2011 19:22:13 +0100 |
parents | |
children |
line wrap: on
line source
% BUILDMAINFIG build the main constructor window % % M Hewitson 18-10-08 % % $Id: buildMainfig.m,v 1.2 2011/05/18 08:25:36 hewitson Exp $ % function mainfig = buildMainfig(mainfig, varargin) % %% Check if I exist already % id = findobj('Tag', 'SIGBUILDERmainfig'); % if ~isempty(id) % figure(id) % return % end %% Some initial setup Screen = get(0,'screensize'); mainfig.Gproperties.Gcol = [255 255 255]/255; mainfig.Gproperties.Screen = Screen; mainfig.Gproperties.Gwidth = 1000; mainfig.Gproperties.Gheight = 600; mainfig.Gproperties.Gborder = 10; mainfig.Gproperties.fontsize = 12; l = (Screen(3)/2-mainfig.Gproperties.Gwidth/2); b = (Screen(4)/2-mainfig.Gproperties.Gheight/2); w = mainfig.Gproperties.Gwidth; h = mainfig.Gproperties.Gheight; mainfig.Gproperties.Gposition = [l b w h]; if ~isempty(varargin) && ishandle(varargin{1}) mainfig.handle = varargin{1}; set(mainfig.handle, 'Tag', 'SPECWINVIEWERmainfig'); % set(mainfig.handle, 'Units', 'normalized'); else % Initialize and hide the GUI as it is being constructed. mainfig.handle = figure('Name', 'LTPDA Specwin Viewer',... 'NumberTitle', 'off',... 'Visible','off',... 'Position',mainfig.Gproperties.Gposition,... 'Toolbar', 'none',... 'MenuBar', 'none',... 'Color', mainfig.Gproperties.Gcol,... 'Resize', 'on',... 'Tag', 'SPECWINVIEWERmainfig'); % 'Units','normalized',... end % Set mainfig callbacks set(mainfig.handle, 'CloseRequestFcn', {'specwinViewer.cb_mainfigClose', mainfig}); %------------------------------------------------------------------------ %- General properties %------------------------------------------------------------------------ hmarg = 0.02; vmarg = 0.02; commHeight = 0.06; % l b w h % make settings panel w = 0.5-2*hmarg; h = 1-2*vmarg; l = hmarg; b = vmarg; span = uipanel(mainfig.handle,... 'Title', 'Settings ', ... 'FontSize', mainfig.Gproperties.fontsize, ... 'BackgroundColor', [0.9 0.9 0.9], ... 'Position', [l b w h], ... 'BorderType', 'line', ... 'BorderWidth', 1, ... 'Tag', 'SettingsPanel', ... 'HighlightColor', [0.5 0.5 0.5]); % make build panel w = 0.5-2*hmarg; h = 1-2*vmarg; l = 0.5+hmarg; b = vmarg; ppan = uipanel(mainfig.handle,... 'Title', 'Build ', ... 'FontSize', mainfig.Gproperties.fontsize, ... 'BackgroundColor', [200 220 240]/255, ... 'Position', [l b w h], ... 'BorderType', 'line', ... 'BorderWidth', 1, ... 'Tag', 'SPECWINVIEWERparamspanel', ... 'HighlightColor', [0.5 0.5 0.5]); %--- Settings % Select window to construct % label l = hmarg; h = commHeight; b = 1-h-3*hmarg; w = 0.35; sth = uicontrol(span, 'Style','text',... 'String', 'Window type ',... 'Units', 'normalized', ... 'HorizontalAlignment', 'right',... 'BackgroundColor', [0.9 0.9 0.9], ... 'Fontsize', mainfig.Gproperties.fontsize, ... 'Position',[l b w h]); % menu box l = l + w + hmarg; w = 0.5; clsh = uicontrol(span, ... 'Style', 'popupmenu', ... 'Units', 'normalized',... 'Fontsize', mainfig.Gproperties.fontsize, ... 'BackgroundColor', 'w', ... 'String', specwin.getTypes, ... 'Position', [l b w h],... 'Tag', 'WindowSelect', ... 'Callback', {'specwinViewer.cb_selectWindow', mainfig}); % Select window size % label b = b - h - hmarg; l = hmarg; w = 0.35; sth = uicontrol(span, 'Style','text',... 'String', 'Window size ',... 'Units', 'normalized', ... 'HorizontalAlignment', 'right',... 'BackgroundColor', [0.9 0.9 0.9], ... 'Fontsize', mainfig.Gproperties.fontsize, ... 'Position',[l b w h]); % menu box l = l + w + hmarg; w = 0.5; ssh = uicontrol(span, ... 'Style', 'edit', ... 'Units', 'normalized',... 'Fontsize', mainfig.Gproperties.fontsize, ... 'BackgroundColor', 'w', ... 'String', '100', ... 'Position', [l b w h],... 'Tag', 'WindowSize'); % Select window psll % label b = b - h - hmarg; l = hmarg; w = 0.35; sth = uicontrol(span, 'Style','text',... 'String', 'Window PSLL ',... 'Units', 'normalized', ... 'HorizontalAlignment', 'right',... 'BackgroundColor', [0.9 0.9 0.9], ... 'Fontsize', mainfig.Gproperties.fontsize, ... 'Position',[l b w h], ... 'Tag', 'WindowPSLLlabel'); % menu box l = l + w + hmarg; w = 0.5; ssh = uicontrol(span, ... 'Style', 'edit', ... 'Units', 'normalized',... 'Fontsize', mainfig.Gproperties.fontsize, ... 'BackgroundColor', 'w', ... 'String', '100', ... 'Position', [l b w h],... 'Tag', 'WindowPSLL'); % Plot time btn w = 0.4; l = hmarg; b = b - h - hmarg; pbh = uicontrol(span,'Style','pushbutton',... 'String','Plot Time-domain',... 'Callback', {'specwinViewer.cb_plotTime', mainfig}, ... 'Units', 'normalized', ... 'Fontsize', mainfig.Gproperties.fontsize, ... 'Position',[l b w h]); % Plot freq btn l = l+w+hmarg; pbh = uicontrol(span,'Style','pushbutton',... 'String','Plot Freq-domain',... 'Callback', {'specwinViewer.cb_plotFreq', mainfig}, ... 'Units', 'normalized', ... 'Fontsize', mainfig.Gproperties.fontsize, ... 'Position',[l b w h]); % info display w = 1-2*hmarg; l = hmarg; h = 0.4; b = b - h - hmarg; pbh = uicontrol(span,'Style','text',... 'String',' ',... 'BackgroundColor', [1 1 1], ... 'ForegroundColor', [0.2 0.2 1], ... 'Units', 'normalized', ... 'Fontsize', 14, ... 'Tag', 'InfoDisplay', ... 'Position',[l b w h]); % constructor display w = 1-2*hmarg; l = hmarg; h = 0.1; b = b - h - hmarg; pbh = uicontrol(span,'Style','edit',... 'String',' ',... 'BackgroundColor', [1 1 1], ... 'ForegroundColor', [0 0 0], ... 'Units', 'normalized', ... 'Fontsize', mainfig.Gproperties.fontsize, ... 'Tag', 'ConstructorDisplay', ... 'Position',[l b w h]); % axes M = 0.01; ax = axes('Position', [0.2+M 0.2 0.7 0.7], ... 'Parent', ppan, ... 'Tag', 'SpecwinViewerAxes', ... 'Visible', 'on', ... 'Box', 'on'); setappdata(mainfig.handle, 'axes', ax); % plot button w = 0.2; l = 1-w-vmarg; b = hmarg; pbh = uicontrol(ppan,'Style','pushbutton',... 'String','plot',... 'Callback', {'specwinViewer.cb_plot', mainfig}, ... 'Units', 'normalized', ... 'Fontsize', mainfig.Gproperties.fontsize, ... 'Position',[l b w h]); % Fire callbacks specwinViewer.cb_selectWindow(mainfig); end