OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef SKIA_EXT_PLATFORM_DEVICE_LINUX_H_ | 5 #ifndef SKIA_EXT_PLATFORM_DEVICE_LINUX_H_ |
6 #define SKIA_EXT_PLATFORM_DEVICE_LINUX_H_ | 6 #define SKIA_EXT_PLATFORM_DEVICE_LINUX_H_ |
7 | 7 |
8 #include "SkDevice.h" | 8 #include "SkDevice.h" |
9 | 9 |
10 namespace skia { | 10 namespace skia { |
11 | 11 |
12 // Blindly copying the mac hierarchy. | 12 // Blindly copying the mac hierarchy. |
13 class PlatformDeviceLinux : public SkDevice { | 13 class PlatformDeviceLinux : public SkDevice { |
14 public: | 14 public: |
15 // Returns if the preferred rendering engine is vectorial or bitmap based. | 15 // Returns if the preferred rendering engine is vectorial or bitmap based. |
16 virtual bool IsVectorial() = 0; | 16 virtual bool IsVectorial() = 0; |
17 | 17 |
| 18 // An X drawable. Avoid pulling in all of Xlib by typedef'ing. |
| 19 typedef unsigned long XDrawable; |
| 20 |
| 21 // Gets an X drawable that maps onto the drawing surface. |
| 22 // This has the potential of being exceedingly slow; drawables are server-side |
| 23 // but skia drawables are client-side, so we must copy all the data back and |
| 24 // forth. Only used for plugin drawing. |
| 25 virtual XDrawable GetXDrawable() = 0; |
| 26 |
18 protected: | 27 protected: |
19 // Forwards |bitmap| to SkDevice's constructor. | 28 // Forwards |bitmap| to SkDevice's constructor. |
20 PlatformDeviceLinux(const SkBitmap& bitmap); | 29 PlatformDeviceLinux(const SkBitmap& bitmap); |
21 }; | 30 }; |
22 | 31 |
23 } // namespace skia | 32 } // namespace skia |
24 | 33 |
25 #endif // SKIA_EXT_PLATFORM_DEVICE_LINUX_H_ | 34 #endif // SKIA_EXT_PLATFORM_DEVICE_LINUX_H_ |
OLD | NEW |