最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

ReleaseCompatibilityResults

リリース互換性の結果オブジェクト

説明

ReleaseCompatibilityResults オブジェクトは、ツールボックスの特定のバージョン番号の個人用設定をアップグレードした結果を表します。

作成

関数 matlab.settings.loadSettingsCompatibilityResults を使用して、ツールボックスの特定のバージョン番号用の ReleaseCompatibilityResults オブジェクトを作成します。たとえば、次のコマンドは、ツールボックス mytoolbox の version 2ReleaseCompatibilityResults オブジェクトを取得します。

myCompatibilityResults = matlab.settings.loadSettingsCompatibilityResults('mytoolbox','Version2')

ans = 
  ReleaseCompatibilityResults with properties:
               VersionLabel: "Version2"
    PreValidationExceptions: [0×0 matlab.settings.ReleaseCompatibilityException]
                    Results: [1×1 matlab.settings.VersionResults]

プロパティ

すべて展開する

結果のツールボックスのバージョン。string スカラーとして指定します。

例: 'Version2'

検証例外のリスト。リリース互換性の例外オブジェクトの配列として指定します。このリストは、個人用設定をアップグレードする前の、個人用設定ツリーおよび出荷時の設定ツリーの検証時に発生する例外を含みます。

アップグレード結果。バージョン結果オブジェクトとして指定します。

すべて折りたたむ

ツールボックスの出荷時のツリーを作成してからアップグレードを行う関数を作成し、アップグレードが正常に完了していることをテストします。

ツールボックス mytoolbox の出荷時の設定ツリーを作成する関数 createMyToolboxFactoryTree を作成します。

function myToolboxFactoryTree = createMyToolboxFactoryTree()
    myToolboxFactoryTree = matlab.settings.FactoryGroup.createToolboxGroup('mytoolbox', ...
        'Hidden',false);

    toolboxFontGroup = addGroup(myToolboxFactoryTree,'font','Hidden',false)
    addSetting(toolboxFontGroup,'MyFontSize','FactoryValue',11,'Hidden',false, ...
        'ValidationFcn',@matlab.settings.mustBeNumericScalar)    
    addSetting(toolboxFontGroup,'MyFontColor','FactoryValue','Black', ...
        'Hidden',false,'ValidationFcn',@matlab.settings.mustBeStringScalar);
end

空の設定ファイル アップグレーダー オブジェクトを指定して、関数 createMyToolboxSettingsFileUpgraders を作成します。

function upgraders = createMyToolboxSettingsFileUpgraders()
    upgraders = matlab.settings.SettingsFileUpgrader.empty;
end

ツールボックスの settingsInfo.json ファイルを作成します。ルート設定グループ名として mytoolbox、設定ツリー作成関数として createMyToolboxFactoryTree、設定ツリー アップグレード関数として createMyToolboxSettingsFileUpgraders を指定します。settingsInfo.json をツールボックスの resources フォルダーに配置します。

{
"ToolboxGroupName" : "mytoolbox",
"Hidden" : "false",
"CreateTreeFcn" : "createMyToolboxFactoryTree",
"CreateUpgradersFcn" : "createMyToolboxSettingsFileUpgraders"
}

設定ツリー作成関数を含むフォルダーとツールボックスのリソース フォルダーを MATLAB® パスに追加します。次に、mytoolbox の出荷時の設定ツリーを読み込みます。

matlab.settings.reloadFactoryFile('mytoolbox');

関数 settings を使用して設定ツリーのルートにアクセスし、MyFontSize 設定の個人用の値を設定します。

s = settings;
s.mytoolbox.font.MyFontSize.PersonalValue = 15;

createMyToolboxFactoryTree で設定名を FontSize および FontColor に変更します。

function myToolboxFactoryTree = createMyToolboxFactoryTree()
    myToolboxFactoryTree = matlab.settings.FactoryGroup.createToolboxGroup('mytoolbox', ...
        'Hidden',false);

    toolboxFontGroup = addGroup(myToolboxFactoryTree,'font','Hidden',false)
    addSetting(toolboxFontGroup,'FontSize','FactoryValue',11,'Hidden',false, ...
        'ValidationFcn',@matlab.settings.mustBeNumericScalar)    
    addSetting(toolboxFontGroup,'FontColor','FactoryValue','Black', ...
        'Hidden',false,'ValidationFcn',@matlab.settings.mustBeStringScalar);
end

2 つの設定の名前変更を、mytoolbox Version 2 の設定ツリーへの変更として関数 createMyToolboxSettingsFileUpgraders に記録します。

function upgraders = createMyToolboxSettingsFileUpgraders()
    upgraders = matlab.settings.SettingsFileUpgrader('Version2'); 
    upgraders.move('mytoolbox.font.MyFontSize','mytoolbox.font.FontSize'); 
    upgraders.move('mytoolbox.font.MyFontColor','mytoolbox.font.FontColor');
end

mytoolbox の出荷時の設定ツリーを再度読み込みます。

matlab.settings.reloadFactoryFile('mytoolbox');

関数 settings を使用して設定ツリーのルートにアクセスし、FontSize 設定の個人用の値が MyFontSize 設定から正しく移動していることを確認します。

s = settings;
s.mytoolbox.font.FontSize
ans = 
  Setting 'mytoolbox.font.FontSize' with properties:
       ActiveValue: 15
    TemporaryValue: <no value>
     PersonalValue: 15
      FactoryValue: 11

mytoolbox の version 2 のアップグレード結果を取得します。

matlab.settings.loadSettingsCompatibilityResults('mytoolbox','Version2')
ans = 
  ReleaseCompatibilityResults with properties:
               VersionLabel: "Version2"
    PreValidationExceptions: [0×0 matlab.settings.ReleaseCompatibilityException]
                    Results: [1×1 matlab.settings.VersionResults]

R2019b で導入