1
0
mirror of https://github.com/rkd77/elinks.git synced 2024-07-04 02:35:29 +00:00
elinks/src/bfu
Miciah Dashiel Butler Masters cdcc8c8415 do_mainmenu: get the menu's window via menu->win instead of using a
silly foreach loop
2006-06-02 03:54:54 +00:00
..
button.c Remove now useless $Id: lines. 2005-10-21 09:14:07 +02:00
button.h Remove empty lines in start of header files 2005-11-15 11:33:27 +01:00
checkbox.c Remove now useless $Id: lines. 2005-10-21 09:14:07 +02:00
checkbox.h Remove empty lines in start of header files 2005-11-15 11:33:27 +01:00
common.h Remove empty lines in start of header files 2005-11-15 11:33:27 +01:00
dialog.c Initially place cursor on the current listbox item 2006-02-12 17:11:57 +00:00
dialog.h Initially place cursor on the current listbox item 2006-02-12 17:11:57 +00:00
group.c Remove now useless $Id: lines. 2005-10-21 09:14:07 +02:00
group.h Remove empty lines in start of header files 2005-11-15 11:33:27 +01:00
hierbox.c Unwrap a line in query_delete_selected_item. 2006-02-19 07:22:51 +00:00
hierbox.h Rename done_listbox_item parameter box_item to item. 2006-01-01 08:07:13 +00:00
hotkey.c check_hotkeys_common(): @res -> @found. 2006-01-06 21:37:36 +01:00
hotkey.h Remove now useless $Id: lines. 2005-10-21 09:14:07 +02:00
inpfield.c Trim trailing whitespaces. 2006-05-31 19:34:49 +02:00
inpfield.h Remove empty lines in start of header files 2005-11-15 11:33:27 +01:00
inphist.c Preserve the text when doing a prefix completion. 2006-04-29 22:55:32 +00:00
inphist.h Remove empty lines in start of header files 2005-11-15 11:33:27 +01:00
leds.c Remove now useless $Id: lines. 2005-10-21 09:14:07 +02:00
leds.h Remove empty lines in start of header files 2005-11-15 11:33:27 +01:00
listbox.c Drop unused listbox widget height stuff. 2006-01-05 11:50:42 +01:00
listbox.h Drop unused listbox widget height stuff. 2006-01-05 11:50:42 +01:00
listmenu.c Remove now useless $Id: lines. 2005-10-21 09:14:07 +02:00
listmenu.h Remove now useless $Id: lines. 2005-10-21 09:14:07 +02:00
Makefile path_to_top -> top_builddir 2005-10-20 04:00:35 +02:00
menu.c do_mainmenu: get the menu's window via menu->win instead of using a 2006-06-02 03:54:54 +00:00
menu.h Remove empty lines in start of header files 2005-11-15 11:33:27 +01:00
msgbox.c Here is a framework that detects cases where a PO file assigns 2006-01-01 18:55:18 +02:00
msgbox.h #include util/align.h in bfu/msgbox.h. 2005-12-20 10:48:45 +00:00
README doc: Added src/bfu/README. 2006-05-13 17:01:20 +03:00
style.c Pass a pointer to a hash pointer to free_hash() to ensure hash pointer 2006-05-31 19:33:36 +02:00
style.h Remove empty lines in start of header files 2005-11-15 11:33:27 +01:00
text.c mem_alloc_align: drop the obj type parameter 2006-02-17 17:32:59 +00:00
text.h Remove empty lines in start of header files 2005-11-15 11:33:27 +01:00
widget.c Remove now useless $Id: lines. 2005-10-21 09:14:07 +02:00
widget.h Drop unused listbox widget height stuff. 2006-01-05 11:50:42 +01:00

OVERVIEW OF BFU
===============

BFU is the text-mode user interface used by ELinks.  It builds dialogs,
widgets and menus on top of the window system implemented at src/terminal/.

                                                 =====================
                                                 | struct widget_ops |
                                                 |   bfu/widget.h    |
                                                 =====================
                                                          1^
                                                           |
                                                          *|
 ====================  ======================      =================
 | struct menu_item |  | struct widget_data | *  1 | struct widget |
 |    bfu/menu.h    |  |    bfu/widget.h    | ---> |  bfu/widget.h |
 ====================  ======================      =================
       +^                     +^                       +^
        |                      |                        |
       ?|                     1|                       1|
 ===============     ======================       =================
 | struct menu |     | struct dialog_data | *   1 | struct dialog |
 |  bfu/menu.h |     |    bfu/dialog.h    | ----> |  bfu/dialog.h |
 ===============     ======================       =================
  ?^     ?^            ?^          ?|               1|      1|
   |      |             |           |                |       |
   |      |             |          1v                |      1v
   |     1v            1v    ======================  |  ========================
   |  =====================  | struct memory_list |  |  | struct dialog_layout |
   |  |   struct window   |  |   util/memlist.h   |  |  |     bfu/dialog.h     |
   |  | terminal/window.h |  ======================  |  ========================
   |  =====================                         ?v
   |               *^                             =========================
   |                |                             | struct dialog_refresh |
   |               1v                             |      bfu/dialog.h     |
   |          =======================             =========================
   |        ? |   struct terminal   |
   ---------- | terminal/terminal.h |
   main_menu  =======================
                   ?|           ?|
                    |            |
                   1v           ?v
 ==========================  =============================
 | struct terminal_screen |  | struct terminal_interlink |
 |   terminal/screen.h    |  |      terminal/event.c     |
 ==========================  =============================

                                    Legend:  ---> can be followed like a pointer
                                                ? zero or one      1 exactly one
 					        * zero or more     + one or more
                                    There may be errors in the quantifiers.