Skip to content

Commit

Permalink
Add lv_windows_zoom_to_logical, lv_windows_zoom_to_physical, lv_windo…
Browse files Browse the repository at this point in the history
…ws_dpi_to_logical and lv_windows_dpi_to_physical.
  • Loading branch information
MouriNaruto committed Dec 11, 2023
1 parent 36f01ec commit 8022307
Showing 1 changed file with 25 additions and 7 deletions.
32 changes: 25 additions & 7 deletions LvglWindowsSimulator/win32drv.c
Original file line number Diff line number Diff line change
Expand Up @@ -620,14 +620,33 @@ static UINT lv_windows_get_dpi_for_window(
return Result;
}

static int32_t lv_windows_zoom_to_logical(int32_t physical, int32_t zoom_level)
{
return MulDiv(physical, LV_WINDOWS_ZOOM_BASE_LEVEL, zoom_level);
}

static int32_t lv_windows_zoom_to_physical(int32_t logical, int32_t zoom_level)
{
return MulDiv(logical, zoom_level, LV_WINDOWS_ZOOM_BASE_LEVEL);
}

static int32_t lv_windows_dpi_to_logical(int32_t physical, int32_t dpi)
{
return MulDiv(physical, USER_DEFAULT_SCREEN_DPI, dpi);
}

static int32_t lv_windows_dpi_to_physical(int32_t logical, int32_t dpi)
{
return MulDiv(logical, dpi, USER_DEFAULT_SCREEN_DPI);
}

static int32_t lv_windows_pixel_to_logical(
int32_t physical,
int32_t zoom_level,
int32_t dpi)
{
return MulDiv(
MulDiv(physical, LV_WINDOWS_ZOOM_BASE_LEVEL, zoom_level),
USER_DEFAULT_SCREEN_DPI,
return lv_windows_dpi_to_logical(
lv_windows_zoom_to_logical(physical, zoom_level),
dpi);
}

Expand All @@ -636,10 +655,9 @@ static int32_t lv_windows_pixel_to_physical(
int32_t zoom_level,
int32_t dpi)
{
return MulDiv(
MulDiv(logical, zoom_level, LV_WINDOWS_ZOOM_BASE_LEVEL),
dpi,
USER_DEFAULT_SCREEN_DPI);
return lv_windows_dpi_to_physical(
lv_windows_zoom_to_physical(logical, zoom_level),
dpi);
}

static void lv_windows_display_driver_flush_callback(
Expand Down

0 comments on commit 8022307

Please sign in to comment.