Annotation of 43BSDTahoe/new/X/XMenu/XMenuFindPane.c, revision 1.1.1.1

1.1       root        1: #include <X/mit-copyright.h>
                      2: 
                      3: /* $Header: XMenuFindPane.c,v 10.5 86/02/12 16:19:13 tony Rel $ */
                      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 "XMenuInternal.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: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.