xref: /freebsd/contrib/bsddialog/CHANGELOG (revision 8a271827e7b5d5310e06df1f9f49ba0ef9efd263)
12022-09-24 Version 0.4
2
3	Utility:
4	* add: --normal-screen to set normal mode.
5	* add: --alternate-screen to set alternate mode.
6	* add: --keep-tite as --alternate-screen alias.
7	* add: --and-dialog to build other dialogs.
8	* add: --and-widget as --and-dialog alias.
9	* add: --no-names (--no-tags becames its alias).
10	* add: --no-descriptions (--no-items becames its alias).
11	* add: --help-print-name (--help-tags becames its alias).
12	* add: --item-bottom-desc (--item-help becames its alias).
13	* add: --cr-wrap (was partially implemented) to keep '\n' with "\n".
14	* add: --text-unchanged to avoid default modification.
15	* add: --tab-escape enables "\t" in text.
16	* add: --clear-screen to clear the screen.
17	* add: --clear-dialog to clear the dialog (was --clear).
18	* add: --calendar dialog to select a date.
19	* add: DIAGNOSTICS messages for bad arguments number.
20	* add: DIAGNOSTICS messages for missing and unexpected options.
21	* change: --clear becames alias for --clear-screen.
22	* change: --print-maxsize format output.
23	* change: --menu, --radiolist, --checklist and --treeview output.
24	    - no printed items with Cancel or ESC.
25	    - --separator prints <sepstr> before each item except HELP.
26	    - --separator and --separate-output print <sepstr> after each item.
27	    - quoted item name/desc only when needed.
28	    - --menu avoids to print selected item after focused HELP item.
29	* change: text default modification.
30	    - without a "\n": '\t' -> space, '\n' -> '\n', trim spaces.
31	    - with a "\n": '\t' -> space, '\n' -> space, "\n" -> '\n', no trim.
32	    - delete '\n' after "\n" (also with --cr-wrap).
33	* change: --datebox input and output format yy/mm/dd -> dd/mm/yy.
34	* delete: --no-collapse (partially implemented).
35	* delete: --no-nl-expand (partially implemented).
36	* delete: --trim (partially implemented).
37
38	Library:
39	* add: bsddialog_msgbox() HOME, END, PPAGE and NPAGE keys.
40	* add: bsddialog_yesno() HOME, END, PPAGE and NPAGE keys.
41	* add: bsddialog_menu() SPACE key (equivalent to ENTER).
42	* add: bsddialog_calendar() to select a date.
43	* change: rename enum bsddialog_grouptype -> enum bsddialog_menutype.
44	* change: fixed-menurows becames at most menurows (depending on text).
45	* change: fixed-rows becames at most rows, min(rows, screenH - shadow).
46	* change: fixed-cols becames at most cols, min(cols, screenW - shadow).
47	* delete: undocumented internal bsddialog_menuitem.depth factor (was 2).
48
49
502022-08-29 Version 0.3
51
52	Utility:
53	* add: --textbox accepts options for the first button.
54	* add: --columns-per-row for text autosizing.
55	* add: --load-theme to read and set a custom theme at runtime.
56	* add: --save-theme to save current theme.
57	* add: --bikeshed for random settings.
58	* add: --switch-buttons enables focus switching: buttons / input
59	       components. Available for: --form, --inputbox, --mixedform,
60	       --passwordform, --passwordbox, --timebox and --datebox.
61	* change: rename --esc-cancelvalue to --esc-return-cancel.
62	* change: form field value is printed like multibyte charachter string,
63	          previously widechar string.
64	* change: --timebox output with zero padding.
65	* change: --datebox output mm and dd with zero padding.
66	* fix: --hline with empty string.
67	* fix: avoid to overlay the backtitle by setting a top margin.
68	* fix: avoid to overlay down shadow with menus and forms bottomdesc
69	       by setting a down margin.
70	* fix: --form read-only flag with multiple fields.
71
72	Library:
73	* add: conf.auto_topmargin and conf.auto_downmargin.
74	* add: bsddialog_textbox() accepts conf.button.* for the first button.
75	* add: bsddialog_textbox() arrows and percentage.
76	* add: conf.text.cols_per_row to set a ratio for text autosizing.
77	* add: timebox and datebox arrows and focus background for boxes.
78	* add: timebox and datebox UP key to switch focus.
79	* add: bsddialog_init_notheme() in bsddialog.h.
80	* add: bsddialog_hascolors() in bsddialog_theme.h.
81	* add: theme.form.bottomdesccolor and theme.menu.bottomdesccolor.
82	* add: conf.button.always_active to disable buttons/input-boxes switch.
83	* add: dynamic buttons margin.
84	    - add: theme.button.minmargin and theme.button.maxmargin.
85	    - delete: theme.button.hmargin.
86	* add: Unicode.
87	    - UI handles multicolumn charachters: backtitle, title,
88	      text (word wrapping, autosizing), menus (shortcuts, name, desc),
89	      forms (label, field), textbox, mixedgauge (minilabel),
90	      buttons (label, shortcuts), bottomtitle.
91	    - API handles char* arguments like multibyte charachter string,
92	      depending on the current locale.
93	    - Internally wide charachters are used to get input from keyboard
94	      and to adapt word wrapping and dynamic text autosizing to
95	      muticolumn charachters.
96	* refactoring: (rewrite) form.c.
97	    - delete: libformw dep implementing its features from scratch.
98	    - delete: maxvaluelen >= valuelen constraint.
99	    - delete: conf.form.enable_wchar, get always unicode (wchar) input.
100	    - add: KEY_HOME, KEY_END, KEY_PPAGE, KEY_NPAGE keys in field.
101	    - add: KEY_UP can move focus from buttons to fields.
102	    - add: KEY_DOWN can move focus from item to buttons, if nitem is 1.
103	    - add: conf.form.securembch secure multibyte charachter.
104	    - add: BSDDIALOG_FIELDNOCOLOR for formitem.flags.
105	    - add: BSDDIALOG_FIELDCURSOREND for formitem.flags.
106	    - add: BSDDIALOG_FIELDEXTEND for formitem.flags.
107	    - add: BSDDIALOG_FIELDSINGLEBYTE for formitem.flags.
108	    - add: resizing and refresh after KEY_RESIZE (SIGWINCH).
109	    - add: items scrolling.
110	    - add: conf.form.value_wchar, value is wchar_t* instead of MB-char*.
111	    - add: formheight autosizing.
112	    - add: dynamic item position.
113	* fix: bsddialog_gauge() with fd < 0.
114	* fix: bsddialog_gauge() refresh new text.
115	* fix: internal segmentation fault with disabled shadow.
116	* fix: center position without shadow.
117	* fix: bsddialog_infobox() with zero text length.
118	* fix: text wrapping with more than 1024 words.
119	* fix: rename theme.shadow.h to theme.shadow.y.
120	* fix: rename theme.shadow.w to theme.shadow.x.
121	* fix: menurows autosize with fixed rows improving text_size().
122	* fix: messagebox.c scrolling and checksize without text.
123
124
1252022-03-02 Version 0.2
126
127	Utility:
128	* add: (this) CHANGELOG.
129	* add: "menus" print item with focus (except with OK and ERROR).
130	* add: pause.sh example.
131	* add: timebox.sh example.
132	* change: --theme name "default" -> "flat".
133	* delete: treeview.sh example.
134	* fix: --separate-output does not quote (except with --quoted).
135	* fix: --datebox and --date-format month in output.
136	* improve: examples handle exit status.
137
138	Library:
139	* add: conf.form.enable_wchar for wide characters in bsddialog_form().
140	* add: theme.menu.f_selectorcolor.
141	* add: formw.c example.
142	* change: move conf.f1_file and conf.f1_message in conf.key.
143	* change: theme.button.[left|right]ch -> theme.button.[left|right]delim.
144	* change: theme.button.space -> theme.button.hmargin.
145	* change: theme.menu.arrowcolor -> theme.dialog.arrowcolor.
146	* change: internal bsddialog_menuitem.depth factor 4 -> 2.
147	* fix: disable HOME, PPAGE, END and NPAGE keys in bsddialog_form().
148	* fix: visible cursor for timebox.c and form.c in VM VirtualBox.
149	* fix: mixedlist, center position of separator with big pad.
150	* fix: timebox and datebox set values only with BSDDIALOG_OK.
151	* fix: menurows autosize with fullscreen.
152	* fix: bar color with 0%.
153	* fix: bar label position.
154	* improve: timebox and datebox navigation (keys, buttons and shortcuts).
155	* improve: "menus" colors for accessibility.
156
157
1582022-01-27 Version 0.1
159
160	* Options: --ascii-lines, --backtitle <backtitle>, --begin-x <x>,
161	  --begin-y <y>, --cancel-label <label>, --clear, --colors, --cr-wrap,
162	  --date-format <format>, --defaultno, --default-button <label>,
163	  --default-no, --default-item <name>, --disable-esc,
164	  --esc-cancelvalue, --exit-label <label>, --extra-button,
165	  --extra-label <label>, --generic-button1 <label>,
166	  --generic-button2 <label>, --help, --help-button,
167	  --help-label <label>, --help-status, --help-tags,
168	  --hfile <filename>, --hline <string>, --hmsg <string>, --ignore,
169	  --insecure, --item-depth, --item-help, --items-prefix,
170	  --max-input <size>, --no-cancel, --nocancel, --no-collapse,
171	  --no-items, --no-label <label>, --no-lines, --no-nl-expand,
172	  --no-ok, --nook, --no-shadow, --no-tags, --ok-label <label>,
173	  --output-fd <fd>, --output-separator <sep>, --print-maxsize,
174	  --print-size, --print-version, --quoted, --separate-output,
175	  --separator <sep>, --shadow, --single-quoted, --sleep <secs>,
176	  --stderr, --stdout, --tab-len <spaces>,
177	  --theme <blackwhite|bsddialog|default|dialog>,
178	  --time-format <format>, --title <title>, --trim, --version,
179	  --yes-label <label>.
180	* Dialogs: --checklist, --datebox, --form, --gauge, --infobox,
181	  --inputbox, --menu, --mixedform, --mixedgauge, --msgbox,
182	  --passwordbox, --passwordform, --pause, --radiolist, --rangebox,
183	  --textbox, --timebox, --treeview, --yesno.
184	* Manuals: bsddialog.1, bsddialog.3.
185