Commit Graph

712 Commits (31fbd0dab542c772cf3fd4cf10ed8887b0f2b186)

Author SHA1 Message Date
Myk Taylor 899422aaf8
give widgets.TabBar default hotkeys 2023-05-16 17:26:16 -07:00
Myk Taylor 11361975f9
look up texpos values instead of assuming they're constant 2023-05-16 17:14:36 -07:00
Myk Taylor 217be6b58d
make full text search configurable for list filters 2023-05-16 12:36:58 -07:00
Taxi Service ef0c8950bd renamed val_gap to option_gap, updated docs/changelog 2023-05-02 16:46:46 +02:00
TaxiService f181b50a30
Merge branch 'develop' into cyclehotkey2 2023-05-02 08:22:10 +02:00
Myk Taylor 3f51f24f91
fix errors when dragging a scrollbar and the mouse leaves the window 2023-04-30 17:12:43 -07:00
Taxi Service cfcb1cd937 make val_sep useful if label_below == true 2023-04-30 10:18:15 +02:00
Taxi Service 48ffad2f71 added and attributes to 2023-04-26 01:02:38 +02:00
Myk Taylor 65d7b290a3
add ZScreenModal class for modal dialogs 2023-04-24 14:32:33 -07:00
Taxi Service 8371aa0b8b renamed Slider to RangeSlider, and added draft of Lua API.rst entry 2023-04-20 13:24:47 +02:00
Taxi Service ae2bdfad5f moved Slider class from filterselection.lua to widgets.lua 2023-04-19 11:28:57 +02:00
Myk Taylor 649d72e658
add missed NO_LOGIC_SCREEN to the list
adopt_region also kills the top viewscreen on transition
2023-04-18 08:28:00 -07:00
Myk Taylor e9f6695ace
infrastructure for hiding armok tools 2023-04-17 09:39:15 -07:00
Myk Taylor d1d521fbdb
infrastructure for hiding the terminal console on startup 2023-04-16 22:34:29 -07:00
Myk Taylor 07c83d3bf3
allow getval to take and pass params 2023-04-10 03:37:10 -07:00
Myk Taylor 83017e8b8f
give active mods a chance to reattach their hooks 2023-04-07 00:48:04 -07:00
Myk 30bb3d7050
Merge pull request #3168 from myk002/myk_script_paths
read mods from all mod dirs and only use most recent versions
2023-04-05 15:54:24 -07:00
Myk Taylor cf847109ce
read mods from all mod dirs and only use most recent versions 2023-04-03 15:59:42 -07:00
Taxi Service 7c63ea9394 added BOLD_FRAME and INTERIOR_MEDIUM_FRAME 2023-04-03 20:13:57 +02:00
Myk Taylor 147b0ba84a
fix and extend Labels/CycleHotkeyLabels 2023-03-28 23:36:49 -07:00
Myk Taylor 63772fd808
ensure rclicks don't bleed through for dialogs 2023-03-27 03:51:45 -07:00
Myk Taylor 0ba4225d85
support showing a different tile on hover for Labels 2023-03-25 15:19:24 -07:00
Myk Taylor 42b18d001b
refresh overlay and helpdb on new world to pick up mod content 2023-03-25 12:56:54 -07:00
Myk Taylor 2627820bfa
untested -> unavailable 2023-03-25 12:35:01 -07:00
Myk Taylor a1c2df23c5
fix vscode lint warning 2023-03-24 23:55:54 -07:00
Myk Taylor a5d22705e8
add label_below attribute 2023-02-27 04:13:05 -08:00
Myk Taylor 656a26504a
make FilteredList searching case insensitive by default 2023-02-26 09:47:15 -08:00
Myk fced215ac2
Merge branch 'develop' into myk_no_disabled_click 2023-02-26 09:24:32 -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 8b378735fa
don't fire HotkeyLabel if the label is disabled 2023-02-24 17:13:45 -08:00
Myk Taylor 75b1cd748a
convert otherwise unused THIN_FRAME to INTERIOR_FRAME
without a signature
2023-02-24 17:07:57 -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 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
Kelvie Wong 61227eeca1 Fix use of pens in render_text
If you ever pass in a number to `dc:pen` rather than a pen table, it
will assume the old pen's other attributes, such as `bg` and `bold`.

