Commit Graph

852 Commits (873e94ea5df894780f67e64b5f7f161ba3d7e5af)

Author SHA1 Message Date
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
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
myk002 d0753b4a9c update changelog 2022-11-08 10:15:28 -08:00
myk002 1d03afcd6f update changelog 2022-11-08 10:15:28 -08:00
myk002 0d970509f8
update changelog 2022-11-07 16:58:51 -08:00
myk002 f906aee5b8
update changelog 2022-11-07 16:19:09 -08:00
myk002 b2b2a52b55
update changelog 2022-11-07 16:00:43 -08:00
myk002 5a720bd496
update changelog 2022-11-07 15:40:00 -08:00
Josh Cooper 391553624f
Update changelog.txt 2022-11-06 17:34:53 -08:00
Myk 1e31cc197d
Merge branch 'develop' into spectate 2022-10-26 12:30:58 -07:00
Myk c7f4f57367
Merge pull request #2360 from myk002/myk_automaterial_render
[automaterial] fix render errors with box boundaries
2022-10-26 12:25:48 -07:00
Myk e60cbfc743
Merge pull request #2361 from myk002/myk_zjump_twbt
[mousequery] fix z-level jumps when clicking quickly
2022-10-26 12:25:40 -07:00
myk002 8b61a17009
prevent z-level from changing after box select
if the player clicks the mouse too fast after finishing a selection
2022-10-24 12:46:31 -07:00
myk002 01c46f7a7e
fix z-level jumps when clicking quickly
this happens when TWBT is enabled and multilevel is > 0
getDepthAt() returns inconsistent values for the same position, leading
to a mismatch when we "unshift" the coordinates to account for render
depth
2022-10-24 12:44:25 -07:00
myk002 6a57cc4450
fix render errors with automaterial box boundaries 2022-10-24 12:41:17 -07:00
Josh Cooper c611a7615c Merge branch 'develop' into spectate 2022-10-23 10:41:28 -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 1e21e6546e
fix materials selection dialog
where the filter was swallowing the sublist hotkeys
2022-10-19 17:31:28 -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 9199f8207f
add global keybinding for on-screen keyboard 2022-10-19 14:05:20 -07:00
Josh Cooper 9b1541add5 Merge branch 'develop' into spectate 2022-10-14 17:41:34 -07:00
myk002 fbb4b37493
update changelog 2022-10-14 13:22:05 -07:00
myk002 fc926df59d
update changelog 2022-10-14 12:31:51 -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 0b9b05e488 Add changelog entries 2022-10-13 20:51:01 +01:00
Josh Cooper 5c785d4bd7 Rewords spectate changelog entries 2022-10-13 11:57:25 -07:00
myk002 c52138b168
generate meta blueprints 2022-10-12 17:42:36 -07:00
myk002 f411ba76ba
record accurate room sizes in blueprints 2022-10-12 16:33:06 -07:00
myk002 b03911945d
update changelog 2022-10-12 16:03:03 -07:00
Josh Cooper f54d37c8e7 Moved spectate changelog entries to new section 2022-10-12 14:42:04 -07:00
Josh Cooper 8d8ef023fd Merge branch 'develop' into spectate 2022-10-12 14:40:56 -07:00
Josh Cooper 23c2d14b4a Updated documentation/changelog 2022-10-12 14:40:21 -07:00
myk002 754f1a2598
update changelog 2022-10-12 13:33:29 -07:00
Josh Cooper ddf7850d90 Merge branch 'develop' into spectate 2022-10-12 11:33:55 -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 24232e894a
create Scrollbar widget and integrate with List 2022-10-06 11:13:16 -07:00
myk002 33816b8bc2
optionally process only the cur z-level and below 2022-10-05 14:01:09 -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
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 c1b9ffc7ca
Clarify changelog
Based on clarification from Doublestrafe and Quietust
2022-09-24 13:31:18 -04:00
lethosor e6336e769a
Units::teleport(): set idle_area 2022-09-24 13:30:24 -04:00
myk002 7c498e6611
add note about regenerating dwarfmonitor.json 2022-09-23 08:39:40 -07:00
myk002 301563d1e6
update changelog 2022-09-16 21:56:04 -07:00
Myk 04754b0a81
Merge branch 'develop' into modding-guide 2022-09-11 23:00:33 -07:00
myk002 f71f034d1d
show full scrollbars instead of just scroll icons 2022-09-11 17:58:10 -07:00
lethosor bd51d9c455
Changelog entry for hideGuard 2022-09-10 15:34:17 -04:00
myk002 82e954692e
update changelog 2022-09-10 10:15:08 -07:00
myk002 a392a5371d
add keybinding for gui/workorder-details 2022-09-07 22:02:33 -07:00
myk002 040d018b8e
fix order of tree designation in autochop 2022-09-07 10:34:56 -07:00
myk002 86e1a8d59c
When smoothing walls, connect to doors and fgates 2022-09-07 10:11:51 -07:00
lethosor 483652e193 Rewrite utils.df_expr_to_ref() for consistency, add tests 2022-09-07 09:14:09 -07:00
Josh Cooper e24963a441 Updates changelog.txt with new Pause API under World module 2022-09-03 18:28:30 -07:00
myk002 bd4d17d205
update changelog 2022-09-01 22:48:18 -07:00
Josh Cooper 33b92e6f69 Implements auto-unpause feature for spectate plugin 2022-09-01 16:53:26 -07:00
myk002 d258035b88
update changelog 2022-08-31 23:39:24 -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 8804dab182
update dreamfort traffic designations 2022-08-29 22:04:22 -07:00
Myk 29d4d530b5
Merge branch 'develop' into modding-guide 2022-08-27 09:00:53 -07:00
myk002 0d3f5c2904
get new script docs to compile 2022-08-25 21:53:35 -07:00
myk002 d0967b7e59
add alt-N keybinding for do-job-now 2022-08-19 09:34:38 -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 f7a0423566 update changelog 2022-08-15 16:27:43 -07:00
myk002 7c3b06d71e update changelog 2022-08-15 16:24:34 -07:00
myk002 9f648d532e modify seedwatch all to actually watch all seeds 2022-08-15 16:11:13 -07:00
myk002 9595e2152d
update changelog (fix typo) 2022-08-03 21:44:25 -07:00
myk002 db81538f63
update changelog 2022-08-03 21:44:25 -07:00
myk002 7e3acc410e update changelog 2022-08-02 22:46:04 -07:00
myk002 b6e27b1875
fix rendering of quoted backtick 2022-07-28 05:46:25 -07:00
myk002 507b1632a2
support backtick as a keybinding 2022-07-28 05:45:50 -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
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 9f44fd3f72
[manipulator] add the professions library (#2234)
* move professions out of the examples folder

* install professions into professions/library

* guard unguarded header from multiple inclusion

* load and display library professions

* update changelog

* move example professions docs from examples guide

* update dreamfort documentation

* note that professions folder has changed

* Fix bad merge
2022-07-06 07:21:26 -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
Myk 091068c710
[prospect] give player control over which information is output (#2231)
* give player control over prospect output

* suspend the core *before* we call to Lua
2022-07-06 06:57:13 -07: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
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
Tachytaenius a9ab415ac7 Clean merge heckery and clean up label reference 2022-06-21 15:20:49 +01:00
Tachytaenius 4c2a533de0 Remove "added anchor" from changelog 2022-06-21 12:54:28 +01:00
Tachytaenius ccee6ba487 Added link to modding guide from changelog 2022-06-21 12:53:59 +01:00
Tachytaenius a880a2b92d Move changelog entries to proper place 2022-06-21 12:48:28 +01: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
Tachytaenius 0ae8a42080 Unfinished modding guide 2022-06-20 20:07:07 +01: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
Warmist fc384fd1a2
Update eventful.lua (#2203)
* Update eventful.lua

Had wrong function. Fixes https://github.com/DFHack/dfhack/issues/2202

* Update Lua API.rst

Update docs to add onReactionCompleting and remove outdated info

* Update Lua API.rst

Some more minor doc fixes

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* add changelog entry

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-06-12 07:12:49 -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
Ryan Williams 9b21c0d64a
Merge branch 'DFHack:develop' into Bumber64-patch-2 2022-06-06 01:53:05 -07:00
lethosor 5e0a947d51
Fix changelog entry and release for #2028 2022-06-06 01:49:23 -04: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
Myk ed2ba69713
Improvements to dreamfort, quickfort keystroke aliases, and example orders (#2162)
* add alt-f as a hotkey for quickfort

to mimic the existing windows hotkey for the old quickfort
hopefully this will ease the transition from the old quickfort to the
new

* add and document new quickfort aliases

* reduce quantity requirement for dyeing

15 is just too high. the counter counts bags, not units

* dreamfort blueprint improvements

most of these suggested by ldog on the forums. Thanks!
- significantly extend the list of hostile creatures that get stashed in the prisoner quantum stockpile
- send adamantine thread to the metalworker stockpiles
- give from thread/cloth stockpiles to clothier, loom, and dyer to protect the adamantine thread
- automatically create tavern, library, and temple locations (restricted to residents only by default)
- automatically associate the rented rooms with the tavern
- place a stockpile under the dump zone so you can set up stockpile links for dumped items
- doc improvements. in particular, point people to the new assign-minecarts tool for assigning minecarts to quantum stockpile dumps

* update changelog

* fix typo in cloth stockpile settings

* fix typo in guildhall location setup

* don't restrict stockpiles for clothiers and dyers

* deprecate jugs alias and add stone|woodentools

* remove dye thread, make jugs wooden

remove dye thread to protect adamantine
make jugs wooden to differentiate them from scroll rollers. that gives
us a chance to actually have a usable jugs-only stockpile

* dreamfort improvements

- move trap corridor gates and levers before the walls and traps so they get
  constructed first
- give useful names to the craftsdwarf's workshops
- redesign the services level to:
  - fit better in a 1x1 embark
  - add doors to the hospital recovery rooms to protect from
    werebeasts-to-be
  - add an interrogation room (sheriff's office) next to the jail

* shape hospital zone to exactly the hospital area

* don't clutter the hospital with statues

* update changelog
2022-06-02 15:51:45 -07:00
Myk 27bf4c758b
Allow player to pause the confirmation dialog without disabling (#2164)
* basic pause functionality for confirm

* update changelog

* wrap the pause message and output in white

* unpause on viewscreen transition when we can

but still use esc detection when we won't get a viewscreen transition
(like when we're intercepting input on viewscreen_dwarfmodest

* add more code docs about unpause detection
2022-06-02 06:24:13 -07: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 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
Myk 77d045488b
Confirmation dialog for removing manager orders (#2163) 2022-05-23 21:17:52 -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
Ryan Williams ce34ac8f33
Use debugfilter; remove redundant changelog entries 2022-05-16 18:41:47 -07:00
myk002 d6df928d69 update changelog 2022-05-13 14:36:49 -07:00
Ryan Williams 018452af82
Update changelog.txt 2022-05-05 22:57:04 -07:00
myk002 585888c2d3
update version, changelog, modules for 0.47.05-r5 2022-05-04 17:21:31 -07:00
Ryan Williams 5be0fe2a44
Fix issues, update changelog and docs
Initialize variables in LuaApi.cpp, solve changelog conflicts, hyperlink and escape char info in docs
2022-05-02 23:52:47 -07:00
Myk 0389637ac8 clean up changelog.txt 2022-05-02 21:54:41 -07:00
Ryan Williams 038b6f0d86
Fix changelog conflicts 2022-05-01 23:07:52 -07:00
Pierre Lulé 876d9132b1
Add a link to the rust library for interacting with the remote API (#2121)
* Add link to the rust api client library

Add a link to https://docs.rs/dfhack-remote/latest/dfhack_remote/index.html a library interacting with DFHack remote API for the Rust programming language

* Use the docs.rs link

* Fix duplicate link label, included the change in the changelog

Co-authored-by: pierre <pierre>
2022-05-01 06:31:59 -07:00
Josh Cooper fe29bff845
Adds cxxrandom unit test and fixes interface problems (#2099)
* Adds cxxrandom unit test and fixes interface problems

* Tightens braces

* Adds detection code for Shuffle's seqID/engID

* Adds usage examples for cxxrandom

* Gives cxxrandom objects id ranges, sort of

* Updates changelog

* Updates changelog.txt

* Increases id space for cxxrandom

* Fixes bool distribution error message and improves check

* Adds comment explaining the seeded RNG tests for cxxrandom

* Fixes type problem for 32bit builds

* Reduces loop count a few magnitudes

* Fixes a mistake in test.cxxrandom_seed
2022-04-30 21:46:47 -07:00
Myk e2fb15a3a5
add dwarfmode.MenuOverlay:renderMapOverlay() (#2119)
* add dwarfmode.MenuOverlay:renderMapOverlay()

* ensure we move with the viewport when bounds_rect is nil
2022-04-29 20:32:22 -07:00
Myk 24dd4d8ac0
Update init files (#2117)
* update example init files

replace onLoad.init-example with documentation on how to create scripts that run on world/map load
it was confusing to show it being loaded with sc-script since it gets autorun anyway if it is just named properly

* update changelog

* add quickfort keybinding

* move standard tweaks from dreamfort init to main
2022-04-29 20:24:09 -07:00
Tachytaenius b9c36c1e63
Added custom-raw-tokens utility (#2038)
* Added (chain) for [CHAIN_METAL_TEXT] armours in gui/materials.lua used by gui/create-item-- again (oops)

* Added customRawData utility

* Oops, whitespace

* Revised rawStringsFieldNames

* Dialed down on lua trickery and fixed wrongly formatted changelog entry

* Fixed changelog in wrong place and made customRawData a proper module

* Fixed not caching not-present tags, revised examples and fixed error

* Fixed whitespace. Changing settings in editor!

* customRawData docs

* Added getCreatureTag for respecting caste tags, "fixed" bizarre caching error (quotes because I don't even know what was causing it) and updated docs

* Added line limiting for docs, I guess

* Added missing string convert argument

* docs indent fix, code block fix, and revision

* Major revision

* gdi, docs error

* Another? But... huh.

* ...

* Made requested changes

* Whoops

* Rearrange docs lines

* Followed example, should fix linter issues

* fix typo. linted offline this time......

* Make it so that last instance of tag is what is read from

* Added requested change

* eventful key change

* i to lenArgs

* change eventful key

* add test for broken caste selection

* Major redesign

* tags --> tokens

* Added plant growth behaviour and did some requested changes

* More error handling

* fix docs

* Added basic error suppression

* Docs clarification.

* Docs registering example and fix error

* Strip errors on frame after onWorldLoad, not on map load

* Revert "Strip errors on frame after onWorldLoad, not on map load"

This reverts commit e20a0ef8d3743f79d961077f46910b77b16f36b9.

* Revert "Docs registering example and fix error"

This reverts commit 9c848c54c3f84e0ecc1dc421137c8a8b4a52280d.

* Revert "Docs clarification."

This reverts commit 6b4b6a1aa40c50398504f37ecf1ff0f93d6459b1.

* Revert "Added basic error suppression"

This reverts commit d11cb1438cf1e56ff700469e944f0b9af64651d7.

* Use more eventful key more consistent with other files

* use onStateChange instead of eventful and remove redundant utils require

* Code review stuff

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update docs/Lua API.rst

committing a suggestion

Co-authored-by: Alan <lethosor@users.noreply.github.com>

* Prepend examples with DFHACK_

* Remove unused parameters

* Use new ensure_key global

* Named a couple of unnamed arguments (untested)

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-04-29 08:39:59 -07:00
myk002 dcadde38d7 add new global function: ensure_key 2022-04-27 17:35:49 -07:00
myk002 6ad362d698
return a reference to the created dialogs 2022-04-27 11:51:46 -07:00
Quietust dc2a14c0c2 Add "partial-items" tweak.
When active, the displayed names of partially-consumed items (e.g.
hospital cloth) will display a percentage indicator at the end.

Also re-sort a few Tweaks so they're in alphabetical order again.
2022-04-27 11:27:11 -07:00
Ryan Williams a47bf1533e
Update changelog.txt 2022-04-25 00:17:31 -07:00
myk002 ed5523152c
factor text wrapping out of TooltipLabel into WrappedLabel 2022-04-22 09:53:10 -07:00
Guilherme Abraham 2aa28d34b6
Adding ids output to cursecheck (#2093)
Co-authored-by: Guilherme Abraham <guilherme.abraham@zpesystems.com>
Co-authored-by: Myk <myk002@yahoo.com>
2022-04-21 20:22:05 -07:00
myk002 07761e1d5d add some more handy widgets to the library
TooltipLabel
HotkeyLabel
CycleHotkeyLabel
ToggleHotkeyLabel
2022-04-18 17:37:11 -07:00
Timur Kelman cb123e5076
default unset `frame_inset` values to 0 (#2100)
* default unset `frame_inset` values to 0

This change allows writing `frame_inset = {r=1}` instead of `frame_inset = {l=0, r=1, t=0, b=0}`
2022-04-16 08:17:35 -07:00
Tim Siegel bf60879c81 [tweak/stable-cursor] Keep stable cursor when viewport is near enough
Allow the viewport to move a bit and still keep the cursor location.
2022-04-12 19:53:16 -07:00
Myk fd1ee233a2
automatically manage sidebar modes in MenuOverlay (#2083) 2022-04-11 20:58:54 -07:00
Myk 10f22ecc27
add ResizingPanel class and autolayout for Panels (#2086)
* add autolayout for Panels and new ResizingPanel
2022-04-11 18:25:00 -07:00
Myk e6299700bf
Handle punctuation in FilteredList filter matching (#2085)
* allow punctuation to be typed into a filter

and allow the filter to match keys with punctuation
2022-04-11 18:22:31 -07:00
myk002 4a383b1c84 handle number-indexed lua maps in safe_index 2022-04-11 18:02:57 -07:00
Myk 9a8fd12785
ensure ListBoxes always have enough height (#2084)
so they can always display an error message if the filter doesn't match anything
2022-04-11 16:15:50 -07:00
Myk 96b5b4420b
Add string:escape_pattern() utility function (#2082)
* add string:escape_pattern() to dfhack.lua

stolen from devel/query.lua. will migrate scripts to use the common implementation later
2022-04-10 21:18:01 -07:00
myk002 54e8761aa0 capture fortifications and engravings in blueprint 2022-04-01 12:20:37 -07:00
Su 8a120837c6
only designate enough trees to reach max_logs (#2064)
* only designate enough trees to reach max_logs
* Chop largest trees first
2022-03-31 20:41:44 -07:00
Tim Siegel b5af004194
[manipulator] Tweak colors to make cursor easier to locate (#2051) 2022-03-30 23:39:20 -07:00
myk002 e286b2a54d
update changelog 2022-03-30 14:42:37 -07:00
myk002 db5e7d55c1 fix guidm.enterSidebarMode(DesignateMine)
it would end up in DesignateChopTrees if you happened to be looking at
the surface z-level.
2022-03-28 16:57:24 -07:00
myk002 078e732a42 update changelog 2022-03-28 16:00:29 -07:00
Tim Siegel ab54cbff7a
[confirm] Fix typo in help message (#2046) 2022-03-23 19:45:13 -07:00
Tachytaenius 19c0a4fe06
Added (chain) for [CHAIN_METAL_TEXT] armours in library/gui/materials.lua used by the gui/create-item script (#2037) 2022-03-19 15:32:16 -07:00
Kelly Kinkade e1961f5fcd
visual studio 2022/2019 build instructions (#2034)
* visual studio 2022/2019

update instructions to recommend using VS 2022 or VS 2019 with downlevel tool support

* reinsert accidentally deleted line

* fix markup

* notes on abi compatibility, changelog
2022-03-17 13:19:12 -07:00
Zishi Wu ce30843b92
update Windows build docs for Visual C++ 2015 (#2032)
* update Windows build docs for Visual C++ 2015

* fixed doc errors / moved changelog entry to future section
2022-03-16 13:10:00 -07:00
Kelly Kinkade 07e96a6a1c Update changelog.txt 2022-03-15 08:23:18 -07:00
Josh Cooper dda487a535
Adds new plugin: Spectate (#1918)
* Adds spectate plugin

* Updates spectate.cpp

* Changes spectate toggle message

* Updates changelog.txt

* Adds spectate to Plugins.rst

* Adds requested changes

- foreach syntax replaces active units loops
- removes CR_FAILURE return on double enable/disable usage
- removes disabled code
- implements a few clion clang tidy suggestions (auto declare when casting)
- Updates zcount to have accurate count for performing RNG
- adds eof newline
- adds todo comment about a redundant if condition

* Declares spectate section in Plugins.rst
2022-03-14 19:33:41 -07:00
Ryan Williams 88b403ec7a
Add functions reverse-engineered from ambushing unit code (#1992)
* Add functions reverse-engineered from ambushing unit code

* Fix whitespace

* Fix debug_showambush check

* Remove getOuterContainerRef from Lua API

Don't think this works properly without allocating a new specific_ref. More trouble that it's worth.

* Fixed tile visibility check

* I don't think gamemode or gametype are ever NULL

* Minor tweaks to documentation

* Reimplement getOuterContainerRef for Lua; fix some comments

* Update Units.cpp and changelog

* Update Units.cpp
* Update changelog.txt
2022-03-13 17:19:35 -07:00
Kelly Kinkade d2d01843a2 Update changelog.txt
update changelog for changes to Job::remove_postings
2022-03-12 15:37:33 -08:00
myk002 89a3ca8ee9 update docs and changelog 2022-03-12 13:45:32 -08:00
myk002 25d37143e4 update changelog 2022-03-12 13:33:36 -08:00
myk002 82910015c1 update changelog 2022-03-12 12:41:19 -08:00
myk002 9f8a477f09
move EventManager changelog entries to 'Future'
ref: #1876
2022-03-12 11:38:43 -08:00
Josh Cooper 28ebc3921d Revises changelog 2022-03-12 11:33:27 -08:00
Josh Cooper 0cb6e18e16 Adds changelog entries for PR #1876 2022-03-12 11:33:27 -08:00
myk002 2c3f573610
really fix the docs typo 2022-03-10 20:03:37 -08:00
myk002 a1e3f2dbe1
fix typo in docs 2022-03-10 18:31:16 -08:00
myk002 858d459232
update changelog for clsocket PR#20 2022-03-10 14:07:48 -08:00
myk002 cf54b84fd6 Bump to 0.47.05-r4 2022-03-09 14:27:20 -08:00
myk002 7aaccb781e update changelog 2022-03-03 21:37:38 -08:00
myk002 c752fa07a8 update changelog 2022-03-01 05:44:36 -08:00
myk002 4d47bf54ce update changelog 2022-02-26 15:32:25 -08:00
myk002 41ea2527eb update changelog 2022-02-26 14:54:42 -08:00
myk002 0362c09811 update changelog 2022-02-25 12:59:38 -08:00
myk002 5937e55cfd update changelog 2022-02-25 12:58:56 -08:00
myk002 1d6b942293 update wording in changelog 2022-02-25 12:57:17 -08:00
myk002 e458e74058 use correct header in changelog 2022-02-25 12:57:17 -08:00
myk002 6b0f2eace9 update changelog 2022-02-25 12:57:17 -08:00
myk002 91b55a648b update changelog 2022-02-19 17:54:01 -08:00
myk002 3dcc6fd899 update changelog 2022-02-18 15:47:33 -08:00
myk002 5d6f88fa72 update changelog 2021-10-04 15:32:26 -07:00
myk002 86cd723162 update changelog 2021-10-04 12:53:31 -07:00
myk002 8245db8862 update changelog 2021-10-03 08:54:27 -07:00
myk002 438f030221 update changelog 2021-10-02 23:36:26 -07:00
myk002 d013b336ba update changelog 2021-10-02 12:50:47 -07:00
myk002 06916280f4 update changelog 2021-10-02 09:26:32 -07:00
myk002 850da0b5e4 move changelog entries to correct version 2021-10-02 09:25:19 -07:00
myk002 e3f723c6a2 update changelog 2021-10-02 09:25:19 -07:00
myk002 3c91f55612 update changelog 2021-09-25 22:00:49 -07:00
myk002 50a16ac147 update changelog 2021-09-22 10:30:41 -07:00
myk002 e328609ac4 update changelog 2021-09-20 16:10:15 -07:00
myk002 0410aaeaf0 update changelog 2021-09-10 11:11:44 -07:00
myk002 3d1e3f0832 update changelog 2021-09-09 09:58:53 -07:00
myk002 9cdf3d9605 update changelog 2021-09-09 09:58:23 -07:00
myk002 8c0fccb406 update changlog 2021-09-09 00:35:15 -07:00
lethosor a083a7f670
tailor: fix operator precedence in command parsing
&& has a higher precendence than ||, so this could have resulted in a crash in
some cases. It also produced unintentional behavior where e.g. `tailor 1 foo`
would enable the plugin, unlike `tailor enable foo`.

From #1920
2021-09-06 22:35:38 -04:00
lethosor 1295633722
Bump to 0.47.05-r3 2021-09-04 14:00:31 -04:00
lethosor 0d14a2ccef
Merge remote-tracking branch 'ab9rf/tailor-v2' into develop
Conflicts: docs/changelog.txt
2021-09-01 23:34:30 -04:00
myk002 42d3620ef6
update changelog 2021-09-01 13:04:13 -07:00
lethosor 687b84378d
Merge remote-tracking branch 'ab9rf/autofarm-berry-fix' into develop 2021-08-31 00:52:18 -04:00
lethosor dc86460238
Fix dashes in changelog 2021-08-31 00:28:04 -04:00
lethosor 10db894d99
Merge remote-tracking branch 'myk002/myk_printall_nontable' into develop 2021-08-21 22:51:35 -04:00
myk002 4046e06056
update changelog 2021-08-19 21:58:26 -07:00
myk002 51cc8df40c
update changelog 2021-08-19 21:57:14 -07:00
myk002 d3fdb5a6e0
update changelog 2021-08-19 17:44:06 -07:00
lethosor 6b83a39f52
Merge remote-tracking branch 'myk002/myk_orders_reactions' into develop 2021-08-17 00:26:02 -04:00
Kelly Kinkade 22bcbf9877
Merge branch 'develop' into autofarm-berry-fix 2021-08-16 07:22:11 -05:00
Kelly Kinkade 92f258bdbf
Merge branch 'develop' into tailor-v2 2021-08-16 07:17:53 -05:00
myk002 e1f0e94f0f fix changelog 2021-08-14 21:38:00 -07:00
myk002 1e2732aee5 update changelog 2021-08-14 21:38:00 -07:00
myk002 00adb1b720
update changelog 2021-08-14 16:36:09 -07:00
myk002 2bd43f6e76
update changelog 2021-08-14 16:35:34 -07:00
lethosor 77e0938dd1
Merge remote-tracking branch 'ab9rf/autogems-1263' into develop
Conflicts:
	docs/changelog.txt
2021-08-12 00:27:26 -04:00
Kelly Kinkade aec9649c4e
Update changelog.txt 2021-08-11 13:04:55 -05:00
Kelly Kinkade 8254b96498
update changelog 2021-08-11 13:03:28 -05:00
Kelly Kinkade 1e44f61060
update changelog 2021-08-11 13:01:52 -05:00
lethosor 0aeb107844
Update changelog (#1923) 2021-08-11 11:21:41 -04:00
lethosor 0140ace317
Merge remote-tracking branch 'myk002/myk_buildingplan_attached' into develop 2021-08-10 01:07:35 -04:00
myk002 063c512389
update changelog 2021-08-06 07:10:22 -07:00
myk002 9e8a35d263
update changelog 2021-07-30 13:09:14 -07:00
myk002 17017bb526 update changelog 2021-07-30 07:16:03 -07:00
myk002 fca8bffaa4
update changelog 2021-07-21 21:58:06 -07:00
myk002 d12e6fc91e
update changelog 2021-07-09 22:01:47 -07:00
myk002 9deb4cd3e1
update changelog 2021-07-09 21:58:32 -07:00
lethosor dde589967a
Bump to 0.47.05-r2, update changelog 2021-07-09 21:21:36 -04:00
lethosor 8689a019f5
Merge remote-tracking branch 'arzyu/patch-1' into develop 2021-07-05 15:56:37 -04:00
lethosor f33db33c8f
Merge remote-tracking branch 'myk002/myk_force_extents' into develop + add extra changelog note
Conflicts:
	docs/changelog.txt
2021-07-05 15:52:03 -04:00
lethosor 9b58fa45ff
Update changelog (#1881) 2021-07-05 15:42:19 -04:00
lethosor 3e6cecbbc6
Merge remote-tracking branch 'myk002/myk_argparse' into develop 2021-07-05 15:21:59 -04:00
lethosor 887362a6ec
Update changelog (#1877) 2021-07-05 11:45:02 -04:00
lethosor 8da31dbbdc
Reword changelog (#1870) 2021-07-04 21:21:17 -04:00
lethosor ed03df7dfb
Merge remote-tracking branch 'PatrikLundell/embark-assistant' into develop 2021-07-04 21:20:09 -04:00
myk002 b6e6f2d2fe
update changelog 2021-07-03 16:47:49 -07:00
myk002 e1c8bdafba
fix typo in changelog 2021-07-03 11:55:54 -07:00
myk002 37e8dd4a10
update changelog 2021-07-02 23:26:43 -07:00
myk002 db0614d85b
update changelog 2021-06-30 15:00:45 -07:00
myk002 a6a9704631
update changelog 2021-06-29 12:25:21 -07:00
lethosor e070f4d9d8
Merge remote-tracking branch 'myk002/myk_sidebar' into develop 2021-06-28 01:03:13 -04:00
lethosor 96dd249be0
getAnyPlant: use Maps::getPlantAtTile
Followup to #1882
2021-06-25 01:08:58 -04:00
Ryan Williams 35d32645fc
Added getPlantAtTile to Lua API 2021-06-23 23:12:53 -07:00
lethosor e6729894ab
Merge remote-tracking branch 'myk002/myk_delay_until' into develop 2021-06-24 01:05:41 -04:00
myk002 7793adb888
update changelog 2021-06-23 14:55:42 -07:00
myk002 3ca80c271d
update changelog 2021-06-23 14:01:23 -07:00
myk002 d1796effd6
update changelog 2021-06-23 12:32:25 -07:00
arzyu c36441142a update changelog 2021-06-23 23:53:06 +08:00
lethosor 2fc5fbacb5
Merge remote-tracking branch 'myk002/myk_reveal_unhideFlood' into develop 2021-06-19 01:08:05 -04:00
lethosor db7eb9a736
Update scripts, move changelog entry 2021-06-18 18:22:53 -04:00
lethosor a300c5592d
Merge remote-tracking branch 'myk002/myk_teleport' into develop 2021-06-18 18:21:49 -04:00
PatrikLundell ba5915b866 embark-assistant early waterfall quit removed 2021-06-13 17:47:15 +02:00
myk002 473b8245b2
update changelog 2021-06-07 07:04:23 -07:00
lethosor e90e3ae55b
Update changelog
Ref dfhack/stonesense#76, dfhack/stonesense#78
2021-06-06 23:33:20 -04:00
myk002 34aa62d675
update changelog 2021-06-06 08:50:28 -07:00
lethosor bce6432ea6
Merge remote-tracking branch 'bseiller/ea_improve_survey_performance_by_changing_inorgancs_to_vector_int' into develop 2021-06-04 00:21:34 -04:00
myk002 0c44e7da67
update changelog 2021-06-02 14:52:33 -07:00
myk002 b021edda0f
update changelog 2021-06-01 04:45:22 -07:00
lethosor 4f976a5909
Merge remote-tracking branch 'myk002/myk_blueprint' into develop 2021-05-24 23:48:21 -04:00
bseiller 838285e925 Improve performance of surveying => faster search
- def.h: changed vectors for inorganics to contain uint8_t instead of bool which improves the performance when using std::fill and std::memset to batch-set the whole array
- survey.cpp: using std::memset instead of direct assignment to reset the inorganic vectors, also using the actual size of each vector for the call
- changelog.txt: add note concerning the changes
2021-05-23 11:28:48 +02:00
lethosor 001e608aa7
Fix invalid role name
Resolves #1851

See https://github.com/sphinx-doc/sphinx/pull/8345 for details
2021-05-11 19:46:01 -04:00
myk002 aba40b6c44
update changelog 2021-05-10 21:11:13 -07:00
Myk 654b3e9c56
Merge branch 'develop' into myk_negative_number_params 2021-05-09 21:46:07 -07:00
lethosor c07ca1f324
Update changelog (#1826, #1824) 2021-05-10 00:27:21 -04:00
lethosor dc1cfb32b9
Adjust changelog 2021-05-10 00:15:41 -04:00
lethosor 57f26b6f21
Merge remote-tracking branch 'myk002/myk_buildingplan_enable_check' into develop 2021-05-10 00:11:36 -04:00
myk002 26b1489235
make isPlanModeEnabled() consider enable_all 2021-05-08 07:41:08 -07:00
myk002 59b08e99f6
fix -- handling and required arg detection 2021-05-07 15:21:45 -07:00
myk002 fd735d4b42
treat negative numbers as non-options in getopt 2021-05-07 15:21:45 -07:00
myk002 7060c297a8
disable fortress mode tests in CI for now
until we get a reuable fortress save set up
2021-05-07 15:19:10 -07:00
myk002 f8baba2cfd
update changelog 2021-05-07 15:19:09 -07:00
lethosor d902a59541
Move changelog entry to right section and remove link
Ref #1839: https://github.com/DFHack/dfhack/pull/1839/files#r615517105
2021-04-18 23:43:36 -04:00
myk002 a76c89f198
fix quickfortress stockpiles 2021-04-17 14:14:35 -07:00
lethosor e2d56b9b8f
Merge remote-tracking branch 'lethosor/tweak-hide-priority-improvements' into develop 2021-04-08 23:43:14 -04:00
lethosor 761cf19e99
tweak hide-priority: make toggle state persist across designation menu uses
To reproduce:
1. Enter the `d`esignation menu
2. Press `-+` to change priorities
3. Create a designation
4. Press `Alt-p` to hide priorities
5. Exit and re-enter the designation menu (`Esc`, `d`)

Previously, priorities would be visible again after step 5. With this change, they are not visible until you press `Alt-p` again.

Fixes #1068. Note that this is a relatively unobtrusive fix: selecting a priority with `+-` will still result in priorities being shown again. This is native DF behavior that I am reluctant to override because users of designation priorities likely want to see them.
2021-04-05 21:58:51 -04:00
myk002 81bfdf4182
update changelog 2021-04-04 17:40:59 -07:00
lethosor dfb52a2aba
Merge remote-tracking branch 'lethosor/command-prompt-fix-gui-scripts' into develop
Conflicts:
	docs/changelog.txt
2021-04-02 21:53:14 -04:00
lethosor 257f8dbe00
buildingplan: fix size calculation for constructions
Planning a 4x2 construction with DF's `umkh` keys (i.e. not automaterial's box-select) would previously produce a 5x3 construction instead, for example.
2021-04-01 00:16:54 -04:00
lethosor 5e09fd882d
Fix Painter:viewport()
This works because Painter inherits from ViewRect. Unsure how this went unnoticed.
2021-03-27 16:55:48 -04:00
lethosor d61c4aa234
Merge remote-tracking branch 'myk002/myk_xlsxreader_classes' into develop 2021-03-27 00:10:03 -04:00
myk002 5f00183177
move test harness out of test dir
and install to test.lua in top-level scripts directory instead of test/main.lua
2021-03-22 10:15:32 -07:00
lethosor 59b023c71d
Ensure that command-prompt is dismissed after a command creates a new screen
Fixes #1803

Running a command that created a new screen would previously result in a screen
order that looked like this, due to how `Screen::Hide` works:

- DF screen
  - `command-prompt` screen (dismissed)
    - New screen

The `command-prompt` screen remained on the stack until the new screen was
dismissed, so it would intercept viewscreen vmethod calls intended for the
DF screen.

This change adds a new behavior to `Screen::Hide` that results in this screen
order after running a command:

- DF screen
  - New screen
    - `command-prompt` screen (dismissed) - DF removes this screen immediately
2021-03-21 20:42:50 -04:00
myk002 f3bef8c34e
update changelog 2021-03-08 15:06:27 -08:00
myk002 ed21ed8593
update changelog 2021-03-07 08:51:33 -08:00
lethosor 6d1bd62af9
Add a Java client lib and update the name of the Python one 2021-03-06 17:31:27 -05:00
lethosor 032cd64c10
Bump to r1, update submodules and changelog 2021-03-06 13:30:16 -05:00
lethosor 9df06564a0
Merge remote-tracking branch 'PatrikLundell/Prospector' into develop
Conflicts:
	docs/changelog.txt
2021-03-03 23:56:06 -05:00
lethosor 1b2eed7c5e
confirm convict: use visible name to avoid exposing alternate identities
Ref #1593
See also:
https://www.reddit.com/r/dwarffortress/comments/ltzu82/if_i_wasnt_sure_i_found_the_vampire_before/
http://www.bay12forums.com/smf/index.php?topic=164123.msg8253738#msg8253738
2021-02-28 01:01:47 -05:00
lethosor cb9ed4ff0c
Merge remote-tracking branch 'myk002/myk_manipulator' into develop
Conflicts:
	docs/changelog.txt
2021-02-25 00:39:01 -05:00
lethosor af34b5d614
Merge remote-tracking branch 'bseiller/ea_improve_survey_performance_keep_mlts_on_heap' into develop 2021-02-23 00:22:22 -05:00
lethosor bf56ac1af9
Merge remote-tracking branch 'myk002/myk_deprecate_fortplan' into develop
Conflicts:
	docs/changelog.txt
2021-02-20 00:54:18 -05:00
myk002 09f0607db2
add deprecation warnings to fortplan 2021-02-13 11:07:14 -08:00
myk002 55743fc43f
Merge remote-tracking branch 'upstream/develop' into myk_manipulator 2021-02-13 07:16:58 -08:00
myk002 81d0a276b2
Merge branch 'develop' into myk_dreamfort 2021-02-13 07:15:11 -08:00
lethosor 49b6e814db
Bump to beta1, update submodules 2021-02-10 21:08:45 -05:00
lethosor ebbbfc0f8e
Merge remote-tracking branch 'myk002/myk_orders_crash' into develop
Conflicts:
	docs/changelog.txt
2021-02-10 00:10:53 -05:00
bseiller efe62b412c Update changelog 2021-02-09 08:48:43 +01:00
PatrikLundell 4660f52b36 improved pre embark mineral estimates 2021-02-08 14:45:49 +01:00
myk002 6819ee9928
make alchemist flag valid for controllable civs 2021-02-05 16:45:39 -08:00
myk002 4d57d27d4d
Revert "allow alchemist skill to be toggled in manipulator"
This reverts commit fa662cafbc.
2021-02-05 16:10:36 -08:00
myk002 1063497828
don't crash on malformed orders json 2021-02-02 10:50:21 -08:00
myk002 fa662cafbc
allow alchemist skill to be toggled in manipulator
since autohauler uses it as a flag
2021-02-02 08:28:48 -08:00
bseiller 76c9d7a678 Update changelog
- changelog.txt: changed description of fix to be more concise

Co-Authored-By: PatrikLundell <22739822+PatrikLundell@users.noreply.github.com>
2021-02-02 00:32:30 +01:00
bseiller 84151ccbf9 Update changelog
- changelog.txt: added entry for bug fix
2021-02-01 23:52:51 +01:00