ELinks 0.18.0
listbox.c File Reference
#include <string.h>
#include "elinks.h"
#include "bfu/dialog.h"
#include "bfu/hierbox.h"
#include "bfu/listbox.h"
#include "config/kbdbind.h"
#include "intl/libintl.h"
#include "terminal/draw.h"
#include "terminal/mouse.h"
#include "terminal/terminal.h"
#include "util/color.h"
#include "util/conv.h"
#include "util/lists.h"
Include dependency graph for listbox.c:

Macros

#define VERTICAL_LISTBOX_MARGIN   3
 
#define item_cache(item)
 

Functions

void add_dlg_listbox (struct dialog *dlg, void *box_data)
 
struct listbox_dataget_listbox_widget_data (struct widget_data *widget_data)
 
void dlg_format_listbox (struct dialog_data *dlg_data, struct widget_data *widget_data, int x, int *y, int w, int max_height, int *rw, format_align_T align, int format_only)
 
struct listbox_itemtraverse_listbox_items_list (struct listbox_item *item, struct listbox_data *box, int offset, int follow_visible, int(*fn)(struct listbox_item *, void *, int *), void *d)
 
static int calc_dist (struct listbox_item *item, void *data_, int *offset)
 
void listbox_sel_move (struct widget_data *widget_data, int dist)
 
static int test_search (struct listbox_item *item, void *data_, int *offset)
 
static int listbox_item_offset (struct listbox_data *box, struct listbox_item *item)
 
void listbox_sel (struct widget_data *widget_data, struct listbox_item *item)
 
static int display_listbox_item (struct listbox_item *item, void *data_, int *offset)
 
static widget_handler_status_T display_listbox (struct dialog_data *dlg_data, struct widget_data *widget_data)
 
static int check_old_state (struct listbox_item *item, void *info_, int *offset)
 
static widget_handler_status_T init_listbox (struct dialog_data *dlg_data, struct widget_data *widget_data)
 
static widget_handler_status_T mouse_listbox (struct dialog_data *dlg_data, struct widget_data *widget_data)
 
static widget_handler_status_T do_kbd_listbox_action (action_id_T action_id, struct dialog_data *dlg_data, struct widget_data *widget_data)
 
static widget_handler_status_T kbd_listbox (struct dialog_data *dlg_data, struct widget_data *widget_data)
 

Variables

const struct widget_ops listbox_ops
 

Macro Definition Documentation

◆ item_cache

#define item_cache ( item)
Value:
do { \
croot = box->ops->get_root(item); cprev = item->prev; cnext = item->next; \
} while (0)

◆ VERTICAL_LISTBOX_MARGIN

#define VERTICAL_LISTBOX_MARGIN   3

Function Documentation

◆ add_dlg_listbox()

void add_dlg_listbox ( struct dialog * dlg,
void * box_data )

◆ calc_dist()

static int calc_dist ( struct listbox_item * item,
void * data_,
int * offset )
static

◆ check_old_state()

static int check_old_state ( struct listbox_item * item,
void * info_,
int * offset )
static

◆ display_listbox()

static widget_handler_status_T display_listbox ( struct dialog_data * dlg_data,
struct widget_data * widget_data )
static

◆ display_listbox_item()

static int display_listbox_item ( struct listbox_item * item,
void * data_,
int * offset )
static

◆ dlg_format_listbox()

void dlg_format_listbox ( struct dialog_data * dlg_data,
struct widget_data * widget_data,
int x,
int * y,
int w,
int max_height,
int * rw,
format_align_T align,
int format_only )

◆ do_kbd_listbox_action()

static widget_handler_status_T do_kbd_listbox_action ( action_id_T action_id,
struct dialog_data * dlg_data,
struct widget_data * widget_data )
static

◆ get_listbox_widget_data()

struct listbox_data * get_listbox_widget_data ( struct widget_data * widget_data)

◆ init_listbox()

static widget_handler_status_T init_listbox ( struct dialog_data * dlg_data,
struct widget_data * widget_data )
static

◆ kbd_listbox()

static widget_handler_status_T kbd_listbox ( struct dialog_data * dlg_data,
struct widget_data * widget_data )
static

◆ listbox_item_offset()

static int listbox_item_offset ( struct listbox_data * box,
struct listbox_item * item )
static

◆ listbox_sel()

void listbox_sel ( struct widget_data * widget_data,
struct listbox_item * item )

◆ listbox_sel_move()

void listbox_sel_move ( struct widget_data * widget_data,
int dist )

◆ mouse_listbox()

static widget_handler_status_T mouse_listbox ( struct dialog_data * dlg_data,
struct widget_data * widget_data )
static

◆ test_search()

static int test_search ( struct listbox_item * item,
void * data_,
int * offset )
static

◆ traverse_listbox_items_list()

struct listbox_item * traverse_listbox_items_list ( struct listbox_item * item,
struct listbox_data * box,
int offset,
int follow_visible,
int(* fn )(struct listbox_item *, void *, int *),
void * d )

Variable Documentation

◆ listbox_ops

const struct widget_ops listbox_ops
Initial value:
= {
}
#define NULL
Definition explodename.c:35
static widget_handler_status_T display_listbox(struct dialog_data *dlg_data, struct widget_data *widget_data)
Definition listbox.c:500
static widget_handler_status_T kbd_listbox(struct dialog_data *dlg_data, struct widget_data *widget_data)
Definition listbox.c:721
static widget_handler_status_T mouse_listbox(struct dialog_data *dlg_data, struct widget_data *widget_data)
Definition listbox.c:566
static widget_handler_status_T init_listbox(struct dialog_data *dlg_data, struct widget_data *widget_data)
Definition listbox.c:540