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
Myk Taylor
4377065081
move pause restore to dismiss
...
and fix the condition
2023-01-23 17:46:03 -08:00
Myk Taylor
8b98ba5042
allow windows to be defocused instead of pinned
2023-01-23 17:40:16 -08:00
Myk Taylor
5ad6ce16e8
don't change definitions of deprecated frame styles
2023-01-23 16:00:10 -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
7329f6dee2
use new frame names
2023-01-23 04:16:38 -08:00
Myk Taylor
fcb156ed43
add compatibility frames
2023-01-23 04:03:31 -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 Taylor
f862e4a6b7
comment out SEC_SELECT in dialogs
2023-01-22 03:09:07 -08:00
Myk Taylor
a1a4125fd9
properly react to lack of a mouse cursor
2023-01-20 09:31:44 -08:00
Myk Taylor
eae2cec22f
use keyboard cursor
...
and adapt to a "bad" cursor not being equal to -30000 anymore
2023-01-20 09:31:44 -08:00
Myk
95d7db2bb4
Merge pull request #2622 from myk002/myk_datasave
...
adjust to new directory layouts
2023-01-16 11:05:33 -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 Taylor
50cc6d965d
update to new save directory structure
2023-01-15 23:13:58 -08:00
Myk Taylor
fb5675ef1b
keep windows on the screen when the DF window is resized
2023-01-15 20:41:48 -08:00
Myk Taylor
20f865eba0
don't reset scroll pos when window is resized or moved
2023-01-15 15:59:09 -08:00
Myk Taylor
d14a3b2c83
ensure the untested warning doesn't bork on bad scripts
2023-01-15 00:49:48 -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
2a84bb61db
Merge pull request #2599 from myk002/myk_hotspot_hotfoot
...
update behavior of hotspot menu
2023-01-14 01:09:35 -08:00
Myk
3b40621324
Merge pull request #2595 from myk002/myk_textures
...
add some more icon textures we can use
2023-01-14 01:09:23 -08:00
Myk Taylor
f19ae16c9d
give more control over the resizing dimensions of ResizingPanels
2023-01-14 01:00:38 -08:00
Myk Taylor
e450af74aa
pull the useful bits out of MenuOverlay
2023-01-13 17:05:23 -08:00
Myk Taylor
4f88d27e08
cancel EditField editing on r-click
2023-01-13 17:05:08 -08:00
Myk Taylor
21d160c478
terminology change: locked -> pinned
2023-01-13 16:07:27 -08:00
Myk Taylor
6c6c4e159f
add reminder why we can't clear mouse_lbut
2023-01-13 12:17:51 -08:00
Myk Taylor
508777897b
allow tile list icons to be rendered properly
2023-01-12 22:30:47 -08:00
Myk
68e373100b
Merge pull request #2591 from myk002/myk_penn
...
support foreground and background writing from pens
2023-01-12 21:00:38 -08:00
Myk Taylor
c98e389ac8
move untested warning back to run_script
...
so we don't waste our warning on the initial env scans
2023-01-12 14:15:43 -08:00
Myk Taylor
52a39438f7
don't make EditField's transparent
...
this is actually a very old bug, but now that I know how transparency
works, it's obvious how to fix this
2023-01-12 12:47:43 -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
88f158921f
move warning to run_script_with_env
2023-01-11 19:48:15 -08:00