myk002
d0a6a3e930
remove unnecessary target modifications
2022-11-28 17:43:55 -08:00
myk002
88074dacf0
move tests into the same dir as the main files
2022-11-28 17:31:10 -08:00
myk002
7fbeb215d7
Merge branch 'myk_unit_testing' into myk_ctest
2022-11-28 17:26:27 -08:00
myk002
f921b02a1b
Merge remote-tracking branch 'cppcooper/unit-testing' into myk_ctest
2022-11-28 17:25:10 -08:00
myk002
ae035d5836
simplify unit testing setup
2022-11-28 17:16:48 -08:00
myk002
726771c8d3
supply default search key for tokenized text
2022-11-28 16:02:47 -08:00
myk002
adb9c5ea12
fix frame size calculation when frame_inset is set
...
also fix error when clicking on HotkeyLabels where no on_activate
callback has been set
2022-11-28 15:12:22 -08:00
myk002
fb6483fe6c
allow frames to be drawn without DFHack signature
2022-11-28 15:04:28 -08:00
Josh Cooper
25f87306b4
Removes separated unit test executables
2022-11-25 09:43:04 -08:00
Josh Cooper
79551f7ef0
Updates CMake TESTING vars
2022-11-25 09:43:04 -08:00
Josh Cooper
de91fa7f28
Adds -Wno-sign-compare to test targets
2022-11-25 09:43:04 -08:00
Josh Cooper
268719ed1f
Integrates googletest
2022-11-25 09:43:04 -08:00
Tim Siegel
8e18d610f5
cmake: Add SDL dep for Linux dfhack; deprecate BUILD_TESTS
...
On Linux, libdfhack.so depends on libSDL.so, but that was not marked
inside CMake. As it's only used via LD_PRELOAD, there was no problem.
But when linking unit tests against it, this becomes necessary. It may
be wise to add a find_package(SDL) to provide the user with more
control, but just a hard-coded "SDL" should work for most installs.
The CTest module creates a BUILD_TESTING option, which clashes
(thematically, not in code) with the existing BUILD_TESTS option.
Resolve it thus:
- Deprecate BUILD_TESTS; it still works, but is marked as an advanced
option so it doesn't show in the CMake UI by default.
- Add a new BUILD_TEST_SCRIPTS that does what BUILD_TESTS used to do,
but is a "dependent" option so it goes away if BUILD_TESTING=OFF.
The up-shot is that, by default, the C++ unit tests will be built
(BUILD_TESTING=ON) and the Lua integration tests are not installed
(BUILD_TEST_SCRIPTS=OFF).
2022-11-25 09:43:04 -08:00
Tim Siegel
face558dd0
unit testing: Link test executables against libdfhack
...
Note: Hard-coded "SDL" here is wrong, but requires some refactoring in
top-level CMakeLists.txt to fix.
2022-11-25 09:43:04 -08:00
Tim Siegel
c5be87e381
unit tests: Add CTest support, and a trivial first unit test
...
If BUILD_TESTS=ON:
- Adds a 'test' target for ninja
- Adds a library/MiscUtils.test unit test executable
2022-11-25 09:43:04 -08:00
myk002
c9cf5ecca8
we kept editfield as MOUSE_L for click and drag
2022-11-21 17:51:24 -08:00
myk002
24dc879888
adapt library code to newly correct mouse events
2022-11-21 17:36:46 -08:00
myk002
e2218d0429
make mouse button event behavior conform to docs
...
before, when a mouse button was held down, we'd send a single _MOUSE_L
and _MOUSE_L_DOWN event and that's it. now we properly send a single
_MOUSE_L_DOWN event and _MOUSE_L events for as long as the button is
held down. similar for the right mouse button
2022-11-21 17:35:14 -08:00
myk002
0190cfb117
ensure foo.init runs before foo.*.init
2022-11-20 17:27:14 -08:00
Myk
ac5a1d35ae
remove duplicate function definition
2022-11-18 17:39:49 -08:00
Myk
11c27d40dd
Merge branch 'develop' into Bumber64-patch-2
2022-11-18 17:34:00 -08:00
DFHack-Urist via GitHub Actions
acd561ec9c
Auto-update submodules
...
library/xml: master
scripts: master
2022-11-18 20:59:44 +00:00
DFHack-Urist via GitHub Actions
822a1c8359
Auto-update submodules
...
library/xml: master
scripts: master
2022-11-15 07:17:03 +00:00
Myk
966623a919
Merge pull request #2387 from cppcooper/units-checking
...
Extends Units module
2022-11-14 16:55:42 -08:00
myk002
94c6bc8063
refactor generic lua function caller to Lua ns
2022-11-14 16:40:35 -08:00
Josh Cooper
aa5c6515e0
Removes rogue indent
2022-11-13 11:39:20 -08:00
Josh Cooper
78021ec672
Adds indentation
2022-11-13 11:35:01 -08:00
Josh Cooper
7e1bdb5302
Matches Units.h ordering in LuaApi.cpp
2022-11-12 17:05:11 -08:00
Josh Cooper
d112649886
Organizes and documents Units::is*(unit) functions
2022-11-12 16:40:20 -08:00
Josh Cooper
ebd450af0e
Adds isUnitInBox to Units module
2022-11-12 14:42:41 -08:00
Myk
afe85137c3
Merge branch 'develop' into cmake-ctest
2022-11-12 11:50:33 -08:00
Myk
5136bbbc03
Merge pull request #2383 from cppcooper/em-fixes
...
Fixes JOB_STARTED event
2022-11-11 19:58:46 -08:00
myk002
5b1ebdf72a
don't return list idx when mouse is on scrollbar
2022-11-11 10:40:10 -08:00
DFHack-Urist via GitHub Actions
4d97c90f53
Auto-update submodules
...
library/xml: master
scripts: master
2022-11-10 07:18:00 +00:00
Josh Cooper
34de030ba9
Units module
...
- Updates `Lua API.rst`
- Only adds the most important additions (complicated enough to need explaining)
- Adds new functions to LuaApi.cpp
- Revises isUndead to accommodate `dfhack.units.isUndead(u)` => `Units::isUndead(u, false)` instead of taking the default value
2022-11-09 22:03:39 -08:00
Josh Cooper
f3ae193914
Update EventManager.cpp
2022-11-09 16:49:35 -08:00
Myk
eac7fac8e9
Merge pull request #2389 from myk002/myk_gui_anywhere
...
[Gui] add "anywhere" keybinding guard
2022-11-09 15:48:04 -08:00
Josh Cooper
80824f5b75
Extends Units module
2022-11-09 14:41:45 -08:00
myk002
0344595e4e
add "anywhere" keybinding guard
2022-11-09 14:32:51 -08:00
Josh Cooper
c0ffcc2f79
Updates Units::isDemon()
2022-11-09 12:37:41 -08:00
myk002
d95a5ac238
add string_to_int to MiscUtils.h
2022-11-09 11:55:29 -08:00
Josh Cooper
beee445f6f
Extends Units module
...
Adds unit check functions for
- animals
- demons
- titans
- megabeasts
- semimegabeasts
- night creatures
2022-11-09 11:44:28 -08:00
Myk
ccd43f1710
Merge pull request #2381 from myk002/myk_framed_panel
...
[widgets.Panel] support frames around panel widgets
2022-11-09 10:32:23 -08:00
Myk
9fed02435e
Merge pull request #2378 from myk002/myk_list_mouse
...
Allow widgets.List to report hover target and respond to shift-click
2022-11-09 10:32:06 -08:00
Myk
4924fd0d52
Merge pull request #2377 from myk002/myk_gui_convenience
...
Make View:getMousePos() and Screen:show() a bit more flexible
2022-11-09 10:31:58 -08:00
Myk
f2a386f0e1
Merge pull request #2375 from myk002/myk_uicommon
...
Move generally useful string functions from uicommon to MiscUtils
2022-11-09 10:31:50 -08:00
Josh Cooper
92645ccb5b
Fixes JOB_STARTED event
2022-11-08 12:43:23 -08:00
Myk
22eb9ca8b3
Merge pull request #2380 from myk002/myk_instrument_keybinding
...
instrument core keybinding resolution
2022-11-08 10:16:13 -08:00
myk002
4668d8c4a3
Add Lua::Push method for maps
2022-11-08 10:15:28 -08:00
myk002
e4d0bb9e46
move Lua push methods into LuaTools.cpp
2022-11-08 10:15:28 -08:00
myk002
b82a604c8d
factor out keys -> lua onInput code to LuaTools
2022-11-08 10:15:28 -08:00
Myk
193d29ba67
include cctype to fix build error
2022-11-08 09:53:08 -08:00
myk002
32dc80729a
support drawing frames around panels
2022-11-07 16:50:21 -08:00
myk002
351ecbfb59
instrument core keybinding resolution
2022-11-07 16:41:53 -08:00
myk002
83f560a6f4
allow shift-click to trigger submit2 for List
2022-11-07 16:14:16 -08:00
myk002
1b7b75d8ab
factor out detection of the list index under mouse
2022-11-07 16:13:45 -08:00
myk002
28aadea6af
allow an alternate ViewRect for getMousePos
2022-11-07 15:54:56 -08:00
myk002
be18f4e900
return self from Screen:show() as a convenience
2022-11-07 15:54:55 -08:00
myk002
5b9c18fc3c
migrate string fns from uicommon to MiscUtils
...
and clean up some leaky usings
2022-11-07 15:36:16 -08:00
Josh Cooper
2197aded30
Fixes segfault
2022-11-06 17:30:28 -08:00
Myk
a854e379b2
Merge pull request #2354 from myk002/myk_scrollbars_redux
...
make scrollbars more responsive when dragging
2022-10-22 20:28:52 -07:00
myk002
64b923b9eb
make the materials dialog filter lcase only
...
this allows the capital letter hotkeys to be processed by the list
widget without the special-casing of the ignore_keys attribute.
2022-10-21 12:43:53 -07:00
myk002
593b80cfa0
make scrollbars more responsive when dragging
2022-10-21 12:22:57 -07:00
myk002
1e21e6546e
fix materials selection dialog
...
where the filter was swallowing the sublist hotkeys
2022-10-19 17:31:28 -07:00
myk002
142b45ef49
move list item hotkey hint left by one tile
...
so it doesn't get covered by the scrollbar
2022-10-19 17:30:51 -07:00
myk002
666edd6d60
don't overwrite dig priority by accident
...
many callers of setDesignationAt simply didn't bother with the priority
parameter. change the default value of the priority param so that by
default we will keep the previous value instead of overwriting it
2022-10-19 16:47:54 -07:00
myk002
f94cc3fda0
add backtick to keybinding's hardcoded docs
2022-10-19 16:24:21 -07:00
Myk
4f10cd4a9b
Merge pull request #2331 from wolfboyft/constructions-find-at-tile-patch
...
Implement/change/expose to Lua constructions findAtTile & insert
2022-10-13 17:40:21 -07:00
Tachytaenius
ded5f483d6
Fix issues in construction module
2022-10-12 21:32:27 +01:00
myk002
b78af72403
record built constructions in blueprint
2022-10-12 13:31:46 -07:00
Tachytaenius
1cf9688349
Implement/change/expose constructions findAtTile & insert (not building)
2022-10-12 21:10:22 +01:00
myk002
d650ba2377
ensure scrollbar can never get ahead of the cursor
2022-10-10 16:42:32 -07:00
myk002
ba36e72b33
support click and drag for scrollbars
2022-10-07 16:27:19 -07:00
myk002
35eb4e08dd
hold down the mouse button to continue scrolling
2022-10-07 15:40:05 -07:00
myk002
2bff70a290
add unit tests for widgets.Scrollbar
2022-10-07 13:14:52 -07:00
myk002
5722d6914b
transition Label to use the new generic Scrollbar
2022-10-07 12:45:43 -07:00
myk002
24232e894a
create Scrollbar widget and integrate with List
2022-10-06 11:13:16 -07:00
myk002
9817106c30
add --exclude option for ls
2022-10-05 13:30:14 -07:00
myk002
dc535004e9
better formatting for ls output for tags
2022-10-05 12:51:30 -07:00
DFHack-Urist via GitHub Actions
739792a59e
Auto-update submodules
...
library/xml: master
scripts: master
2022-10-04 07:30:12 +00:00
myk002
3f6e92eda4
finalize 0.47.05-r7 release
2022-09-30 11:58:22 -07:00
myk002
cb80f7dd75
don't cache dup civzones when scanning buildings
2022-09-25 16:04:36 -07:00
lethosor
e6336e769a
Units::teleport(): set idle_area
2022-09-24 13:30:24 -04:00
myk002
278b7528ac
implement basic domain index structure
2022-09-23 08:46:50 -07:00
myk002
fae26b2375
replace die's underline with tombstones
...
easter egg suggested by thurin : )
2022-09-23 08:34:22 -07:00
Myk
b07f3b5b6c
stub help formatted same as real help
2022-09-22 17:43:56 -07:00
Myk
4d662adfe5
Fix marker checking for ruby help text
2022-09-22 17:39:54 -07:00
Myk Taylor
28b70eaee9
return map coords as a coord, not x, y, z
2022-09-18 13:27:33 -07:00
Myk Taylor
dbc5001bd8
fail if mouse cursor isn't over the map area
2022-09-18 13:27:13 -07:00
Myk Taylor
3b650c8d0b
don't let changes to the lua cursor bleed through
...
before, we could end up changing the state of whoever last called
guidm.setCursorPos()
2022-09-18 08:20:33 -07:00
Myk Taylor
1f15e4d47e
expose Gui::getMousePos() to Lua
2022-09-18 08:19:56 -07:00
Myk Taylor
215a5b0a24
add Gui::getMousePos() that always gets map coords
2022-09-18 08:19:02 -07:00
Myk Taylor
448eced17c
make Screen::getMousePos always return scr coords
2022-09-18 08:07:08 -07:00
myk002
d0a5db2a0d
set sentinel value used by TWBT
2022-09-16 21:56:05 -07:00
myk002
6fff83de5a
fix EditField rendering with TWBT
2022-09-16 15:24:33 -07:00
myk002
b88d343ddd
fix off-by-one error on scrollbar click detection
2022-09-14 09:25:43 -07:00
myk002
bb52e7bac8
list tools in categories with tags builtin
2022-09-13 23:17:19 -07:00
DFHack-Urist via GitHub Actions
dde56040c3
Auto-update submodules
...
library/xml: master
scripts: master
2022-09-12 07:39:33 +00:00
myk002
d4914e7511
implement mouse click reactions for scrollbar
2022-09-11 19:33:01 -07:00
myk002
e2fbade219
fix scrollbar display when all text is visible
...
also align behavior with documentation when 'left' or 'right' is
explicitly specified (i.e. always show the scrollbar)
2022-09-11 18:56:43 -07:00
myk002
f71f034d1d
show full scrollbars instead of just scroll icons
2022-09-11 17:58:10 -07:00
myk002
23994d4f4c
dynamically wrap helpdb long help text (default 80)
2022-09-11 13:41:20 -07:00
myk002
3c99a7214f
ensure params are strings when invoking scripts
2022-09-10 10:10:28 -07:00
myk002
cae2bca0a7
add dfhack.screen.hideGuard
2022-09-10 09:49:43 -07:00
lethosor
2fdbcaebf5
Accept negative indices, add vector tests
2022-09-07 09:14:09 -07:00
lethosor
483652e193
Rewrite utils.df_expr_to_ref() for consistency, add tests
2022-09-07 09:14:09 -07:00
myk002
b1a8662c4a
Merge branch 'develop' into docs
2022-08-31 23:00:39 -07:00
myk002
074a6ec5cd
allow EditFields to ignore specified keys
...
like "+" and "-", so you can use them as hotkeys in the parent view
2022-08-31 10:22:41 -07:00
myk002
27e189fef2
no cursor position reset when updating list filter
2022-08-29 15:17:17 -07:00
myk002
4a1a322cd7
adapt to the new summary layout
2022-08-26 16:51:42 -07:00
myk002
0d3aa0fb28
Merge remote-tracking branch 'upstream/develop' into docs
2022-08-25 21:59:01 -07:00
myk002
8acda4d6c8
Interpret '4' & '6' as strings, not movement keys
2022-08-19 22:40:53 -07:00
myk002
751c2eb7d1
fix detection of short description start
...
now that labels are no longer bolded in the text rendering, the header
detection code needs updating
2022-08-19 16:19:19 -07:00
myk002
df9c37a8b7
Merge branch 'develop' into docs
2022-08-15 17:09:36 -07:00
myk002
8672282fd8
add helpdb, unit test, and document API
...
note that we have to dynamically sort some of the expected lists for
locale agnosticism
2022-08-15 16:31:52 -07:00
myk002
6fd0f4505f
add dfhack history repository and expose to lua
2022-08-15 16:27:43 -07:00
myk002
84cd3f0e6d
add getEntries() to the CommandHistory API
...
so we can export them to lua
also bump the default history size to 5000 from the paltry 100 we had
2022-08-15 16:27:43 -07:00
myk002
7f0791f6c3
use setText() accessor method instead of direct access
2022-08-15 16:24:34 -07:00
myk002
22f9f3b042
add unit tests for new widget functionality
2022-08-15 16:24:34 -07:00
myk002
0ae4fed3cf
add mouse support for CycleHotkeyLabel widgets
2022-08-15 16:24:34 -07:00
myk002
79b6cd13e9
support scrolling by half pages in Label
2022-08-15 16:24:34 -07:00
myk002
a5af5a1373
don't bork on no frame, set cursor to end of text
2022-08-15 16:24:34 -07:00
myk002
4e382c7b3b
make HotkeyLabels react to clicking
...
also be better about initializing EditField frame height
2022-08-15 16:24:34 -07:00
myk002
8de8b22566
click to correct cursor position on long strings
...
where the left side of the string has been trimmed
2022-08-15 16:24:34 -07:00
myk002
b7f74fe2ce
allow mouse lclick to select a List item
2022-08-15 16:24:34 -07:00
myk002
1dd3d6656b
move the cursor in an EditField on mouse lclick
2022-08-15 16:24:34 -07:00
myk002
0aa9a187cf
support cursor movement in EditFields
2022-08-15 16:24:34 -07:00
myk002
43b1abcdcf
support submit2 for EditFields
2022-08-15 16:24:34 -07:00
myk002
214dd3c579
reset scroll position when the text is changed
2022-08-15 16:24:34 -07:00
myk002
23ced99131
fix call to new functions in existing coord fn
2022-08-15 16:15:41 -07:00
myk002
a4c8535977
add argparse int checking methods, more docs
2022-08-15 16:15:41 -07:00
myk002
ef56addb14
prep for new format; accept pipe as tag separator
2022-08-07 22:13:46 -07:00
myk002
a8d0cc7980
support scrolling by half pages in Label
2022-08-06 23:48:25 -07:00
myk002
625b4d439d
fix typo in API function name
2022-08-05 22:31:39 -07:00
myk002
1a777257b4
add get_entry_types API method to helpdb
2022-08-05 22:06:02 -07:00
myk002
ebfe00b112
editing pass of short descriptions
...
and fix some short description parsing
2022-08-05 10:08:23 -07:00
myk002
03027b513a
Merge branch 'develop' into docs
2022-08-03 22:55:38 -07:00
DFHack-Urist via GitHub Actions
5b26d3361b
Auto-update submodules
...
library/xml: master
scripts: master
2022-08-03 07:17:28 +00:00
myk002
56e7a15459
move dfhack.history to dfhack-config/dfhack.history
2022-08-02 22:46:04 -07:00
myk002
391a4d8883
use dfhack-config/lua.history instead of lua.history
2022-08-02 22:46:04 -07:00
myk002
aa3a389b6f
fix parsing bold text and indenting of ls output
2022-07-29 17:37:50 -07:00
myk002
507b1632a2
support backtick as a keybinding
2022-07-28 05:45:50 -07:00
myk002
a053cce444
update the "requires interactive terminal" message
...
to make it more user friendly
2022-07-27 16:30:14 -07:00
myk002
10f8417cc2
create helpdb entries for all plugins
...
even those that have no commands and are not enableable
2022-07-26 22:22:43 -07:00
myk002
5b0f9ddd4f
bump the default history size to 5000
...
100 is just too small, especially since we're not removing duplicate
entries.
2022-07-26 10:24:05 -07:00
myk002
8cf7f59c39
wrap ls and tags output
2022-07-25 17:48:39 -07:00
pre-commit-ci[bot]
a567665ab2
[pre-commit.ci] auto fixes from pre-commit.com hooks
...
for more information, see https://pre-commit.ci
2022-07-24 05:41:41 +00:00
myk002
f9d4781cbc
use dfhack-config/lua.history instead of lua.history
2022-07-23 22:12:34 -07:00
myk002
5f56d79235
move dfhack.history to dfhack-config/dfhack.history
2022-07-23 21:55:49 -07:00
Myk
3c92d4f195
Fix typo
2022-07-23 16:35:40 -07:00
myk002
9b7cc6180d
don't create entries for non-enableable plugins
2022-07-22 21:21:38 -07:00
myk002
cb3e537b38
fix help message when trying to run a plugin name
2022-07-22 20:57:19 -07:00
myk002
0858b95c40
print help from helpdb on CR_WRONG_USAGE
2022-07-22 17:45:48 -07:00
myk002
4b1696f783
add '?' alias for help
2022-07-21 22:36:17 -07:00
myk002
2ce7518562
read plugin command docs from single plugin file
2022-07-21 22:33:43 -07:00
myk002
0b88922ffc
Merge remote-tracking branch 'upstream/develop' into docs
2022-07-20 16:33:50 -07:00
DFHack-Urist via GitHub Actions
2f50d161d9
Auto-update submodules
...
library/xml: master
scripts: master
2022-07-20 23:31:20 +00:00
myk002
64b793b409
support EditField:setText() so scripts can use it
...
and be compatible with both the develop and docs branch
2022-07-20 15:40:49 -07:00
myk002
9dcb63da53
don't bork on no frame, set cursor to end of text
2022-07-20 15:36:17 -07:00
myk002
048b20ac45
no help entries for non-enableable plugins
2022-07-20 13:34:29 -07:00
myk002
0dd153cc0d
ensure we pick up the plugin help entry
...
even when it has a command and that command is not equal to the plugin
name
2022-07-20 12:34:40 -07:00
myk002
954e246140
reformat builtins and properly read tags
2022-07-19 23:01:25 -07:00
myk002
ddcb9b4921
add missing 'man' builtin
2022-07-19 22:35:08 -07:00
myk002
e3588cf49c
return entire tag data structure for iterating
2022-07-19 22:13:53 -07:00
DFHack-Urist via GitHub Actions
e5961b45b4
Auto-update submodules
...
library/xml: master
2022-07-19 07:17:31 +00:00
Quietust
a20612b0a8
Update structures
2022-07-18 17:50:41 -07:00
myk002
8173f6dd02
Merge remote-tracking branch 'upstream/develop' into docs
2022-07-18 10:59:00 -07:00
myk002
301c8e93a1
move builtin docs to individual files
2022-07-18 10:58:35 -07:00
myk002
e650bd0942
add comment about plugin docs
2022-07-17 17:05:29 -07:00
myk002
7f302888ec
make HotkeyLabels react to clicking
...
also be better about initializing EditField frame height
2022-07-17 16:04:36 -07:00
myk002
5723b76585
click to correct cursor position on long strings
...
where the left side of the string has been trimmed
2022-07-17 15:43:58 -07:00
myk002
805456e82b
allow mouse lclick to select a List item
2022-07-16 22:18:38 -07:00
myk002
f65f36ffee
move the cursor in an EditField on mouse lclick
2022-07-16 22:03:39 -07:00
myk002
27425e47f6
support cursor movement in EditFields
2022-07-15 22:22:51 -07:00
myk002
9b340a7630
support submit2 for EditFields
2022-07-15 13:46:01 -07:00
myk002
c9a87511bd
add dfhack history repository and expose to lua
2022-07-15 09:18:27 -07:00
myk002
dd6fbd53b6
add getEntries() to the CommandHistory API
...
so we can export them to lua
also bump the default history size to 5000 from the paltry 100 we had
2022-07-15 09:07:14 -07:00
myk002
193b9a4004
add missing namespace
...
which did not cause compiler errors for some reason
2022-07-14 14:08:33 -07:00
myk002
e926e1116e
replace more Core cpp code with calls to helpdb
...
also document devel/dump-rpc builtin
2022-07-14 13:19:30 -07:00
lethosor
f021dd0e0a
Gui::getAnyItem(): add support for viewscreen_treasurelistst
2022-07-12 11:25:16 -04:00
lethosor
4cdb0ff138
Merge branch 'rm-old-modules' into develop
2022-07-12 11:23:10 -04:00
myk002
185f49976c
ensure scripts get their entry type set
2022-07-11 17:24:53 -07:00
myk002
328d839f19
support backtick as a keybinding
...
and bind it to gui/launcher
2022-07-11 17:23:56 -07:00
myk002
a5da3c18f9
reset scroll position when the text is changed
2022-07-11 17:23:23 -07:00
myk002
4ed15ffcc4
fix parsing of first line as the short_help
2022-07-10 20:48:24 -07:00
myk002
a58b56abc4
don't error out if files cannot be read
2022-07-10 20:19:12 -07:00
Myk
e899510b8b
Use helpdb to implement help and ls built-in commands and dfhack.script_help() ( #2242 )
...
* use helpdb to implement the help and ls builtins
* use helpdb to implement dfhack.script_help()
2022-07-10 20:17:54 -07:00
Myk
4ad8e7199a
Support builtin commands in helpdb ( #2241 )
...
* support builtin commands in helpdb, implement list API, document api
2022-07-10 20:17:52 -07:00
myk002
35a4d19ac9
implement listing functions for helpdb
2022-07-10 20:14:21 -07:00
Myk
64aba7a8a3
Myk rendered help ( #2240 )
...
* implement help db
* add initial list of tags
* read tags fr help, read script short desc, filter
2022-07-10 20:14:21 -07:00
Myk
28e15162a5
reorganize init scripts into dfhack-config ( #2232 )
...
* reorganize init scripts into dfhack-config
allows player init scripts to build on defaults instead of replace them
this also moves the init scripts out of the main df directory
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* escape asterisks in docs
* remove unneeded dfhack.init file creation for test
* write the test init script to the new init dir
* create the init dir before trying to write a file
* rename default init files for clarity
* Update changelog
* Update docs/changelog.txt
Co-authored-by: Alan <lethosor@users.noreply.github.com>
* Try to get buildmaster to work with old branches
* Update changelog
* get keybindings from all init scripts
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Fix spacing in changelog
* split default loading into its own file
* update docs with new changes
* update help text wording in default init files
* Apply suggestions from code review
Co-authored-by: Alan <lethosor@users.noreply.github.com>
* Alphabetize changelog
* Update onMapLoad.default.init
* Update onMapLoad.init
* Update Core.rst
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Alan <lethosor@users.noreply.github.com>
2022-07-10 08:54:55 -07:00
Myk
e0d37a31ae
Make the manager orders library available by default ( #2233 )
...
* move orders out of examples directory
* install orders into library dir
* read orders from new library dir
* update documentation
* update dreamfort references to orders import
* update changelog
* ignore json files in pre-commit
2022-07-06 07:03:29 -07:00
DFHack-Urist via GitHub Actions
aec5684897
Auto-update submodules
...
library/xml: master
scripts: master
2022-07-05 07:17:21 +00:00
lethosor
739871bc0f
Remove Hooks-egg.cpp and related code and configuration options
2022-06-29 23:35:14 -04:00
lethosor
1147add520
Constructions module: remove some old/unused functions/types
2022-06-29 23:35:14 -04:00
lethosor
4c7caa2658
Remove unneeded dependencies on modules/Graphic.h
2022-06-29 23:35:13 -04:00
lethosor
8bb047fcc6
Remove Notes module
...
Only used in a devel plugin that prints notes, and can be easily replaced
with `ui.waypoints.points`
2022-06-29 23:35:13 -04:00
DFHack-Urist via GitHub Actions
0aa7ec877e
Auto-update submodules
...
library/xml: master
scripts: master
2022-06-29 15:17:13 +00:00
Quietust
8a605e1903
The great de-anon-ification
2022-06-29 07:54:04 -07:00
Timur Kelman
9788a8a22a
Add default selection handler to `materials.ItemTraitsDialog` ( #2211 )
...
* add forward compatibility for future `job_item_flags`
* add default selection handler to `materials.ItemTraitsDialog`
* add a call to `error()` in 'unknown'-branch inside `setTrait`
* add `ItemTraitsDialog` improvement description to changelog.txt
2022-06-28 16:27:18 -07:00
Myk
ba629b8e0a
manually handle DestroyBuilding jobs ( #2209 )
...
* don't delete general refs from jobs that we cancel
though we still disconnect the refs if we can
* get job remove working in all cases
we apparently need to manually handle DestroyBuilding jobs
everything else we should let cancel_job handle
* update changelog
2022-06-21 16:38:04 -07:00
quarque2
f33c9bc881
Update tile-material.lua ( #2218 )
...
* Update tile-material.lua
* Update changelog.txt
* Update changelog.txt
* Update changelog.txt
* Update tile-material.lua
2022-06-20 12:38:37 -07:00
myk002
88ae50b9ae
update version and changelog to 0.47.05-r6
2022-06-17 15:42:23 -07:00
Josh Cooper
d38ab1d152
Fix UNIT_NEW_ACTIVE events ( #2197 )
...
* Updates eventful.lua to use UNIT_NEW_ACTIVE
* Fixes bug #2189
* Revises activeUnits declaration/initialization
* Fixes build error
* Update changelog.txt
* reword changelog entry
* add changelog entry for event name change
Co-authored-by: Myk <myk002@yahoo.com>
2022-06-17 09:34:41 -07:00
Timur Kelman
1a629a26bf
add `ItemTraitsDialog` to materials.lua ( #2199 )
...
* add `ItemTraitDialog` to materials.lua
* rename `ItemTraitDialog` to `ItemTraitsDialog` (plural)
* Update changelog.txt
2022-06-12 07:03:04 -07:00
Myk
85d7489b3c
ensure refs are cleaned up when we remove a job ( #2184 )
...
* ensure job items are disassociated from the job
when the job is removed. the new df-provided ``cancel_job()`` doesn't do
this for us whereas the old custom implementation did.
ref: #2028
* remove trailing whitespace
* Clean up general refs before removing job
Because the game method doesn't do it itself
* Fix typo in var name
* clean up code
* update changelog
2022-06-11 07:38:22 -07:00
lethosor
62e7303c68
Upgrade pre-commit-hooks to v4.3.0 (+ submodules)
...
This contains a fix on Windows that checks for the executable bit according to
Git, instead of according to Windows, which reduces false-positive
"check-executables-have-shebangs" failures.
2022-06-08 17:48:14 -04:00
DFHack-Urist via GitHub Actions
ec2f2446d2
Auto-update submodules
...
library/xml: master
scripts: master
2022-06-08 07:18:16 +00:00
Ryan Williams
46438a2af3
Merge branch 'DFHack:develop' into Bumber64-patch-2
2022-06-07 04:21:56 -07:00
Ryan Williams
a7267e3c4e
Optimize report deletion
2022-06-07 04:21:48 -07:00
DFHack-Urist via GitHub Actions
40a6fcdd99
Auto-update submodules
...
library/xml: master
scripts: master
2022-06-07 07:18:05 +00:00
Ryan Williams
5d08e5ae67
More constants; remove extra "using" statements
2022-06-06 01:56:11 -07:00
Ryan Williams
ad1a3408e6
Hopefully fix submodules
2022-06-06 01:41:17 -07:00
DFHack-Urist via GitHub Actions
7b2cb8f9a6
Auto-update submodules
...
library/xml: master
2022-06-05 07:16:27 +00:00
Ryan Williams
ce36abce47
Fixes
2022-06-04 15:46:02 -07:00
Ryan Williams
ae4446610b
Update Gui.cpp
2022-06-04 15:36:50 -07:00
Ryan Williams
16b5cade00
Add constants, update old fns
...
Add MAX_REPORTS_SIZE, RECENT_REPORT_TICKS
Remove redundant "using df::global::world" inside fns
Update `makeAnnouncement`:
Use `word_wrap`, `pauseRecenter`, and utility fn `delete_old_reports`
Handle repeat announcements
Insert sorted into ``world->status.announcements``
Update `addCombatReportAuto`: Use utility fn `recent_report`
Update `showPopupAnnouncement`: Delete old popups at end of fn
Update `getDwarfmodeViewDims_default`: Check for ui_sidebar_mode::Default and ArenaWeather
2022-06-04 15:23:57 -07:00
Ryan Williams
23e85a0d24
Fetch and merge
2022-06-04 12:17:28 -07:00
Ryan Williams
b0b601cf0f
Remove recenterViewscreen, update revealInDwarfmodeMap
2022-06-04 11:59:04 -07:00
DFHack-Urist via GitHub Actions
f290b1c804
Auto-update submodules
...
library/xml: master
scripts: master
2022-06-04 07:16:44 +00:00
DFHack-Urist via GitHub Actions
f5d3b9f699
Auto-update submodules
...
library/xml: master
scripts: master
2022-06-02 04:51:00 +00:00
Myk
89d3d45e87
Allow EditField widgets to manage their own activation and keyboard focus ( #2147 )
...
* use new focus subsystem in widgets.EditField
* always eat the enter key if we have an on_submit
* add modal attribute
* give EditFields a default height of 1
so they can be autoarranged
2022-06-01 21:48:21 -07:00
Myk
ad2d9cad03
[lua] implement keyboard focus subsystem ( #2160 )
...
* implement keyboard focus subsystem
* Fix error in focus group combining
* documentation for the inputToSubviews decision
* modify unit tests to catch that last bug
2022-06-01 17:42:13 -07:00
Ryan Williams
bc0def4342
MiscUtils word_wrap: Add option to trim only leading whitespace after wrapping ( #2169 )
...
* Update changelog.txt
2022-05-30 22:58:46 -04:00
Ryan Williams
b1e118384e
Update Maps.cpp
2022-05-30 16:26:30 -07:00
Ryan Williams
574728ac5c
Move add_proper_report up with other utility fns
2022-05-30 15:04:43 -07:00
Ryan Williams
0ff0d272b5
use static instead of anon namespace; suggested changes
2022-05-30 13:51:24 -07:00
Ryan Williams
1c3ea000e1
Trim trailing whitespace
2022-05-28 15:56:49 -07:00
Ryan Williams
249ed2888f
Fix scope issue
2022-05-28 13:28:10 -07:00
Ryan Williams
e613085b0e
remove whitespace
2022-05-28 12:39:49 -07:00
Ryan Williams
2b29431806
More fixes
...
* Use word_wrap()
* add_proper_report utility fn; have addCombatReportAuto use this
* Update Lua API.rst
* Update Gui.cpp
2022-05-28 12:35:49 -07:00
myk002
ea7fe2b926
account for scroll bars when sizing message boxes
2022-05-27 15:38:13 -07:00
Timur Kelman
07f54deb0b
fix wrong `Label.frame_body.x2` value ( #2134 )
...
* fix wrong `Label.frame_body.x2` value
`update_scroll_inset` might change `frame_inset`, i.e. we need to `computeFrame` with the new values.
* add tests for Label
* add missing `local`, remove code in comments
* move `TestFramedScreen` outside test functions
2022-05-27 15:25:17 -07:00
lethosor
ca10cbc9e6
Merge remote-tracking branch 'lethosor/mock-observe-func' into develop
2022-05-27 01:46:24 -04:00
lethosor
888c531774
Add mock.observe_func(), improve mock.lua documentation
...
observe_func() is similar to func() but passes through all calls to a specified
function.
2022-05-27 00:33:44 -04:00
DFHack-Urist via GitHub Actions
56b301164f
Auto-update submodules
...
library/xml: master
scripts: master
2022-05-25 07:18:15 +00:00
Ryan Williams
4b21e7afb4
Remove parseReportString from API (now utility fn)
...
Implementations using `word_wrap()` are commented out pending changes to that function.
2022-05-24 03:52:33 -07:00
myk002
18628ff5b8
make key_sep more configurable
...
and add more configuration to HotkeyLabel and EditField to take
advantage of it
2022-05-18 16:46:33 -07:00
myk002
53609db1f9
let CycleHotkeyLabels take numeric initial_options
...
even if all of the option values are non-numeric
2022-05-18 15:39:52 -07:00
DFHack-Urist via GitHub Actions
47b87a5ac1
Auto-update submodules
...
library/xml: master
2022-05-17 07:18:04 +00:00
Ryan Williams
ce34ac8f33
Use debugfilter; remove redundant changelog entries
2022-05-16 18:41:47 -07:00
Ryan Williams
785fe9aa3a
fix "info" level described as "error" level
2022-05-14 05:56:57 -07:00
Myk
8f6522899b
Upgrade jsoncpp to 1.9.5 ( #2144 )
...
* test jsoncpp upgrade
* use new json library target name
* don't remap the output dirs
* undo warnings at the source
* set new defaults for jsoncpp
* fix typo in new options
* fix signed comparison mismatch warning
* address random(?) compile failures
saying our std::atomic is not initialized in Debug.cpp
2022-05-13 13:52:43 -07:00
DFHack-Urist via GitHub Actions
bf8eaef6bc
Auto-update submodules
...
library/xml: master
plugins/isoworld: master
depends/libexpat: dfhack
depends/jsoncpp-sub: dfhack
2022-05-12 05:21:01 +00:00
DFHack-Urist via GitHub Actions
15a11d1a39
Auto-update submodules
...
library/xml: master
scripts: master
2022-05-10 07:22:46 +00:00
Tim Siegel
55e4008925
MiscUtils: teach word_wrap() to optionally preserve whitespace
2022-05-09 13:42:11 -04:00
Ryan Williams
14afcc2b0a
Merge branch 'develop' into Bumber64-patch-2
2022-05-05 22:58:23 -07:00
myk002
585888c2d3
update version, changelog, modules for 0.47.05-r5
2022-05-04 17:21:31 -07:00
DFHack-Urist via GitHub Actions
d4ba946d2b
Auto-update submodules
...
library/xml: master
scripts: master
2022-05-03 07:18:10 +00:00
Ryan Williams
74499ad64a
Use to_string on integer
2022-05-03 00:09:34 -07:00