internal static void Delete(IntPtr albumBrowsePtr) { lock (albumsBrowseLock) { AlbumBrowse albumBrowse = albumBrowsers[albumBrowsePtr]; int count = albumBrowse.RemRef(); if (count == 0) { albumBrowsers.Remove(albumBrowsePtr); } } }
protected override void OnDispose() { albumBrowse.Complete -= new AlbumBrowseEventHandler(albumBrowse_Complete); AlbumBrowse.Delete(albumBrowse.albumBrowsePtr); albumBrowse = null; }
private static Delegate CreateDelegate <T>(Expression <Func <AlbumBrowse, Action <T> > > expr, AlbumBrowse ab) where T : AlbumBrowseEventArgs { return(expr.Compile().Invoke(ab)); }
public AlbumBrowseWrapper(AlbumBrowse albumBrowse) { this.albumBrowse = albumBrowse; albumBrowse.Complete += new AlbumBrowseEventHandler(albumBrowse_Complete); }