ELinks 0.16.1.1
hierbox.c File Reference
#include <stdarg.h>
#include "elinks.h"
#include "bfu/button.h"
#include "bfu/dialog.h"
#include "bfu/hierbox.h"
#include "bfu/inpfield.h"
#include "bfu/listbox.h"
#include "bfu/msgbox.h"
#include "bfu/text.h"
#include "config/kbdbind.h"
#include "intl/libintl.h"
#include "protocol/uri.h"
#include "session/task.h"
#include "terminal/screen.h"
#include "terminal/tab.h"
#include "terminal/terminal.h"
Include dependency graph for hierbox.c:

Macros

#define listbox_message(msg)

Enumerations

enum  delete_error { DELETE_IMPOSSIBLE = 0 , DELETE_LOCKED , DELETE_ERRORS }

Functions

void update_hierbox_browser (struct hierbox_browser *browser)
struct listbox_itemadd_listbox_item (struct hierbox_browser *browser, struct listbox_item *root, enum listbox_item_type type, void *data, int add_position)
static struct listbox_itemreplace_listbox_item (struct listbox_item *item, struct listbox_data *data)
void done_listbox_item (struct hierbox_browser *browser, struct listbox_item *item)
static void recursively_set_expanded (struct listbox_item *item, int expanded)
static widget_handler_status_T hierbox_ev_kbd (struct dialog_data *dlg_data)
static widget_handler_status_T hierbox_ev_init (struct dialog_data *dlg_data)
static widget_handler_status_T hierbox_ev_abort (struct dialog_data *dlg_data)
static widget_handler_status_T hierbox_dialog_event_handler (struct dialog_data *dlg_data)
struct dialog_datahierbox_browser (struct hierbox_browser *browser, struct session *ses)
 Open a hierbox browser Opens an instantiation of a hierbox browser.
static int scan_for_marks (struct listbox_item *item, void *info_, int *offset)
static int scan_for_used (struct listbox_item *item, void *info_, int *offset)
static struct listbox_contextinit_listbox_context (struct listbox_data *box, struct terminal *term, struct listbox_item *item, int(*scanner)(struct listbox_item *, void *, int *))
static void done_listbox_context (void *context_)
widget_handler_status_T push_hierbox_info_button (struct dialog_data *dlg_data, struct widget_data *button)
static void recursively_goto_each_listbox (struct session *ses, struct listbox_item *root, struct listbox_data *box)
static void recursively_goto_listbox (struct session *ses, struct listbox_item *item, struct listbox_data *box)
static int goto_marked (struct listbox_item *item, void *data_, int *offset)
widget_handler_status_T push_hierbox_goto_button (struct dialog_data *dlg_data, struct widget_data *button)
static void print_delete_error (struct listbox_item *item, struct terminal *term, const struct listbox_ops *ops, enum delete_error err)
static void do_delete_item (struct listbox_item *item, struct listbox_context *info, int last)
static int delete_marked (struct listbox_item *item, void *data_, int *offset)
static void push_ok_delete_button (void *context_)
static widget_handler_status_T query_delete_selected_item (void *context_)
static void dont_delete_marked_items (void *const context_)
widget_handler_status_T push_hierbox_delete_button (struct dialog_data *dlg_data, struct widget_data *button)
static int delete_unused (struct listbox_item *item, void *data_, int *offset)
static void do_clear_browser (void *context_)
widget_handler_status_T push_hierbox_clear_button (struct dialog_data *dlg_data, struct widget_data *button)
static int scan_for_matches (struct listbox_item *item, void *info_, int *offset)
static int mark_visible (struct listbox_item *item, void *xxx, int *offset)
static void search_hierbox_browser (void *data, char *text)
widget_handler_status_T push_hierbox_search_button (struct dialog_data *dlg_data, struct widget_data *button)

Variables

static const struct listbox_ops_messages default_listbox_ops_messages

Macro Definition Documentation

◆ listbox_message

#define listbox_message ( msg)
Value:
ops->messages && ops->messages->msg \
? ops->messages->msg \
#define ops(matchfn)
Definition dialogs.c:243
static const struct listbox_ops_messages default_listbox_ops_messages
Definition hierbox.c:550

Enumeration Type Documentation

◆ delete_error

