Commit Graph

3626 Commits (37aa3dfced93fabab8441df60bb4bd84dc469330)

Author SHA1 Message Date
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