命名审查与垃圾代码清理(纯重命名 / 死代码删除,无行为变更)

前提:加载完成后全部采样都已驻留内存,程序此后与源文件再无联系。
据此修正了一批会让人误以为"仍在读写文件"的命名:

- SampleFileAt → SampleSignalAt(取的是内存信号在给定时刻的采样值)。
- DataSet::AddPreparedFile → AddDataFile。
- PlotView::InvalidatePolylineCache → InvalidateDerivedCaches
  (它同时清空折线、边沿统计、中心平均值曲线、静态场景缓存与悬停引用)。
- PlotView::CursorColor(int which) → CursorColor()(两条光标同色,参数从未使用)。
- UiEllipsize(g,…) → UiEllipsize(…):纯测量不绘制,删掉被忽略的绘图上下文参数;
  同时删除与 UiMeasureTextWidth 完全重复的 UiTextWidth,调用点统一到 UiMeasureTextWidth。

清理残留参数((void)xxx;):
- TabConfig 的可见性/网格族(SetVisible / ToggleVisible / SetFileVisible / SetAllVisible /
  SoloSignal / SetMode / SyncLanes / FileHasVisible / FileAllVisible)去掉从未使用的
  const DataSet& 参数(仅 SyncToDataSet 真正需要数据层,保留)。
- PlotView::OnLButtonUp(int y)、OnMouseWheel(int delta, bool shift);PainterSignalHalo 去掉未用的 ref。
- BuildDataFile 中未使用的局部 rowCount。

删除无人调用的死函数:
  DataSet::Clear / AddFromTable;SignalColorCount;WideToUtf8 / StartsWith;
  PlotView::ViewMinTime / ViewMaxTime / EdgePanelRect / EdgePanelCloseRect /
  EdgeCenterPanelRect / ScaleLaneRange / BeginLaneValueEdit / LaneContentHeight;
  SignalPanel::NeedsScrollBar / IsFilterEditing / FilterText / ContentHeight;
  PopupMenu::EditingItemId;TabBar::IsDragging;TextEdit::PlaceCaret。

删除只写不读的死字段:CsvTable::sourceRowCount(与 rowCount 等义)与 skippedRowCount。

以 VERY_BIG_DATA.CSV 回归验证:加载与勾选、筛选框(含"无匹配的筛选信号")、
样式区线宽文案省略、选区放大(横向与纵向)、双光标读数与 Δt、右键菜单(Y 轴数值与
实验性功能子菜单)、合并/拆分网格、标签与信号重命名省略号,行为均与改动前一致;
make clean && make all 无任何警告。
This commit is contained in:
DeepSeek V4.1 Flash committed 2026-10-09 21:52:46 +08:00
1 parent f5028b1e18
commit 350538c634
21 files changed
+118 -456

No files matched your search

