//------------------------------------------------------------------------/ // Methods: Selection //------------------------------------------------------------------------/ private Color GetColor(StratusTriggerBase triggerBase, StratusTriggerSystem.ConnectionStatus status) { Color color = Color.white; switch (target.connectionDisplay) { case StratusTriggerSystem.ConnectionDisplay.Selection: { switch (status) { case StratusTriggerSystem.ConnectionStatus.Connected: color = connectedColor; break; case StratusTriggerSystem.ConnectionStatus.Disconnected: //color = Color.white; break; case StratusTriggerSystem.ConnectionStatus.Selected: //color = connectedColor; color = selectedColor; break; case StratusTriggerSystem.ConnectionStatus.Disjoint: color = disconnectedColor; break; default: break; } } break; case StratusTriggerSystem.ConnectionDisplay.Grouping: { //int colorIndex = -1; if (status == StratusTriggerSystem.ConnectionStatus.Selected) { color = selectedColor; } if (connectivityGroups.ContainsKey(triggerBase)) { int colorIndex = connectivityGroups[triggerBase]; color = StratusGUIStyles.Colors.GetDistinct(colorIndex); } } break; } return(color); }
private StratusTriggerSystem.ConnectionStatus GetStatus(StratusTriggerable triggerable) { StratusTriggerSystem.ConnectionStatus status = StratusTriggerSystem.ConnectionStatus.Disconnected; if (selected) { if (selected == triggerable) { status = StratusTriggerSystem.ConnectionStatus.Selected; } else if (selectedTrigger && connectedTriggerables.ContainsKey(triggerable) && connectedTriggerables[triggerable]) { status = StratusTriggerSystem.ConnectionStatus.Connected; } } if (!IsConnected(triggerable) && selected != triggerable) { status = StratusTriggerSystem.ConnectionStatus.Disjoint; } return(status); }
private void DrawTriggerable(StratusTriggerable triggerable) { StratusTriggerSystem.ConnectionStatus status = StratusTriggerSystem.ConnectionStatus.Disconnected; if (selected) { if (selected == triggerable) { status = StratusTriggerSystem.ConnectionStatus.Selected; } else if (selectedTrigger && connectedTriggerables.ContainsKey(triggerable) && connectedTriggerables[triggerable]) { status = StratusTriggerSystem.ConnectionStatus.Connected; } } if (!IsConnected(triggerable) && selected != triggerable) { status = StratusTriggerSystem.ConnectionStatus.Disjoint; } Color color = GetColor(triggerable, status); Draw(triggerable, color, SelectTriggerable, RemoveTriggerable, SetTriggerableContextMenu); }
private void DrawTrigger(StratusTriggerBehaviour trigger) { StratusTriggerSystem.ConnectionStatus status = StratusTriggerSystem.ConnectionStatus.Disconnected; if (selected) { if (selected == trigger) { status = StratusTriggerSystem.ConnectionStatus.Selected; } else if (selectedTriggerable && connectedTriggers.ContainsKey(trigger) && connectedTriggers[trigger]) { status = StratusTriggerSystem.ConnectionStatus.Connected; } } if (!IsConnected(trigger) && selected != trigger) { status = StratusTriggerSystem.ConnectionStatus.Disjoint; } Color color = GetColor(trigger, status); Draw(trigger, color, SelectTrigger, RemoveTrigger, SetTriggerContextMenu); }