Mercurial > hg > ltpda
diff m-toolbox/classes/@repogui2/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 diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/m-toolbox/classes/@repogui2/buildMainFig.m Wed Nov 23 19:22:13 2011 +0100 @@ -0,0 +1,117 @@ +% BUILDMAINFIG build the main repo gui figure +% +% M Hewitson 22-09-08 +% +% $Id: buildMainFig.m,v 1.5 2008/12/17 12:17:47 hewitson Exp $ +% +function mainfig = buildMainFig(mainfig, varargin) + + + % Some initial setup + import utils.const.* + prefs = getappdata(0, 'LTPDApreferences'); + utils.helper.msg(msg.PROC1, 'building Main Figure'); + + Screen = get(0,'screensize'); + wsize = prefs.repository.winsize; + mainfig.Gproperties.Screen = Screen; + mainfig.Gproperties.Gwidth = wsize(1); + mainfig.Gproperties.Gheight = wsize(2); + mainfig.Gproperties.Gborder = 10; + mainfig.Gproperties.fontsize = prefs.repository.fontsize; + + l = (0.5-mainfig.Gproperties.Gwidth/2); + b = (0.5-mainfig.Gproperties.Gheight/2); + w = mainfig.Gproperties.Gwidth; + h = mainfig.Gproperties.Gheight; + mainfig.Gproperties.Gposition = [l b w h]; + + mainfig.Gproperties.Gcol{1} = [150 180 200]/255; + mainfig.Gproperties.Gcol{2} = [200 200 180]/255; + mainfig.Gproperties.Gcol{3} = [180 150 200]/255; + mainfig.Gproperties.Gcol{4} = [150 200 180]/255; + + if ~isempty(varargin) && ishandle(varargin{1}) + mainfig.handle = varargin{1}; + set(mainfig.handle, 'Tag', 'REPOGUI2mainfig'); + set(mainfig.handle, 'Units', 'normalized'); + else + % Initialize and hide the GUI as it is being constructed. + mainfig.handle = figure('Name', 'LTPDA Repository GUI',... + 'NumberTitle', 'off',... + 'Visible','off',... + 'Units','normalized',... + 'Position',mainfig.Gproperties.Gposition,... + 'Toolbar', 'none',... + 'MenuBar', 'none',... + 'Color', mainfig.Gproperties.Gcol{1},... + 'Resize', 'on',... + 'Tag', 'REPOGUI2mainfig'); + end + + + % Set mainfig callbacks + set(mainfig.handle, 'CloseRequestFcn', {'repogui2.cb_mainfigClose', mainfig}); + + + % Setup GUI elements + + %----------- Status bar + + Hmargin = 0.0; + Vmargin = 0.0; + + %-- Status Txt + Sleft = Hmargin; + Sbottom = Vmargin; + Swidth = 0.1; + Sheight = 0.1; + + sth = uicontrol(mainfig.handle,'Style','text',... + 'String','Status:',... + 'Units','normalized',... + 'Fontsize', mainfig.Gproperties.fontsize,... + 'BackgroundColor', mainfig.Gproperties.Gcol{1},... + 'HorizontalAlignment', 'left',... + 'Position',[Sleft Sbottom Swidth Sheight], ... + 'Tag', 'RepoguiStatusLabel'); + %-- Status bar + Sleft = 0.1; + Swidth = 0.9-0.02; + Sheight = 0.10-0.02; + Sbottom = 0.02; + sth = uicontrol(mainfig.handle,'Style','text',... + 'String','not connected',... + 'Units','normalized',... + 'Fontsize', mainfig.Gproperties.fontsize,... + 'BackgroundColor', 'w',... + 'ForegroundColor', 'r', ... + 'HorizontalAlignment', 'left',... + 'Max', 100,... + 'Position',[Sleft Sbottom Swidth Sheight],... + 'Tag', 'RepoguiStatusTxt'); + + %------------------------------------------------------------------------ + %------------------------------------------------------------------------ + %----------- TAB PANEL + %------------------------------------------------------------------------ + %------------------------------------------------------------------------ + PanLeft = Hmargin; + Tleft = PanLeft + Hmargin; + Theight = 1-2*Vmargin -0.1 - 0.01; + Tbottom = 0.1; + Twidth = 1; + + htab = uitabgroup('v0', 'Parent', mainfig.handle, ... + 'Units','normalized',... + 'Position',[Tleft Tbottom Twidth Theight],... + 'BackgroundColor', mainfig.Gproperties.Gcol{1}, ... + 'SelectionChangeFcn', {'repogui2.cb_tabChanged', mainfig}); + t1 = uitab('v0', htab, 'title', 'Connect'); + t2 = uitab('v0', htab, 'title', 'Submit'); + t3 = uitab('v0', htab, 'title', 'Query'); + t4 = uitab('v0', htab, 'title', 'Retrieve'); + + % Set app data + mainfig.panels = [t1 t2 t3 t4]; +end