mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-09 07:29:44 +00:00
(svn r9126) -Feature: "Function of scrollwheel" can now be set to off as well
Note: since this can be useful for all platforms, the GUI is no longer OSX specific. Note: scrolling lists is still unaffected by this setting
This commit is contained in:
parent
3cf65b8a08
commit
4cc3551ef2
@ -1093,6 +1093,7 @@ STR_CONFIG_PATCHES_PREFER_TEAMCHAT :{LTBLUE}Prefer
|
||||
STR_CONFIG_PATCHES_SCROLLWHEEL_SCROLLING :{LTBLUE}Function of scrollwheel: {ORANGE}{STRING1}
|
||||
STR_CONFIG_PATCHES_SCROLLWHEEL_ZOOM :Zoom map
|
||||
STR_CONFIG_PATCHES_SCROLLWHEEL_SCROLL :Scroll map
|
||||
STR_CONFIG_PATCHES_SCROLLWHEEL_OFF :Off
|
||||
STR_CONFIG_PATCHES_SCROLLWHEEL_MULTIPLIER :{LTBLUE}Map scrollwheel speed: {ORANGE}{STRING1}
|
||||
|
||||
STR_CONFIG_PATCHES_MAX_TRAINS :{LTBLUE}Max trains per player: {ORANGE}{STRING1}
|
||||
|
@ -1283,7 +1283,7 @@ const SettingDesc _patch_settings[] = {
|
||||
SDT_BOOL(Patches, link_terraform_toolbar, S, 0, false, STR_CONFIG_PATCHES_LINK_TERRAFORM_TOOLBAR,NULL),
|
||||
SDT_VAR(Patches, liveries, SLE_UINT8, S,MS, 2, 0, 2, 0, STR_CONFIG_PATCHES_LIVERIES, RedrawScreen),
|
||||
SDT_BOOL(Patches, prefer_teamchat, S, 0, false, STR_CONFIG_PATCHES_PREFER_TEAMCHAT, NULL),
|
||||
SDT_VAR(Patches, scrollwheel_scrolling,SLE_UINT8,S,MS, 0, 0, 1, 0, STR_CONFIG_PATCHES_SCROLLWHEEL_SCROLLING, NULL),
|
||||
SDT_VAR(Patches, scrollwheel_scrolling,SLE_UINT8,S,MS, 0, 0, 2, 0, STR_CONFIG_PATCHES_SCROLLWHEEL_SCROLLING, NULL),
|
||||
SDT_VAR(Patches,scrollwheel_multiplier,SLE_UINT8,S, 0, 5, 1, 15, 1, STR_CONFIG_PATCHES_SCROLLWHEEL_MULTIPLIER,NULL),
|
||||
|
||||
/***************************************************************************/
|
||||
|
@ -576,13 +576,11 @@ static const char *_patches_ui[] = {
|
||||
"link_terraform_toolbar",
|
||||
"liveries",
|
||||
"prefer_teamchat",
|
||||
#if defined(__APPLE__)
|
||||
/* While the horizontal scrollwheel scrolling is written as general code, only
|
||||
* the cocoa (OSX) driver generates input for it.
|
||||
* Until some other driver will read this input, we will hide the GUI to control this from other systems. */
|
||||
* Since it's also able to completely disable the scrollwheel will we display it on all platforms anyway */
|
||||
"scrollwheel_scrolling",
|
||||
"scrollwheel_multiplier",
|
||||
#endif
|
||||
};
|
||||
|
||||
static const char *_patches_construction[] = {
|
||||
|
@ -1665,12 +1665,15 @@ void MouseLoop(int click, int mousewheel)
|
||||
if (vp != NULL && (_game_mode == GM_MENU || IsGeneratingWorld())) return;
|
||||
|
||||
if (mousewheel != 0) {
|
||||
WindowEvent e;
|
||||
if (_patches.scrollwheel_scrolling == 0) {
|
||||
/* Scrollwheel is in zoom mode. Make the zoom event. */
|
||||
WindowEvent e;
|
||||
|
||||
/* Send WE_MOUSEWHEEL event to window */
|
||||
e.event = WE_MOUSEWHEEL;
|
||||
e.we.wheel.wheel = mousewheel;
|
||||
if (!scrollwheel_scrolling) w->wndproc(w, &e);
|
||||
/* Send WE_MOUSEWHEEL event to window */
|
||||
e.event = WE_MOUSEWHEEL;
|
||||
e.we.wheel.wheel = mousewheel;
|
||||
w->wndproc(w, &e);
|
||||
}
|
||||
|
||||
/* Dispatch a MouseWheelEvent for widgets if it is not a viewport */
|
||||
if (vp == NULL) DispatchMouseWheelEvent(w, GetWidgetFromPos(w, x - w->left, y - w->top), mousewheel);
|
||||
|
Loading…
Reference in New Issue
Block a user