||padding-left: 2em||Добавить индикатор прогресса. Если четвертый аргумент 1, то можно элемент двигать как ползунок.
```c
nk_progress(ctx, &value, 100, 0);
```
**void nk_property_int(struct nk_context* ctx, const char *name, int min, int *val, int max, int step, float inc_per_pixel);** ![float:right|but1](50907.png)\
**void nk_property_float(struct nk_context* ctx, const char *name, float min, float *val, float max, float step, float inc_per_pixel);**
||padding-left: 2em||Добавить счетчик (spinner). В name нужно написать "#". Последний аргумент задает изменение значения при перемещении с нажатой кнопкой мыши по свободному простанству перед значением.
**void nk_combobox(struct nk_context *ctx, const char *items[], int count, int *selected, int item_height, struct nk_vec2 sizes);** ![float:right|but1](50908.png)
||padding-left: 2em||Добавить выбор из раскрывающегося списка. Последние два аргумента указывают высоту одного элемента списка и размеры окна для списка.
```c
static const char *items[5]={"Fist","Pistol","Shotgun","Plasma","BFG"};
static int selected=1;
nk_combobox(ctx,items,5,&selected,0,nk_vec2(200,200));
```
||padding-left: 2em||Добавить поле ввода. Во втором аргументе NK_EDIT_SIMPLE (простой ввод), NK_EDIT_FIELD (разрешено выделение и ^C/^V), NK_EDIT_BOX (многострочный ввод, разрешены \n и \t). В четвертом аргументе указывается максимальный размер строки. В пятом -- nk_filter_default, а для ввода чисел -- nk_filter_decimal или nk_filter_float. Функция
возвращает одно из значений NK_EDIT_ACTIVE (значение изменено), NK_EDIT_INACTIVE (не было активным), NK_EDIT_ACTIVATED (стало активным), NK_EDIT_DEACTIVATED (стало неактивным),
NK_EDIT_COMMITED (был нажат Enter).