Commit Graph

252 Commits (77ce84ca0a6c4129f1c85f9bdff056c95da02cfb)

Author SHA1 Message Date
Myk Taylor 0ba4225d85
support showing a different tile on hover for Labels 2023-03-25 15:19:24 -07:00
20k 084d28b0ae Reworked heap debugging + tools implementation 2023-03-06 17:04:10 +00:00
Myk Taylor a5d22705e8
add label_below attribute 2023-02-27 04:13:05 -08:00
Myk 663b014eae
Merge pull request #2682 from 20k/squadwork
makeSquad, updateRoomAssignments
2023-02-26 21:40:33 -08:00
Myk 6433f87dd4
Merge pull request #2961 from myk002/myk_case_insensitive
make FilteredList searching case insensitive by default
2023-02-26 21:39:14 -08:00
20k c38a288eee use insert_into_vector, tweak docs again 2023-02-27 02:15:26 +00:00
20k 3c1d3ce21c rework docs, comments, clean up unnecessary init 2023-02-27 01:45:10 +00:00
20k 2bd48f1f90 address some review comments 2023-02-26 18:05:35 +00:00
20k d84b118767 docs, rework, rename 2023-02-26 18:05:35 +00:00
20k 3912c6290f Military module start 2023-02-26 18:05:34 +00:00
20k ce3ee386fd makeSquad, updateRoomAssignments 2023-02-26 18:05:34 +00:00
Myk Taylor 656a26504a
make FilteredList searching case insensitive by default 2023-02-26 09:47:15 -08:00
Myk Taylor 2b59d6ee3d
make dfhack.job.attachJobItem available to Lua 2023-02-26 09:40:02 -08:00
Myk 0270766a6d
Merge branch 'develop' into myk_dynamic_tile 2023-02-26 09:24:04 -08:00
Myk Taylor 1cacc526e3
allow token.tile to be a function 2023-02-24 17:16:30 -08:00
Myk Taylor 0febce5e8f
add docs 2023-02-24 17:09:11 -08:00
Kelvie Wong 3c24e67a9a Address additional PR comments
on_activate is likely to happen first so we shouldn't need to check the
other.
2023-02-22 17:22:04 -08:00
Kelvie Wong d18700c964 Update List docs as well. 2023-02-18 16:15:16 -08:00
Kelvie Wong 697f15224c Address PR comments, and remove BG fill
BG fill eats up a lot of cycles anyway, and there's not a real tangible
benefit in all cases, as it relies on the text label being sized
appropriately (width-wise) to the container, or would otherwise require
padding.
2023-02-18 16:07:40 -08:00
Robob27 bc47a0b2e4 More prescriptive docs attempt 2023-02-16 03:14:05 -05:00
Robob27 5154eb181a Add Tab/TabBar to widgets 2023-02-16 02:51:09 -05:00
Kelvie Wong f8d94afb7d Add getSelectedCivZone to dfhack.gui
Mostly helpful for my own automation in my custom lua scripts.

