ELinks 0.18.0
Macros | Functions | Variables
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_data * get_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_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)
 
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(*)(struct listbox_item *, void *, int *)  fn,
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