public static System.Func<MyMagnifier> CreateFreezableMagnifier(IHTMLImage i, string zoom_src) { var x = new MyMagnifier(i, zoom_src, 180, 4, 6); System.Action<IEvent> click = (ev) => { x.Enabled = !x.Enabled; x.UpdateTo(ev); }; i.onclick += (ev) => { click(ev); }; x.Click += (ev) =>{ click(ev); }; return () => x; }
public static System.Func<MyMagnifier> CreateClickableMagnifier(IHTMLImage i, string zoom_src) { var x = default(MyMagnifier); System.Action create = () => { x = new MyMagnifier(i, zoom_src, 180, 4, 6); x.Click += delegate { if (x != null) { x.Dispose(); x = null; } }; }; create(); i.onclick += (ev) => { if (x == null) { create(); x.UpdateTo(ev); } }; return () => x; }