buildJunnyISpectPanelButtonsForTesting function
List<DraggablePanelButtonItem>
buildJunnyISpectPanelButtonsForTesting({
- required JunnyISpectRuntimeController controller,
- required VoidCallback onChanged,
- Future<
void> onLogExportTap(- BuildContext context
- void onAnalyticsExportTap(
- BuildContext context
- Iterable<
DraggablePanelButtonItem> extraButtons = const <DraggablePanelButtonItem>[],
构建 Junny ISpect 面板按钮列表。
Implementation
@visibleForTesting
List<DraggablePanelButtonItem> buildJunnyISpectPanelButtonsForTesting({
required JunnyISpectRuntimeController controller,
required VoidCallback onChanged,
Future<void> Function(BuildContext context)? onLogExportTap,
void Function(BuildContext context)? onAnalyticsExportTap,
Iterable<DraggablePanelButtonItem> extraButtons =
const <DraggablePanelButtonItem>[],
}) {
final DraggablePanelButtonItem? logProfilePanelButton =
buildISpectLogProfilePanelButtonForTesting(
controller: controller,
onChanged: onChanged,
);
final DraggablePanelButtonItem? rawPayloadPanelButton =
buildISpectRawPayloadPanelButtonForTesting(
controller: controller,
onChanged: onChanged,
);
return <DraggablePanelButtonItem>[
buildISpectLogExportPanelButtonForTesting(
onExport: onLogExportTap ?? (BuildContext context) async {},
),
if (logProfilePanelButton != null) logProfilePanelButton,
if (rawPayloadPanelButton != null) rawPayloadPanelButton,
if (controller.effectiveConfig.analyticsExportPanelButtonEnabled &&
onAnalyticsExportTap != null)
DraggablePanelButtonItem(
icon: CupertinoIcons.chart_bar,
label: '统计导出',
onTap: onAnalyticsExportTap,
),
...extraButtons,
];
}