Mercurial > hg > octave-lyh
comparison scripts/plot/__axes_limits__.m @ 7050:bd56a0609c4f
[project @ 2007-10-23 12:02:17 by dbateman]
author | dbateman |
---|---|
date | Tue, 23 Oct 2007 12:02:18 +0000 |
parents | |
children | a730e47fda4d |
comparison
equal
deleted
inserted
replaced
7049:e426f849fc36 | 7050:bd56a0609c4f |
---|---|
1 ## Copyright (C) 2007 David Bateman | |
2 ## | |
3 ## This file is part of Octave. | |
4 ## | |
5 ## Octave is free software; you can redistribute it and/or modify it | |
6 ## under the terms of the GNU General Public License as published by | |
7 ## the Free Software Foundation; either version 3 of the License, or (at | |
8 ## your option) any later version. | |
9 ## | |
10 ## Octave is distributed in the hope that it will be useful, but | |
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
13 ## General Public License for more details. | |
14 ## | |
15 ## You should have received a copy of the GNU General Public License | |
16 ## along with Octave; see the file COPYING. If not, see | |
17 ## <http://www.gnu.org/licenses/>. | |
18 | |
19 ## Undocumented internal function. | |
20 | |
21 function retval = __axes_limits__ (fcn, varargin) | |
22 retval = []; | |
23 fcnmode = sprintf("%smode", fcn); | |
24 | |
25 if (nargin > 1 && isscalar (varargin{1}) && ishandle (varargin{1})) | |
26 h = varargin {1}; | |
27 off = 1; | |
28 if (! strcmp (get (h, "type"), "axes")) | |
29 error ("%s: expecting first argument to be an axes object", fcn); | |
30 endif | |
31 else | |
32 off = 0; | |
33 h = gca (); | |
34 endif | |
35 | |
36 if (nargin == off + 1) | |
37 retval = get (h, fcn); | |
38 else | |
39 arg = varargin {off + 1}; | |
40 | |
41 if (ischar (arg)) | |
42 arg = tolower (arg); | |
43 if (strcmp ("mode", arg)) | |
44 | |
45 retval = get (h, fcnmode); | |
46 elseif (strcmp ("auto", arg) || strcmp ("manual", arg)) | |
47 set (h, fcnmode, arg); | |
48 endif | |
49 else | |
50 if (!isnumeric (arg) && any (size(arg(:)) != [2, 1])) | |
51 error ("%s: argument must be a 2 element vector", fcn); | |
52 else | |
53 set (h, fcn, arg (:)); | |
54 endif | |
55 endif | |
56 endif | |
57 endfunction |