function outInfo=ematinfo
%EMATINFO MATLAB Tour helper function for keeping list data.

%    Yama Habibzai
%   Copyright (c) 1984-98 by The MathWorks, Inc. All Rights Reserved
%    $Revision: 1.18 $
%    $Date: 1998/12/31 21:12:29 $ 

n =1;
cmath=0;
cplusplus=0;
compiler=0;

instald = matinfo;
figs = allchild(0);
figNumber = findobj(figs, 'Name', 'MATLAB Tour');
param = get(figNumber, 'userdata');
toolboxes = param.toolboxes;

tbxList(n).DemoList = ' ';
tbxList(n).Name = 'MATLAB';
tbxList(n).FcnList = ' ';
tbxList(n).Help = ' ';
% *******************

%--- Help desk
n = n+1;
tbxList(n).DemoList = {'Help Desk (HTML)'
'Help Window'
'Help Tips'};
tbxList(n).FcnList = {'helpdesk'
'helpwin'
'helpwin(''helpinfo'')'};
tbxList(n).Help = ' ';
tbxList(n).Name = ['   ','Help'];;

%------------------
%% New for V5
n = n +1;
tbxList(n).DemoList = {'New in MATLAB 5.3',
'New in MATLAB 5'
'Structures',
'Cell arrays',
'Multi-dimensional arrays',
'Lighting example - light bulbs'
'Lighting example - donut shape'
'Patch Object Example - Truck'
'Patch Object Example - Spine'};
tbxList(n).FcnList = {'helpwin(''general/Readme'')'
'evalcb(''toolInfo'')',
'strucdem',
'cel_dem',
'nddemo',
'lightdm'
'donut'
'truck'
'spine'};
tbxList(n).Help  = about('newforv5');
tbxList(n).Name = ['   ','New Features'];

%% Add extra stuff to matinfo ..
    for i = 1:size(instald, 2);
  if  strcmp(instald(i).Name, 'Matrices')
    n = n+1;
    tbxList(n).DemoList = instald(i).DemoList;
    tbxList(n).DemoList{size(tbxList(n).DemoList, 1)+1} = 'More on MATLAB Matrices'; 
    tbxList(n).FcnList = instald(i).FcnList;
    tbxList(n).FcnList{size(tbxList(n).FcnList, 1)+1} = 'evalcb(''toolInfo'')';
    tbxList(n).Help = instald(i).Help;
    tbxList(n).Name=['   ',instald(i).Name];
  end
end
    
%----------------
for i = 1:size(instald, 2);
  if  strcmp(instald(i).Name, 'Numerics')
    n = n+1;
    tbxList(n).DemoList = instald(i).DemoList;
    tbxList(n).DemoList{size(tbxList(n).DemoList, 1)+1} = 'More on Numerics'; 
    tbxList(n).FcnList = instald(i).FcnList;
    tbxList(n).FcnList{size(tbxList(n).FcnList, 1)+1} = 'evalcb(''toolInfo'')';
    tbxList(n).Help = instald(i).Help;
    tbxList(n).Name=['   ',instald(i).Name]; 
  end
end

%----------------

for i = 1:size(instald, 2);
  if  strcmp(instald(i).Name, 'Visualization')
    n = n+1;
    tbxList(n).DemoList = instald(i).DemoList;
    tbxList(n).DemoList{size(tbxList(n).DemoList, 1)+1} = 'Hubble telescope captured Image';
    tbxList(n).DemoList{size(tbxList(n).DemoList, 1)+1} = 'More on Visualization with MATLAB';
    tbxList(n).FcnList = instald(i).FcnList;
    tbxList(n).FcnList{size(tbxList(n).FcnList, 1)+1} = 'ngc6543';
    tbxList(n).FcnList{size(tbxList(n).FcnList, 1)+1} = 'evalcb(''toolInfo'')';
    tbxList(n).Help = instald(i).Help;
    tbxList(n).Name=['   ',instald(i).Name];;
  end
end

%----------------

for i = 1:size(instald, 2);
  if  strcmp(instald(i).Name, 'Language/Graphics')
    n = n+1;
    tbxList(n).DemoList = instald(i).DemoList;
    tbxList(n).DemoList{size(tbxList(n).DemoList, 1)+1} = 'An introduction to MATLAB M-files' ;
    tbxList(n).DemoList{size(tbxList(n).DemoList, 1)+1} = 'List of Language Functions' ;
    tbxList(n).DemoList{size(tbxList(n).DemoList, 1)+1} = 'More on MATLAB Language' ;
    tbxList(n).FcnList = instald(i).FcnList;
    tbxList(n).FcnList{size(tbxList(n).FcnList, 1)+1} = 'mcode';
    tbxList(n).FcnList{size(tbxList(n).FcnList, 1)+1} = 'helpwin(help(''lang''))';
    tbxList(n).FcnList{size(tbxList(n).FcnList, 1)+1} = 'evalcb(''toolInfo'')';
    tbxList(n).Help = instald(i).Help;
    tbxList(n).Name=['   ',instald(i).Name];
  end
end
%----------------

for i = 1:size(instald, 2);
  if  strcmp(instald(i).Name, 'Gallery')
    n = n+1;
    tbxList(n).DemoList = instald(i).DemoList;
    tbxList(n).DemoList{size(tbxList(n).DemoList, 1)+1} = 'More on the MATLAB Gallery' ;
    tbxList(n).FcnList = instald(i).FcnList;
    tbxList(n).FcnList{size(tbxList(n).FcnList, 1)+1} = 'evalcb(''toolInfo'')';
    tbxList(n).Help = instald(i).Help;
    tbxList(n).Name=['   ',instald(i).Name];
  end
end
%----------------

