Mercurial > hg > octave-nkf
diff scripts/java/msgbox.m @ 15772:0f1a143e5002
Overhaul scripts/java directory to conform to Octave core.
Update docstrings. Use Octave coding conventions. Use default arguments
where possible. Match variable names in docstring to variable names in
function.
HG: Enter commit message. Lines beginning with 'HG:' are removed.
HG: Leave message empty to abort commit.
HG: --
HG: user: Rik <rik@octave.org>
HG: branch 'default'
* errordlg.m, helpdlg.m, inputdlg.m, javaArray.m, javaaddpath.m,
javaclasspath.m, javafields.m, javamem.m, javamethods.m, javarmpath.m,
listdlg.m, msgbox.m, questdlg.m, warndlg.m: Overhaul functions.
Update docstrings. Use Octave coding conventions. Use default arguments
where possible. Match variable names in docstring to variable names in
function.
author | Rik <rik@octave.org> |
---|---|
date | Wed, 12 Dec 2012 13:48:47 -0800 |
parents | 05c781cca57e |
children | eddc68c5e85e |
line wrap: on
line diff
--- a/scripts/java/msgbox.m +++ b/scripts/java/msgbox.m @@ -17,59 +17,59 @@ ## <http://www.gnu.org/licenses/>. ## -*- texinfo -*- -## @deftypefn {Function file} {@var{p} =} msgbox (@var{msg}, @var{title}, @var{ICON}) -## Display @var{msg} using a message dialog. +## @deftypefn {Function File} {@var{h} =} msgbox (@var{msg}) +## @deftypefnx {Function File} {@var{h} =} msgbox (@var{msg}, @var{title}) +## @deftypefnx {Function File} {@var{h} =} msgbox (@var{msg}, @var{title}, @var{icon}) +## Display @var{msg} using a message dialog box. ## ## The message may have multiple lines separated by newline characters ## (@code{"\n"}), or it may be a cellstr array with one element for each -## line. The optional @var{title} (character string) can be used to +## line. The optional input @var{title} (character string) can be used to ## decorate the dialog caption. ## ## The optional argument @var{icon} selects a dialog icon. -## It can be one of @code{"error"}, @code{"help"} or @code{"warn"}. +## It can be one of @code{"none"} (default), @code{"error"}, @code{"help"} or +## @code{"warn"}. ## ## The return value is always 1. -## @seealso{helpdlg, questdlg, warndlg} +## @seealso{errordlg, helpdlg, inputdlg, listdlg, questdlg, warndlg} ## @end deftypefn -function retval = msgbox (message, varargin) +function h = msgbox (msg, title = "", icon) + + if (nargin < 1 || nargin > 3) + print_usage (); + endif - if (! ischar (message)) - if (iscell (message)) - message = cell2mlstr (message); + if (! ischar (msg)) + if (iscell (msg)) + msg = cell2mlstr (msg); else - error ("msgbox: character string or cellstr array expected for message"); + error ("msgbox: MSG must be a character string or cellstr array"); endif endif + + if (! ischar (title)) + error ("msgbox: TITLE must be a character string"); + endif - switch (numel (varargin)) - case 0 - title = ""; - dlg = "emptydlg"; - - case 1 - title = varargin{1}; - dlg = "emptydlg"; - - otherwise - ## two or more arguments - title = varargin{1}; - icon = varargin{2}; - if (strcmp (icon, "error")) + dlg = "emptydlg"; + if (nargin == 3) + switch (icon) + case "error" dlg = "errordlg"; - elseif (strcmp (icon, "help")) + case "help" dlg = "helpdlg"; - elseif (strcmp (icon, "warn")) + case "warn" dlg = "warndlg"; - else + case "none" dlg = "emptydlg"; - end - endswitch - - if (! ischar (title)) - error ("msgbox: character string expected for title"); + otherwise + error ("msgbox: ICON is not a valid type"); + endswitch endif - retval = java_invoke ("org.octave.JDialogBox", dlg, message, title ); + h = java_invoke ("org.octave.JDialogBox", dlg, msg, title); endfunction +