Mercurial > emacs
annotate oldXMenu/FindPane.c @ 50396:20c113076e20
*** empty log message ***
author | Dave Love <fx@gnu.org> |
---|---|
date | Tue, 01 Apr 2003 18:08:13 +0000 |
parents | 23a1cea22d13 |
children | 695cf19ef79e d7ddb3e565de |
rev | line source |
---|---|
25858 | 1 #include "copyright.h" |
2 | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
3 /* $Header: /cvs/emacs/oldXMenu/FindPane.c,v 1.1 1999/10/03 19:35:02 fx Exp $ */ |
25858 | 4 /* Copyright Massachusetts Institute of Technology 1985 */ |
5 | |
6 /* | |
7 * XMenu: MIT Project Athena, X Window system menu package | |
8 * | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
9 * XMenuFindPane - Find the first menu pane who's label matches a |
25858 | 10 * particular string. |
11 * | |
12 * Author: Tony Della Fera, DEC | |
13 * January 22, 1986 | |
14 * | |
15 */ | |
16 | |
17 #include "XMenuInt.h" | |
18 | |
19 int | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
25858
diff
changeset
|
20 XMenuFindPane(menu, label) |
25858 | 21 register XMenu *menu; |
22 register char *label; | |
23 { | |
24 register XMPane *p_ptr; | |
25 register int i = 0; | |
26 | |
27 /* | |
28 * Check for NULL pointers! | |
29 */ | |
30 if (label == NULL) { | |
31 _XMErrorCode = XME_ARG_BOUNDS; | |
32 return(XM_FAILURE); | |
33 } | |
34 | |
35 /* | |
36 * Find the pane who's label matches the given label. | |
37 */ | |
38 for ( | |
39 p_ptr = menu->p_list->next; | |
40 p_ptr != menu->p_list; | |
41 p_ptr = p_ptr->next | |
42 ){ | |
43 if (p_ptr->label_length == 0) { | |
44 if (*label == '\0') { | |
45 _XMErrorCode = XME_NO_ERROR; | |
46 return (i); | |
47 } | |
48 } | |
49 else { | |
50 if (strncmp (label, p_ptr->label, p_ptr->label_length) == 0) { | |
51 _XMErrorCode = XME_NO_ERROR; | |
52 return (i); | |
53 } | |
54 } | |
55 i++; | |
56 } | |
57 | |
58 /* | |
59 * If we get here then we have not found | |
60 * a match. | |
61 */ | |
62 _XMErrorCode = XME_P_NOT_FOUND; | |
63 return (XM_FAILURE); | |
64 } |