/** * Create an event. * * @param event native event * @return media list event, or <code>null</code> if the native event type is not enabled or otherwise could not be handled */ public MediaListEvent CreateEvent(libvlc_event_t evt) { // Create an event suitable for the native event type... MediaListEvent result = null; switch (evt.type) { case libvlc_event_e.libvlc_MediaListWillAddItem: //result = new MediaListWillAddItemEvent(mediaList, evt.u.media_list_event.item, evt.u.media_list_event.index); // FIXME break; case libvlc_event_e.libvlc_MediaListItemAdded: //result = new MediaListItemAddedEvent(mediaList, evt.u.media_list_event.item, evt.u.media_list_event.index); break; case libvlc_event_e.libvlc_MediaListWillDeleteItem: //result = new MediaListWillDeleteItemEvent(mediaList, evt.u.media_list_event.item, evt.u.media_list_event.index); break; case libvlc_event_e.libvlc_MediaListItemDeleted: //result = new MediaListItemDeletedEvent(mediaList, evt.u.media_list_event.item, evt.u.media_list_event.index); break; } return(result); }
/** * Raise an event. * * @param mediaListEvent event to raise, may be <code>null</code> */ private void RaiseEvent(MediaListEvent mediaListEvent) { Logger.Trace("raiseEvent(mediaListEvent={}", mediaListEvent); if (mediaListEvent != null) { listenersService.Submit(new NotifyEventListenersRunnable(this, mediaListEvent)); } }
/** * Create a runnable. * * @param mediaList enclosing media list instance * @param mediaPlayerEvent event to notify */ public NotifyEventListenersRunnable(MediaList mediaList, MediaListEvent mediaListEvent) { this.mediaList = mediaList; this.mediaListEvent = mediaListEvent; }
/** * Raise an event. * * @param mediaListEvent event to raise, may be <code>null</code> */ private void RaiseEvent(MediaListEvent mediaListEvent) { Logger.Trace("raiseEvent(mediaListEvent={}", mediaListEvent); if(mediaListEvent != null) { listenersService.Submit(new NotifyEventListenersRunnable(this, mediaListEvent)); } }