aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--include/core/SkDevice.h3
-rw-r--r--include/utils/SkGLCanvas.h38
-rw-r--r--src/core/SkDevice.cpp2
-rw-r--r--src/gl/SkGLCanvas.cpp50
4 files changed, 66 insertions, 27 deletions
diff --git a/include/core/SkDevice.h b/include/core/SkDevice.h
index 0ff3241776..089d6e6f96 100644
--- a/include/core/SkDevice.h
+++ b/include/core/SkDevice.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2008 The Android Open Source Project
+ * Copyright (C) 2010 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -36,6 +36,7 @@ class SkRegion;
*/
class SkDeviceFactory {
public:
+ virtual ~SkDeviceFactory();
virtual SkDevice* newDevice(SkBitmap::Config config, int width, int height,
bool isOpaque, bool isForLayer) = 0;
};
diff --git a/include/utils/SkGLCanvas.h b/include/utils/SkGLCanvas.h
index 87c81ff5a2..eb995271f6 100644
--- a/include/utils/SkGLCanvas.h
+++ b/include/utils/SkGLCanvas.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2006 The Android Open Source Project
+ * Copyright (C) 2010 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,36 +18,22 @@
#define SkGLCanvas_DEFINED
#include "SkCanvas.h"
-#include "SkGLDevice.h"
// Deprecated. You should now use SkGLDevice and SkGLDeviceFactory with
// SkCanvas.
class SkGLCanvas : public SkCanvas {
public:
- SkGLCanvas() : SkCanvas(SkNEW(SkGLDeviceFactory)) {}
-
- static size_t GetTextureCacheMaxCount() {
- return SkGLDevice::GetTextureCacheMaxCount();
- }
- static void SetTextureCacheMaxCount(size_t count) {
- SkGLDevice::SetTextureCacheMaxCount(count);
- }
-
- static size_t GetTextureCacheMaxSize() {
- return SkGLDevice::GetTextureCacheMaxSize();
- }
- static void SetTextureCacheMaxSize(size_t size) {
- SkGLDevice::SetTextureCacheMaxSize(size);
- }
-
- static void DeleteAllTextures() {
- SkGLDevice::DeleteAllTextures();
- }
-
- static void AbandonAllTextures() {
- SkGLDevice::AbandonAllTextures();
- }
+ SkGLCanvas();
+
+ static size_t GetTextureCacheMaxCount();
+ static void SetTextureCacheMaxCount(size_t count);
+
+ static size_t GetTextureCacheMaxSize();
+ static void SetTextureCacheMaxSize(size_t size);
+
+ static void DeleteAllTextures();
+
+ static void AbandonAllTextures();
};
#endif
-
diff --git a/src/core/SkDevice.cpp b/src/core/SkDevice.cpp
index fa43aa254d..12efaacbaf 100644
--- a/src/core/SkDevice.cpp
+++ b/src/core/SkDevice.cpp
@@ -2,6 +2,8 @@
#include "SkDraw.h"
#include "SkRect.h"
+SkDeviceFactory::~SkDeviceFactory() {}
+
SkDevice::SkDevice() {}
SkDevice::SkDevice(const SkBitmap& bitmap) : fBitmap(bitmap) {}
diff --git a/src/gl/SkGLCanvas.cpp b/src/gl/SkGLCanvas.cpp
new file mode 100644
index 0000000000..17e60165a9
--- /dev/null
+++ b/src/gl/SkGLCanvas.cpp
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "SkGLCanvas.h"
+#include "SkGLDevice.h"
+
+SkGLCanvas::SkGLCanvas() : SkCanvas(SkNEW(SkGLDeviceFactory)) {}
+
+// static
+size_t SkGLCanvas::GetTextureCacheMaxCount() {
+ return SkGLDevice::GetTextureCacheMaxCount();
+}
+
+// static
+void SkGLCanvas::SetTextureCacheMaxCount(size_t count) {
+ SkGLDevice::SetTextureCacheMaxCount(count);
+}
+
+// static
+size_t SkGLCanvas::GetTextureCacheMaxSize() {
+ return SkGLDevice::GetTextureCacheMaxSize();
+}
+
+// static
+void SkGLCanvas::SetTextureCacheMaxSize(size_t size) {
+ SkGLDevice::SetTextureCacheMaxSize(size);
+}
+
+// static
+void SkGLCanvas::DeleteAllTextures() {
+ SkGLDevice::DeleteAllTextures();
+}
+
+// static
+void SkGLCanvas::AbandonAllTextures() {
+ SkGLDevice::AbandonAllTextures();
+}