static void RhinoDoc_LayerTableEvent(object sender, LayerTableEventArgs e) { if (e.Document == ActiveDocument) { Revit.RefreshActiveView(); } }
private static void On_RhinoDoc_LayerTableEvent(object sender, LayerTableEventArgs e) { switch (e.EventType) { case LayerTableEventType.Added: case LayerTableEventType.Deleted: case LayerTableEventType.Undeleted: UpdateIndexes(e.Document); break; } }
private void ProcessLayerTableEvent( object sender, LayerTableEventArgs e, bool eA, bool eD, bool eM, bool eS, bool eC, bool eML, bool eMV, bool eMP, bool eMN, bool eMC) { RhinoApp.WriteLine("ProcessLayerTableEvent"); if (!expireSolution) { RhinoApp.WriteLine("!expireSolution"); switch (e.EventType) { case LayerTableEventType.Added: RhinoApp.WriteLine("Added"); if (eA) { expireSolution = true; } break; case LayerTableEventType.Deleted: RhinoApp.WriteLine("Deleted"); if (eD) { expireSolution = true; } break; case LayerTableEventType.Undeleted: RhinoApp.WriteLine("Undeleted"); if (eA) { expireSolution = true; } break; case LayerTableEventType.Modified: RhinoApp.WriteLine("Modified"); if (eM) { if (!eML || !eMV || !eMP || !eMN || !eMC) { RhinoApp.WriteLine("!Modifier"); if (e.OldState != null && e.NewState != null) { RhinoApp.WriteLine("!State"); if ((eML && e.OldState.IsLocked != e.NewState.IsLocked) || (eMV && e.OldState.IsVisible != e.NewState.IsVisible) || (eMP && e.OldState.ParentLayerId != e.NewState.ParentLayerId) || (eMN && e.OldState.Name != e.NewState.Name) || (eMC && e.OldState.Color != e.NewState.Color)) { RhinoApp.WriteLine("expireSolution"); expireSolution = true; } } } else { expireSolution = true; } } break; case LayerTableEventType.Sorted: RhinoApp.WriteLine("Sorted"); if (eS) { expireSolution = true; } break; case LayerTableEventType.Current: RhinoApp.WriteLine("Current"); if (eC) { expireSolution = true; } break; default: break; } if (expireSolution) { RhinoApp.Idle += RhinoAppIdle; } } }