-
Notifications
You must be signed in to change notification settings - Fork 180
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
launcher: add label showing pause status #665
base: master
Are you sure you want to change the base?
Conversation
This add a label that displays `pause` or `unpause` depending on game state. It is enabled or disabled according to the state of the input editfield
I see a few issues with this that we'd need to figure out:
What do you think of adding this Label underneath the current run and history search widgets and moving the help panel down a tile? that would give you a bit more room to explain the mechanics of pausing/unpausing. |
Thanks - I'll make the following changes:
|
- Move history field down - Add help text for space to pause - Disable pause label when no fort loaded - Add click handler - Toggle pen colors instead of disabling label so that click continues to work
This should resolve DFHack/dfhack#3125 |
end | ||
self:update_pause_label(false) | ||
end | ||
function EditPanel:enable_pause_label() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
instead of changing the colors, how about changing the hotkey hint from "Space" to "Double Space"? That might make the intent a little clearer.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ehhhhhh i don't know if "Double Space" would necessarily make it "clearer". It would be descriptive, but doesn't necessarily explain why the user has to press spacebar twice for it to unpause.
the real reason is, like, because after the first space, the second is passed to the game or something? There has to be a better way to convey this
gui/launcher.lua
Outdated
widgets.EditField{ | ||
view_id='search', | ||
frame={l=13, t=3, r=1}, | ||
frame={l=1, t=4, r=1}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not so sure about this change. @TaxiService what do you think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
like, moving those two things on a new line does makes sense for readability, but...
...are there solutions that don't require adding a Space: unpause
hotkeylabel at all?
and- is it worth it to increase that area's height by 1 just for this?
self.subviews.pauselabel.text[1].text = (df.global.pause_state ~= willchange) and 'unpause' or 'pause' | ||
else | ||
self:disable_pause_label() | ||
self.subviews.pauselabel.text[1].text = 'no fort loaded' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What I like about Cubittus's design is that the indicator is close to where the player's eyes are going to be when typing. If the launcher window is maximized (double click on the title bar) then the lower left corner is a long way away. A commandline can involve a lot of spaces, and the indicator can flash back and forth several times. whatever we do, it shouldn't be too distracting. My main worry is the crowding of elements in a tool that needs to be very clean. |
it shouldn't be too distracting, but it should be a bit distracting. 🤔 Like, in the sense that by interacting with the command line and observing how that label behaves, the user would naturally get an intuition for when spacebar would and wouldn't un/pause.
and indeed, i think that adding that
that is true. And this is why it should probably be noticeable enough to be seen, but not distracting enough to be bothersome. Like, maybe we could have it so that the first time the spacebar is captured, and up until the first other keyboard input, the label is like LCYAN; then after the second input, it becomes DGRAY. 🤔 or, you know, some other kind of measure to make the thing be noticeable at first, but ignorable once you know what it does. like-- all of this can be achieved even with the |
Thanks for all the feedback!
Regarding discoverability of space-to-pause there is a new line added to the default help page. dfpause.mp4 |
This adds a label that displays
pause
orunpause
depending on game state. It is enabled or disabled according to the state of the input editfield