Loading Data.m +10 −4 Original line number Diff line number Diff line Loading @@ -9,6 +9,7 @@ classdef Data < handle function_name = []; function_inputs = []; settings = []; checked = []; open = []; fig = []; end Loading @@ -21,12 +22,13 @@ classdef Data < handle end function [] = setData(object, grid0, grid1, grid2, name, inputs) function [] = setData(object, grid0, grid1, grid2, name, inputs, checked) object.Grid0 = grid0; object.Grid1 = grid1; object.Grid2 = grid2; object.function_name = name; object.function_inputs = inputs; object.checked = checked; end function [] = init(object) Loading @@ -37,16 +39,18 @@ classdef Data < handle object.Grid2.set_rGrid(object.Grid0); object.Grid2.new_Cell; object.Grid1.new_Cell; object.checked = 0; end function [grid0, grid1, grid2, name, inputs] = getData(object) function [grid0, grid1, grid2, name, inputs, checked] = getData(object) grid0 = object.Grid0; grid1 = object.Grid1; grid2 = object.Grid2; name = object.function_name; inputs = object.function_inputs; checked = object.checked; end function valid = valid(object) Loading @@ -71,8 +75,10 @@ classdef Data < handle function copy = clone(obj,handle) % assume that dialog is closed copy = Data(); copy.function_name = get(handle,'Name') copy.function_inputs = obj.function_inputs copy.function_name = get(handle,'Name'); copy.function_inputs = obj.function_inputs; copy.checked = obj.checked; copy.settings = obj.settings; copy.Grid2 = Grid(2,[]); Loading GUI.m +47 −5 Original line number Diff line number Diff line Loading @@ -46,7 +46,7 @@ classdef GUI < handle input_label = []; Data = []; PVS = []; pvs_checked = []; mode = []; end Loading @@ -68,6 +68,7 @@ classdef GUI < handle obj.Grid0 = Data.Grid0; obj.Grid1 = Data.Grid1; obj.Grid2 = Data.Grid2; obj.pvs_checked = Data.checked; obj.function_name_text = Data.function_name; obj.function_inputs_text = Data.function_inputs; obj.settings = Data.settings; Loading Loading @@ -219,6 +220,9 @@ classdef GUI < handle uimenu(pvsmenu,'Label','Typecheck','Accelerator','t','Callback',@(src,event)pvs_ext_call(obj,src,event)); uimenu(pvsmenu,'Label','PVS Settings','Callback',@(src,event)settings_call(obj,src,event)); obj.set_command_pos; obj.reset_wh(); obj.draw_allgrids(1); Loading @@ -234,6 +238,9 @@ classdef GUI < handle end obj.update_Statusbar; obj.PVS = PVS_checker(obj,obj.settings); obj.initialized = 1; Loading @@ -243,6 +250,25 @@ classdef GUI < handle end function [] = update_Statusbar(object) warning off MATLAB:HandleGraphics:ObsoletedProperty:JavaFrame % statusbar depends on JavaFrame which may be obsolete in % future versions of Matlab, can still use in old versions try if (object.pvs_checked == 0) sb = statusbar(object.fig, 'Status: Not Typechecked'); set(sb.TextPanel,'Foreground',[1,0,0]); elseif (object.pvs_checked == 1) sb = statusbar(object.fig, 'Status: Typechecked'); set(sb.TextPanel,'Foreground',[0,1,0]); end catch exception end end function [] = new_call(object,src,event) TableToolMatlab end Loading Loading @@ -340,7 +366,12 @@ classdef GUI < handle function [] = pvs_ext_call(object,src,event) error = object.check_call; if (~error) object.PVS.pvs_check; check = object.PVS.pvs_check; if (check == 1) msgbox('table is valid') end object.pvs_checked = check; object.update_Statusbar; end end Loading Loading @@ -386,8 +417,8 @@ classdef GUI < handle %make sure we are not looking at the library model %if (strcmp(model,'eml_lib') || strcmp(model,'simulink')) %create a new model found = find_system('Table') if isempty(found) found = any(ismember(find_system('type', 'block_diagram'),'Table')) if found == 0 new_system('Table','Model') Loading Loading @@ -840,6 +871,8 @@ classdef GUI < handle end %NEEDS TO BE CLEANED UP! %% generate_code % this function will generate a string that represents the Loading Loading @@ -1233,8 +1266,10 @@ classdef GUI < handle % new storage object.Data.function_name = get(object.function_name_control,'String'); object.Data.function_inputs = get(object.function_inputs_control,'String'); object.Data.checked = object.pvs_checked; object.Data.open = 0; object.Data.fig = []; set.set = 1; set.inputs = object.settings.pvs_includes; set.count = object.settings.counter_trials; Loading Loading @@ -1696,8 +1731,15 @@ classdef GUI < handle 'fontweight','bold',... 'BackgroundColor',[1 1 1],... 'horizontalalign','center',... 'KeyPressFcn',@(src,event)textbox_callback(obj,src,event),... 'fontsize',11); end %% function [] = textbox_callback(object,src,event) object.pvs_checked = 0; object.update_Statusbar end %% clone % creates copy of object Loading PVS_checker.m +3 −2 Original line number Diff line number Diff line Loading @@ -20,7 +20,8 @@ classdef PVS_checker < handle end %% pvs_ext_call function [] = pvs_check(obj) function check = pvs_check(obj) check = 0; % file name will be expression_name.m fileid = fopen([get(obj.gui.function_name_control,'String') '.pvs'],'w'); code = []; Loading Loading @@ -82,7 +83,7 @@ classdef PVS_checker < handle else if (isempty(parsed)) msgbox('table is valid') check = 1; else Valid_Report = ValidationReport(obj.gui); Valid_Report.set_results(parsed); Loading TTdiag.m +3 −1 Original line number Diff line number Diff line Loading @@ -4,17 +4,19 @@ orig_gcbh = gcbh; Action = varargin{1}; Mode = varargin{2}; switch Action, case 'Open', Mode = varargin{2}; if 1 ~= nargin DAStudio.warning('improper function use') end blockHandleTTTopMask = orig_gcbh; switch Mode, case 'Simulink' LocalOpenBlockFcn(blockHandleTTTopMask,1); case 'Matlab' Loading TableToolMatlab.m 0 → 100644 +7 −0 Original line number Diff line number Diff line function [ output_args ] = TableToolMatlab( input_args ) %TABLETOOLMATLAB Summary of this function goes here % Detailed explanation goes here TTdiag('Open','Matlab') end Loading
Data.m +10 −4 Original line number Diff line number Diff line Loading @@ -9,6 +9,7 @@ classdef Data < handle function_name = []; function_inputs = []; settings = []; checked = []; open = []; fig = []; end Loading @@ -21,12 +22,13 @@ classdef Data < handle end function [] = setData(object, grid0, grid1, grid2, name, inputs) function [] = setData(object, grid0, grid1, grid2, name, inputs, checked) object.Grid0 = grid0; object.Grid1 = grid1; object.Grid2 = grid2; object.function_name = name; object.function_inputs = inputs; object.checked = checked; end function [] = init(object) Loading @@ -37,16 +39,18 @@ classdef Data < handle object.Grid2.set_rGrid(object.Grid0); object.Grid2.new_Cell; object.Grid1.new_Cell; object.checked = 0; end function [grid0, grid1, grid2, name, inputs] = getData(object) function [grid0, grid1, grid2, name, inputs, checked] = getData(object) grid0 = object.Grid0; grid1 = object.Grid1; grid2 = object.Grid2; name = object.function_name; inputs = object.function_inputs; checked = object.checked; end function valid = valid(object) Loading @@ -71,8 +75,10 @@ classdef Data < handle function copy = clone(obj,handle) % assume that dialog is closed copy = Data(); copy.function_name = get(handle,'Name') copy.function_inputs = obj.function_inputs copy.function_name = get(handle,'Name'); copy.function_inputs = obj.function_inputs; copy.checked = obj.checked; copy.settings = obj.settings; copy.Grid2 = Grid(2,[]); Loading
GUI.m +47 −5 Original line number Diff line number Diff line Loading @@ -46,7 +46,7 @@ classdef GUI < handle input_label = []; Data = []; PVS = []; pvs_checked = []; mode = []; end Loading @@ -68,6 +68,7 @@ classdef GUI < handle obj.Grid0 = Data.Grid0; obj.Grid1 = Data.Grid1; obj.Grid2 = Data.Grid2; obj.pvs_checked = Data.checked; obj.function_name_text = Data.function_name; obj.function_inputs_text = Data.function_inputs; obj.settings = Data.settings; Loading Loading @@ -219,6 +220,9 @@ classdef GUI < handle uimenu(pvsmenu,'Label','Typecheck','Accelerator','t','Callback',@(src,event)pvs_ext_call(obj,src,event)); uimenu(pvsmenu,'Label','PVS Settings','Callback',@(src,event)settings_call(obj,src,event)); obj.set_command_pos; obj.reset_wh(); obj.draw_allgrids(1); Loading @@ -234,6 +238,9 @@ classdef GUI < handle end obj.update_Statusbar; obj.PVS = PVS_checker(obj,obj.settings); obj.initialized = 1; Loading @@ -243,6 +250,25 @@ classdef GUI < handle end function [] = update_Statusbar(object) warning off MATLAB:HandleGraphics:ObsoletedProperty:JavaFrame % statusbar depends on JavaFrame which may be obsolete in % future versions of Matlab, can still use in old versions try if (object.pvs_checked == 0) sb = statusbar(object.fig, 'Status: Not Typechecked'); set(sb.TextPanel,'Foreground',[1,0,0]); elseif (object.pvs_checked == 1) sb = statusbar(object.fig, 'Status: Typechecked'); set(sb.TextPanel,'Foreground',[0,1,0]); end catch exception end end function [] = new_call(object,src,event) TableToolMatlab end Loading Loading @@ -340,7 +366,12 @@ classdef GUI < handle function [] = pvs_ext_call(object,src,event) error = object.check_call; if (~error) object.PVS.pvs_check; check = object.PVS.pvs_check; if (check == 1) msgbox('table is valid') end object.pvs_checked = check; object.update_Statusbar; end end Loading Loading @@ -386,8 +417,8 @@ classdef GUI < handle %make sure we are not looking at the library model %if (strcmp(model,'eml_lib') || strcmp(model,'simulink')) %create a new model found = find_system('Table') if isempty(found) found = any(ismember(find_system('type', 'block_diagram'),'Table')) if found == 0 new_system('Table','Model') Loading Loading @@ -840,6 +871,8 @@ classdef GUI < handle end %NEEDS TO BE CLEANED UP! %% generate_code % this function will generate a string that represents the Loading Loading @@ -1233,8 +1266,10 @@ classdef GUI < handle % new storage object.Data.function_name = get(object.function_name_control,'String'); object.Data.function_inputs = get(object.function_inputs_control,'String'); object.Data.checked = object.pvs_checked; object.Data.open = 0; object.Data.fig = []; set.set = 1; set.inputs = object.settings.pvs_includes; set.count = object.settings.counter_trials; Loading Loading @@ -1696,8 +1731,15 @@ classdef GUI < handle 'fontweight','bold',... 'BackgroundColor',[1 1 1],... 'horizontalalign','center',... 'KeyPressFcn',@(src,event)textbox_callback(obj,src,event),... 'fontsize',11); end %% function [] = textbox_callback(object,src,event) object.pvs_checked = 0; object.update_Statusbar end %% clone % creates copy of object Loading
PVS_checker.m +3 −2 Original line number Diff line number Diff line Loading @@ -20,7 +20,8 @@ classdef PVS_checker < handle end %% pvs_ext_call function [] = pvs_check(obj) function check = pvs_check(obj) check = 0; % file name will be expression_name.m fileid = fopen([get(obj.gui.function_name_control,'String') '.pvs'],'w'); code = []; Loading Loading @@ -82,7 +83,7 @@ classdef PVS_checker < handle else if (isempty(parsed)) msgbox('table is valid') check = 1; else Valid_Report = ValidationReport(obj.gui); Valid_Report.set_results(parsed); Loading
TTdiag.m +3 −1 Original line number Diff line number Diff line Loading @@ -4,17 +4,19 @@ orig_gcbh = gcbh; Action = varargin{1}; Mode = varargin{2}; switch Action, case 'Open', Mode = varargin{2}; if 1 ~= nargin DAStudio.warning('improper function use') end blockHandleTTTopMask = orig_gcbh; switch Mode, case 'Simulink' LocalOpenBlockFcn(blockHandleTTTopMask,1); case 'Matlab' Loading
TableToolMatlab.m 0 → 100644 +7 −0 Original line number Diff line number Diff line function [ output_args ] = TableToolMatlab( input_args ) %TABLETOOLMATLAB Summary of this function goes here % Detailed explanation goes here TTdiag('Open','Matlab') end