annotate scripts/plot/waitbar.m @ 14237:11949c9795a0

Revamp %!demos in m-files to use Octave coding conventions on spacing, etc. Add clf() to all demos using plot features to get reproducibility. Use 64 as input to all colormaps (jet (64)) to get reproducibility. * bicubic.m, cell2mat.m, celldisp.m, cplxpair.m, interp1.m, interp2.m, interpft.m, interpn.m, profile.m, profshow.m, convhull.m, delaunay.m, griddata.m, inpolygon.m, voronoi.m, autumn.m, bone.m, contrast.m, cool.m, copper.m, flag.m, gmap40.m, gray.m, hot.m, hsv.m, image.m, imshow.m, jet.m, ocean.m, pink.m, prism.m, rainbow.m, spring.m, summer.m, white.m, winter.m, condest.m, onenormest.m, axis.m, clabel.m, colorbar.m, comet.m, comet3.m, compass.m, contour.m, contour3.m, contourf.m, cylinder.m, daspect.m, ellipsoid.m, errorbar.m, ezcontour.m, ezcontourf.m, ezmesh.m, ezmeshc.m, ezplot.m, ezplot3.m, ezpolar.m, ezsurf.m, ezsurfc.m, feather.m, fill.m, fplot.m, grid.m, hold.m, isosurface.m, legend.m, loglog.m, loglogerr.m, pareto.m, patch.m, pbaspect.m, pcolor.m, pie.m, pie3.m, plot3.m, plotmatrix.m, plotyy.m, polar.m, quiver.m, quiver3.m, rectangle.m, refreshdata.m, ribbon.m, rose.m, scatter.m, scatter3.m, semilogx.m, semilogxerr.m, semilogy.m, semilogyerr.m, shading.m, slice.m, sombrero.m, stairs.m, stem.m, stem3.m, subplot.m, surf.m, surfc.m, surfl.m, surfnorm.m, text.m, title.m, trimesh.m, triplot.m, trisurf.m, uigetdir.m, uigetfile.m, uimenu.m, uiputfile.m, waitbar.m, xlim.m, ylim.m, zlim.m, mkpp.m, pchip.m, polyaffine.m, spline.m, bicgstab.m, cgs.m, gplot.m, pcg.m, pcr.m, treeplot.m, strtok.m, demo.m, example.m, rundemos.m, speed.m, test.m, calendar.m, datestr.m, datetick.m, weekday.m: Revamp %!demos to use Octave coding conventions on spacing, etc.
author Rik <octave@nomad.inbox5.com>
date Fri, 20 Jan 2012 12:59:53 -0800
parents 72c96de7a403
children 4506eade9f04
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14138
72c96de7a403 maint: update copyright notices for 2012
John W. Eaton <jwe@octave.org>
parents: 14112
diff changeset
1 ## Copyright (C) 2012 John W. Eaton
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
2 ##
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
3 ## This file is part of Octave.
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
4 ##
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
5 ## Octave is free software; you can redistribute it and/or modify it
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
6 ## under the terms of the GNU General Public License as published by
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
7 ## the Free Software Foundation; either version 3 of the License, or (at
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
8 ## your option) any later version.
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
9 ##
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
10 ## Octave is distributed in the hope that it will be useful, but
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
13 ## General Public License for more details.
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
14 ##
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
15 ## You should have received a copy of the GNU General Public License
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
16 ## along with Octave; see the file COPYING. If not, see
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
17 ## <http://www.gnu.org/licenses/>.
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
18
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
19 ## -*- texinfo -*-
13817
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
20 ## @deftypefn {Function File} {@var{h} =} waitbar (@var{frac})
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
21 ## @deftypefnx {Function File} {@var{h} =} waitbar (@var{frac}, @var{msg})
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
22 ## @deftypefnx {Function File} {@var{h} =} waitbar (@dots{}, "FigureProperty", "Value", @dots{})
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
23 ## @deftypefnx {Function File} {} waitbar (@var{frac})
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
24 ## @deftypefnx {Function File} {} waitbar (@var{frac}, @var{hwbar})
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
25 ## @deftypefnx {Function File} {} waitbar (@var{frac}, @var{hwbar}, @var{msg})
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
26 ## Return a handle @var{h} to a new waitbar object. The waitbar is
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
27 ## filled to fraction @var{frac} which must be in the range [0, 1]. The
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
28 ## optional message @var{msg} is centered and displayed above the waitbar.
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
29 ## The appearance of the waitbar figure window can be configured by passing
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
30 ## property/value pairs to the function.
13817
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
31 ##
13832
2e4252228f73 waitbar.m: Eliminate docstring reference to waitbar(frac,msg)
Rik <octave@nomad.inbox5.com>
parents: 13822
diff changeset
32 ## When called with a single input the current waitbar, if it exists, is
2e4252228f73 waitbar.m: Eliminate docstring reference to waitbar(frac,msg)
Rik <octave@nomad.inbox5.com>
parents: 13822
diff changeset
33 ## updated to the new value @var{frac}. If there are multiple outstanding
2e4252228f73 waitbar.m: Eliminate docstring reference to waitbar(frac,msg)
Rik <octave@nomad.inbox5.com>
parents: 13822
diff changeset
34 ## waitbars they can be updated individually by passing the handle @var{hwbar}
2e4252228f73 waitbar.m: Eliminate docstring reference to waitbar(frac,msg)
Rik <octave@nomad.inbox5.com>
parents: 13822
diff changeset
35 ## of the specific waitbar to modify.
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
36 ## @end deftypefn
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
37
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
38 ## Author: jwe
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
39
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
40 function retval = waitbar (varargin)
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
41
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
42 persistent curr_waitbar;
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
43
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
44 if (nargin < 1)
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
45 print_usage ();
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
46 endif
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
47
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
48 frac = varargin{1};
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
49 varargin(1) = [];
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
50
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
51 if (! (isnumeric (frac) && isscalar (frac) && frac >= 0 && frac <= 1))
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
52 error ("waitbar: FRAC must be between 0 and 1");
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
53 endif
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
54
13821
4d1927edf194 waitbar: use previous bar if nargin == 1, not nargout == 1
John W. Eaton <jwe@octave.org>
parents: 13818
diff changeset
55 ## Use existing waitbar if it still points to a valid graphics handle.
4d1927edf194 waitbar: use previous bar if nargin == 1, not nargout == 1
John W. Eaton <jwe@octave.org>
parents: 13818
diff changeset
56 if (nargin == 1 && ishandle (curr_waitbar))
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
57 h = curr_waitbar;
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
58 else
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
59 h = false;
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
60 endif
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
61
13817
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
62 if (! isempty (varargin) && isnumeric (varargin{1}))
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
63 if (! ishandle (varargin{1}))
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
64 error ("waitbar: H must be a handle to a waitbar object");
13817
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
65 else
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
66 h = varargin{1};
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
67 varargin(1) = [];
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
68 if (! isfigure (h) || ! strcmp (get (h, "tag"), "waitbar"))
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
69 error ("waitbar: H must be a handle to a waitbar object");
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
70 endif
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
71 endif
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
72 endif
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
73
13817
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
74 msg = false;
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
75
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
76 if (! isempty (varargin))
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
77 msg = varargin{1};
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
78 varargin(1) = [];
13847
9fc597693b0b allow waitbar message to be a cellstr object
John W. Eaton <jwe@octave.org>
parents: 13832
diff changeset
79 if (! (ischar (msg) || iscellstr (msg)))
9fc597693b0b allow waitbar message to be a cellstr object
John W. Eaton <jwe@octave.org>
parents: 13832
diff changeset
80 error ("waitbar: MSG must be a character string or cell array of strings");
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
81 endif
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
82 endif
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
83
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
84 if (rem (numel (varargin), 2) != 0)
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
85 error ("waitbar: invalid number of property-value pairs");
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
86 endif
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
87
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
88 if (h)
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
89 p = findobj (h, "type", "patch");
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
90 set (p, "xdata", [0; frac; frac; 0]);
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
91 ax = findobj (h, "type", "axes");
13847
9fc597693b0b allow waitbar message to be a cellstr object
John W. Eaton <jwe@octave.org>
parents: 13832
diff changeset
92 if (ischar (msg) || iscellstr (msg))
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
93 th = get (ax, "title");
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
94 curr_msg = get (th, "string");
13847
9fc597693b0b allow waitbar message to be a cellstr object
John W. Eaton <jwe@octave.org>
parents: 13832
diff changeset
95 cmp = strcmp (msg, curr_msg);
9fc597693b0b allow waitbar message to be a cellstr object
John W. Eaton <jwe@octave.org>
parents: 13832
diff changeset
96 if (all (cmp(:)))
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
97 set (th, "string", msg);
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
98 endif
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
99 endif
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
100 else
13816
7ee18dc46bbb new and improved non-integer figure handles
John W. Eaton <jwe@octave.org>
parents: 13813
diff changeset
101 h = __go_figure__ (NaN, "position", [250, 500, 400, 100],
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
102 "numbertitle", "off",
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
103 "toolbar", "none", "menubar", "none",
13816
7ee18dc46bbb new and improved non-integer figure handles
John W. Eaton <jwe@octave.org>
parents: 13813
diff changeset
104 "integerhandle", "off",
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
105 "handlevisibility", "callback",
13817
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
106 "tag", "waitbar",
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
107 varargin{:});
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
108
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
109 ax = axes ("parent", h, "xtick", [], "ytick", [],
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
110 "xlim", [0, 1], "ylim", [0, 1],
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
111 "xlimmode", "manual", "ylimmode", "manual",
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
112 "position", [0.1, 0.3, 0.8, 0.2]);
13821
4d1927edf194 waitbar: use previous bar if nargin == 1, not nargout == 1
John W. Eaton <jwe@octave.org>
parents: 13818
diff changeset
113
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
114 patch (ax, [0; frac; frac; 0], [0; 0; 1; 1], [0, 0.35, 0.75]);
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
115
13847
9fc597693b0b allow waitbar message to be a cellstr object
John W. Eaton <jwe@octave.org>
parents: 13832
diff changeset
116 if (! (ischar (msg) || iscellstr (msg)))
13822
38e3bfc4e076 provide default message for waitbar
John W. Eaton <jwe@octave.org>
parents: 13821
diff changeset
117 msg = "Please wait...";
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
118 endif
13822
38e3bfc4e076 provide default message for waitbar
John W. Eaton <jwe@octave.org>
parents: 13821
diff changeset
119 title (ax, msg);
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
120 endif
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
121
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
122 drawnow ();
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
123
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
124 if (nargout > 0)
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
125 retval = h;
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
126 endif
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
127
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
128 ## If there were no errors, update current waitbar.
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
129 curr_waitbar = h;
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
130
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
131 endfunction
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
132
13817
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
133
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
134 %!demo
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
135 %! h = waitbar (0, "0.00%");
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
136 %! for i = 0:0.01:1
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
137 %! waitbar (i, h, sprintf ("%.2f%%", 100*i));
13803
a2e158c3451f provide the waitbar function
John W. Eaton <jwe@octave.org>
parents:
diff changeset
138 %! endfor
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
139 %! close (h);
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
140
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
141 %!demo
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
142 %! h = waitbar (0, "please wait...");
13818
a05e5db7b94e have some fun with waitbar demo #2
John W. Eaton <jwe@octave.org>
parents: 13817
diff changeset
143 %! for i = 0:0.01:0.6
13817
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
144 %! waitbar (i);
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
145 %! endfor
14112
6e9fee72a01c Add missing ";" to line in waitbar.m demo.
Philip Nienhuis <prnienhuis@users.sf.net>
parents: 13847
diff changeset
146 %! i = 0.3;
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
147 %! waitbar (i, h, "don't you hate taking a step backward?");
13832
2e4252228f73 waitbar.m: Eliminate docstring reference to waitbar(frac,msg)
Rik <octave@nomad.inbox5.com>
parents: 13822
diff changeset
148 %! pause (0.5);
13818
a05e5db7b94e have some fun with waitbar demo #2
John W. Eaton <jwe@octave.org>
parents: 13817
diff changeset
149 %! for i = i:0.005:0.7
a05e5db7b94e have some fun with waitbar demo #2
John W. Eaton <jwe@octave.org>
parents: 13817
diff changeset
150 %! waitbar (i, h);
a05e5db7b94e have some fun with waitbar demo #2
John W. Eaton <jwe@octave.org>
parents: 13817
diff changeset
151 %! endfor
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
152 %! waitbar (i, h, "or stalling?");
13832
2e4252228f73 waitbar.m: Eliminate docstring reference to waitbar(frac,msg)
Rik <octave@nomad.inbox5.com>
parents: 13822
diff changeset
153 %! pause (1);
13818
a05e5db7b94e have some fun with waitbar demo #2
John W. Eaton <jwe@octave.org>
parents: 13817
diff changeset
154 %! for i = i:0.003:0.8
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
155 %! waitbar (i, h, "just a little longer now");
13818
a05e5db7b94e have some fun with waitbar demo #2
John W. Eaton <jwe@octave.org>
parents: 13817
diff changeset
156 %! endfor
a05e5db7b94e have some fun with waitbar demo #2
John W. Eaton <jwe@octave.org>
parents: 13817
diff changeset
157 %! for i = i:0.001:1
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
158 %! waitbar (i, h, "please don't be impatient");
13818
a05e5db7b94e have some fun with waitbar demo #2
John W. Eaton <jwe@octave.org>
parents: 13817
diff changeset
159 %! endfor
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
160 %! close (h);
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
161
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
162 %!demo
13817
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
163 %! h1 = waitbar (0, "Waitbar #1");
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
164 %! h2 = waitbar (0, "Waitbar #2");
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
165 %! h2pos = get (h2, "position");
14237
11949c9795a0 Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
166 %! h2pos(1) += (h2pos(3) + 50);
13817
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
167 %! set (h2, "position", h2pos);
13832
2e4252228f73 waitbar.m: Eliminate docstring reference to waitbar(frac,msg)
Rik <octave@nomad.inbox5.com>
parents: 13822
diff changeset
168 %! pause (0.5);
13817
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
169 %! for i = 1:4
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
170 %! waitbar (i/4, h1);
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
171 %! pause (0.5);
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
172 %! waitbar (i/4, h2);
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
173 %! pause (0.5);
13806
a73c0811d2fa more updates for waitbar
John W. Eaton <jwe@octave.org>
parents: 13805
diff changeset
174 %! endfor
13832
2e4252228f73 waitbar.m: Eliminate docstring reference to waitbar(frac,msg)
Rik <octave@nomad.inbox5.com>
parents: 13822
diff changeset
175 %! pause (0.5);
13817
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
176 %! close (h1);
b3e1f9ae64dc waitbar.m: More improvements.
Rik <octave@nomad.inbox5.com>
parents: 13816
diff changeset
177 %! close (h2);
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
178
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
179 %% Test input validation
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
180 %!error <FRAC must be between 0 and 1> waitbar (-0.5)
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
181 %!error <FRAC must be between 0 and 1> waitbar (1.5)
13813
72875370e2d1 allow waitbar test to succeed even if figure 1 exists
John W. Eaton <jwe@octave.org>
parents: 13806
diff changeset
182 %!error <MSG must be a character string> waitbar (0.5, struct ())
13805
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
183 %!error <invalid number of property-value pairs> waitbar (0.5, "msg", "Name")
b3cdef33ac0e waitbar.m: Update docstring. Only return output handle h if requested.
Rik <octave@nomad.inbox5.com>
parents: 13803
diff changeset
184