Mercurial > emacs
view oldXMenu/FindSel.c @ 68686:f2477980fde3
(Compilation): Move and split kill-compilation para.
Add para about multiple compilers.
(Compilation Mode): Commands also available in grep mode and others.
Mention C-u C-x ` more tutorially. Clarify C-x `.
(Compilation Shell): Clarify. Put Bash example first.
(Grep Searching): Minor cleanups; add @w.
(Debuggers): Minor cleanups.
(Starting GUD): Make GDB xgraphical mode issue clearer.
(Debugger Operation): Lots of clarifications including
GDB tooltip side-effect issue.
(Commands of GUD): Clarify.
(GUD Customization): Add bashdb-mode-hook.
(GDB Graphical Interface): Rewrite for clarity.
(GDB User Interface Layout): Rewrite for clarity.
(Stack Buffer, Watch Expressions): Likewise.
(Other GDB User Interface Buffers): Cleanups.
(Lisp Libraries, External Lisp): Cleanup.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Tue, 07 Feb 2006 23:47:53 +0000 |
parents | e8a3fb527b77 |
children | ce127a46b1ca d04d8ccb3c41 c5406394f567 |
line wrap: on
line source
#include "copyright.h" /* Copyright Massachusetts Institute of Technology 1985 */ /* Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. */ /* * XMenu: MIT Project Athena, X Window system menu package * * XMenuFindSelection - Find the first selection in a pane who's * label matches a particular string. * * Author: Tony Della Fera, DEC * January 22, 1986 * */ #include "XMenuInt.h" int XMenuFindSelection(menu, p_num, label) register XMenu *menu; int p_num; register char *label; { register XMPane *p_ptr; register XMSelect *s_ptr; register int i = 0; /* * Check for NULL pointers! */ if (label == NULL) { _XMErrorCode = XME_ARG_BOUNDS; return(XM_FAILURE); } /* * Find the right pane. */ p_ptr = _XMGetPanePtr(menu, p_num); if (p_ptr == NULL) return(XM_FAILURE); /* * Find the right selection. */ for ( s_ptr = p_ptr->s_list->next; s_ptr != p_ptr->s_list; s_ptr = s_ptr->next ){ if (s_ptr->label_length == 0) { if (*label == '\0') { _XMErrorCode = XME_NO_ERROR; return (i); } } else { if (strncmp (label, s_ptr->label, s_ptr->label_length) == 0) { _XMErrorCode = XME_NO_ERROR; return (i); } } i++; } /* * If we get here then we have not found * a match. */ _XMErrorCode = XME_S_NOT_FOUND; return (XM_FAILURE); } /* arch-tag: 564a4a95-9ab0-4580-b05f-6970c4b25dd4 (do not change this comment) */