GrabBag/AppUtils/UICommon/Inc/ResultListLayoutHelper.h

56 lines
2.2 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef RESULTLISTLAYOUTHELPER_H
#define RESULTLISTLAYOUTHELPER_H
#include <QListWidget>
/**
* @brief 检测结果列表及页面布局辅助类
*
* 封装单/双相机模式下的统一页面布局配置,包括:
* - 检测图像控件位置和大小
* - 检测结果列表的流向、换行、gridSize
* - 设备状态框架位置
* - 日志控件位置
*/
class ResultListLayoutHelper
{
public:
/**
* @brief 设置单相机模式布局
*
* 单相机:左侧图像全高显示,右侧依次为设备状态、结果列表、日志。
* 结果列表 LeftToRight + Wrapping + ScrollBarOffgridSize 固定 (183, 205)。
*
* @param resultList 检测结果列表控件
* @param detectImage 主检测图像控件
* @param detectImage2 第二检测图像控件(单相机时隐藏)
* @param frameDev 设备状态框架控件
* @param detectLog 日志控件
* @param availableHeight 可用高度(屏幕高度 - 任务栏 - 边距)
*/
static void setupSingleCameraMode(QListWidget* resultList,
QWidget* detectImage, QWidget* detectImage2,
QWidget* frameDev, QWidget* detectLog,
int availableHeight);
/**
* @brief 设置多相机模式布局
*
* 多相机:上方左右分屏显示两个图像,下方依次为设备状态、结果列表、日志。
* 结果列表 LeftToRight + NoWrappinggridSize 固定 (183, 205)。
*
* @param resultList 检测结果列表控件
* @param detectImage 主检测图像控件
* @param detectImage2 第二检测图像控件(多相机时显示)
* @param frameDev 设备状态框架控件
* @param detectLog 日志控件
* @param availableHeight 可用高度(屏幕高度 - 任务栏 - 边距)
*/
static void setupMultiCameraMode(QListWidget* resultList,
QWidget* detectImage, QWidget* detectImage2,
QWidget* frameDev, QWidget* detectLog,
int availableHeight);
};
#endif // RESULTLISTLAYOUTHELPER_H