Lines Matching refs:item

97 |                           ITEM **item)
100 | at an item with three different classes of characters:
102 | the current pattern and the next item matching
104 | - NUL; the pattern stays as it is and the next item
107 | item matching the pattern is searched
109 | The item parameter contains on call a pointer to
110 | the item where the search starts. On return - if
112 | matching item.
114 | Return Values : E_OK - an item matching the pattern was found
119 (MENU * menu, int ch, ITEM ** item)
124 T((T_CALLED("_nc_Match_Next_Character(%p,%d,%p)"), menu, ch, item));
126 assert(menu && item && *item);
127 idx = (*item)->index;
137 /* we artificially position one item back, because in the do...while
138 loop we start with the next item. This means, that with a new
139 pattern search we always start the scan with the actual item. If
141 one after or before the actual item. */
172 if (!((idx == (*item)->index) && passed))
174 *item = menu->items[idx];
177 /* This point is reached, if we fully cycled through the item list
178 and the only match we found is the starting item. With a NEXT_PATTERN
182 item we will find it in the first attempt (passed==FALSE) and we
183 will never cycle through the whole item array.
214 if (!item->dir)\
217 item = item->dir
220 ITEM *item;
233 item = menu->curitem;
236 assert(item);
271 if (my_top_row == 0 || !(item->up))
276 item = item->up;
282 if ((my_top_row + menu->arows >= menu->rows) || !(item->down))
292 item = item->down;
306 while (rdiff-- > 0 && item != 0 && item->down != 0)
307 item = item->down;
319 while (rdiff-- > 0 && item != 0 && item->up != 0)
320 item = item->up;
326 item = menu->items[0];
331 item = menu->items[menu->nitems - 1];
336 if ((item->index + 1) >= menu->nitems)
341 item = menu->items[0];
344 item = menu->items[item->index + 1];
349 if (item->index <= 0)
354 item = menu->items[menu->nitems - 1];
357 item = menu->items[item->index - 1];
400 result = _nc_Match_Next_Character_In_Item_Name(menu, 0, &item);
403 if ((item->index + 1) < menu->nitems)
404 item = menu->items[item->index + 1];
410 item = menu->items[0];
419 result = _nc_Match_Next_Character_In_Item_Name(menu, BS, &item);
422 if (item->index)
423 item = menu->items[item->index - 1];
429 item = menu->items[menu->nitems - 1];
443 result = _nc_Match_Next_Character_In_Item_Name(menu, c, &item);
489 { /* Inside the area we try to find the hit item */
506 item = menu->items[i];
513 { /* We found an item, now we can handle the click.
515 * to the clicked item. A double click toggles
516 * the item.
522 item);
541 /* Adjust the top row if it turns out that the current item unfortunately
543 if (item->y < my_top_row)
544 my_top_row = item->y;
545 else if (item->y >= (my_top_row + menu->arows))
546 my_top_row = item->y - menu->arows + 1;
548 _nc_New_TopRow_and_CurrentItem(menu, my_top_row, item);