for i = 1:size(instald, 2);
  if  strcmp(instald(i).Name, 'Games')
    n = n+1;
    tbxList(n).DemoList = instald(i).DemoList;
    tbxList(n).DemoList{size(tbxList(n).DemoList, 1)+1} = 'More on MATLAB Games' ;
    tbxList(n).FcnList = instald(i).FcnList;
    tbxList(n).FcnList{size(tbxList(n).FcnList, 1)+1} = 'evalcb(''toolInfo'')';
    tbxList(n).Help = instald(i).Help;
    tbxList(n).Name=['   ',instald(i).Name];
  end
end
%----------------

for i = 1:size(instald, 2);
  if  strcmp(instald(i).Name, 'Miscellaneous')
    n = n+1;
    tbxList(n).DemoList = instald(i).DemoList;
    tbxList(n).FcnList = instald(i).FcnList;
    tbxList(n).Help = instald(i).Help;
    tbxList(n).Name=['   ',instald(i).Name];
  end
end

%----------------
n = n+1;

tbxList(n).DemoList={'More on MATLAB UI design'
'Guide'};

tbxList(n).FcnList={'evalcb(''toolInfo'')'
'gen_info ginfo'};
    
tbxList(n).Help= ...
    {'MATLAB lets you build custom user interfaces for your'
'applications.  You can create custom, interactive'
'environments for your MATLAB applications that include'
'push buttons, pop-up menus, radio buttons, check boxes,'
'and editable text fields. '
' '
'Some Toolboxes, such as the Fuzzy Logic and System'
'Identification Toolboxes, are equipped with a'
'graphical user interface. These interfaces let you'
'access much of the Toolbox functionality with no'
'actual programming. '
' '
'These demos and the User interface that you are'
'using right now were built using MATLAB user'
'interface commands.'};

tbxList(n).Name=['   ','Building a User Interface'];

%------------------

% *******************
%   Blank space
n  = n+1;
tbxList(n).DemoList = ' ';
tbxList(n).Name = ' ';
tbxList(n).FcnList = ' ';
tbxList(n).Help = ' ';
% *******************

for i = 1:size(toolboxes, 2);
  if  strcmp(toolboxes(i).Name, 'Compiler')
    n = n+1;
    compiler = 1;
    tbxList(n).DemoList = toolboxes(i).DemoList;
    tbxList(n).DemoList{size(tbxList(n).DemoList, 2)+1} = 'More on MATLAB Compiler';
    tbxList(n).DemoList{size(tbxList(n).DemoList, 2)+2} = 'Compiler details';
    tbxList(n).DemoList{size(tbxList(n).DemoList, 2)+1} = 'Help on this Toolbox';
    tbxList(n).FcnList = toolboxes(i).FcnList;
    tbxList(n).FcnList{size(tbxList(n).FcnList, 2)+1} = 'evalcb(''toolInfo'')';
    tbxList(n).FcnList{size(tbxList(n).FcnList, 2)+2} = 'compdem';
    tbxList(n).FcnList{size(tbxList(n).FcnList, 2)+1} = 'helpwin(help(''compdem''))';
    tbxList(n).Help = toolboxes(i).Help;
    tbxList(n).Name =toolboxes(i).Name;
  end
end


% *******************
for i = 1:size(toolboxes, 2);
  if  strcmp(toolboxes(i).Name, 'C Math Library')
    n = n+1;
    cmath = 1;
    tbxList(n).DemoList = toolboxes(i).DemoList;
    tbxList(n).DemoList{size(tbxList(n).DemoList, 2)+1} = 'More on The MATLAB C Math Library';
    tbxList(n).FcnList = toolboxes(i).FcnList;
    tbxList(n).FcnList{size(tbxList(n).FcnList, 2)+1} = 'evalcb(''toolInfo'')';
    tbxList(n).Help = toolboxes(i).Help;
    tbxList(n).Name = toolboxes(i).Name;
  end
end

% *******************
for i = 1:size(toolboxes, 2);
  if  strcmp(toolboxes(i).Name, 'C++ Math Library')
    n = n+1;
    cmath = 1;
    tbxList(n).DemoList = toolboxes(i).DemoList;
    tbxList(n).DemoList{size(tbxList(n).DemoList, 2)+1} = 'More on The MATLAB C++ Math Library';
    tbxList(n).FcnList = toolboxes(i).FcnList;
    tbxList(n).FcnList{size(tbxList(n).FcnList, 2)+1} = 'evalcb(''toolInfo'')';
    tbxList(n).Help = toolboxes(i).Help;
    tbxList(n).Name = toolboxes(i).Name;
  end
end

if compiler== 0
  n = n+1;
  tbxList(n).DemoList={'More on the MATLAB Compiler',
  'Compiler details',
  'Partial functions help'};
  tbxList(n).FcnList={'evalcb(''toolInfo'')',
  'compdem',
  'comp_con'};
  tbxList(n).Help= about('compiler');
  tbxList(n).Name='MATLAB Compiler';
end

if cmath == 0
  n = n+1;
  tbxList(n).DemoList={'More on The MATLAB C Math Library'};
  tbxList(n).FcnList={'evalcb(''toolInfo'')'};
  tbxList(n).Help= about('cmath');
  tbxList(n).Name='MATLAB C Math Library';
  
end

if cplusplus == 0
  n = n+1;
  tbxList(n).DemoList={'More on The MATLAB C++ Math Library',
    'C++ Math Library details'};
  tbxList(n).FcnList={'evalcb(''toolInfo'')',
   'cplusdmo'};
  tbxList(n).Help= about('cplus');
  tbxList(n).Name='MATLAB C++ Math Library';
 
end

outInfo=tbxList;
    

