www.gusucode.com > mbcview 工具箱matlab源码程序 > mbcview/+cageview/+project/GetStartedPane.m
classdef GetStartedPane < mbcgui.multiview.View %GetStartedPane CAGE get started view % Copyright 2016-2016 The MathWorks, Inc. properties (SetAccess=private) %ProjectPane list of projects ProjectPane %ButtonPane main task buttons ButtonPane %Summary project summary list Summary end properties %Browser handle Browser end methods function obj = GetStartedPane(varargin) %GetStartedPane constructor obj@mbcgui.multiview.View(varargin{:}) create(obj); % update when root or current node is changed obj.addListeners(handle.listener(obj.Browser,obj.Browser.findprop('RootNode'),'PropertyPostSet',@obj.onUpdate)) end function update(obj) %update project and buttons update(obj.ProjectPane); update(obj.ButtonPane); update(obj.Summary); end function updateSummary(obj) %update project summary update(obj.Summary); end function create(obj) %create create ui component % project pane actions = cageview.project.ProjectActions(obj.Browser); obj.ProjectPane = mbcmodelview.project.ProjectPane('Parent',obj.Parent,... 'MessageService',obj.MessageService,'ProjectActions',actions); obj.Summary = cageview.project.Summary('Parent',obj.Parent,... 'MessageService',obj.MessageService); lhsLyt = xreggridbaglayout(obj.Parent,... 'dimension',[2 1],... 'rowsizes',[-1 140],... 'elements',{obj.ProjectPane,obj.Summary}); obj.ButtonPane = cageview.project.ButtonPanel('Parent',obj.Parent,... 'Mode','startpage',... 'MessageService',obj.MessageService,'Browser',obj.Browser); mainLayout = xregsnapsplitlayout(obj.Parent,... 'barstyle', 0,... 'orientation', 'lr',... 'left', lhsLyt ,... 'right', obj.ButtonPane,... 'minwidth',[250 400],... 'split', [0.02 0.98],... 'border',[-1 2 -1 -1],... 'style','toleft'); obj.ContentHandle = mainLayout; update(obj) end function onUpdate(obj,~,~) %onUpdate update on new project update(obj) end end end