formatting

This commit is contained in:
Nick Fisher
2025-07-07 17:18:43 +08:00
parent 9f59577f90
commit cb8943ff72

View File

@@ -7,7 +7,6 @@ import 'package:thermion_dart/thermion_dart.dart';
typedef PointerEventDetails = (Vector2 localPosition, Vector2 delta); typedef PointerEventDetails = (Vector2 localPosition, Vector2 delta);
abstract class InputHandlerDelegate { abstract class InputHandlerDelegate {
Future handle(List<InputEvent> events) async { Future handle(List<InputEvent> events) async {
// noop, override to implement // noop, override to implement
} }
@@ -36,34 +35,48 @@ class DelegateInputHandler implements InputHandler {
bool _ready = false; bool _ready = false;
bool _processing = false; bool _processing = false;
DelegateInputHandler( DelegateInputHandler({
{required this.viewer, required this.delegates, this.batch = true}) { required this.viewer,
required this.delegates,
this.batch = true,
}) {
FilamentApp.instance!.registerRequestFrameHook(process); FilamentApp.instance!.registerRequestFrameHook(process);
viewer.initialized.then((_) { viewer.initialized.then((_) {
this._ready = true; this._ready = true;
}); });
} }
factory DelegateInputHandler.fixedOrbit(ThermionViewer viewer, factory DelegateInputHandler.fixedOrbit(
{double minimumDistance = 0.1, ThermionViewer viewer, {
Vector3? target, double minimumDistance = 0.1,
InputSensitivityOptions sensitivity = const InputSensitivityOptions(), Vector3? target,
ThermionEntity? entity}) { InputSensitivityOptions sensitivity = const InputSensitivityOptions(),
return DelegateInputHandler(viewer: viewer, delegates: [ ThermionEntity? entity,
OrbitInputHandlerDelegate(viewer.view, }) {
return DelegateInputHandler(
viewer: viewer,
delegates: [
OrbitInputHandlerDelegate(
viewer.view,
sensitivity: sensitivity, sensitivity: sensitivity,
minZoomDistance: minimumDistance, minZoomDistance: minimumDistance,
maxZoomDistance: 1000.0) maxZoomDistance: 1000.0,
]); ),
],
);
} }
factory DelegateInputHandler.flight(ThermionViewer viewer, factory DelegateInputHandler.flight(
{bool freeLook = false, ThermionViewer viewer, {
InputSensitivityOptions sensitivity = const InputSensitivityOptions(), bool freeLook = false,
ThermionEntity? entity}) => InputSensitivityOptions sensitivity = const InputSensitivityOptions(),
DelegateInputHandler(viewer: viewer, delegates: [ ThermionEntity? entity,
FreeFlightInputHandlerDelegateV2(viewer.view, sensitivity: sensitivity) }) => DelegateInputHandler(
]); viewer: viewer,
delegates: [
FreeFlightInputHandlerDelegateV2(viewer.view, sensitivity: sensitivity),
],
);
Future<void> process() async { Future<void> process() async {
_processing = true; _processing = true;