Mercurial > hg > octave-nkf
annotate scripts/plot/appearance/gtext.m @ 18823:01aa90ece9a4 stable
axis.m: Fix regression setting tight limits on non-image objects.
* axis.m: Don't apply image pixel calculations to non-image objects.
author | Rik <rik@octave.org> |
---|---|
date | Wed, 23 Apr 2014 22:40:24 -0700 |
parents | d63878346099 |
children | 4197fc428c7d |
rev | line source |
---|---|
17744
d63878346099
maint: Update copyright notices for release.
John W. Eaton <jwe@octave.org>
parents:
17572
diff
changeset
|
1 ## Copyright (C) 2008-2013 David Bateman |
7674
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
2 ## |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
3 ## This file is part of Octave. |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
4 ## |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
5 ## Octave is free software; you can redistribute it and/or modify it |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
6 ## under the terms of the GNU General Public License as published by |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
7 ## the Free Software Foundation; either version 3 of the License, or (at |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
8 ## your option) any later version. |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
9 ## |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
10 ## Octave is distributed in the hope that it will be useful, but |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
13 ## General Public License for more details. |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
14 ## |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
15 ## You should have received a copy of the GNU General Public License |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
16 ## along with Octave; see the file COPYING. If not, see |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
17 ## <http://www.gnu.org/licenses/>. |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
18 |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
19 ## -*- texinfo -*- |
9307
c2923c27c877
Various documentation improvements
Rik <rdrider0-list@yahoo.com>
parents:
9245
diff
changeset
|
20 ## @deftypefn {Function File} {} gtext (@var{s}) |
15070
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
21 ## @deftypefnx {Function File} {} gtext (@{@var{s1}, @var{s2}, @dots{}@}) |
9307
c2923c27c877
Various documentation improvements
Rik <rdrider0-list@yahoo.com>
parents:
9245
diff
changeset
|
22 ## @deftypefnx {Function File} {} gtext (@{@var{s1}; @var{s2}; @dots{}@}) |
17122
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
15072
diff
changeset
|
23 ## @deftypefnx {Function File} {} gtext (@dots{}, @var{prop}, @var{val}, @dots{}) |
15072
20cac6006005
* gtext.m: Fix typo in previous change.
John W. Eaton <jwe@octave.org>
parents:
15070
diff
changeset
|
24 ## @deftypefnx {Function File} {@var{h} =} gtext (@dots{}) |
17122
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
15072
diff
changeset
|
25 ## Place text on the current figure using the mouse. |
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
15072
diff
changeset
|
26 ## |
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
15072
diff
changeset
|
27 ## The text is defined by the string @var{s}. If @var{s} is a cell string |
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
15072
diff
changeset
|
28 ## organized as a row vector then each string of the cell array is written to a |
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
15072
diff
changeset
|
29 ## separate line. If @var{s} is organized as a column vector then one string |
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
15072
diff
changeset
|
30 ## element of the cell array is placed for every mouse click. |
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
15072
diff
changeset
|
31 ## |
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
15072
diff
changeset
|
32 ## Optional property/value pairs are passed directly to the underlying text |
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
15072
diff
changeset
|
33 ## objects. |
15070
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
34 ## |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
35 ## The optional return value @var{h} is a graphics handle to the created |
17122
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
15072
diff
changeset
|
36 ## text object(s). |
9307
c2923c27c877
Various documentation improvements
Rik <rdrider0-list@yahoo.com>
parents:
9245
diff
changeset
|
37 ## @seealso{ginput, text} |
7674
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
38 ## @end deftypefn |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
39 |
15070
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
40 function h = gtext (s, varargin) |
7674
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
41 |
13259
b6efe55f97c7
Allow gtext() to have multi-line text strings (Bug #33232)
Rik <octave@nomad.inbox5.com>
parents:
13123
diff
changeset
|
42 if (nargin < 1) |
7674
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
43 print_usage (); |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
44 endif |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
45 |
13259
b6efe55f97c7
Allow gtext() to have multi-line text strings (Bug #33232)
Rik <octave@nomad.inbox5.com>
parents:
13123
diff
changeset
|
46 if (! (ischar (s) || iscellstr (s))) |
b6efe55f97c7
Allow gtext() to have multi-line text strings (Bug #33232)
Rik <octave@nomad.inbox5.com>
parents:
13123
diff
changeset
|
47 error ("gtext: S must be a string or cell array of strings"); |
b6efe55f97c7
Allow gtext() to have multi-line text strings (Bug #33232)
Rik <octave@nomad.inbox5.com>
parents:
13123
diff
changeset
|
48 endif |
b6efe55f97c7
Allow gtext() to have multi-line text strings (Bug #33232)
Rik <octave@nomad.inbox5.com>
parents:
13123
diff
changeset
|
49 |
15070
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
50 htmp = -1; |
13259
b6efe55f97c7
Allow gtext() to have multi-line text strings (Bug #33232)
Rik <octave@nomad.inbox5.com>
parents:
13123
diff
changeset
|
51 if (! isempty (s)) |
15070
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
52 if (ischar (s) || isrow (s)) |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
53 [x, y] = ginput (1); |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
54 htmp = text (x, y, s, varargin{:}); |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
55 else |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
56 for i = 1:numel (s) |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
57 [x, y] = ginput (1); |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
58 htmp = text (x, y, s{i}, varargin{:}); |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
59 endfor |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
60 endif |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
61 endif |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
62 |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
63 if (nargout > 0) |
1feefc5e5630
gtext.m: Allow multiple text placements--one per mouse click.
Rik <rik@octave.org>
parents:
14363
diff
changeset
|
64 h = htmp; |
13259
b6efe55f97c7
Allow gtext() to have multi-line text strings (Bug #33232)
Rik <octave@nomad.inbox5.com>
parents:
13123
diff
changeset
|
65 endif |
b6efe55f97c7
Allow gtext() to have multi-line text strings (Bug #33232)
Rik <octave@nomad.inbox5.com>
parents:
13123
diff
changeset
|
66 |
7674
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
67 endfunction |
52d8d50e74c1
Add gtext, waitforbuttonpress. Attempt to get ginput working under windows
David Bateman <dbateman@free.fr>
parents:
diff
changeset
|
68 |
14363
f3d52523cde1
Use Octave coding conventions in all m-file %!test blocks
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
69 |
13123
6efa1a691713
Add further tests for scripts/plot.
Kai Habel <kai.habel@gmx.de>
parents:
11587
diff
changeset
|
70 ## Remove from test statistics. No real tests possible. |
14363
f3d52523cde1
Use Octave coding conventions in all m-file %!test blocks
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
71 %!assert (1) |
f3d52523cde1
Use Octave coding conventions in all m-file %!test blocks
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
72 |