1: #include <X/mit-copyright.h>
   2: 
   3: /* $Header: XMenuFindSel.c,v 10.5 86/02/01 16:15:02 tony Rel $ */
   4: /* Copyright    Massachusetts Institute of Technology    1985	*/
   5: 
   6: /*
   7:  * XMenu:	MIT Project Athena, X Window system menu package
   8:  *
   9:  *	XMenuFindSelection - Find the first selection in a pane who's
  10:  *			     label matches a particular string.
  11:  *
  12:  *	Author:		Tony Della Fera, DEC
  13:  *			January 22, 1986
  14:  *
  15:  */
  16: 
  17: #include "XMenuInternal.h"
  18: 
  19: int
  20: XMenuFindSelection(menu, p_num, label)
  21:     register XMenu *menu;
  22:     int p_num;
  23:     register char *label;
  24: {
  25:     register XMPane *p_ptr;
  26:     register XMSelect *s_ptr;
  27:     register int i = 0;
  28: 
  29:     /*
  30:      * Check for NULL pointers!
  31:      */
  32:     if (label == NULL) {
  33:     _XMErrorCode = XME_ARG_BOUNDS;
  34:     return(XM_FAILURE);
  35:     }
  36: 
  37:     /*
  38:      * Find the right pane.
  39:      */
  40:     p_ptr = _XMGetPanePtr(menu, p_num);
  41:     if (p_ptr == NULL) return(XM_FAILURE);
  42: 
  43:     /*
  44:      * Find the right selection.
  45:      */
  46:     for (
  47:     s_ptr = p_ptr->s_list->next;
  48:     s_ptr != p_ptr->s_list;
  49:     s_ptr = s_ptr->next
  50:     ){
  51:     if (s_ptr->label_length == 0) {
  52:         if (*label == '\0') {
  53:         _XMErrorCode = XME_NO_ERROR;
  54:         return (i);
  55:         }
  56:     }
  57:     else {
  58:         if (strncmp (label, s_ptr->label, s_ptr->label_length) == 0) {
  59:         _XMErrorCode = XME_NO_ERROR;
  60:         return (i);
  61:         }
  62:     }
  63:     i++;
  64:     }
  65: 
  66:     /*
  67:      * If we get here then we have not found
  68:      * a match.
  69:      */
  70:     _XMErrorCode = XME_S_NOT_FOUND;
  71:     return (XM_FAILURE);
  72: }

Defined functions

XMenuFindSelection defined in line 19; used 1 times
Last modified: 1986-02-01
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 977
Valid CSS Valid XHTML 1.0 Strict