|
OpenTTD Source 20260206-master-g4d4e37dbf1
|
Implementation of the Windows (GDI) video driver. More...
#include "../stdafx.h"#include "../openttd.h"#include "../error_func.h"#include "../gfx_func.h"#include "../os/windows/win32.h"#include "../blitter/factory.hpp"#include "../core/geometry_func.hpp"#include "../core/math_func.hpp"#include "../core/random_func.hpp"#include "../texteff.hpp"#include "../thread.h"#include "../progress.h"#include "../window_gui.h"#include "../window_func.h"#include "../framerate_type.h"#include "../library_loader.h"#include "../core/utf8.hpp"#include "win32_v.h"#include <windows.h>#include <imm.h>#include <versionhelpers.h>#include "../safeguards.h"Go to the source code of this file.
Data Structures | |
| struct | Win32VkMapping |
Macros | |
| #define | MAPVK_VK_TO_CHAR (2) |
| #define | PM_QS_INPUT 0x20000 |
| #define | WM_DPICHANGED 0x02E0 |
| #define | AS(x, z) |
| #define | AM(x, y, z, w) |
| #define | WM_MOUSEWHEEL 0x020A |
| #define | WM_MOUSEHWHEEL 0x020E |
| #define | GET_WHEEL_DELTA_WPARAM(wparam) |
Functions | |
| static uint | MapWindowsKey (uint sym) |
| static LRESULT | HandleCharMsg (uint keycode, char32_t charcode) |
| Forward key presses to the window system. | |
| static bool | DrawIMECompositionString () |
| Should we draw the composition string ourself, i.e is this a normal IME? | |
| static void | SetCompositionPos (HWND hwnd) |
| Set position of the composition window to the caret position. | |
| static void | SetCandidatePos (HWND hwnd) |
| Set the position of the candidate window. | |
| static LRESULT | HandleIMEComposition (HWND hwnd, WPARAM wParam, LPARAM lParam) |
| Handle WM_IME_COMPOSITION messages. | |
| static void | CancelIMEComposition (HWND hwnd) |
| Clear the current composition string. | |
| static bool | IsDarkModeEnabled () |
| static void | SetDarkModeForWindow (HWND hWnd, bool dark_mode) |
| LRESULT CALLBACK | WndProcGdi (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) |
| static void | RegisterWndClass () |
| static void | FindResolutions (uint8_t bpp) |
| static BOOL CALLBACK | MonitorEnumProc (HMONITOR hMonitor, HDC, LPRECT, LPARAM data) |
Variables | |
| bool | _window_maximize |
| static Dimension | _bck_resolution |
| DWORD | _imm_props |
| static Palette | _local_palette |
| Current palette to use for drawing. | |
| static const Win32VkMapping | _vk_mapping [] |
| static const Dimension | default_resolutions [] |
| static FVideoDriver_Win32GDI | iFVideoDriver_Win32GDI |
Implementation of the Windows (GDI) video driver.
Definition in file win32_v.cpp.
| #define AM | ( | x, | |
| y, | |||
| z, | |||
| w ) |
Definition at line 75 of file win32_v.cpp.
| #define AS | ( | x, | |
| z ) |
Definition at line 74 of file win32_v.cpp.
| #define GET_WHEEL_DELTA_WPARAM | ( | wparam | ) |
| #define MAPVK_VK_TO_CHAR (2) |
Definition at line 46 of file win32_v.cpp.
| #define PM_QS_INPUT 0x20000 |
Definition at line 50 of file win32_v.cpp.
| #define WM_DPICHANGED 0x02E0 |
Definition at line 54 of file win32_v.cpp.
|
static |
Clear the current composition string.
Definition at line 401 of file win32_v.cpp.
References HandleTextInput().
Referenced by VideoDriver_Win32Base::EditBoxLostFocus().
|
static |
Should we draw the composition string ourself, i.e is this a normal IME?
Definition at line 277 of file win32_v.cpp.
Referenced by HandleIMEComposition().
|
static |
Definition at line 918 of file win32_v.cpp.
|
static |
Forward key presses to the window system.
Definition at line 250 of file win32_v.cpp.
References Debug, HandleKeypress(), Utf16DecodeSurrogate(), Utf16IsLeadSurrogate(), and Utf16IsTrailSurrogate().
|
static |
Handle WM_IME_COMPOSITION messages.
Definition at line 339 of file win32_v.cpp.
References convert_from_fs(), DrawIMECompositionString(), FS2OTTD(), HandleTextInput(), SetCompositionPos(), and Utf16IsLeadSurrogate().
|
static |
Definition at line 444 of file win32_v.cpp.
|
static |
Definition at line 118 of file win32_v.cpp.
|
static |
Definition at line 1059 of file win32_v.cpp.
|
static |
Definition at line 880 of file win32_v.cpp.
|
static |
Set the position of the candidate window.
Definition at line 305 of file win32_v.cpp.
References EditBoxInGlobalFocus(), Point, WC_CONSOLE, Coord2D< T >::x, and Coord2D< T >::y.
Referenced by VideoDriver_Win32Base::EditBoxLostFocus().
|
static |
Set position of the composition window to the caret position.
Definition at line 283 of file win32_v.cpp.
References EditBoxInGlobalFocus(), Point, Coord2D< T >::x, and Coord2D< T >::y.
Referenced by VideoDriver_Win32Base::EditBoxLostFocus(), and HandleIMEComposition().
|
static |
Definition at line 473 of file win32_v.cpp.
| LRESULT CALLBACK WndProcGdi | ( | HWND | hwnd, |
| UINT | msg, | ||
| WPARAM | wParam, | ||
| LPARAM | lParam ) |
Definition at line 497 of file win32_v.cpp.
|
static |
Definition at line 58 of file win32_v.cpp.
| DWORD _imm_props |
Definition at line 59 of file win32_v.cpp.
|
static |
Current palette to use for drawing.
Definition at line 61 of file win32_v.cpp.
|
static |
Definition at line 77 of file win32_v.cpp.
| bool _window_maximize |
Definition at line 57 of file win32_v.cpp.
|
static |
Definition at line 904 of file win32_v.cpp.
|
static |
Definition at line 1112 of file win32_v.cpp.