Mercurial > hg > octave-lyh
annotate scripts/miscellaneous/getappdata.m @ 13174:bd2cd4fd3edf stable
maint: use specific endif, endfor tokens instead of simple end
* gmres.m, getappdata.m, setappdata.m, axis.m:
Use specific endif, endfor tokens instead of simple end.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Tue, 20 Sep 2011 15:33:10 -0400 |
parents | f96b9b9f141b |
children | f9aec0bcf826 |
rev | line source |
---|---|
11523 | 1 ## Copyright (C) 2010-2011 Ben Abbott |
11587
c792872f8942
all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents:
11523
diff
changeset
|
2 ## |
11180 | 3 ## This program is free software; you can redistribute it and/or modify |
4 ## it under the terms of the GNU General Public License as published by | |
5 ## the Free Software Foundation; either version 2 of the License, or | |
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 | 8 ## This program is distributed in the hope that it will be useful, |
9 ## but WITHOUT ANY WARRANTY; without even the implied warranty of | |
10 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
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 | 13 ## You should have received a copy of the GNU General Public License |
14 ## along with Octave; see the file COPYING. If not, see | |
15 ## <http://www.gnu.org/licenses/>. | |
16 | |
17 ## -*- texinfo -*- | |
18 ## @deftypefn {Function File} {@var{value} =} getappdata (@var{h}, @var{name}) | |
12575
d0b799dafede
Grammarcheck files for 3.4.1 release.
Rik <octave@nomad.inbox5.com>
parents:
11589
diff
changeset
|
19 ## Return the @var{value} for named application data for the object(s) with |
11180 | 20 ## handle(s) @var{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
|
21 ## @deftypefnx {Function File} {@var{appdata} =} getappdata (@var{h}) |
12642
f96b9b9f141b
doc: Periodic grammarcheck and spellcheck of documentation.
Rik <octave@nomad.inbox5.com>
parents:
12597
diff
changeset
|
22 ## Return 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
|
23 ## properties. |
11180 | 24 ## @end deftypefn |
25 | |
26 ## Author: Ben Abbott <bpabbott@mac.com> | |
27 ## Created: 2010-07-15 | |
28 | |
29 function val = getappdata (h, name) | |
30 | |
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
|
31 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
|
32 ## 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
|
33 ## 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
|
34 val = cell (numel (h), 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
|
35 appdata = 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
|
36 for nh = 1:numel(h) |
e12a7c0a1fc5
getappdata.m: If no property name is provided, return a structure representing the appdata.
Ben Abbott <bpabbott@mac.com>
parents:
12590
diff
changeset
|
37 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
|
38 appdata = get (h(nh), "__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
|
39 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
|
40 appdata.(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
|
41 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
|
42 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
|
43 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
|
44 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
|
45 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
|
46 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
|
47 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
|
48 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
|
49 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
|
50 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
|
51 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
|
52 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
|
53 else |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11588
diff
changeset
|
54 error ("getappdata: invalid input"); |
11180 | 55 endif |
56 | |
57 endfunction | |
58 |