Tested it with barracks, meeting areas, and pastures.
2023-02-13 15:22:33 -08:00
Myk Taylor 853859e119
refine ZScreen behavior around pausing, update docs 2023-02-13 09:09:39 -08:00
Robob27 7651f6a91e Add edit_on_change to FilteredList 2023-02-12 17:44:19 -05:00
Robob27 65f38ec75c Add isGeldable, isMarkedForGelding, isPet 2023-02-11 05:44:45 -05:00
Myk Taylor 3756d59919
copy edit overlay dev guide and update examples 2023-02-11 01:20:35 -08:00
Myk 1787d2435c
Merge branch 'develop' into hotkeylabel-enhancements 2023-02-08 12:37:16 -08:00
Robob27 b950b56926 Add methods to HotkeyLabel 2023-02-08 13:00:13 -05:00
Robob27 13440d18a8 Add case_sensitive to FilteredList docs 2023-02-08 03:39:43 -05:00
John Cosker f91555d5e3 Add brackets to indicate optional param 2023-02-06 15:44:50 -05:00
John Cosker 0ed4a1c540 Add documentation to cycle() for new parameter 2023-02-06 15:44:04 -05:00
John Cosker 0769afc961
Merge branch 'develop' into cycle-hotkey-rev 2023-02-06 15:04:57 -05:00
Myk 448598e391
Merge pull request #2823 from myk002/myk_hotkey_guards
implement some Gui module hotkey guards
2023-02-06 09:17:18 -08:00
John Cosker 4e366790c0 Changelog/documentation for key_back 2023-02-06 09:29:31 -05:00
John Cosker 36b76d709c Update documentation for CycleHotkeyLabel 2023-02-06 08:59:55 -05:00
Myk Taylor bf91ffb1fe
support focus paths for overlay widgets
and migrate existing widgets to use them
2023-02-06 02:37:32 -08:00
Myk Taylor 9e318842a4
implement some Gui module hotkey guards
and clean up focus string matching logic
2023-02-06 00:58:57 -08:00
Myk Taylor 526d7c1726
allow focus string generation to fall through unfocuses ZScreens 2023-02-05 18:01:46 -08:00
Robob27 f7df51587c More focus strings, correct docs 2023-02-05 19:04:21 -05:00
Robob27 e049bfee89 Fixup docs 2023-02-05 19:04:21 -05:00
Robob27 a770a4cae4 WIP 2023-02-05 19:04:21 -05:00
Myk Taylor 2316615763
react to double clicks on list items 2023-02-03 00:09:10 -08:00
Myk 1debea59a8
Merge branch 'develop' into myk_non_defocusable 2023-02-01 17:51:04 -08:00
Myk 21f93173c3
Merge pull request #2778 from myk002/myk_halfsies
support offset text in graphics mode for pens
2023-02-01 17:50:24 -08:00
Myk Taylor 58be8cfd69
support offset text in graphics mode for pens 2023-02-01 17:39:32 -08:00
Myk Taylor 88860f21ec
add defocusable attribute to ZScreen 2023-02-01 08:46:32 -08:00
Myk Taylor e442e23589
allow tile in Label tokens to be either pen or id 2023-01-31 23:54:27 -08:00
Myk 0f07ac5a30
Merge pull request #2748 from myk002/myk_initial_pause
make initial pause configurable for DFHack windows
2023-01-29 16:54:50 -08:00
Myk Taylor 1c6235633f
add dfhack.units.getCitizens() 2023-01-29 16:28:05 -08:00
Myk Taylor 4c455224f9
make initial pause configurable 2023-01-29 00:41:02 -08:00
Myk Taylor b492d92748
update docs 2023-01-27 13:39:03 -08:00
Myk 49e1d9ff1c
Merge pull request #2722 from myk002/myk_overlay_default_enabled
Allow overlay widgets to set their default enabled state
2023-01-26 13:45:07 -08:00
Myk Taylor a767a917fa
de-emphasize IRC in our docs 2023-01-26 12:49:22 -08:00
Myk Taylor 998a63a979
allow overlay widgets to specify a default enabled state
and make relevant library widgets enabled by default
and remove the default overlay.json config file
2023-01-26 00:53:57 -08:00
Kelvie Wong cf11280b8b Simplify cross-compile instructions
Now that users don't have to build the image.
2023-01-24 19:55:15 -08:00
Myk Taylor f39eb42889
remove references to pinnable 2023-01-23 19:34:48 -08:00
Myk Taylor 8b98ba5042
allow windows to be defocused instead of pinned 2023-01-23 17:40:16 -08:00
Myk Taylor 73dd0b4489
stronger wording for ZScreen guidance 2023-01-23 13:47:00 -08:00
Myk d0905a5e16
Merge pull request #2703 from myk002/myk_borders
Add new borders for various use cases
2023-01-23 11:20:28 -08:00
Myk Taylor 9aaa55cd7f
add textures and frames for various use cases 2023-01-23 03:58:51 -08:00
Myk Taylor d34238918e
move helpdb from autorefresh to explicit refresh
this greatly speeds up the launch time of `gui/launcher`
2023-01-23 02:30:51 -08:00
Myk Taylor a6b3de1afb
support scrolling to the beginning or end in Label 2023-01-23 02:16:07 -08:00
Myk f805f5b67e
Merge branch 'develop' into ccompile-script 2023-01-22 17:16:19 -08:00
Kelvie Wong 5a20f775bf Set UIDs properly on run; fix sudo use
This depends on a new entrypoint put inside the docker image, that will
read BUILDER_UID and fix up the users and files.

