From c2f2694cf5ee70337db79c5ac5b9ba678a3f53d4 Mon Sep 17 00:00:00 2001 From: Bill Date: Wed, 30 Jun 2021 05:59:28 -0400 Subject: [PATCH] Fix RoomDragEvent --- src/nitro/room/RoomEngine.ts | 23 ++--- src/nitro/ui/IRoomWidgetHandler.ts | 16 ---- src/nitro/ui/IRoomWidgetHandlerContainer.ts | 27 ------ src/nitro/ui/index.ts | 2 - .../ui/widget/ConversionTrackingWidget.ts | 85 ------------------- src/nitro/ui/widget/IRoomWidget.ts | 13 --- .../ui/widget/IRoomWidgetMessageListener.ts | 7 -- .../ui/widget/events/RoomWidgetUpdateEvent.ts | 9 -- src/nitro/ui/widget/events/index.ts | 1 - src/nitro/ui/widget/index.ts | 5 -- .../ui/widget/messages/RoomWidgetMessage.ts | 14 --- src/nitro/ui/widget/messages/index.ts | 1 - 12 files changed, 9 insertions(+), 194 deletions(-) delete mode 100644 src/nitro/ui/IRoomWidgetHandler.ts delete mode 100644 src/nitro/ui/IRoomWidgetHandlerContainer.ts delete mode 100644 src/nitro/ui/widget/ConversionTrackingWidget.ts delete mode 100644 src/nitro/ui/widget/IRoomWidget.ts delete mode 100644 src/nitro/ui/widget/IRoomWidgetMessageListener.ts delete mode 100644 src/nitro/ui/widget/events/RoomWidgetUpdateEvent.ts delete mode 100644 src/nitro/ui/widget/events/index.ts delete mode 100644 src/nitro/ui/widget/messages/RoomWidgetMessage.ts delete mode 100644 src/nitro/ui/widget/messages/index.ts diff --git a/src/nitro/room/RoomEngine.ts b/src/nitro/room/RoomEngine.ts index 28c49e1b..c8f52b92 100644 --- a/src/nitro/room/RoomEngine.ts +++ b/src/nitro/room/RoomEngine.ts @@ -662,6 +662,8 @@ export class RoomEngine extends NitroManager implements IRoomEngine, IRoomCreato if(!renderingCanvas || !point) return false; + this.events.dispatchEvent(new RoomDragEvent(roomId, -(renderingCanvas.screenOffsetX - point.x), -(renderingCanvas.screenOffsetY - point.y))); + renderingCanvas.screenOffsetX = point.x; renderingCanvas.screenOffsetY = point.y; @@ -1175,18 +1177,14 @@ export class RoomEngine extends NitroManager implements IRoomEngine, IRoomCreato } } - const canvas = this.getRoomInstanceRenderingCanvas(this._activeRoomId, 1); - - if(canvas) + if(this._activeRoomIsDragged) { - if(this._activeRoomIsDragged) - { - canvas.screenOffsetX = (canvas.screenOffsetX + this._activeRoomDragX); - canvas.screenOffsetY = (canvas.screenOffsetY + this._activeRoomDragY); + const renderingCanvas = this.getRoomInstanceRenderingCanvas(this._activeRoomId, 1); - this._activeRoomDragX = 0; - this._activeRoomDragY = 0; - } + if(renderingCanvas) this.setRoomInstanceRenderingCanvasOffset(this._activeRoomId, 1, new Point((renderingCanvas.screenOffsetX + this._activeRoomDragX), (renderingCanvas.screenOffsetY + this._activeRoomDragY))); + + this._activeRoomDragX = 0; + this._activeRoomDragY = 0; } } @@ -1460,8 +1458,7 @@ export class RoomEngine extends NitroManager implements IRoomEngine, IRoomCreato if(this.useOffsetScrolling) { - renderingCanvas.screenOffsetX = -(roomCamera.location.x); - renderingCanvas.screenOffsetY = -(roomCamera.location.y); + this.setRoomInstanceRenderingCanvasOffset(this.activeRoomId, 1, new Point(-(roomCamera.location.x), -(roomCamera.location.y))); } else { @@ -2568,8 +2565,6 @@ export class RoomEngine extends NitroManager implements IRoomEngine, IRoomCreato this._activeRoomDragX += offsetX; this._activeRoomDragY += offsetY; - this.events.dispatchEvent(new RoomDragEvent(this.activeRoomId, offsetX, offsetY)); - this._activeRoomWasDragged = true; } } diff --git a/src/nitro/ui/IRoomWidgetHandler.ts b/src/nitro/ui/IRoomWidgetHandler.ts deleted file mode 100644 index 8256ed7b..00000000 --- a/src/nitro/ui/IRoomWidgetHandler.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { IDisposable } from '../../core/common/disposable/IDisposable'; -import { NitroEvent } from '../../core/events/NitroEvent'; -import { IRoomWidgetHandlerContainer } from './IRoomWidgetHandlerContainer'; -import { RoomWidgetUpdateEvent } from './widget/events/RoomWidgetUpdateEvent'; -import { RoomWidgetMessage } from './widget/messages/RoomWidgetMessage'; - -export interface IRoomWidgetHandler extends IDisposable -{ - update(): void; - processWidgetMessage(message: RoomWidgetMessage): RoomWidgetUpdateEvent; - processEvent(event: NitroEvent): void; - type: string; - messageTypes: string[]; - eventTypes: string[]; - container: IRoomWidgetHandlerContainer; -} \ No newline at end of file diff --git a/src/nitro/ui/IRoomWidgetHandlerContainer.ts b/src/nitro/ui/IRoomWidgetHandlerContainer.ts deleted file mode 100644 index 3d1268de..00000000 --- a/src/nitro/ui/IRoomWidgetHandlerContainer.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { Rectangle } from 'pixi.js'; -import { IConnection } from '../../core/communication/connections/IConnection'; -import { IEventDispatcher } from '../../core/events/IEventDispatcher'; -import { IRoomObject } from '../../room/object/IRoomObject'; -import { IAvatarRenderManager } from '../avatar/IAvatarRenderManager'; -import { IRoomEngine } from '../room/IRoomEngine'; -import { IRoomSession } from '../session/IRoomSession'; -import { IRoomSessionManager } from '../session/IRoomSessionManager'; -import { ISessionDataManager } from '../session/ISessionDataManager'; -import { RoomWidgetUpdateEvent } from './widget/events/RoomWidgetUpdateEvent'; -import { RoomWidgetMessage } from './widget/messages/RoomWidgetMessage'; - -export interface IRoomWidgetHandlerContainer -{ - getFirstCanvasId(): number; - getRoomViewRect(): Rectangle; - checkFurniManipulationRights(roomId: number, objectId: number, category: number): boolean; - isOwnerOfFurniture(roomObject: IRoomObject): boolean; - processWidgetMessage(message: RoomWidgetMessage): RoomWidgetUpdateEvent; - events: IEventDispatcher; - connection: IConnection; - roomEngine: IRoomEngine; - avatarRenderManager: IAvatarRenderManager; - roomSession: IRoomSession; - roomSessionManager: IRoomSessionManager; - sessionDataManager: ISessionDataManager; -} diff --git a/src/nitro/ui/index.ts b/src/nitro/ui/index.ts index ae0270bf..cd1b8dfa 100644 --- a/src/nitro/ui/index.ts +++ b/src/nitro/ui/index.ts @@ -1,5 +1,3 @@ -export * from './IRoomWidgetHandler'; -export * from './IRoomWidgetHandlerContainer'; export * from './MouseEventType'; export * from './TouchEventType'; export * from './widget'; diff --git a/src/nitro/ui/widget/ConversionTrackingWidget.ts b/src/nitro/ui/widget/ConversionTrackingWidget.ts deleted file mode 100644 index 7105cc63..00000000 --- a/src/nitro/ui/widget/ConversionTrackingWidget.ts +++ /dev/null @@ -1,85 +0,0 @@ -import { IEventDispatcher } from '../../../core/events/IEventDispatcher'; -import { IRoomWidgetHandler } from '../IRoomWidgetHandler'; -import { IRoomWidget } from './IRoomWidget'; -import { IRoomWidgetMessageListener } from './IRoomWidgetMessageListener'; - -export class ConversionTrackingWidget implements IRoomWidget -{ - private _widgetHandler: IRoomWidgetHandler; - private _messageListener: IRoomWidgetMessageListener; - private _events: IEventDispatcher; - private _disposed: boolean; - - constructor() - { - this._widgetHandler = null; - this._messageListener = null; - this._events = null; - this._disposed = false; - } - - public initialize(k: number = 0): void - { - - } - - public dispose(): void - { - if(this.disposed) return; - - this._messageListener = null; - - if(this._events && !this._events.disposed) - { - this.unregisterUpdateEvents(this._events); - } - - if(this._widgetHandler) - { - this._widgetHandler.dispose(); - - this._widgetHandler = null; - } - - this._events = null; - this._disposed = true; - } - - public registerUpdateEvents(eventDispatcher: IEventDispatcher): void - { - this._events = eventDispatcher; - } - - public unregisterUpdateEvents(eventDispatcher: IEventDispatcher): void - { - this._events = null; - } - - public get disposed(): boolean - { - return this._disposed; - } - - public get widgetHandler(): IRoomWidgetHandler - { - return this._widgetHandler; - } - - public set widgetHandler(handler: IRoomWidgetHandler) - { - this._widgetHandler = handler; - - //@ts-ignore - if(!this._widgetHandler.widget) this._widgetHandler.widget = this; - } - - public get messageListener(): IRoomWidgetMessageListener - { - return this._messageListener; - } - - public set messageListener(listener: IRoomWidgetMessageListener) - { - this._messageListener = listener; - } -} \ No newline at end of file diff --git a/src/nitro/ui/widget/IRoomWidget.ts b/src/nitro/ui/widget/IRoomWidget.ts deleted file mode 100644 index b549ce23..00000000 --- a/src/nitro/ui/widget/IRoomWidget.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { IEventDispatcher } from '../../../core/events/IEventDispatcher'; -import { IRoomWidgetHandler } from '../IRoomWidgetHandler'; -import { IRoomWidgetMessageListener } from './IRoomWidgetMessageListener'; - -export interface IRoomWidget -{ - initialize(_arg_1?: number): void; - dispose(): void; - registerUpdateEvents(eventDispatcher: IEventDispatcher): void; - unregisterUpdateEvents(eventDispatcher: IEventDispatcher): void; - widgetHandler: IRoomWidgetHandler; - messageListener: IRoomWidgetMessageListener; -} \ No newline at end of file diff --git a/src/nitro/ui/widget/IRoomWidgetMessageListener.ts b/src/nitro/ui/widget/IRoomWidgetMessageListener.ts deleted file mode 100644 index c3d0b74e..00000000 --- a/src/nitro/ui/widget/IRoomWidgetMessageListener.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { RoomWidgetUpdateEvent } from './events/RoomWidgetUpdateEvent'; -import { RoomWidgetMessage } from './messages/RoomWidgetMessage'; - -export interface IRoomWidgetMessageListener -{ - processWidgetMessage(message: RoomWidgetMessage): RoomWidgetUpdateEvent; -} \ No newline at end of file diff --git a/src/nitro/ui/widget/events/RoomWidgetUpdateEvent.ts b/src/nitro/ui/widget/events/RoomWidgetUpdateEvent.ts deleted file mode 100644 index be3aa8df..00000000 --- a/src/nitro/ui/widget/events/RoomWidgetUpdateEvent.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { NitroEvent } from '../../../../core/events/NitroEvent'; - -export class RoomWidgetUpdateEvent extends NitroEvent -{ - constructor(type: string) - { - super(type); - } -} \ No newline at end of file diff --git a/src/nitro/ui/widget/events/index.ts b/src/nitro/ui/widget/events/index.ts deleted file mode 100644 index f7151dcd..00000000 --- a/src/nitro/ui/widget/events/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './RoomWidgetUpdateEvent'; diff --git a/src/nitro/ui/widget/index.ts b/src/nitro/ui/widget/index.ts index 8ecbd800..14790857 100644 --- a/src/nitro/ui/widget/index.ts +++ b/src/nitro/ui/widget/index.ts @@ -1,6 +1 @@ -export * from './ConversionTrackingWidget'; export * from './enums'; -export * from './events'; -export * from './IRoomWidget'; -export * from './IRoomWidgetMessageListener'; -export * from './messages'; diff --git a/src/nitro/ui/widget/messages/RoomWidgetMessage.ts b/src/nitro/ui/widget/messages/RoomWidgetMessage.ts deleted file mode 100644 index 4f201426..00000000 --- a/src/nitro/ui/widget/messages/RoomWidgetMessage.ts +++ /dev/null @@ -1,14 +0,0 @@ -export class RoomWidgetMessage -{ - private _type: string; - - constructor(type: string) - { - this._type = type; - } - - public get type(): string - { - return this._type; - } -} \ No newline at end of file diff --git a/src/nitro/ui/widget/messages/index.ts b/src/nitro/ui/widget/messages/index.ts deleted file mode 100644 index 42b264c7..00000000 --- a/src/nitro/ui/widget/messages/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './RoomWidgetMessage';