File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -139,6 +139,7 @@ class GlobalData : public SubsystemInterface
139139 Bool m_enableStaticLOD;
140140 Int m_terrainLODTargetTimeMS;
141141 Bool m_useAlternateMouse;
142+ Bool m_useRightMouseScrollWithAlternateMouse; // TheSuperHackers @feature User option for RMB scroll in Alternate Mouse mode.
142143 Bool m_clientRetaliationModeEnabled;
143144 Bool m_doubleClickAttackMove;
144145 Bool m_rightMouseAlwaysScrolls;
Original file line number Diff line number Diff line change @@ -1038,7 +1038,15 @@ GlobalData::GlobalData()
10381038
10391039 m_keyboardCameraRotateSpeed = 0 .1f ;
10401040
1041+ m_useAlternateMouse = FALSE ;
1042+ #if RTS_GENERALS
1043+ // disable mouse scrolling in alternate mouse mode, per Harvard 7/15/03
1044+ m_useRightMouseScrollWithAlternateMouse = FALSE ;
1045+ #else
1046+ m_useRightMouseScrollWithAlternateMouse = TRUE ;
1047+ #endif
10411048 m_clientRetaliationModeEnabled = TRUE ; // On by default.
1049+ m_doubleClickAttackMove = FALSE ;
10421050
10431051}
10441052
@@ -1187,6 +1195,7 @@ void GlobalData::parseGameDataDefinition( INI* ini )
11871195 // override INI values with user preferences
11881196 OptionPreferences optionPref;
11891197 TheWritableGlobalData->m_useAlternateMouse = optionPref.getAlternateMouseModeEnabled ();
1198+ TheWritableGlobalData->m_useRightMouseScrollWithAlternateMouse = optionPref.getRightMouseScrollWithAlternateMouseEnabled ();
11901199 TheWritableGlobalData->m_clientRetaliationModeEnabled = optionPref.getRetaliationModeEnabled ();
11911200 TheWritableGlobalData->m_doubleClickAttackMove = optionPref.getDoubleClickAttackMoveEnabled ();
11921201 TheWritableGlobalData->m_keyboardScrollFactor = optionPref.getScrollFactor ();
Original file line number Diff line number Diff line change @@ -579,6 +579,13 @@ static void saveOptions()
579579 TheWritableGlobalData->m_useAlternateMouse = GadgetCheckBoxIsChecked (checkAlternateMouse);
580580 (*pref)[" UseAlternateMouse" ] = TheWritableGlobalData->m_useAlternateMouse ? " yes" : " no" ;
581581
582+ // TheSuperHackers @todo Add check box ?
583+ {
584+ Bool useRightMouseScrollWithAlternateMouse = pref->getRightMouseScrollWithAlternateMouseEnabled ();
585+ (*pref)[" UseRightMouseScrollWithAlternateMouse" ] = useRightMouseScrollWithAlternateMouse ? " yes" : " no" ;
586+ TheWritableGlobalData->m_useRightMouseScrollWithAlternateMouse = useRightMouseScrollWithAlternateMouse;
587+ }
588+
582589 // TheSuperHackers @todo Add combo box ?
583590 {
584591 CursorCaptureMode mode = pref->getCursorCaptureMode ();
Original file line number Diff line number Diff line change @@ -261,7 +261,9 @@ GameMessageDisposition LookAtTranslator::translateGameMessage(const GameMessage
261261 m_anchor = msg->getArgument ( 0 )->pixel ;
262262 m_currentPos = msg->getArgument ( 0 )->pixel ;
263263
264- if (!TheInGameUI->isSelecting () && !m_isScrolling)
264+ const Bool userWantsRMBScroll = !TheGlobalData->m_useAlternateMouse || TheGlobalData->m_useRightMouseScrollWithAlternateMouse ;
265+
266+ if (userWantsRMBScroll && !TheInGameUI->isSelecting () && !m_isScrolling)
265267 {
266268 setScrolling (SCROLL_RMB );
267269 }
You can’t perform that action at this time.
0 commit comments