EndOpenDocument called multiple times

Continuing the discussion from What can McNeel do to improve your development?:

This seems like a bug to me. @steve, @dalelear - does Rhino need to fire EndOpenDocument multiple times?

1 Like

I think you @ mentioned the wrong steve (my user name is stevebaer) :smile:

Sounds like a bug to me. I haven’t heard of this one before so I’ll have to dig in a little before determining if it is RhinoCommon or C++ SDK causing the multi-fire. I created an issue for this at
http://mcneel.myjetbrains.com/youtrack/issue/RH-28376

Looks like Steve and I both made a bug for this issue. The one I created is http://mcneel.myjetbrains.com/youtrack/issue/RH-28389. I combine the bugs.

I made a test plugin to play with most of the events that RhinoApp or RhinoDoc can fire. This plugin is loaded at startup. I can test with different files, but the Rhino file I was opening had many linked blocks.

These are the events I am tracking:

Rhino.RhinoDoc.AddRhinoObject += OnAddRhinoObjectEvent;
Rhino.RhinoDoc.BeginOpenDocument += OnBeginOpenDocumentEvent;
Rhino.RhinoDoc.BeginSaveDocument += OnBeginSaveDocument;
Rhino.RhinoDoc.CloseDocument += OnCloseDocument;
Rhino.RhinoDoc.DeleteRhinoObject += OnDeleteRhinoObject;
Rhino.RhinoDoc.DeselectAllObjects += OnDeselectAllObjects;
Rhino.RhinoDoc.DeselectObjects += OnDeselectObjects;
Rhino.RhinoDoc.DocumentPropertiesChanged += OnDocumentPropertiesChanged;
Rhino.RhinoDoc.EndOpenDocument += OnEndOpenDocument;
Rhino.RhinoDoc.EndSaveDocument += OnEndSaveDocument;
Rhino.RhinoDoc.GroupTableEvent += OnGroupTableEvent;
Rhino.RhinoDoc.InstanceDefinitionTableEvent += OnInstanceDefinitionTableEvent;
Rhino.RhinoDoc.LayerTableEvent += OnLayerTableEvent;
Rhino.RhinoDoc.LightTableEvent += OnLightTableEvent;
Rhino.RhinoDoc.MaterialTableEvent += OnMaterialTableEvent;
Rhino.RhinoDoc.ModifyObjectAttributes += OnModifyObjectAttributes;
Rhino.RhinoDoc.NewDocument += OnNewDocument;
Rhino.RhinoDoc.PurgeRhinoObject += OnPurgeRhinoObject;
Rhino.RhinoDoc.RenderEnvironmentTableEvent += OnRenderEnvironmentTableEvent;
Rhino.RhinoDoc.RenderMaterialsTableEvent += OnRenderMaterialsTableEvent;
Rhino.RhinoDoc.RenderTextureTableEvent += OnRenderTextureTableEvent;
Rhino.RhinoDoc.ReplaceRhinoObject += OnReplaceRhinoObject;
Rhino.RhinoDoc.SelectObjects += OnSelectObjects;
Rhino.RhinoDoc.TextureMappingEvent += OnTextureMappingEvent;
Rhino.RhinoDoc.UndeleteRhinoObject += OnUndeleteRhinoObject;

Rhino.RhinoApp.Idle += OnIdleEvent;
Rhino.RhinoApp.Initialized += OnInitializedEvent;
Rhino.RhinoApp.AppSettingsChanged += OnAppSettingsChangedEvent;
Rhino.RhinoApp.Closing += OnClosingEvent;
Rhino.RhinoApp.EscapeKeyPressed += OnEscapeKeyPressedEvent;

This is the output from opening a new file:

Loading Rhino Render, version 1.50, Jun  9 2014, 15:23:21
CloseDocument Event Fired
RenderMaterialsTableEvent Event Fired
RenderMaterialsTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderTextureTableEvent Event Fired
RenderTextureTableEvent Event Fired
RenderMaterialsTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderTextureTableEvent Event Fired
NewDocument Event Fired
BeginOpenDocument Event Fired
DocumentPropertiesChanged Event Fired
DocumentPropertiesChanged Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
RenderMaterialsTableEvent Event Fired
RenderMaterialsTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderTextureTableEvent Event Fired
RenderTextureTableEvent Event Fired
RenderMaterialsTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderTextureTableEvent Event Fired
EndOpenDocument Event Fired
DocumentPropertiesChanged Event Fired
Initialized Event Fired
Idle Event Fired

This is the output from a file with many linked references:

Rhino Events Loaded
Loading Rhino Render, version 1.50, Jun  9 2014, 15:23:21
CloseDocument Event Fired
RenderMaterialsTableEvent Event Fired
RenderMaterialsTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderTextureTableEvent Event Fired
RenderTextureTableEvent Event Fired
RenderMaterialsTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderTextureTableEvent Event Fired
NewDocument Event Fired
BeginOpenDocument Event Fired
DocumentPropertiesChanged Event Fired
DocumentPropertiesChanged Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
RenderMaterialsTableEvent Event Fired
RenderMaterialsTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderTextureTableEvent Event Fired
RenderTextureTableEvent Event Fired
RenderMaterialsTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderTextureTableEvent Event Fired
EndOpenDocument Event Fired
DocumentPropertiesChanged Event Fired
Initialized Event Fired
Command: _Open
Name of the file to open ( UpdatePromptUpdateBlocks=Yes  Browse ): "C:\xxx__.3dm"
CloseDocument Event Fired
BeginOpenDocument Event Fired
DocumentPropertiesChanged Event Fired
DocumentPropertiesChanged Event Fired
DocumentPropertiesChanged Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
RenderMaterialsTableEvent Event Fired
RenderMaterialsTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderTextureTableEvent Event Fired
RenderTextureTableEvent Event Fired
RenderMaterialsTableEvent Event Fired
RenderEnvironmentTableEvent Event Fired
RenderTextureTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
MaterialTableEvent Event Fired
LayerTableEvent Event Fired
AddRhinoObject Event Fired
MaterialTableEvent Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
InstanceDefinitionTableEvent Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
GroupTableEvent Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
LayerTableEvent Event Fired
BeginOpenDocument Event Fired
LayerTableEvent Event Fired
AddRhinoObject Event Fired
AddRhinoObject Event Fired
EndOpenDocument Event Fired
InstanceDefinitionTableEvent Event Fired
EndOpenDocument Event Fired
File "C:\xxx__.3dm" successfully read

So I am assuming the BeginOpenDocument and EndOpenDocument also fire when external rhino files are referenced?