コード例 #1
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            _oscTransmitter = new OSCTransmitter("127.0.0.1", Port, TCP);
            _oscTransmitter.TCPClientConnected += _oscTransmitter_TCPClientConnected;
            _cursorSessionCounter = 0;

            _cursors = new Dictionary <string, Cursor>();

            this.WindowState = WindowState.Maximized;


            MultipointSdk.Instance.Register(this);
            App.MultiPointObject.CurrentWindow = this;

            foreach (DeviceInfo d in App.MultiPointObject.MouseDeviceList)
            {
                MultipointMouseDevice mpMouseDevice = d.DeviceVisual;
                Bitmap cursorBitmap = GetCursorImage(MultipointSdk.Instance.MouseDeviceList.Count);
                mpMouseDevice.CursorImage = ConvertBitmapToBitmapImage(cursorBitmap);
            }
            App.MultiPointObject.DeviceArrivalEvent += MultiPointObject_DeviceArrivalEvent;

            KeyDown += Window1_KeyDown;

            MTContainer.MultipointMouseDownEvent += MTContainer_MultiPointMouseDownEvent;
            MTContainer.MultipointMouseMoveEvent += MTContainer_MultiPointMouseMoveEvent;
            MTContainer.MultipointMouseUpEvent   += MTContainer_MultiPointMouseUpEvent;
        }
コード例 #2
0
        void MultiPointObject_DeviceArrivalEvent(object sender, DeviceNotifyEventArgs e)
        {
            DeviceInfo            mouseObject   = e.DeviceInfo;
            MultipointMouseDevice mpMouseDevice = mouseObject.DeviceVisual;
            Bitmap cursorBitmap = GetCursorImage(MultipointSdk.Instance.MouseDeviceList.Count);

            mpMouseDevice.CursorImage = ConvertBitmapToBitmapImage(cursorBitmap);
        }
コード例 #3
0
        void MTContainer_MultiPointMouseMoveEvent(object sender, RoutedEventArgs e)
        {
            MultipointMouseEventArgs args  = (MultipointMouseEventArgs)e;
            MultipointMouseDevice    mouse = args.DeviceInfo.DeviceVisual;

            System.Windows.Point position = new System.Windows.Point();

            if (mouse.LeftButton == MultipointMouseButtonState.Pressed)
            {
                if (mouse != null)
                {
                    position = mouse.Position;
                }

                if (_cursors.Keys.Contains(args.DeviceInfo.DeviceId))
                {
                    Cursor c = _cursors[args.DeviceInfo.DeviceId];
                    c.Position = position;

                    SendStatusUpdate();
                }
            }
        }
コード例 #4
0
        void MTContainer_MultiPointMouseDownEvent(object sender, RoutedEventArgs e)
        {
            //Add Cursor Object and send cursor add an OSC message

            MultipointMouseEventArgs args  = (MultipointMouseEventArgs)e;
            MultipointMouseDevice    mouse = args.DeviceInfo.DeviceVisual as MultipointMouseDevice;

            System.Windows.Point position = new System.Windows.Point();

            if (mouse != null)
            {
                position = mouse.Position;
            }

            Cursor _newCursor = new Cursor(position, 0, _cursorSessionCounter);

            if (!_cursors.Keys.Contains(args.DeviceInfo.DeviceId))
            {
                _cursors.Add(args.DeviceInfo.DeviceId, _newCursor);
                _cursorSessionCounter++;
            }

            SendStatusUpdate();
        }