view yesnoQuestion.m @ 1111:1a265a376b36 feature/timesteppers

Clean up time.rk.get_rk4_time_step()
author Jonatan Werpers <jonatan@werpers.com>
date Wed, 10 Apr 2019 22:21:13 +0200
parents 0c166d195f58
children
line wrap: on
line source

function b = yesnoQuestion(question, defaultAnswer)
    default_arg('defaultAnswer','nodefault');

    yesAnswer = {'y','Y','yes','Yes','YES'};
    noAnswer = {'n','N','no','No','NO'};

    switch defaultAnswer
        case 'nodefault'
            optionString = '[y/n]';
        case yesAnswer
            optionString = '[Y/n]';
            yesAnswer{end+1} = '';
        case noAnswer
            optionString = '[y/N]';
            noAnswer{end+1} = '';
        otherwise
            error('Unrecognized default answer: %s', defaultAnswer);
    end

    b = [];
    while isempty(b)
        answer = input([question ' ' optionString ': '],'s');
        switch answer
            case yesAnswer
                b = true;
            case noAnswer
                b = false;
        end
    end
end