исправлено открыти файлов app wrapper

исправлено формирвоание строки для записи source и includes
This commit is contained in:
razvalyaev 2025-06-16 16:48:07 +03:00
parent abdf0f1e50
commit e77a659710
3 changed files with 29 additions and 8 deletions

View File

@ -63,7 +63,7 @@ classdef appWrap
block = gcb; block = gcb;
% Получаем имя функции и путь к файлам % Получаем имя функции и путь к файлам
filename = appWrap.getAbsolutePath(mcuMask.getAppWrapperUserFile(block)); filename = mcuPath.getAbsolutePath(appWrap.getAppWrapperUserFile(block));
if exist(filename, 'file') == 2 if exist(filename, 'file') == 2
% Формируем команду без кавычек % Формируем команду без кавычек
cmd = sprintf('rundll32.exe shell32.dll,OpenAs_RunDLL %s', filename); cmd = sprintf('rundll32.exe shell32.dll,OpenAs_RunDLL %s', filename);

View File

@ -175,10 +175,10 @@ classdef mcuMask
return; return;
end end
modelName = bdroot(gcb); % получить имя верхнего уровня модели % modelName = bdroot(gcb); % получить имя верхнего уровня модели
blockName = gcb; % blockName = gcb;
mgr = asynchManage(modelName, blockName); % создать объект класса % mgr = asynchManage(modelName, blockName); % создать объект класса
mgr.saveAndUpdateModel(); % запустить сохранение и обновление % mgr.saveAndUpdateModel(); % запустить сохранение и обновление
end end
function close(blockPath) function close(blockPath)

View File

@ -306,6 +306,27 @@ classdef periphConfig
methods(Static, Access=private) methods(Static, Access=private)
function addHiddenParam(mask, containerName, nameBase, kind, existingParams)
% Преобразуем к красивому имени
prettyName = strrep(nameBase, '_', ' ');
paramName = ['Hidden_' char(nameBase) '_' kind];
if ismember(paramName, existingParams)
return;
end
mask.addParameter( ...
'Name', paramName, ...
'Type', 'edit', ...
'Prompt', ['Hidden ' prettyName ' ' kind], ...
'Value', '', ...
'Visible', 'off', ...
'Container', containerName ...
);
fprintf('Создан скрытый параметр: %s\n', paramName);
end
function clear_tab_params(mask, configStruct, prefix, depth) function clear_tab_params(mask, configStruct, prefix, depth)
if nargin < 4 if nargin < 4
depth = 0; depth = 0;
@ -709,8 +730,8 @@ classdef periphConfig
function clear_single_periph_code_param(mask, periph) function clear_single_periph_code_param(mask, periph)
% Очистка кода одного поля конфига % Очистка кода одного поля конфига
paramNames = { paramNames = {
['Hidden_' periph '_Sources'], ['Hidden_' char(periph) '_Sources'],
['Hidden_' periph '_Includes'] ['Hidden_' char(periph) '_Includes']
}; };
for i = 1:numel(paramNames) for i = 1:numel(paramNames)
@ -739,7 +760,7 @@ classdef periphConfig
% Сохраняем Includes, если они есть % Сохраняем Includes, если они есть
if isfield(code, 'Includes') if isfield(code, 'Includes')
paramName = ['Hidden_' periph '_Includes']; paramName = ['Hidden_' char(periph) '_Includes'];
try try
param = mask.getParameter(paramName); param = mask.getParameter(paramName);
param.Value = periphConfig.convert_code_value(code.Includes); param.Value = periphConfig.convert_code_value(code.Includes);