Mercurial > emacs
annotate oldXMenu/FindPane.c @ 32728:6fe525e8880c
(sh-mode-map): Remove bindings for
sh-electric-rparen, sh-electric-less and sh-electric-hash.
(sh-st-punc, sh-here-doc-syntax): Use string-to-syntax.
(sh-font-lock-heredoc, sh-font-lock-paren): New funs.
(sh-font-lock-syntactic-keywords): Use them.
(sh-heredoc-face, sh-st-face, sh-special-syntax): Remove.
(sh-mkword-regexp, sh-electric-rparen-needed-here): Remove.
(sh-mode): Don't override font-lock-unfontify-region-function.
Use a copy of sh-font-lock-syntactic-keywords.
(sh-set-shell): Don't set sh-electric-rparen-needed-here.
Don't call sh-scan-buffer since font-lock does it on the fly.
(sh-get-indent-info): Use `face' rather than `syntax-table'
text-property to detect here-documents.
Replace sh-special-syntax with sh-st-punc.
(sh-prev-line): Use `face' rather than `syntax-table'
text-property to skip over here-documents.
(sh-font-lock-unfontify-region-function, sh-check-paren-in-case)
(sh-set-char-syntax, sh-electric-rparen, sh-electric-hash)
(sh-electric-less, sh-set-here-doc-region)
(sh-remove-our-text-properties, sh-search-word, sh-scan-case)
(sh-scan-buffer, sh-rescan-buffer): Remove.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Sat, 21 Oct 2000 18:05:45 +0000 |
parents | bbce331da1be |
children | 23a1cea22d13 |
rev | line source |
---|---|
25858 | 1 #include "copyright.h" |
2 | |
3 /* $Header: /u/src/emacs/19.0/oldXMenu/RCS/FindPane.c,v 1.1 1992/04/11 22:10:19 jimb Exp $ */ | |
4 /* Copyright Massachusetts Institute of Technology 1985 */ | |
5 | |
6 /* | |
7 * XMenu: MIT Project Athena, X Window system menu package | |
8 * | |
9 * XMenuFindPane - Find the first menu pane who's label matches a | |
10 * particular string. | |
11 * | |
12 * Author: Tony Della Fera, DEC | |
13 * January 22, 1986 | |
14 * | |
15 */ | |
16 | |
17 #include "XMenuInt.h" | |
18 | |
19 int | |
20 XMenuFindPane(menu, label) | |
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 } |