This also removes "sudo" and allows the entire script to be run with
sudo without messing with the build file permissions.
2023-01-22 11:45:13 -08:00
Kelvie Wong aaaf2d9f22 Add cross-compile script
That will simply generate the win64 artifacts for those of us that run
DF under Proton on Steam for Linux.
2023-01-22 11:45:13 -08:00
Myk Taylor b84bce719d
remove unused always_enabled attribute for overlays
it was made for gui/pathable, but that became a ZScreen
this option made me uncomfortable for overlays. it didn't seem like the
right user experience
2023-01-22 01:07:30 -08:00
20k 598354d9d4 getbiometype naming, docs 2023-01-21 20:33:40 +00:00
20k 8b7c8d83b5 remove save fixup
Add notifyCivzoneModified
2023-01-19 21:55:20 +00:00
Myk Taylor e98271ddc3
document that enableable scripts must also be modules 2023-01-16 13:53:16 -08:00
Myk Taylor 762cd46d14
look for init.d directories in the root instead of raw/ 2023-01-15 23:28:01 -08:00
Myk 977946e5bc
Merge pull request #2603 from myk002/myk_resizingpanel
give more control over the resizing dimensions of ResizingPanels
2023-01-14 01:10:26 -08:00
Myk fc6a8fb00b
Merge pull request #2601 from myk002/myk_dwarfmode
pull the useful bits out of guidm.MenuOverlay and make them available
2023-01-14 01:09:57 -08:00
Myk Taylor 69e5730f77
document dfhack.job.removeJob() 2023-01-14 01:07:36 -08:00
Myk Taylor f19ae16c9d
give more control over the resizing dimensions of ResizingPanels 2023-01-14 01:00:38 -08:00
Myk Taylor b77e896041
update EditField docs 2023-01-13 17:08:25 -08:00
Myk Taylor 21d160c478
terminology change: locked -> pinned 2023-01-13 16:07:27 -08:00
Myk Taylor 15998f2ebe
add gui.TRANSPARENT_PEN for clearing the UI layer 2023-01-12 12:44:50 -08:00
Myk Taylor 079d5e4178
support foreground and background writing from pens 2023-01-12 12:30:07 -08:00
Myk Taylor 7cf703ef23
turn down Ruby support 2023-01-09 23:59:55 -08:00
Myk Taylor 72d5760ff6
add CycleHotkeyLabel:setOption() 2023-01-07 01:00:40 -08:00
Myk fe9d1e186e
Merge pull request #2562 from myk002/myk_greenify
allow color options for CycleHotkeyLabel
2023-01-06 19:10:39 -08:00
Myk Taylor 810430f1a2
make windows lockable (can ignore r-click and esc) 2023-01-06 18:48:53 -08:00
Myk Taylor 1f5ae4165f
return self from raise, update docs 2023-01-06 15:43:08 -08:00
Myk Taylor fbf895fe0c
document ZScreen (and view:getMouseFramePos()) 2023-01-06 15:42:41 -08:00
Myk Taylor e111a73763
allow color options for CycleHotkeyLabel
and use the option to render `On` in green for ToggleHotkeyLabel
2023-01-06 15:42:27 -08:00
Myk Taylor 1a8f60c03b
implement remaining review comments from #2517 2023-01-06 15:31:50 -08:00
Myk Taylor 91df585bf8
Merge branch 'develop' into myk_docs 2023-01-06 15:22:03 -08:00
Myk 8264415720
Update docs/dev/building/Compile.rst 2023-01-06 15:11:10 -08:00
Myk Taylor 6f46ae672e
add Gui::getDFViewscreen and Lua binding 2023-01-06 12:17:36 -08:00
Amber Brown 79206c92a7 modern windows terminal + powershell is, (un?)fortunately superior to cygwin's, so cut this for simplification 2023-01-06 21:26:57 +11:00
Amber Brown d7495bfdf8 update the install documentation to mention VS2022 properly 2023-01-06 21:26:57 +11:00
Myk b62cfa3699
Merge pull request #2552 from myk002/myk_mouse
Get correct mouse button down behavior in Lua without overwriting enabler fields
2023-01-04 19:39:43 -08:00
Myk Taylor 021b24fa65
update docs 2023-01-03 14:56:49 -08:00
Myk Taylor b766b72784
update docs for widgets.EditField 2023-01-03 13:06:57 -08:00
Myk 35ce361b09
Merge pull request #2542 from myk002/myk_dwarfmode_dims
clear out obsolete area map and menu logic from the Gui module
2023-01-02 20:42:30 -08:00
Myk 9da6bff011
Merge pull request #2540 from myk002/myk_overlay
Make OverlayWidget inherit from Panel and allow overlays to be perma-enabled
2023-01-02 20:41:53 -08:00
Myk Taylor 7d5d2d0a9b
clear out obsolete area map and menu logic
in particular, return the correct map dimensions in getDwarfmodeDims()
2022-12-31 22:49:30 -08:00
Myk Taylor c401154393
widgets inherit from Panel and can be perma-enabled 2022-12-31 21:02:00 -08:00
Myk Taylor 5232e2b04e
add dfhack-config/scripts to default script paths 2022-12-30 23:30:11 -08:00
Myk bf995a0968
Merge pull request #2533 from myk002/myk_lua_input
adjust Lua widgets to new input scheme
2022-12-30 22:37:12 -08:00
Myk a7dd14d699
Merge pull request #2535 from myk002/myk_smart_refresh
only do a full refresh when needed
2022-12-30 22:36:42 -08:00
Myk Taylor 04f2d555c6
implement context-aware mouse wheel scrolling 2022-12-30 22:35:08 -08:00
Myk Taylor 38b525bdb5
adapt lua library widgets to new keyboard keybindings 2022-12-30 22:35:08 -08:00
Myk Taylor dd0cc087d5
Revert "consolidate full refresh logic in widgets.Panel"
This reverts commit 33787473f0.

