161bce8aaad4f75ee5c1baa040e4963572b9f87e
[WebKit-https.git] / Source / WebCore / platform / wx / ClipboardWx.cpp
1 /*
2  *  Copyright (C) 2007 Kevin Ollivier <kevino@theolliviers.com>
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  *    notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  *    notice, this list of conditions and the following disclaimer in the
11  *    documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
14  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
17  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
20  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
21  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
24  */
25
26 #include "config.h"
27 #include "ClipboardWx.h"
28
29 #include "DOMStringList.h"
30 #include "FileList.h"
31 #include "HashTable.h"
32 #include "IntPoint.h"
33 #include "NotImplemented.h"
34 #include "Pasteboard.h"
35 #include "PlatformString.h"
36 #include <wtf/text/StringHash.h>
37
38
39 namespace WebCore {
40     
41 PassRefPtr<Clipboard> Clipboard::create(ClipboardAccessPolicy, DragData*, Frame*)
42 {
43     return 0;
44 }
45
46 ClipboardWx::ClipboardWx(ClipboardAccessPolicy policy, ClipboardType clipboardType) 
47     : Clipboard(policy, clipboardType)
48 {
49 }
50
51 void ClipboardWx::clearData(const String& type)
52 {
53     notImplemented();
54 }
55
56 void ClipboardWx::clearAllData() 
57 {
58     Pasteboard::generalPasteboard()->clear();
59 }
60
61 String ClipboardWx::getData(const String& type, bool& success) const 
62 {
63     notImplemented();
64     return ""; 
65 }
66
67 bool ClipboardWx::setData(const String& type, const String& data) 
68 {
69     notImplemented();
70     return false;
71 }
72
73 // extensions beyond IE's API
74 PassRefPtr<DOMStringList> ClipboardWx::types() const 
75 {
76     notImplemented();
77     return DOMStringList::create();
78 }
79
80 PassRefPtr<FileList> ClipboardWx::files() const
81 {
82     notImplemented();
83     return 0;
84 }
85
86 IntPoint ClipboardWx::dragLocation() const 
87
88     notImplemented();
89     return IntPoint(0,0);
90 }
91
92 CachedImage* ClipboardWx::dragImage() const 
93 {
94     notImplemented();
95     return 0; 
96 }
97
98 void ClipboardWx::setDragImage(CachedImage*, const IntPoint&) 
99 {
100     notImplemented();
101 }
102
103 Node* ClipboardWx::dragImageElement() 
104 {
105     notImplemented();
106     return 0; 
107 }
108
109 void ClipboardWx::setDragImageElement(Node*, const IntPoint&)
110 {
111     notImplemented();
112 }
113
114 DragImageRef ClipboardWx::createDragImage(IntPoint& dragLoc) const
115
116     notImplemented();
117     return 0;
118 }
119
120 void ClipboardWx::declareAndWriteDragImage(Element*, const KURL&, const String&, Frame*) 
121 {
122     notImplemented();
123 }
124
125 void ClipboardWx::writeURL(const KURL& url, const String& string, Frame* frame) 
126 {
127     Pasteboard::generalPasteboard()->writeURL(url, string, frame);
128 }
129
130 void ClipboardWx::writeRange(Range*, Frame*) 
131 {
132     notImplemented();
133 }
134
135 bool ClipboardWx::hasData() 
136 {
137     notImplemented();
138     return false;
139 }
140
141 void ClipboardWx::writePlainText(const WTF::String& text)
142 {
143     Pasteboard::generalPasteboard()->writePlainText(text);
144 }
145
146 }