annotate scripts/miscellaneous/getappdata.m @ 16489:36dba9be680b

doc: Make documentation compatible with Texinfo 5.0 (bug #38392) * scripts/audio/wavread.m, scripts/miscellaneous/getappdata.m, scripts/miscellaneous/license.m, scripts/miscellaneous/ver.m, scripts/plot/daspect.m, scripts/plot/graphics_toolkit.m, scripts/plot/pbaspect.m, scripts/polynomial/polyval.m, scripts/polynomial/splinefit.m, scripts/set/union.m, scripts/signal/freqz.m: Moved @deftypefnx entries to always immediately follow @deftypefn.
author Amod Mulay <amodmulay1@gmail.com>
date Fri, 22 Mar 2013 17:07:00 -0400
parents 5d3a684236b0
children b10a23fe80bb
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: 13243
diff changeset
1 ## Copyright (C) 2010-2012 Ben Abbott
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
2 ##
11180
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
3 ## This program is free software; you can redistribute it and/or modify
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
4 ## it under the terms of the GNU General Public License as published by
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
5 ## the Free Software Foundation; either version 2 of the License, or
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
6 ## (at your option) any later version.
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
7 ##
11180
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
8 ## This program is distributed in the hope that it will be useful,
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
9 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
10 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
11 ## GNU General Public License for more details.
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
12 ##
11180
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
13 ## You should have received a copy of the GNU General Public License
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
14 ## along with Octave; see the file COPYING. If not, see
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
15 ## <http://www.gnu.org/licenses/>.
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
16
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
17 ## -*- texinfo -*-
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
18 ## @deftypefn {Function File} {@var{value} =} getappdata (@var{h}, @var{name})
16489
36dba9be680b doc: Make documentation compatible with Texinfo 5.0 (bug #38392)
Amod Mulay <amodmulay1@gmail.com>
parents: 14868
diff changeset
19 ## @deftypefnx {Function File} {@var{appdata} =} getappdata (@var{h})
36dba9be680b doc: Make documentation compatible with Texinfo 5.0 (bug #38392)
Amod Mulay <amodmulay1@gmail.com>
parents: 14868
diff changeset
20 ##
12575
d0b799dafede Grammarcheck files for 3.4.1 release.
Rik <octave@nomad.inbox5.com>
parents: 11589
diff changeset
21 ## Return the @var{value} for named application data for the object(s) with
11180
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
22 ## handle(s) @var{h}.
16489
36dba9be680b doc: Make documentation compatible with Texinfo 5.0 (bug #38392)
Amod Mulay <amodmulay1@gmail.com>
parents: 14868
diff changeset
23 ##
36dba9be680b doc: Make documentation compatible with Texinfo 5.0 (bug #38392)
Amod Mulay <amodmulay1@gmail.com>
parents: 14868
diff changeset
24 ## @code{getappdata(@var{h})} returns a structure, @var{appdata}, whose fields correspond to the appdata
12597
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
25 ## properties.
11180
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
26 ## @end deftypefn
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
27
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
28 ## Author: Ben Abbott <bpabbott@mac.com>
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
29 ## Created: 2010-07-15
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
30
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
31 function val = getappdata (h, name)
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
32
12597
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
33 if (all (ishandle (h)) && nargin == 2 && ischar (name))
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
34 ## FIXME - Is there a better way to handle non-existent appdata
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
35 ## and missing fields?
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
36 val = cell (numel (h), 1);
14846
460a3c6d8bf1 maint: Use Octave coding convention for cuddled parenthis in function calls with empty argument lists.
Rik <octave@nomad.inbox5.com>
parents: 14138
diff changeset
37 appdata = struct ();
14868
5d3a684236b0 maint: Use Octave coding conventions for cuddling parentheses in scripts directory
Rik <octave@nomad.inbox5.com>
parents: 14846
diff changeset
38 for nh = 1:numel (h)
12597
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
39 try
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
40 appdata = get (h(nh), "__appdata__");
13243
f9aec0bcf826 getappdata: return empty matrix for nonexistent property names
John W. Eaton <jwe@octave.org>
parents: 13174
diff changeset
41 end_try_catch
f9aec0bcf826 getappdata: return empty matrix for nonexistent property names
John W. Eaton <jwe@octave.org>
parents: 13174
diff changeset
42 if (! isfield (appdata, name))
12597
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
43 appdata.(name) = [];
13243
f9aec0bcf826 getappdata: return empty matrix for nonexistent property names
John W. Eaton <jwe@octave.org>
parents: 13174
diff changeset
44 endif
12597
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
45 val(nh) = {appdata.(name)};
13174
bd2cd4fd3edf maint: use specific endif, endfor tokens instead of simple end
John W. Eaton <jwe@octave.org>
parents: 12642
diff changeset
46 endfor
12597
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
47 if (nh == 1)
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
48 val = val{1};
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
49 endif
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
50 elseif (ishandle (h) && numel (h) == 1 && nargin == 1)
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
51 try
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
52 val = get (h, "__appdata__");
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
53 catch
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
54 val = struct ();
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
55 end_try_catch
e12a7c0a1fc5 getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents: 12590
diff changeset
56 else
11589
b0084095098e missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents: 11588
diff changeset
57 error ("getappdata: invalid input");
11180
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
58 endif
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
59
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
60 endfunction
1a26199cb212 Add new appdata functions.
Ben Abbott <bpabbott@mac.com>
parents:
diff changeset
61