* feat(server,ui): 悬浮工具栏图片模式与装饰图叠加候选词 在 #1046 的基础上按最新 develop 重做。 悬浮工具栏 [toolbar] mode = "image":一整张背景图,按钮按 [toolbar.buttons.<按钮>] 的 x_dip / y_dip / width_dip / height_dip 摆放, 可按状态换图([images]),没图时画矢量图标。窗口按背景图的透明区域裁成 异形,透明处点得穿;图上除按钮外都能拖动。v2 皮肤的动图会播放,工具栏 隐藏或淡出后停帧。 候选窗装饰图可用 candidate_overlay_* 叠加一个候选词,太宽时缩字号; 设置页的皮肤预览一并显示。 ui 新增 OverlayPanel(绝对定位)与 ImageMask(按 alpha 生成区域)。 * fix(ui): 动图工具栏的窗口形状取所有帧的并集 窗口区域连画面一起裁,只按首帧裁形状时,动画里伸出首帧轮廓的部分 (抬头、飞出的纸)会被裁掉。改为把所有帧的 alpha 合起来再生成区域。 * fix(server): 工具栏按钮框始终算在异形窗口里 窗口形状只取背景图不透明的部分时,摆在图片透明处的按钮会被一起裁掉、 点不到。形状改为背景图轮廓并上每个按钮的框,按钮可以放在人物旁边的空白处, 不必在背景图里垫底。 * feat(server): 工具栏按钮可单独设内置图标的字号 [toolbar.buttons.<按钮>] 新增 icon_size_dip,内置 Segoe Fluent Icons 图标的 字号不再只能跟着按钮框走:按钮框铺满背景图里的圆底、图标单独调大小。 不写时仍是按钮框短边的 0.82 倍。 * feat(server): 设置页按图片模式预览悬浮工具栏 皮肤页的卡片与悬浮工具栏页的预览原来只会画矩形条。皮肤是图片模式时, 改按工具栏的画法预览:背景图(v2 皮肤的动图会播放)、按皮肤坐标摆放的 按钮、按钮贴图或内置图标(含 icon_size_dip),设置页关掉的按钮不画, 缩放与图标尺寸设置一并生效。 --------- Co-authored-by: fanlusky <1730976608@qq.com>
30 lines
909 B
CMake
30 lines
909 B
CMake
set(TEST_EXECUTABLE_NAME "msimeui-tests")
|
|
|
|
add_executable(${TEST_EXECUTABLE_NAME}
|
|
src/main.cpp
|
|
src/test_animated_image.cpp
|
|
src/test_animation.cpp
|
|
src/test_card_shadow.cpp
|
|
src/test_device_resources.cpp
|
|
src/test_fonts.cpp
|
|
src/test_image.cpp
|
|
src/test_layout.cpp
|
|
src/test_overlay_panel.cpp
|
|
src/test_font_fallback.cpp
|
|
src/test_menu_flyout_item.cpp
|
|
src/test_pager_arrows.cpp
|
|
src/test_text_selection.cpp
|
|
includes/test_framework.h
|
|
)
|
|
|
|
# The test sources include their headers as "tests/includes/...", mirroring how
|
|
# server/ lays its tests out.
|
|
target_include_directories(${TEST_EXECUTABLE_NAME} PRIVATE ${CMAKE_SOURCE_DIR})
|
|
target_link_libraries(${TEST_EXECUTABLE_NAME} PRIVATE msimeui)
|
|
|
|
if(MSVC)
|
|
target_compile_options(${TEST_EXECUTABLE_NAME} PRIVATE /W4 /permissive- /utf-8)
|
|
endif()
|
|
|
|
add_test(NAME ${TEST_EXECUTABLE_NAME} COMMAND ${TEST_EXECUTABLE_NAME})
|