To workaround this, we just never pass in a number, and always call
`to_pen` aka `dfhack.pen.parse` first.
2023-02-18 16:07:40 -08:00
Kelvie Wong 94ae9973cf Re-add the invert_color function
As requested, but it's not used anymore.
2023-02-18 16:07:40 -08:00
Kelvie Wong 3e8d0f0f1e Properly reverse BG/FG and apply per letter
This puts pen creation deeper into the loop in render_text.

Lists are current coloured completely wrong, though, and need
fixing (and probably anywhere else where disabled is set).
2023-02-18 16:07:40 -08:00
Kelvie Wong 0897ca913a Support mouse-hover on lists as well 2023-02-18 16:07:40 -08:00
Kelvie Wong 0b48471607 Invert brightness of the background as well
This required some tinkering.
2023-02-18 16:07:40 -08:00
Kelvie Wong 2d68b21547 Show mouse hover on HotkeyLabels
Labels show the hover colour when on_click is set, HotkeyLabels should
also do the same when they are clickable.
2023-02-18 16:07:40 -08:00
Robob27 4167c2e652 Add key_back, rename switch_tab_key to key 2023-02-16 02:56:52 -05:00
Robob27 5154eb181a Add Tab/TabBar to widgets 2023-02-16 02:51:09 -05:00
Robob27 212026861f WIP list fix 2023-02-15 19:29:45 -05:00
Myk Taylor bc76fd02e2
prevent mouse clicks from bleeding through when a window is dismissed 2023-02-13 17:35:02 -08:00
Myk Taylor e5072a4f64
check for settings in the ATTRS, not the args 2023-02-13 09:28:14 -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
Myk Taylor 960bfaca86
fix annotation parsing
ref: #2857
2023-02-10 08:15:44 -08:00
vallode 991c6d89e8 Fix annotation parse error 2023-02-09 23:50:11 +01:00
Myk 1787d2435c
Merge branch 'develop' into hotkeylabel-enhancements 2023-02-08 12:37:16 -08:00
Myk 201fec6873
Merge pull request #2837 from robob27/case-insensitive-filterlist
Add case_sensitive attr to FilteredList
2023-02-08 11:18:31 -08:00
Robob27 b950b56926 Add methods to HotkeyLabel 2023-02-08 13:00:13 -05:00
Robob27 54560bc5db Don't duplicate regex 2023-02-08 03:39:43 -05:00
Robob27 c1b9de87d2 Add case_sensitive attr to FilteredList 2023-02-08 03:39:43 -05:00
Myk Taylor ef81a91181
only realign out-of-alignment list positions 2023-02-07 14:12:52 -08:00
Myk c0358d642d
Merge pull request #2833 from myk002/myk_list_recenter
ensure scrollable lists are centered in the visible viewport
2023-02-06 12:57:43 -08:00
Myk Taylor 0b9b258224
ensure scrollable lists are centered in the visible viewport 2023-02-06 12:54:05 -08:00
John Cosker fdf1d38b23 Merge branch 'cycle-hotkey-rev' of https://github.com/johncosker/dfhack into cycle-hotkey-rev 2023-02-06 15:13:13 -05:00
John Cosker 36391af27c More cleanup 2023-02-06 15:12:47 -05:00
John Cosker 0769afc961
Merge branch 'develop' into cycle-hotkey-rev 2023-02-06 15:04:57 -05:00
John Cosker 39dc0ccc8a Cleanup 2023-02-06 15:03:28 -05:00
John Cosker e1f74ab068 Tweak to completely nil the key_back table for setText if not set 2023-02-06 14:53:26 -05:00
ElsaTheHobo d09f8553a0 Delete makeown.lua 2023-02-06 13:34:31 -05:00
Myk 041909dfa7
Merge pull request #2822 from myk002/myk_rclick
prevent rclick from bleeding through (again)
2023-02-06 09:17:28 -08:00
Myk 99f84fa175
Merge pull request #2811 from TaxiService/patch-3
increase min scrollbar height to 2 (from 1)
2023-02-06 08:10:08 -08:00
John Cosker d7d6c5aea6 Backwards options for cycle hotkey working 2023-02-06 08:55:46 -05:00
Myk Taylor 2ddd23e45d
prevent rclick from bleeding through (again) 2023-02-06 00:57:33 -08:00
Robob27 86b57380a6 fixup unnecessary changes, remove unnecessary stuff 2023-02-05 19:04:21 -05:00
Robob27 a770a4cae4 WIP 2023-02-05 19:04:21 -05:00
TaxiService b6196e91e4
increase min scrollbar height to 2 (from 1)
rationale:
- vanilla scrollbars dont get shorter than 2.
- 2-tall 'bars are easier to click on than 1-tall 'bars.
- this avoids having to make short custom graphics for 1-tall tiles, which most of the time look terrible...

