OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2012 Google Inc. | 3 * Copyright 2012 Google Inc. |
4 * | 4 * |
5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
7 */ | 7 */ |
8 | 8 |
9 | 9 |
10 #include "SkGLWidget.h" | 10 #include "SkGLWidget.h" |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
65 desc.fOrigin = kBottomLeft_GrSurfaceOrigin; | 65 desc.fOrigin = kBottomLeft_GrSurfaceOrigin; |
66 SkAutoTUnref<GrRenderTarget> curRenderTarget(fCurContext->wrapBackendRenderT
arget(desc)); | 66 SkAutoTUnref<GrRenderTarget> curRenderTarget(fCurContext->wrapBackendRenderT
arget(desc)); |
67 fGpuDevice.reset(SkGpuDevice::Create(curRenderTarget.get(), | 67 fGpuDevice.reset(SkGpuDevice::Create(curRenderTarget.get(), |
68 SkSurfaceProps(SkSurfaceProps::kLegacyF
ontHost_InitType))); | 68 SkSurfaceProps(SkSurfaceProps::kLegacyF
ontHost_InitType))); |
69 fCanvas.reset(new SkCanvas(fGpuDevice)); | 69 fCanvas.reset(new SkCanvas(fGpuDevice)); |
70 } | 70 } |
71 | 71 |
72 void SkGLWidget::resizeGL(int w, int h) { | 72 void SkGLWidget::resizeGL(int w, int h) { |
73 SkASSERT(w == this->width() && h == this->height()); | 73 SkASSERT(w == this->width() && h == this->height()); |
74 this->createRenderTarget(); | 74 this->createRenderTarget(); |
75 draw(); | |
76 } | 75 } |
77 | 76 |
78 void SkGLWidget::paintGL() { | 77 void SkGLWidget::paintGL() { |
79 if (!this->isHidden() && fCanvas) { | 78 if (!this->isHidden() && fCanvas) { |
80 fDebugger->draw(fCanvas.get()); | 79 fDebugger->draw(fCanvas.get()); |
81 // TODO(chudy): Implement an optional flush button in Gui. | 80 // TODO(chudy): Implement an optional flush button in Gui. |
82 fCanvas->flush(); | 81 fCanvas->flush(); |
83 emit drawComplete(); | 82 emit drawComplete(); |
84 } | 83 } |
85 } | 84 } |
86 | 85 |
87 GrBackendRenderTargetDesc SkGLWidget::getDesc(int w, int h) { | 86 GrBackendRenderTargetDesc SkGLWidget::getDesc(int w, int h) { |
88 GrBackendRenderTargetDesc desc; | 87 GrBackendRenderTargetDesc desc; |
89 desc.fWidth = SkScalarRoundToInt(this->width()); | 88 desc.fWidth = SkScalarRoundToInt(this->width()); |
90 desc.fHeight = SkScalarRoundToInt(this->height()); | 89 desc.fHeight = SkScalarRoundToInt(this->height()); |
91 desc.fConfig = kSkia8888_GrPixelConfig; | 90 desc.fConfig = kSkia8888_GrPixelConfig; |
92 GR_GL_GetIntegerv(fCurIntf, GR_GL_SAMPLES, &desc.fSampleCnt); | 91 GR_GL_GetIntegerv(fCurIntf, GR_GL_SAMPLES, &desc.fSampleCnt); |
93 GR_GL_GetIntegerv(fCurIntf, GR_GL_STENCIL_BITS, &desc.fStencilBits); | 92 GR_GL_GetIntegerv(fCurIntf, GR_GL_STENCIL_BITS, &desc.fStencilBits); |
94 GrGLint buffer; | 93 GrGLint buffer; |
95 GR_GL_GetIntegerv(fCurIntf, GR_GL_FRAMEBUFFER_BINDING, &buffer); | 94 GR_GL_GetIntegerv(fCurIntf, GR_GL_FRAMEBUFFER_BINDING, &buffer); |
96 desc.fRenderTargetHandle = buffer; | 95 desc.fRenderTargetHandle = buffer; |
97 | 96 |
98 return desc; | 97 return desc; |
99 } | 98 } |
100 | 99 |
101 #endif | 100 #endif |
OLD | NEW |