diff m-toolbox/m/gui/gltpda/g_LoadFromBlockCallback.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/m/gui/gltpda/g_LoadFromBlockCallback.m	Wed Nov 23 19:22:13 2011 +0100
@@ -0,0 +1,33 @@
+    function g_LoadFromBlockCallback(currPanel,varargin)   
+    % This callback is called whenever the user selects a From block.
+    
+        global guiFontSize
+        panelDimens = get(currPanel, 'Position');
+        backColor   = get(currPanel, 'BackgroundColor');
+       
+      % Button: 'Find origin'
+        uicontrol('Parent',currPanel,'Units','pixels','HorizontalAlignment','center','Position',[(panelDimens(4)-200)/2 panelDimens(4)-100 200 30],'String','Find origin','FontSize',guiFontSize+1,'Visible','on','Enable','on','Callback',@FindOriginCallback,'Style','pushbutton');
+    
+        
+        
+    %----------------------------------------------------------------------
+    function FindOriginCallback(varargin)   
+    % This callback is called whenever click on the 'Find Origin' button,
+    % having selected a 'From' block.
+    
+        varName = get(gcbh,'GotoTag');
+        origin = utils.prog.find_in_models(bdroot,'LookUnderMasks','all','BlockType','Goto','GotoTag',varName);
+        if numel(origin)>1
+          % Error text: there are multiple origins.
+            uicontrol('Parent',currPanel,'BackgroundColor',backColor,'Units','pixels','HorizontalAlignment','center','Position',[(panelDimens(4)-400)/2 panelDimens(4)-160 400 30],'String','Error: there are multiple sources','Visible','on','Style','text');
+        elseif numel(origin)==1
+          % Text: full path of the origin.
+            uicontrol('Parent',currPanel,'BackgroundColor',backColor,'Units','pixels','HorizontalAlignment','center','Position',[(panelDimens(4)-400)/2 panelDimens(4)-160 400 30],'String',origin{1},'Visible','on','Style','text');
+        else
+          % Error text: no origin found.
+            uicontrol('Parent',currPanel,'BackgroundColor',backColor,'Units','pixels','HorizontalAlignment','center','Position',[(panelDimens(4)-400)/2 panelDimens(4)-160 400 30],'String','Error: no source found','Visible','on','Style','text');
+        end
+    end
+    %----------------------------------------------------------------------
+            
+    end