I've already found another use case where we need a more general
implementation -- modal dialogs that inherit from FramedScreen that
appear and disappear
2022-12-30 22:13:53 -08:00
Myk Taylor 33787473f0
consolidate full refresh logic in widgets.Panel 2022-12-30 20:44:15 -08:00
Myk Taylor 70a0f4a718
only do a full refresh when needed
this significantly reduces CPU utilization when DFHack-owned screens are
visible.
2022-12-30 17:06:41 -08:00
Myk Taylor 4c2842a854
update docs 2022-12-30 05:33:17 -08:00
Myk Taylor d7b67e9528
remove cached USE_GRAPHICS from gui.lua
it's no longer constant
2022-12-28 16:27:44 -08:00
Myk Taylor fc523f12fe
expose and document dfhack.screen.getMousePixels() 2022-12-28 16:05:27 -08:00
Josh Cooper 7433cb463d more stuff 2022-12-23 17:58:30 -04:00
Josh Cooper 1993291a87 stuff 2022-12-23 17:58:30 -04:00
Josh Cooper 994cb30f4d
Update docs/dev/building/Compile.rst
Co-authored-by: Myk <myk002@yahoo.com>
2022-12-23 12:07:12 -08:00
Josh Cooper e57ef4315d
Update docs/dev/building/Compile.rst
Co-authored-by: Myk <myk002@yahoo.com>
2022-12-23 12:07:01 -08:00
Josh Cooper 6baac10262
Update docs/dev/building/Compile.rst
Co-authored-by: Myk <myk002@yahoo.com>
2022-12-23 12:06:48 -08:00
Josh Cooper 3fb249bc2a
Update docs/dev/building/Options.rst
Co-authored-by: Myk <myk002@yahoo.com>
2022-12-23 12:06:32 -08:00
Josh Cooper 430917ce5d
Update docs/dev/building/Options.rst
Co-authored-by: Myk <myk002@yahoo.com>
2022-12-23 12:06:15 -08:00
Josh Cooper 98badfbd72 possibly the last expected changes 2022-12-23 15:22:24 -04:00
Josh Cooper 77b6dd2f7a Updates minor things 2022-12-23 12:58:43 -04:00
Josh Cooper 66f8a0207c Updates dependency doc 2022-12-23 01:05:31 -04:00
Josh Cooper a9467f76ef Fixing links, mostly 2022-12-23 00:43:10 -04:00
Josh Cooper c0d582c406 more small screen changes 2022-12-21 20:35:40 -04:00
Josh Cooper e60030e85e a small screen commit message about a lot of organization changes 2022-12-21 18:09:37 -04:00
Josh Cooper 86ed5ae17a Fixes link syntax 2022-12-19 22:12:00 -04:00
Josh Cooper 6a135d0b2b Fixes formatting mistake 2022-12-19 22:05:43 -04:00
Josh Cooper 2474e5dba5 Adds Dependencies.rst 2022-12-19 22:01:21 -04:00
Myk Taylor 06346c6269
implement double clicking on the title to maximize
also double click on a maximized window to jump to the minimum size
the location of the window isn't guaranteed to be the same after
maximizing and un-maximizing, but we could implement that if there is
call for it.
2022-12-14 19:03:38 -08:00
Myk Taylor 4c6daf30d9
add widgets.Window and fix paint_frame offset 2022-12-14 12:04:29 -08:00
Myk Taylor c030704705
implement panel resizing 2022-12-14 10:34:04 -08:00
Myk Taylor 99b599e9ab
add docs for panel dragging 2022-12-13 13:01:49 -08:00
Myk 945942a28b
Merge pull request #2496 from myk002/myk_arch_diagrams
add arch diagrams to the dev guide
2022-12-12 14:54:26 -08:00
Myk Taylor d74d215f38
add arch diagrams to the dev guide 2022-12-11 15:51:27 -08:00
Tachytaenius 5f33133de1
Update Lua API.rst 2022-12-11 23:12:14 +00:00
Tachytaenius 8cc34f920c
Add math.floor to module example in Lua API 2022-12-11 23:03:50 +00:00
Myk Taylor ffd646462a
ensure `enable` doesn't miss newly-added scripts
and add some more documentation
2022-12-10 22:13:38 -08:00
myk002 e88b1fdfe5
move script-manager into core 2022-12-10 21:59:51 -08:00
myk002 107be0a4a6
more script enablement docs 2022-12-10 21:59:51 -08:00
Myk Taylor 55f6aeeda1
remove ccache setup; it's gone now 2022-12-09 19:59:41 -08:00
Myk Taylor 5184d87a0c
fix light typos 2022-12-09 19:58:07 -08:00
Myk Taylor e405a87571
set install dir 2022-12-09 19:58:07 -08:00
Myk Taylor 6ffdeda712
adapt cross compiling guide to buildmaster image 2022-12-09 19:58:06 -08:00
Myk Taylor 8c59f9f92a
add step for compiling protoc 2022-12-09 19:58:06 -08:00
Myk Taylor acedc7617f
emphasize running wineboot 2022-12-09 19:58:06 -08:00
Myk f547bb3fb1
Add instructions for cross compiling 2022-12-09 19:58:04 -08:00
Myk fa8a61d4be
Fix indentation of numbered lists 2022-12-04 17:58:31 -08:00
myk002 63e11c8453
update overlay dev guide with troubleshooting tips
and dev workflows
2022-12-04 17:36:51 -08:00
myk002 2b87307e11
allow visible and active to be dynamic properties 2022-12-04 15:46:19 -08:00
myk002 53f4630517
clarify docs for MovementFeet in the new Timers API 2022-12-02 10:18:07 -08:00
Tachytaenius c7d1baacb3
Update docs/dev/Lua API.rst
Co-authored-by: Myk <myk.taylor@gmail.com>
2022-12-02 17:03:04 +00:00
Tachytaenius 0b0bd71a0c Adjust action timer API Lua API docs 2022-12-02 12:51:49 +00:00
Tachytaenius 370ffe274f Add Lua API docs for action timer API 2022-12-01 23:25:01 +00:00