www.gusucode.com > mbc 工具箱 matlab 源码程序 > mbc/mbcabout.m

    function mbcabout
%MBCABOUT  Open an "about" box displaying MBC information
%
%  MBCABOUT

%  Copyright 2000-2015 The MathWorks, Inc. and Ford Global Technologies, Inc.


d = mbcgui.container.Dialog( 'Name','About the Model-Based Calibration Toolbox',...
    'Resize', 'off',...
    'Size', [516 550],....
    'Buttons', 'CLOSE' );
fH = d.Figure;

imframe = mbcgui.widget.AxesPanel('Parent', fH, ...
    'BorderType', 'beveledin');
set(imframe.AxesHandle, ...
    'XLim', [0.5 499.5], 'YLim', [.5 299.5], ...
    'YDir', 'reverse', ...
    'XTick', [], 'YTick', [], ...
    'Visible', 'off');
image('Parent', imframe.AxesHandle, ...
    'CData', xregresload('mbcsplash.bmp', 'bmp'));

% text to layer on top of image
text('Parent', imframe.AxesHandle, ...
    'FontSize', 16, ...
    'FontWeight', 'bold', ...
    'HorizontalAlignment', 'right', ...
    'VerticalAlignment', 'top', ...
    'Position', [480 20 1], ...
    'String', 'Model-Based Calibration Toolbox');
text('Parent', imframe.AxesHandle, ...
    'FontSize', 14, ...
    'FontWeight', 'bold', ...
    'HorizontalAlignment', 'right', ...
    'VerticalAlignment', 'top', ...
    'Position', [480 50 1], ...
    'String', ['Version ' mbcver]);

addonframe = mbcgui.container.layoutpanel('Parent', fH, ...
    'Title', 'Add ons', ...
    'BorderType', 'etchedin'); 
addontxt=uicontrol('Style','text',...
    'Parent',addonframe,...
    'HorizontalAlignment','left',...
    'String','The following packages of additional functionality have been detected by the MBC toolbox:');

addonlist = mbcwidgets.Table1D( 'list', 'Parent', addonframe, 'SelectionMode', 'MultiRow' );
addonlist.Peer.setColumnWidths( [370, 116]  );
addonlist.Peer.setColumnData( {'Name', 'Version'} );

addonInfo = cell(0,2);

ext = mbcextensions.Extensions.Model;
for n=1:ext.NumAddOns
    addonInfo(end+1, 1:2) = {ext.AddOnNames{n}, ext.AddOnVersions{n}};
end

ext=mbcextensions.Extensions.Cage;
for n=1:ext.NumAddOns
    addonInfo(end+1, 1:2) = {ext.AddOnNames{n}, ext.AddOnVersions{n}};
end

addonlist.Peer.setData( addonInfo );

frmgrd=xreggridbaglayout(addonframe,'dimension',[2 1],...
    'packstatus','off',...
    'rowsizes',[15 -1],...
    'gapy',5,...
    'border', [10 10 10 10], ...
    'elements',{addontxt,addonlist});
set(addonframe, 'LayoutComponent', {frmgrd});

d.Content = xreggridbaglayout(fH,...
    'dimension',[2 3],...
    'rowsizes',[302 -1],...
    'colsizes',[-1 502 -1],...
    'gapy',10,...
    'elements',{[],[],imframe,addonframe});
d.showDialog();
delete(d)