feat: 搭建 Just DataInspector 波形数据查看器基础功能
基于 Win32 API + GDI+ 从零实现仿真数据检查器,用于替代 Simulink.sdi.view 查看带时间轴的 CSV 数据。 - 新增 Utilities 层:UTF-8/宽字符与数值格式化工具、CSV 解析器(自动识别分隔符与引号)、 信号数据集模型(时间轴识别、信号名解析、取值采样)、Solarised Light 主题色板与绘图基础工具 - 新增 Toolbar 组件:打开 CSV、适应窗口、适应时间、放大、缩小、合并网格、每信号一格 - 新增 SignalPanel 组件:信号列表(可见性开关、颜色标识、所属网格标记)、样式编辑区 (颜色、线宽、线段/散点/点线/阶梯显示方式、所属网格),支持右键上下文菜单与滚轮滚动 - 新增 PlotView 组件:多网格波形绘制、自适应时间轴与幅值轴、网格线、信号图例、 时间光标与实时数值读数、纵向滚动条 - 新增 Application 组件:DPI 感知(Per-Monitor V2)、双缓冲绘制、区域布局与分隔条拖拽、 鼠标与键盘消息分发、文件拖放、状态栏提示 - 交互能力:滚轮缩放、Shift+滚轮平移、Ctrl+滚轮缩放幅值、拖拽平移、幅值轴纵向缩放、 右键框选缩放、单击固定/取消时间光标、双击自适应、方向键平移与滚动 - 补齐 Makefile 的源文件与头文件索引,并新增 gdiplus、comdlg32 链接库
This commit is contained in:
commit
132b305544
22 files changed
+7146
No files matched your search
@@ -0,0 +1,21 @@
|
||||
#ifndef __MAIN_HPP__
|
||||
#define __MAIN_HPP__
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
namespace jdi
|
||||
{
|
||||
|
||||
/**
|
||||
* @brief 应用程序入口逻辑(GUI 子系统)。
|
||||
* @param [IN] instance 当前模块实例句柄。
|
||||
* @param [IN] prevInstance 保留参数,Win32 下恒为空。
|
||||
* @param [IN] commandLine 命令行参数字符串(ANSI 编码)。
|
||||
* @param [IN] showCommand 主窗口显示方式。
|
||||
* @return 进程退出码。
|
||||
*/
|
||||
int RunApplication(HINSTANCE instance, HINSTANCE prevInstance, LPSTR commandLine, int showCommand);
|
||||
|
||||
} // namespace jdi
|
||||
|
||||
#endif // __MAIN_HPP__
|
||||
@@ -0,0 +1,26 @@
|
||||
#include "Main.hpp"
|
||||
|
||||
#include "Application.hpp"
|
||||
|
||||
namespace jdi
|
||||
{
|
||||
|
||||
int RunApplication(HINSTANCE instance, HINSTANCE /*prevInstance*/, LPSTR /*commandLine*/, int showCommand)
|
||||
{
|
||||
return Application::Instance().Run(instance, showCommand);
|
||||
}
|
||||
|
||||
} // namespace jdi
|
||||
|
||||
/**
|
||||
* @brief Windows GUI 程序入口。
|
||||
* @param [IN] instance 当前模块实例句柄。
|
||||
* @param [IN] prevInstance 保留参数,Win32 下恒为空。
|
||||
* @param [IN] commandLine 命令行参数字符串(ANSI 编码)。
|
||||
* @param [IN] showCommand 主窗口显示方式。
|
||||
* @return 进程退出码。
|
||||
*/
|
||||
int WINAPI WinMain(HINSTANCE instance, HINSTANCE prevInstance, LPSTR commandLine, int showCommand)
|
||||
{
|
||||
return jdi::RunApplication(instance, prevInstance, commandLine, showCommand);
|
||||
}
|
||||
Reference in new issue
Block a user