1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
//! Clipboard master
//!
//! Provides simple way to track updates of clipboard.
//!
//! ## Example:
//!
//! ```rust
//! extern crate clipboard_master;
//!
//! use clipboard_master::{Master, ClipboardHandler, CallbackResult};
//!
//! use std::io;
//!
//! struct Handler;
//!
//! impl ClipboardHandler for Handler {
//! fn on_clipboard_change(&mut self) -> CallbackResult {
//! println!("Clipboard change happened!");
//! CallbackResult::Next
//! }
//!
//! fn on_clipboard_error(&mut self, error: io::Error) -> CallbackResult {
//! eprintln!("Error: {}", error);
//! CallbackResult::Next
//! }
//! }
//!
//! fn main() {
//! let mut master = Master::new(Handler).expect("create new monitor");
//!
//! let shutdown = master.shutdown_channel();
//! std::thread::spawn(move || {
//! std::thread::sleep(core::time::Duration::from_secs(1));
//! println!("I did some work so time to finish...");
//! shutdown.signal();
//! });
//! //Working until shutdown
//! master.run().expect("Success");
//! }
//! ```
use io;
pub use ;
///Describes Clipboard handler
///Possible return values of callback.