finishDrawing method
void
finishDrawing()
Implementation
void finishDrawing() {
debugPrint(
'DrawingToolManager.finishDrawing: $_currentDrawingTool, isComplete: ${_currentDrawingTool?.isComplete}');
if (_currentDrawingTool != null) {
debugPrint(
'当前工具: ${_currentDrawingTool!.type}, 状态: ${_currentDrawingTool!.state}, 完成: ${_currentDrawingTool!.isComplete}');
if (_currentDrawingTool!.isComplete) {
// 将工具状态设置为正常状态(非预览状态)
_currentDrawingTool!.state = DrawingToolState.none;
_tools.add(_currentDrawingTool!);
debugPrint('绘图工具已添加,总数: ${_tools.length}');
// 重要:清除当前绘制工具,这样预览线就会消失
_currentDrawingTool = null;
_updateDrawingPosition(null);
_handleToolCompletion();
} else {
debugPrint('工具未完成,无法添加到工具列表');
}
} else {
debugPrint('没有当前绘制工具');
}
}