//================================================================================ // ILayerChangeEventListener methods //================================================================================ public void OnChangeEvent(LayerChangeEvent @event) { //You can choose to handle changes to conversations or messages however you'd like: IList <LayerChange> changes = @event.Changes; for (int i = 0; i < changes.Count; i++) { LayerChange change = changes[i]; if (change.ObjectType == LayerObjectType.Conversation) { Conversation conversation = change.GetObject <Conversation>(); Log.Verbose(TAG, "Conversation " + conversation.Id + " attribute " + change.AttributeName + " was changed from " + change.OldValue + " to " + change.NewValue); if (LayerChange.Type.Insert == change.ChangeType) { } else if (LayerChange.Type.Update == change.ChangeType) { } else if (LayerChange.Type.Delete == change.ChangeType) { } } else if (change.ObjectType == LayerObjectType.Message) { IMessage message = change.GetObject <IMessage>(); Log.Verbose(TAG, "Message " + message.Id + " attribute " + change .AttributeName + " was changed from " + change.OldValue + " to " + change.NewValue); if (LayerChange.Type.Insert == change.ChangeType) { } else if (LayerChange.Type.Update == change.ChangeType) { } else if (LayerChange.Type.Delete == change.ChangeType) { } } } //If we don't have an active conversation, grab the oldest one if (activeConversation == null) { activeConversation = _GetConversation(); } //If anything in the conversation changes, re-draw it in the GUI _DrawConversation(); //Check the meta-data for color changes _GetTopBarMetaData(); }
public void OnChangeEvent(LayerChangeEvent layerChangeEvent) { Refresh(); }