Exemplo n.º 1
0
        private void OnWorkbenchEvent(WorkbenchEvent e)
        {
            switch (e.type)
            {
            case WorkbenchEvent.EType.Added:
            case WorkbenchEvent.EType.Removed:
            case WorkbenchEvent.EType.Swapped:
                SaveWorkbenchAsync();
                break;

            case WorkbenchEvent.EType.ManifoldEvent: {
                switch (e.manifoldEvent.type)
                {
                case ManifoldEvent.EType.SecondarySensorAdded:
                case ManifoldEvent.EType.SecondarySensorRemoved:
                case ManifoldEvent.EType.SensorPropertySwapped:
                case ManifoldEvent.EType.SensorPropertyAdded:
                case ManifoldEvent.EType.SensorPropertyRemoved:
                    SaveWorkbenchAsync();
                    break;
                }
                break;
            }// WorkbenchEvent.EType.ManifoldEvent
            }
        }
 public void onWorkbenchEvent(WorkbenchEvent e)
 {
     if (e.type != WorkbenchEvent.EType.ManifoldEvent || (e.manifoldEvent.type != ManifoldEvent.EType.Invalidated))
     {
         Log.D(this, "Workbench event saving workbench layout");
         SaveWorkbenchAsync();
     }
 }
 private void OnWorkbenchEvent(WorkbenchEvent e)
 {
     switch (e.type)
     {
     case WorkbenchEvent.EType.Added:
     case WorkbenchEvent.EType.Removed:
         handler.Post(InvalidateLocation);
         break;
     }
 }
Exemplo n.º 4
0
 /// <summary>
 /// TableView is not updating it's content size in a way that allows it to
 /// be used as a height for the scrollview. Using a timed event that grabs it
 /// every second to confirm the height.
 /// </summary>
 /// <param name="workbenchEvent">Workbench event.</param>
 public void updateBlockerHeight(WorkbenchEvent workbenchEvent)
 {
     if (workbenchEvent.type == WorkbenchEvent.EType.ManifoldEvent)
     {
         if (workbenchEvent.manifoldEvent.type == ManifoldEvent.EType.SensorPropertyAdded || workbenchEvent.manifoldEvent.type == ManifoldEvent.EType.SensorPropertyRemoved)
         {
             //Console.WriteLine("Added or removed a sensor property");
             initializeBlockerHeight();
         }
     }
 }
        private void OnWorkbenchEvent(WorkbenchEvent e)
        {
            switch (e.type)
            {
            case WorkbenchEvent.EType.Added:
                if (!Contains(e.manifold))
                {
                    var i  = 0;
                    var mr = new ManifoldRecord(e.manifold);
                    if (e.index == 0)
                    {
                        records.Insert(i, mr);
                        NotifyItemRangeInserted(i, 2);
                    }
                    else
                    {
                        i  = AdapterIndexForManifold(workbench[e.index - 1]);
                        i += AdapterSizeForManifold(records[i] as ManifoldRecord);
                        records.Insert(i, mr);
                        NotifyItemRangeInserted(i, 2);
                    }

                    if (mr.manifold.sensorPropertyCount > 0)
                    {
                        ExpandManifold(mr);
                    }
                }
                break;                 // WorkbenchEvent.EType.Added

            case WorkbenchEvent.EType.ManifoldEvent: {
                OnManifoldEvent(e.manifoldEvent);
            } break;                     // WorkbenchEvent.EType.ManifoldEvent

            case WorkbenchEvent.EType.Removed: {
                var i = AdapterIndexForManifold(e.manifold);
                if (i != -1)
                {
                    var cnt = AdapterSizeForManifold(records[i] as ManifoldRecord);
                    records.RemoveRange(i, cnt);
                    NotifyItemRangeRemoved(i, cnt);
                }
            } break;                     // WorkbenchEvent.EType.Removed

            case WorkbenchEvent.EType.Swapped: {
                SwapRecords(AdapterIndexForManifold(workbench[e.index]), AdapterIndexForManifold(workbench[e.otherIndex]));
            } break;                     // WorkbenchEvent.EType.Swapped
            }
        }
        /// <summary>
        /// Called when the backing workbench throws a new event.
        /// </summary>
        /// <param name="workbenchEvent">Workbench event.</param>
        private async void OnWorkbenchEvent(WorkbenchEvent workbenchEvent)
        {
            switch (workbenchEvent.type)
            {
            case WorkbenchEvent.EType.Added:
                goto case WorkbenchEvent.EType.Swapped;

            case WorkbenchEvent.EType.Removed:
                goto case WorkbenchEvent.EType.Swapped;

            case WorkbenchEvent.EType.Swapped:
                ion.SaveWorkbenchAsync();

                break;
            }
        }
Exemplo n.º 7
0
        /// <summary>
        /// Called when the backing workbench throws a new event.
        /// </summary>
        /// <param name="workbenchEvent">Workbench event.</param>
        private async void OnWorkbenchEvent(WorkbenchEvent workbenchEvent)
        {
            await Task.Delay(TimeSpan.FromMilliseconds(1));

            switch (workbenchEvent.type)
            {
            case WorkbenchEvent.EType.Added:
                goto case WorkbenchEvent.EType.Swapped;

            case WorkbenchEvent.EType.Removed:
                goto case WorkbenchEvent.EType.Swapped;

            case WorkbenchEvent.EType.Swapped:
                ion.SaveWorkbenchAsync();
                if (remoteMode)
                {
                    initializeBlockerHeight();
                }
                break;
            }
        }
Exemplo n.º 8
0
        private void OnWorkbenchEvent(WorkbenchEvent e)
        {
            switch (e.type)
            {
            case WorkbenchEvent.EType.Added:
            case WorkbenchEvent.EType.Removed:
                handler.Post(() => {
                    var pi = IndexOfSensor(e.manifold.primarySensor);
                    var si = IndexOfSensor(e.manifold.secondarySensor);

                    if (pi >= 0)
                    {
                        NotifyItemChanged(pi);
                    }

                    if (si >= 0)
                    {
                        NotifyItemChanged(si);
                    }
                });
                break;
            }
        }