Kp
21241471c6
Return string width/height from gr_get_string_size
...
Use structured bindings to capture the values on return, so that they
can be declared as `const` if they are immutable after initial
computation.
2021-09-12 16:20:52 +00:00
Kp
5d39c52b0c
Remote write-only field UI_GADGET::status
2021-08-26 03:13:46 +00:00
Kp
be5061c072
Remove write-only field UI_GADGET::oldstatus
2021-08-26 03:13:46 +00:00
Kp
e1aac6949a
Replace __attribute_warn_unused_result with C++17 [[nodiscard]]
...
This eliminates a configure test, and may help readers understand the
annotation more readily.
2021-06-28 03:37:51 +00:00
Kp
5c7fc7d143
Remove unused UI_DIALOG d_callback
...
Every user now uses inheritance and a virtual function override. Make
callback_handler pure virtual, delete its body, and then delete the
member variables that existed only for use in that body. Remove the
constructor parameters that initialized those variables, and update all
derived classes accordingly.
2020-12-19 16:13:26 +00:00
Kp
2709676f8d
Rename ui_create_dialog to window_create
...
The requirement to call send_creation_events from outside the
constructor makes the presence of a helper function convenient. Rename
ui_create_dialog to window_create, and move it to window.h.
2020-12-19 16:13:26 +00:00
Kp
0f022f4b10
Fix clang build
...
clang warns if all of:
- type T is deleted by a pointer T*
- T has a non-virtual destructor
- T has a virtual function
- T is not final
Fix the build by making the relevant types T final, since nothing
inherited from them.
2020-11-30 05:12:00 +00:00
Kp
ae657007fe
Remove send_creation_events parameter
...
It is always nullptr.
2020-10-22 02:26:16 +00:00
Kp
2869566866
Remove unused ui_create_dialog parameter createdata
...
It is always nullptr. Remove the parameter and pass nullptr where the
parameter was used.
2020-10-22 02:26:16 +00:00
Kp
f8185494ad
Pass UI_DIALOG& to ui_add_gadget_icon
2020-10-12 03:28:26 +00:00
Kp
4f572bbe23
Pass UI_DIALOG& to ui_add_gadget_userbox
2020-10-12 03:28:26 +00:00
Kp
95598a34e3
Pass UI_DIALOG& to ui_add_gadget_inputbox
2020-10-12 03:28:26 +00:00
Kp
466f431c91
Pass UI_DIALOG& to ui_add_gadget_checkbox
2020-10-12 03:28:26 +00:00
Kp
3b7a34b066
Pass UI_DIALOG& to ui_draw_scrollbar
2020-10-12 03:28:26 +00:00
Kp
028f0c4cda
Remove unused function ui_draw_frame
2020-10-12 03:28:26 +00:00
Kp
c5afd0eb55
Pass UI_DIALOG& to ui_draw_icon
2020-10-12 03:28:26 +00:00
Kp
9e9429fe58
Pass UI_DIALOG& to ui_draw_userbox
2020-10-12 03:28:26 +00:00
Kp
b45e696574
Pass UI_DIALOG& to ui_draw_checkbox
2020-10-12 03:28:26 +00:00
Kp
380d30f943
Pass UI_DIALOG& to ui_draw_radio
2020-10-12 03:28:26 +00:00
Kp
506f24ed04
Pass UI_GADGET_RADIO& to ui_radio_set_value
2020-10-12 03:28:26 +00:00
Kp
f531c7d43e
Pass UI_DIALOG& to ui_add_gadget_radio
2020-10-12 03:28:26 +00:00
Kp
ff039c0c90
Pass UI_DIALOG& to ui_add_gadget_scrollbar
2020-10-12 03:28:26 +00:00
Kp
1d7f2e2ab5
Replace ui_gadget_do with virtual function dispatch
2020-10-12 03:28:26 +00:00
Kp
a399fa7b58
Rename ui_icon_do to UI_GADGET_ICON::event_handler
2020-10-12 03:28:26 +00:00
Kp
ca0894c3ab
Rename ui_userbox_do to UI_GADGET_USERBOX::event_handler
2020-10-12 03:28:26 +00:00
Kp
6c89583ca0
Rename ui_inputbox_do to UI_GADGET_INPUTBOX::event_handler
2020-10-12 03:28:26 +00:00
Kp
be157822d8
Rename ui_checkbox_do to UI_GADGET_CHECKBOX::event_handler
2020-10-12 03:28:26 +00:00
Kp
9280187833
Rename ui_radio_do to UI_GADGET_RADIO::event_handler
2020-10-12 03:28:26 +00:00
Kp
43c30bd6b3
Rename ui_scrollbar_do to UI_GADGET_SCROLLBAR::event_handler
2020-10-12 03:28:26 +00:00
Kp
8a4879a7e7
Rename ui_listbox_do to UI_GADGET_LISTBOX::event_handler
2020-10-12 03:28:26 +00:00
Kp
422ee41626
Rename ui_button_do to UI_GADGET_BUTTON::event_handler
2020-10-12 03:28:26 +00:00
Kp
26cb111bc0
Pass UI_DIALOG& to ui_mouse_on_gadget
2020-10-12 03:28:26 +00:00
Kp
a21d89ea6c
Pass UI_DIALOG& to ui_draw_button
2020-10-12 03:28:26 +00:00
Kp
a563b5edf7
Pass UI_DIALOG& to ui_add_gadget_button
2020-10-12 03:28:26 +00:00
Kp
dd2a60de69
Pass UI_DIALOG& to ui_dialog_set_current_canvas
2020-10-12 03:28:26 +00:00
Kp
6dce3f90c2
Pass UI_DIALOG& to ui_close_dialog
2020-10-12 03:28:26 +00:00
Kp
564f699002
Pass UI_DIALOG& to ui_gadget_get_next, ui_gadget_get_prev
2020-10-12 03:28:26 +00:00
Kp
b6a7f63e5d
Pass UI_DIALOG& to ui_gadget_calc_keys
2020-10-12 03:28:26 +00:00
Kp
d7bff3daf3
Pass UI_DIALOG& to ui_dialog_do_gadgets
2020-10-12 03:28:25 +00:00
Kp
f79e0343d9
Pass UI_DIALOG& to ui_gadget_send_event
2020-10-12 03:28:25 +00:00
Kp
6ff47e2a18
Pass UI_DIALOG& to ui_add_gadget_listbox
2020-10-12 03:28:25 +00:00
Kp
33beedc9fd
Pass UI_DIALOG& to ui_draw_listbox
2020-10-12 03:28:25 +00:00
Kp
b30d60a521
Pass UI_DIALOG& to ui_gadget_add
2020-10-12 03:28:25 +00:00
Kp
b19e0698a1
Simplify out ui_dialog_get_window
...
UI_DIALOG now extends window, so the conversion is implicit.
2020-10-12 03:28:25 +00:00
Kp
8547c918c2
Make ui_file_browser inherit from UI_DIALOG
2020-10-12 03:28:25 +00:00
Kp
563ac19708
Make menu.cpp menu inherit from UI_DIALOG
2020-10-12 03:28:25 +00:00
Kp
c1ce3a2938
Pass explicit nullptr for ui_create_dialog createdata
2020-10-12 03:28:25 +00:00
Kp
7fb4f7b396
Use std::array for editor mine filename
2020-10-12 03:28:25 +00:00
Kp
1fc8663eff
Improve ui_add_gadget_inputbox length handling
...
Fix potential buffer overflow if `length` (now `length_of_initial_text`)
is less than the `strlen` computed length of text.
Rename variables to clarify usage.
Eliminate the unnecessary use of `strlen`.
2020-09-28 03:32:15 +00:00
Kp
88ab83c354
Remove write-only field UI_GADGET_INPUTBOX::slength
2020-09-28 03:32:15 +00:00