formatting
This commit is contained in:
@@ -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;
|
||||||
|
|||||||
Reference in New Issue
Block a user