Enumerator
DELETE_IMPOSSIBLE 
DELETE_LOCKED 
DELETE_ERRORS 

Function Documentation

◆ add_listbox_item()

struct listbox_item * add_listbox_item ( struct hierbox_browser * browser,
struct listbox_item * root,
enum listbox_item_type type,
void * data,
int add_position )

◆ delete_marked()

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

◆ delete_unused()

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

◆ do_clear_browser()

void do_clear_browser ( void * context_)
static

◆ do_delete_item()

void do_delete_item ( struct listbox_item * item,
struct listbox_context * info,
int last )
static

◆ done_listbox_context()

void done_listbox_context ( void * context_)
static

◆ done_listbox_item()

void done_listbox_item ( struct hierbox_browser * browser,
struct listbox_item * item )

◆ dont_delete_marked_items()

void dont_delete_marked_items ( void *const context_)
static

◆ goto_marked()

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

◆ hierbox_browser()

struct dialog_data * hierbox_browser ( struct hierbox_browser * browser,
struct session * ses )

Open a hierbox browser Opens an instantiation of a hierbox browser.

Parameters
browserThe browser to open.
sesThe session (and terminal) on which it should appear.
Returns
A reference to the dialog that was created or NULL.

◆ hierbox_dialog_event_handler()

widget_handler_status_T hierbox_dialog_event_handler ( struct dialog_data * dlg_data)
static

◆ hierbox_ev_abort()

widget_handler_status_T hierbox_ev_abort ( struct dialog_data * dlg_data)
static

◆ hierbox_ev_init()

widget_handler_status_T hierbox_ev_init ( struct dialog_data * dlg_data)
static

◆ hierbox_ev_kbd()

widget_handler_status_T hierbox_ev_kbd ( struct dialog_data * dlg_data)
static

◆ init_listbox_context()

struct listbox_context * init_listbox_context ( struct listbox_data * box,
struct terminal * term,
struct listbox_item * item,
int(* scanner )(struct listbox_item *, void *, int *) )
static

◆ mark_visible()

int mark_visible ( struct listbox_item * item,
void * xxx,
int * offset )
static

◆ print_delete_error()

void print_delete_error ( struct listbox_item * item,
struct terminal * term,
const struct listbox_ops * ops,
enum delete_error err )
static

◆ push_hierbox_clear_button()

widget_handler_status_T push_hierbox_clear_button ( struct dialog_data * dlg_data,
struct widget_data * button )

◆ push_hierbox_delete_button()

widget_handler_status_T push_hierbox_delete_button ( struct dialog_data * dlg_data,
struct widget_data * button )

◆ push_hierbox_goto_button()

widget_handler_status_T push_hierbox_goto_button ( struct dialog_data * dlg_data,
struct widget_data * button )

◆ push_hierbox_info_button()

widget_handler_status_T push_hierbox_info_button ( struct dialog_data * dlg_data,
struct widget_data * button )

◆ push_hierbox_search_button()

widget_handler_status_T push_hierbox_search_button ( struct dialog_data * dlg_data,
struct widget_data * button )

◆ push_ok_delete_button()

void push_ok_delete_button ( void * context_)
static

◆ query_delete_selected_item()

widget_handler_status_T query_delete_selected_item ( void * context_)
static

◆ recursively_goto_each_listbox()

void recursively_goto_each_listbox ( struct session * ses,
struct listbox_item * root,
struct listbox_data * box )
static

◆ recursively_goto_listbox()

void recursively_goto_listbox ( struct session * ses,
struct listbox_item * item,
struct listbox_data * box )
static

◆ recursively_set_expanded()

void recursively_set_expanded ( struct listbox_item * item,
int expanded )
static

◆ replace_listbox_item()

struct listbox_item * replace_listbox_item ( struct listbox_item * item,
struct listbox_data * data )
inlinestatic

◆ scan_for_marks()

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

◆ scan_for_matches()

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

◆ scan_for_used()

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

◆ search_hierbox_browser()

void search_hierbox_browser ( void * data,
char * text )
static

◆ update_hierbox_browser()

void update_hierbox_browser ( struct hierbox_browser * browser)

Variable Documentation

◆ default_listbox_ops_messages

const struct listbox_ops_messages default_listbox_ops_messages
static