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
84
85
86
87
88
|
/*
* Bonobo::Clipboard: interface for a general clipboard supporting
* both embedding (storing the pasted data inside the container) and
* linking (storing only a reference to the pasted data inside the
* container, with the possibility to refresh it later)
*
* Bonobo::ClipboardStore: interface for implementing clipboard
* persistency externally. Use this if you don't want to implement
* funky clipboard data persistency in your application.
*
* Author:
* ÉRDI Gergõ <cactus@cactus.rulez.org>
*
* Copyright (C) 2001 Gergõ Érdi
*/
#ifndef BONOBO_CLIPBOARD_IDL
#define BONOBO_CLIPBOARD_IDL
#include "Bonobo_Unknown.idl"
#include "Bonobo_Persist.idl"
#include "Bonobo_Moniker.idl"
module Bonobo {
interface Clipboard : Unknown {
/**
* setClipboard:
* @pasting_moniker:
* @linking_moniker:
*
* Set the curent clipboard state. The clipboard
* server will own a new reference on the monikers.
* Three events will also be fired by the aggregated
* EventSource:
* Bonobo/Clipboard:changed (void)
* Bonobo/Clipboard:changed:pasting (pasting_moniker)
* Bonobo/Clipboard:changed:linking (linking_moniker)
*/
void setClipboard (in Moniker pasting_moniker,
in Moniker linking_moniker);
/**
* paste:
*
* Get the current pasteing moniker. The returned
* moniker is already ref'd.
*/
Moniker paste ();
/**
* link:
*
* Get the current linking moniker. The returned
* moniker is already ref'd.
*/
Moniker link ();
void unImplemented1 ();
void unImplemented2 ();
void unImplemented3 ();
void unImplemented4 ();
};
interface ClipboardStore : Unknown {
/**
* fetchStream:
*/
void fetchStream (in PersistStream source,
in Moniker linking_moniker);
/**
* fetchStorage:
*/
void fetchStorage (in PersistStorage source,
in Moniker linking_moniker);
void unImplemented1 ();
void unImplemented2 ();
void unImplemented3 ();
void unImplemented4 ();
};
};
#endif /* !BONOBO_CLIPBOARD_IDL */
|