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
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
95598a34e3
Pass UI_DIALOG& to ui_add_gadget_inputbox
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
b6a7f63e5d
Pass UI_DIALOG& to ui_gadget_calc_keys
2020-10-12 03:28:26 +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
8547c918c2
Make ui_file_browser inherit from UI_DIALOG
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
db7b4b3f88
Refer to <memory> directly, not through "compiler-make_unique.h"
2020-05-02 21:18:43 +00:00
Kp
cc38cdf4b8
Qualify uses of std::make_unique
2020-05-02 21:18:42 +00:00
Kp
53761500f1
Qualify uses of std::array
2020-05-02 21:18:42 +00:00
Kp
2243cd7f58
Use xrange for loops with zero start and constant numerical end
...
s/for\s*(\s*\(\w\+\)\s\+\(\w\+\)\s*=\s*0\+u\?\s*;\s*\2\s*\(!=\|<\)\s*\([0-9]\+\)u\?\s*;\s*\(++\s*\2\|\2\s*++\s*\))/range_for (const \1 \2, xrange(\4u))/
2019-05-04 18:27:36 +00:00
Kp
dc881ec12d
Merge pull #266 into master
2016-11-19 18:09:26 +00:00
Kp
6db96d1a6d
Fix file.cpp -Wunused-but-set-variable
...
Commit 1c8ad24
removed all reads of `wind`, but did not remove its
assignment or declaration. This breaks the build with gcc due to
-Wunused-but-set-variable.
Fixes: 1c8ad24da3
("Check for window_event_result::deleted for ui_get_filename polling loop")
2016-11-19 17:24:51 +00:00
Chris Taylor
1761d696fe
Check if dir is empty string the more efficient way in file_getdirlist
2016-11-13 12:49:08 +08:00
Chris Taylor
e29a4513b6
Allow empty string to be passed to file_getdirlist
...
This allows the open/save dialogs to work in the editor when a filename without a path separator is passed (which is the default)
2016-11-11 16:09:57 +08:00
Chris Taylor
7ac820248c
Use new event_process_all() for event loops that check for window_event_result::deleted (which is most of them)
2016-10-29 20:06:01 +08:00
Chris Taylor
1c8ad24da3
Check for window_event_result::deleted for ui_get_filename polling loop
...
This is instead of using window_exists, which could give a false positive if a new window was allocated with the same pointer value as a deleted one.
2016-10-28 15:25:25 +08:00
Chris Taylor
18062bf812
Make browser_handler (editor file opening dialog) return window_event_result::close instead of closing itself
...
This ensures the event system will know what's going on.
2016-10-27 17:38:20 +08:00
Chris Taylor
db665d8c33
Allow dcx::UI_DIALOG struct to be subclassed - step 2
...
Allow dcx::UI_DIALOG struct to be subclassed step 2. Make all the UI_DIALOG handlers return a window_event_result like everyone else.
2016-10-04 15:58:20 +08:00
Kp
e06d8b33aa
Reuse string_array_sort_func for file_sort_func
...
Both functions have the same implementation, so delete static
file_sort_func and use string_array_sort_func.
2016-09-04 19:10:43 +00:00
Kp
dc8c0323d8
Uninline namespace dcx
2015-12-13 18:00:49 +00:00
Kp
22bd3ce8d8
Use inline namespace dcx for common/ui
2015-12-05 22:57:24 +00:00
Kp
bdee338e34
Preserve array size for ui_get_filename
2015-05-09 17:38:58 +00:00
Kp
fc4b686d9d
Store PHYSFS_list element count in list when needed
2015-05-09 17:38:57 +00:00
Kp
1d08cb6058
Fix file_get*list nullptr without constructor inheritance
2015-05-05 03:20:42 +00:00
Kp
c3925353fd
Use null_sentinel_iterator for PHYSFS_list_t
2015-04-26 20:15:51 +00:00
Kp
143c536c77
Use PHYSFS_list_t for more functions
2015-04-26 20:15:50 +00:00
Kp
44adc83ca4
Use std::remove_if in file_get*list
2015-04-26 20:15:50 +00:00
Kp
f00ec13c0f
Use std::move_backward for file_getdirlist
2015-04-26 20:15:50 +00:00
Kp
08ee591e21
Fix ODR collision between ui/file browser and main/menu browser
2015-04-22 02:44:30 +00:00
Kp
150e2d2686
Convert local arrays to array<>
2015-04-19 04:18:49 +00:00
Kp
d04e7902ee
Make file_get*list static
2015-03-22 18:49:21 +00:00
Kp
383e7703b6
Use ntstring in file_getdirlist
2015-03-22 18:49:21 +00:00
Kp
f900d4a5ee
Remove RAIIdmem::operator pointer
...
Mac OS X defines uint_fast32_t to unsigned int, causing ambiguous
overloads between RAIIdmem::operator[](std::size_t) and
RAIIdmem::operator[](int). Adding a disambiguating overload for OS X
breaks Windows. Remove operator pointer and operator[]. Rely on the
inherited operator[] for indexing. Require users to call ->get() to
convert to a simple pointer.
First btb ambiguity reported: https://github.com/dxx-rebirth/dxx-rebirth/pull/34
Second btb ambiguity reported: https://github.com/dxx-rebirth/dxx-rebirth/pull/43
2015-02-17 03:52:59 +00:00
Kp
f7815810e8
Use RAIIPHYSFS_File to manage PHYSFS_File
...
Fixes a few leaks on error paths.
2015-01-17 18:31:42 +00:00
Kp
0bf2a6eb80
Return unique_ptr from ui_add_gadget_button
2014-12-20 04:36:10 +00:00
Kp
c43feee61d
Return unique_ptr from ui_add_gadget_listbox
2014-12-20 04:36:10 +00:00
Kp
413a316154
Return unique_ptr from ui_add_gadget_inputbox
2014-12-20 04:36:09 +00:00
Kp
cf5e5620aa
Deduce input box text length
2014-12-20 04:36:09 +00:00
Kp
7cbf3c1e0e
Use unique_ptr for browser
2014-12-20 04:36:08 +00:00
Kp
d72fcfeef1
Remove unnecessary UI_GADGET* casts
2014-10-04 22:36:13 +00:00
Kp
a8f853aa7a
Pass d_event arg by const&
2014-10-04 22:36:13 +00:00
Kp
92cf115de1
Propagate for variables in common/ui/file.cpp
2014-09-26 02:42:15 +00:00
Kp
bd1c6d8c5d
Reduce header includes of physfsx.h
2014-07-22 23:48:23 +00:00
zico
ad7cb106bc
Changed custom D1X license to GPLv3
2014-06-01 19:55:23 +02:00
Kp
073f00974a
Eliminate uses of the typedef struct X { ... } X; pattern
...
C++ does not require this pattern.
import re, fileinput
to = re.compile(r'^typedef struct ([a-z_A-Z]+)\s*{')
tc = re.compile(r'^}(.*?)\s*([a-z_A-Z]+);$')
osn = None
for line in fileinput.input(inplace=True):
m = to.match(line)
if m:
osn = m.group(1)
print 'struct %s\n{' % osn
continue
if osn:
m = tc.match(line)
if m:
csn = m.group(2)
if osn == csn:
print '}%s;' % m.group(1)
osn = None
continue
else:
osn = None
print line,
2013-12-28 22:48:07 +00:00
Kp
21cc89e2c8
Use ui_dputs_at instead of ui_dprintf_at where possible
2013-12-17 04:03:34 +00:00