---
name: "mitem_current"
section: "3x"
platform: "linux"
package: "ncurses"
version: "6.6-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux", "macos"]
url: "https://new.carta.tech/mitem_current/3x"
---

# mitem\_current(3x)

set and get current\_menu\_item

## NAME

**mitem\_current** - set and get current\_menu\_item

## SYNOPSIS

```
#include <menu.h>
```

**int set\_current\_item(MENU \****menu***, ITEM \****item***);** **ITEM \*current\_item(const MENU \****menu***);**

**int set\_top\_row(MENU \****menu***, int** *row***);** **int top\_row(const MENU \****menu***);**

**int item\_index(const ITEM \****item***);**

## DESCRIPTION

**The function set\_current\_item sets the current item (the item on which** **the menu cursor is positioned).** **current\_item returns a pointer to the** **current item in the given menu.**

**The function set\_top\_row sets the top row of the menu to show the given** **row (the top row is initially 0, and is reset to this value whenever the** **O\_ROWMAJOR option is toggled).** **The item leftmost on the given row** **becomes current.** **The function top\_row returns the number of the top menu** **row being displayed.**

**The function item\_index returns the (zero-origin) index of** *item* **in** **the menu's item pointer list.**

## RETURN VALUE

**current\_item returns a pointer (which may be** *NULL*). **It does not set errno.**

**top\_row and item\_index return ERR (the general curses** **error value) if their** *menu* **parameter is** *NULL*.

**set\_current\_item and set\_top\_row return one of the following:**

- **E\_OK**

  **The routine succeeded.**

- **E\_BAD\_ARGUMENT**

  **Routine detected an incorrect or out-of-range argument.**

- **E\_BAD\_STATE**

  **Routine was called from an initialization or termination function.**

- **E\_NOT\_CONNECTED**

  **No items are connected to the menu.**

- **E\_SYSTEM\_ERROR**

  **System error occurred (see [errno(3)](/errno/3.md)).**

## PORTABILITY

**These routines emulate the System V menu library.** **They were not supported on** **Version 7 or BSD versions.**

**The SVr4 menu library documentation specifies the top\_row and** **index\_item error value as -1 (which is the value of ERR).**

## AUTHORS

**Juergen Pfeifer.** **Manual pages and adaptation for new curses by Eric S. Raymond.**

## SEE ALSO

**curses(3X),** **menu(3X)**