cons:
- short scrollbars are cool : (
2023-02-05 19:00:38 +01:00
TaxiService 30a1f2f924
de-hardcoding scrollbar spritesheet definitions
added a new variable "SBSO", and redefined all scrollbar tile definitions as this variable + an offset.
this could make it easier to switch scrollbar graphics from within the game, if necessary.
2023-02-05 18:56:51 +01:00
TaxiService de04cf04e0
wrong scrollbar sprites mapping fix (issue #2777)
i've taken a crack at it, and this seems to fix this "issue" i filed here: https://github.com/DFHack/dfhack/issues/2777

https://i.imgur.com/aFnq80M.mp4
2023-02-04 15:18:26 +01:00
Myk Taylor 345b7d78cb
pass attributes through FilteredList 2023-02-03 00:09:10 -08:00
Myk Taylor 2316615763
react to double clicks on list items 2023-02-03 00:09:10 -08:00
Myk Taylor 2cf985be73
don't lose List scroll position when dragging 2023-02-02 19:42:41 -08:00
Myk a3f32e66ad
Merge pull request #2775 from myk002/myk_non_defocusable
add defocusable attribute to ZScreen
2023-02-01 17:53:21 -08:00
Myk 1debea59a8
Merge branch 'develop' into myk_non_defocusable 2023-02-01 17:51:04 -08:00
Myk 7fbd95896d
Merge branch 'develop' into myk_pause_forced 2023-02-01 17:50:45 -08:00
Myk Taylor 55d07a8cae
actually use the tile 2023-02-01 14:51:46 -08:00
Myk Taylor 6ae771ecb4
display PAUSE FORCED instead of a pause icon
if the window is forcing the game to pause. the icon looked too
clickable
2023-02-01 14:01:29 -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 Taylor ab4c766817
Revert "allow tile list icons to be rendered properly"
This reverts commit 508777897b.
the fix was incorrect. the icon should be set to the pen when it is
not a string, the icon_pen is only for when it is a string
2023-01-30 08:48:45 -08:00
Myk 376526d512
Merge branch 'develop' into myk_no_stuck_df_viewscreens 2023-01-29 16:55:52 -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 8d4990b8fd
don't autorefresh the enableable tools list
it just takes too long (>1s) to refresh every time.
manual refresh with script_manager.reload() is still available for devs
who need it
2023-01-29 00:55:49 -08:00
Myk Taylor 4c455224f9
make initial pause configurable 2023-01-29 00:41:02 -08:00
Myk Taylor 211d18717c
test against type instead of string 2023-01-28 23:34:56 -08:00
Myk 2003efc21f
Merge branch 'develop' into myk_no_stuck_df_viewscreens 2023-01-28 12:03:50 -08:00
Myk Taylor 114bc2a576
also lock down the world map 2023-01-28 08:57:24 -08:00
Myk Taylor f12ca33c0b
ensure DF screens don't get "stuck" when DFHack tool windows are on top 2023-01-28 08:05:37 -08:00
Myk Taylor 18a2827385
only mark the border corner as resizable if the window is resizable 2023-01-27 14:20:21 -08:00
Myk Taylor c6f4a7ee42
inhibit _MOUSE_L globally once _MOUSE_L_DOWN is handled
so the _MOUSE_L doesn't bleed through to the underlying viewscreen
2023-01-27 13:36:01 -08:00
Myk Taylor be59083202
reduce spacing for CycleHotkeyLabel from 2 to 1 2023-01-25 22:59:29 -08:00
Myk Taylor c5f2588522
fix issues with clicks "falling through" scrollbars 2023-01-24 21:28:25 -08:00
Myk 83c89cfaa9
Merge pull request #2705 from myk002/myk_zscreen_redux
Implement new ZScreen semantics
2023-01-24 11:14:43 -08:00
Myk Taylor 0e03ac8e5b
don't use tabs in enable output
so they display nicely in gui/launcher
2023-01-23 23:50:08 -08:00
Myk Taylor f39eb42889
remove references to pinnable 2023-01-23 19:34:48 -08:00
Myk Taylor 1c2f8eccbf
paint pause symbol for force-pause windows 2023-01-23 19:02:26 -08:00
Myk Taylor 0905943ecf
don't unfocus if mouse is not being passed through 2023-01-23 18:05:03 -08:00