Commit Graph

455 Commits

Author SHA1 Message Date
Chris Danford e13bd85d5b don't assert if no rows enabled (editor help screen) 2006-03-01 22:06:31 +00:00
Glenn Maynard c2243b0b0e ScreenOptions fading is a headache. We move rows up and down, and
fade them in and out at the same time; we do this by tweening the whole
row up and down, and fading each part of the row.  This is a big pain,
because we're also tweening each part for other reasons, and these
tweens tend to collide.  The whole thing is brittle and complicated,
and it's making fixing other problems a pain.

Try it a little differently: to fade the whole row, tween the alpha
along with the position of the whole row.  Then, manually propagate
the changing alpha value to each part, using BaseAlpha, so it doesn't
affect other tweens.

This also helps segregate the fading: with the exception of the actual
propagation, OptionRow doesn't have to know anything about it.  Before,
it had to constantly be careful that any tweening operations didn't
collide with the alpha tweening; often, one or the other would be cancelled,
resulting in either the change not happening at all, or snapping instead
of fading.

(This is still a hack, but it's more manageable; it puts control of high-level
tweening entirely in SOptionsMenu's control, instead of half in OptionRow.)
2006-02-27 03:04:56 +00:00
Glenn Maynard 1262243670 simplify 2006-02-27 01:37:43 +00:00
Glenn Maynard 973438f79b merge loop, comment 2006-02-27 00:52:09 +00:00
Glenn Maynard 25c9e31218 underlines and icons are unrelated; reorder 2006-02-27 00:51:11 +00:00
Steve Checkoway dd46ba19b5 Cleanup. 2006-02-19 01:01:11 +00:00
Steve Checkoway 1090af5ac0 Simplify. 2006-02-19 00:07:03 +00:00
Glenn Maynard 7ed5caf16b fix hiding m_sprLineHighlight (for real) 2006-02-18 02:51:58 +00:00
Glenn Maynard bc94e6e8a8 fix hiding m_sprLineHighlight 2006-02-18 02:51:22 +00:00
Chris Danford 95c88765a0 fix options rows tween from top of screen instead of initially being in the row's position 2006-02-10 04:33:54 +00:00
Glenn Maynard 7ef23abec9 wrong PlayerNumber 2006-02-03 10:06:10 +00:00
Glenn Maynard baeb3703b5 remove unused 2006-02-03 10:04:08 +00:00
Glenn Maynard 11373b5c3b call UpdateEnabledDisabled directly 2006-02-03 10:02:14 +00:00
Glenn Maynard 8c7b5747f5 i -> r 2006-02-03 09:59:47 +00:00
Glenn Maynard c32c1ff736 simplify 2006-02-03 09:59:08 +00:00
Glenn Maynard 664b7921d2 do SetRowHasFocus when m_iCurrentRow changes 2006-02-03 09:56:31 +00:00
Glenn Maynard f5176bff03 AfterChangeValueOrRow does this 2006-02-03 09:51:35 +00:00
Glenn Maynard a3b6b1ab01 simplify 2006-02-03 09:49:42 +00:00
Glenn Maynard fc1a0fd75b simplify: pull out loop 2006-02-03 09:45:06 +00:00
Glenn Maynard 082d3b570a simplify 2006-02-03 09:41:54 +00:00
Glenn Maynard 2289df5c42 unused 2006-02-03 09:38:07 +00:00
Glenn Maynard ac15b9fb11 redundant (called by AfterChangeValueOrRow) 2006-02-03 09:36:19 +00:00
Glenn Maynard 059901e3a9 only PositionIcons the changed player 2006-02-03 09:34:34 +00:00
Glenn Maynard 2e95edf9da PositionIcons(pn) 2006-02-03 09:31:51 +00:00
Glenn Maynard ca738bcccf cleanup
remove old comment
2006-02-03 08:53:31 +00:00
Glenn Maynard 359b416fab simplify 2006-02-03 08:49:02 +00:00
Glenn Maynard 4bf73b3d32 remove bRepeat parameter 2006-02-03 08:03:25 +00:00
Glenn Maynard e6ca5f8a76 remove bTweenIn 2006-02-03 07:53:33 +00:00
Glenn Maynard 9a865ac5cd MoveRowRelative should skip disabled rows, but didn't because
it was used by MoveRowAbsolute.  Refactor: MoveRowAbsolute sets
directly, ignoring whether a row is disabled (if you say "select
row 3", you mean it).  MoveRowRelative checks disabled rows,
with logic pulled from MenuUpDown (slightly refactored).  That
way, the disabled-row logic affects all relative movement.  (Net
simplification.)
2006-02-03 06:52:51 +00:00
Glenn Maynard 8704b5ec1e cleanup 2006-02-03 06:26:16 +00:00
Glenn Maynard 65a795a2dc hey also unused 2006-02-03 06:17:47 +00:00
Glenn Maynard 16a08f8500 unused 2006-02-03 06:17:25 +00:00
Glenn Maynard 441d23cbc9 move "bFirstChoiceGoesDown back to first choice" logic into AfterChangeRow 2006-02-03 06:16:38 +00:00
Glenn Maynard 652536ea83 simplify 2006-02-03 06:09:17 +00:00
Glenn Maynard e4c6fbafff fixup 2006-02-03 06:07:57 +00:00
Glenn Maynard 48a691534d cleanup 2006-02-03 06:06:34 +00:00
Glenn Maynard 02f5839746 cleanup 2006-02-03 06:04:27 +00:00
Glenn Maynard afa74ef150 move NAV_TOGGLE_FIVE_KEY focus handling into AfterChangeRow 2006-02-03 06:02:17 +00:00
Glenn Maynard ccab670ae8 add ScreenOptions::RestartOptions, to allow changing option rows
without restarting the screen completely
2006-02-03 05:36:16 +00:00
Glenn Maynard db0354cdf8 cleanup 2006-02-03 04:50:42 +00:00
Glenn Maynard 8ed452252a MoveRowRelative has had a side-effect of playing a sound, but
that only makes sense if the function was called as the result
of the user pressing a key.  ScreenOptionsEditCourse, etc.
use MoveRowAbsolute to set the default row, which calls MoveRowRelative,
causing an extranneous sound.
2006-02-03 04:50:25 +00:00
Glenn Maynard b74febae7a return bChanged 2006-02-03 04:40:49 +00:00
Glenn Maynard b556348e31 being a bit more explicit than usual, since the stuff in this screen is complicated 2006-02-03 04:36:48 +00:00
Glenn Maynard cb0c7ce59d Set up tsDestination directly. It doesn't make sense for a
function named "UpdateEnabledDisabled" to do this, and we
don't need to delay it anymore as GetWidthXY says (that was
before we moved the text into a frame).
2006-01-30 08:06:31 +00:00
Glenn Maynard 5995043bf0 Don't play the Start sound in SM_BeginFadingOut. It might
have been triggered by something that just played a sound,
or the screen might want to play a different sound.  It's
not SM_BeginFadingOut's job to play a sound.

(fixes double-start sound when "next screen" options are
selected from context menus in ScreenOptionsManage*)
2006-01-30 05:41:46 +00:00
Glenn Maynard 5ea602e4a2 hack to fix RowType_Exit in NAV_THREE_KEY_MENU 2006-01-25 09:38:58 +00:00
Chris Danford 7f821e8cfc CString -> RString 2006-01-22 01:00:06 +00:00
Glenn Maynard 5a3356e94e fix inactive underlines showing 2006-01-19 06:02:52 +00:00
Glenn Maynard 078017317c fix NAV_TOGGLE_FIVE_KEY focus navigation 2006-01-19 04:32:31 +00:00
Glenn Maynard b52e776f36 remove def param; use m_Def 2006-01-19 03:43:29 +00:00