Mercurial > octave
diff libinterp/corefcn/gl-render.h @ 25863:8a6bf76abf31
eliminate some duplicate OpenGL drawing code
* gl-render.h, gl-render.cc (opengl_renderer::draw_zoom_box,
opengl_renderer::draw_zoom_rect): New functions.
* GLCanvas.h, GLCanvas.cc (GLCanvas::m_renderer): New data member.
(GLCanvas::draw, GLCanvas::do_getPixels): Use it instead of creating
renderer locally.
(GLCanvas::drawZoomRect): Delete.
(GLCanvas::drawZoomBox): Set up parameters and call
opengl_renderer::draw_zoom_box to eliminate code duplicated in
__init_fltk__.cc.
* __init_fltk__.cc (OpenGL_fltk::zoom_box_vertex): Delete.
(OpenGL_fltk::overlay): Set up parameters and call
opengl_renderer::draw_zoom_box to eliminate code duplicated in
GLCanvas.cc.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Sat, 08 Sep 2018 08:03:36 -0400 |
parents | e5a73a8c116c |
children | baeb93e9febc |
line wrap: on
line diff
--- a/libinterp/corefcn/gl-render.h Thu Sep 06 16:29:56 2018 -0400 +++ b/libinterp/corefcn/gl-render.h Sat Sep 08 08:03:36 2018 -0400 @@ -68,6 +68,13 @@ virtual graphics_xform get_transform (void) const { return xform; } virtual uint8NDArray get_pixels (int width, int height); + virtual void draw_zoom_box (int width, int height, + int x1, int y1, int x2, int y2, + const Matrix& overlaycolor, + double overlayalpha, + const Matrix& bordercolor, + double borderalpha, double borderwidth); + virtual void finish (void); protected: @@ -153,6 +160,8 @@ int xyz, int ha, int va, int& wmax, int& hmax); + virtual void draw_zoom_rect (int x1, int y1, int x2, int y2); + private: void init_maxlights (void);