- add sources.
[platform/framework/web/crosswalk.git] / src / content / renderer / renderer_clipboard_client.h
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef CONTENT_RENDERER_RENDERER_CLIPBOARD_CLIENT_H_
6 #define CONTENT_RENDERER_RENDERER_CLIPBOARD_CLIENT_H_
7
8 #include "base/compiler_specific.h"
9 #include "content/renderer/clipboard_client.h"
10
11 namespace content {
12
13 // An implementation of ClipboardClient that gets and sends data over IPC.
14 class RendererClipboardClient : public ClipboardClient {
15  public:
16   RendererClipboardClient();
17   virtual ~RendererClipboardClient();
18
19   virtual ui::Clipboard* GetClipboard() OVERRIDE;
20   virtual uint64 GetSequenceNumber(ui::ClipboardType type) OVERRIDE;
21   virtual bool IsFormatAvailable(const ui::Clipboard::FormatType& format,
22                                  ui::ClipboardType type) OVERRIDE;
23   virtual void Clear(ui::ClipboardType type) OVERRIDE;
24   virtual void ReadAvailableTypes(ui::ClipboardType type,
25                                   std::vector<string16>* types,
26                                   bool* contains_filenames) OVERRIDE;
27   virtual void ReadText(ui::ClipboardType type,
28                         string16* result) OVERRIDE;
29   virtual void ReadAsciiText(ui::ClipboardType type,
30                              std::string* result) OVERRIDE;
31   virtual void ReadHTML(ui::ClipboardType type,
32                         string16* markup,
33                         GURL* url,
34                         uint32* fragment_start,
35                         uint32* fragment_end) OVERRIDE;
36   virtual void ReadRTF(ui::ClipboardType type, std::string* result) OVERRIDE;
37   virtual void ReadImage(ui::ClipboardType type, std::string* data) OVERRIDE;
38   virtual void ReadCustomData(ui::ClipboardType clipboard_type,
39                               const string16& type,
40                               string16* data) OVERRIDE;
41   virtual void ReadData(const ui::Clipboard::FormatType& format,
42                         std::string* data) OVERRIDE;
43   virtual WriteContext* CreateWriteContext() OVERRIDE;
44 };
45
46 }  // namespace content
47
48 #endif  // CONTENT_RENDERER_RENDERER_CLIPBOARD_CLIENT_H_