+9 -63
View File
@@ -160,7 +160,7 @@ namespace jdi
* @param [IN] y 客户区纵坐标。
* @return 需要重绘返回 true。
*/
bool OnLButtonUp(int x, int y);
bool OnLButtonUp(int y);
/**
* @brief 处理鼠标中键按下:与左键在常规模式下一致,进入自由平移(水平平移时间轴 +
@@ -186,7 +186,7 @@ namespace jdi
* @param [IN] shift 是否按下 Shift(水平平移时间轴)。
* @return 需要重绘返回 true。
*/
bool OnMouseWheel(int x, int y, int delta, bool shift);
bool OnMouseWheel(int delta, bool shift);
/**
* @brief 处理鼠标双击(命中时间光标时进入精确时间输入)。
@@ -301,12 +301,6 @@ namespace jdi
*/
void ScrollLanesByFraction(double fraction);
/**
* @brief 获取网格当前内容总高度。
* @return 内容高度(像素)。
*/
float LaneContentHeight() const { return m_laneContentHeight; }
/**
* @brief 提示浮层是否仍在显示(含淡出阶段)。
*
@@ -341,12 +335,14 @@ namespace jdi
bool ExitZoomModes();
/**
* @brief 清空折线顶点缓存。
* @brief 使全部派生结果失效:折线顶点、边沿统计、中心平均值曲线与静态场景缓存。
*
* 数据层结构变化(加载/移除文件、信号增删)后信号引用与文件地址都可能改变,
* 必须清空缓存,避免旧几何键与新的信号意外重合而取到过期顶点。
* 必须整体失效,避免旧几何键与新的信号意外重合而取到过期结果。
*/
void InvalidatePolylineCache(); /**
void InvalidateDerivedCaches();
/**
* @brief 三态循环切换时间光标:无 → 单光标 → 双光标 → 无。
* @return 状态发生变化返回 true。
*/
@@ -508,14 +504,6 @@ namespace jdi
*/
bool TakePendingMeanFilterBuild(int& laneIndex, int& radius);
/**
* @brief 进入某网格 Y 轴上限/下限的内联输入状态。
* @param [IN] laneIndex 网格下标。
* @param [IN] editMax 为 true 编辑上限,为 false 编辑下限。
* @return 进入成功返回 true。
*/
bool BeginLaneValueEdit(int laneIndex, bool editMax, const gd::RectF& anchorRect);
/**
* @brief 直接把文本解析为网格 Y 轴上限/下限并应用(供菜单内联输入框提交使用)。
* @param [IN] laneIndex 网格下标。
@@ -590,18 +578,6 @@ namespace jdi
*/
bool OnEditMouseUp();
/**
* @brief 获取当前视图左边界时间。
* @return 视图左边界时间。
*/
double ViewMinTime() const;
/**
* @brief 获取当前视图右边界时间。
* @return 视图右边界时间。
*/
double ViewMaxTime() const;
/**
* @brief 重新生成网格几何(可见性或网格划分变化后调用)。
*/
@@ -756,14 +732,6 @@ namespace jdi
*/
bool ApplyValueSelection(int laneIndex, float y0, float y1);
/**
* @brief 以指定倍率缩放某网格的幅值轴(保持锚点幅值不动)。
* @param [IN] laneIndex 目标网格下标。
* @param [IN] factor 缩放倍率,大于 1 表示放大。
* @param [IN] anchorValue 锚点幅值。
*/
void ScaleLaneRange(int laneIndex, double factor, double anchorValue);
/**
* @brief 平移某网格的幅值轴(偏移波形显示位置)。
* @param [IN] laneIndex 目标网格下标。
@@ -827,7 +795,7 @@ namespace jdi
* @param [IN] which 光标序号(1 或 2)。
* @return 颜色。
*/
std::uint32_t CursorColor(int which) const;
std::uint32_t CursorColor() const;
/**
* @brief 设置并显示一条临时提示(在绘图区底部以浮层方式绘制,短暂停留后淡出)。
@@ -979,13 +947,6 @@ namespace jdi
*/
EdgePanelLayout EdgePanelLayoutFor(int laneIndex, EdgePanelKind kind) const;
/**
* @brief 获取「边沿计数(中心轴)」浮动面板的矩形。
* @param [IN] laneIndex 网格下标。
* @return 面板矩形(未展开时为空矩形)。
*/
gd::RectF EdgeCenterPanelRect(int laneIndex) const;
/**
* @brief 获取中心平均值曲线(每个数据点 = 自身与左右各 N 点的平均值),结果带缓存。
* @param [IN] signal 目标信号。
@@ -1103,20 +1064,6 @@ namespace jdi
void PlaceCursorLabel(gd::RectF& rect, float preferredTop, float textHeight, float clipTop,
float clipBottom);
/**
* @brief 获取边沿统计面板的矩形(未展开时返回空矩形)。
* @param [IN] laneIndex 网格下标。
* @return 面板矩形。
*/
gd::RectF EdgePanelRect(int laneIndex) const;
/**
* @brief 获取边沿统计面板上关闭按钮的矩形。
* @param [IN] laneIndex 网格下标。
* @return 关闭按钮矩形。
*/
gd::RectF EdgePanelCloseRect(int laneIndex) const;
/**
* @brief 统计某信号穿越横向光标幅值的上/下边沿数量,结果带缓存。
* @param [IN] file 信号所属文件。
@@ -1466,12 +1413,11 @@ namespace jdi
/**
* @brief 绘制某条信号的悬停/拖拽光晕。
* @param [IN,OUT] g 绘图上下文。
* @param [IN] ref 信号引用。
* @param [IN] resolved 已解析的信号。
* @param [IN] points 折线顶点。
* @param [IN] breaks 每段折线的起始下标。
*/
void PaintSignalHalo(gd::Graphics& g, const SignalRef& ref, const ResolvedSignal& resolved,
void PaintSignalHalo(gd::Graphics& g, const ResolvedSignal& resolved,
const std::vector<gd::PointF>& points, const std::vector<std::size_t>& breaks);
/**