In a SystemWeaver extension, you can listen for events. Below is a small example in an extension.
With the line shown below, a listener is added for the Item_AddPart event:
_eventManager.Item_AddPart += AddPartEvent;
It will listen for AddPart events for items the client has in its cache.
Example
In the below example, a message is shown if a part is added:
[Plugin, VisualPlugin, NeedsManagedWrapper(typeof(WPFPluginContentWrapper))] public partial class ItemViewWithEventsContent : RemObjects.Hydra.WPF.VisualPlugin, IswItemViewContent { private IswItemViewHost _host; private SWEventManager _eventManager; private IswDialogs _dialogs; private IswItem _currentItem; public ItemViewWithEventsContent() { InitializeComponent(); _eventManager = new SWEventManager(); } public void SetHost(IswItemViewHost host) { _host = host; _host.SetEvent(_eventManager); _dialogs = _host.GetDialogs(); _eventManager.Item_AddPart += AddPartEvent; } private void AddPartEvent(IswPart arg1, IswNodes arg2) { MessageBox.Show($"Part {arg1.Name} was added!"); } public void SetCurrentItem(IswItem AItem) { _currentItem = AItem; } }