public static void Stop() { Clipwatch.mInstance.Invoke(new MethodInvoker(delegate() { Clipwatch.ChangeClipboardChain(Clipwatch.mInstance.Handle, Clipwatch.nextClipboardViewer); })); Clipwatch.mInstance.Invoke(new MethodInvoker(Clipwatch.mInstance.Close)); Clipwatch.mInstance.Dispose(); Clipwatch.mInstance = null; }
private void ClipChang() { IDataObject dataObject = Clipboard.GetDataObject(); Clipform? clipform = null; foreach (string text in Clipwatch.formats) { if (dataObject.GetDataPresent(text)) { clipform = new Clipform?((Clipform)Enum.Parse(typeof(Clipform), text)); break; } } object data = dataObject.GetData(clipform.ToString()); if (data == null || clipform == null) { return; } Clipwatch.OnClipboardChange(clipform.Value, data); }
protected override void WndProc(ref Message m) { int msg = m.Msg; if (msg == 776) { this.ClipChang(); Clipwatch.SendMessage(Clipwatch.nextClipboardViewer, m.Msg, m.WParam, m.LParam); return; } if (msg != 781) { base.WndProc(ref m); return; } if (m.WParam == Clipwatch.nextClipboardViewer) { Clipwatch.nextClipboardViewer = m.LParam; return; } Clipwatch.SendMessage(Clipwatch.nextClipboardViewer, m.Msg, m.WParam, m.LParam); }
public static void Stop() { OnClipboardChange = null; Clipwatch.Stop(); }