#include "GLCanvas.h"
Public Types | |
enum | EventMask { KeyPress = 0x01 , KeyRelease = 0x02 } |
Signals | |
void | gh_callback_event (const graphics_handle &h, const std::string &name) |
void | gh_callback_event (const graphics_handle &h, const std::string &name, const octave_value &data) |
void | gh_set_event (const graphics_handle &h, const std::string &name, const octave_value &value) |
void | gh_set_event (const graphics_handle &h, const std::string &name, const octave_value &value, bool notify_toolkit) |
void | gh_set_event (const graphics_handle &h, const std::string &name, const octave_value &value, bool notify_toolkit, bool redraw_figure) |
void | interpreter_event (const octave::fcn_callback &fcn) |
void | interpreter_event (const octave::meth_callback &meth) |
Public Member Functions | |
GLCanvas (octave::base_qobject &oct_qobj, octave::interpreter &interp, const graphics_handle &handle, QWidget *parent) | |
~GLCanvas (void) | |
void | addEventMask (int m) |
void | blockRedraw (bool block=true) |
void | clearEventMask (int m) |
uint8NDArray | do_getPixels (const graphics_handle &handle) |
void | do_print (const QString &file_cmd, const QString &term, const graphics_handle &handle) |
void | draw (const graphics_handle &handle) |
void | drawZoomBox (const QPoint &p1, const QPoint &p2) |
virtual uint8NDArray | getPixels (void) |
void | initializeGL (void) |
void | print (const QString &file_cmd, const QString &term) |
QWidget * | qWidget (void) |
void | redraw (bool sync=false) |
void | resize (int, int, int, int) |
graphics_object | selectFromAxes (const graphics_object &ax, const QPoint &pt) |
void | setCursor (MouseMode mode, std::string fallback, QImage cdata, Matrix hotspot) |
void | setEventMask (int m) |
Static Public Member Functions | |
static Canvas * | create (octave::base_qobject &oct_qobj, octave::interpreter &interp, const graphics_handle &handle, QWidget *parent, const std::string &name) |
Protected Member Functions | |
void | canvasAutoAxes (const graphics_handle &handle) |
bool | canvasKeyPressEvent (QKeyEvent *event) |
bool | canvasKeyReleaseEvent (QKeyEvent *event) |
void | canvasMouseDoubleClickEvent (QMouseEvent *event) |
void | canvasMouseMoveEvent (QMouseEvent *event) |
void | canvasMousePressEvent (QMouseEvent *event) |
void | canvasMouseReleaseEvent (QMouseEvent *event) |
void | canvasPaintEvent (void) |
void | canvasToggleAxes (const graphics_handle &handle) |
void | canvasToggleGrid (const graphics_handle &handle) |
void | canvasWheelEvent (QWheelEvent *event) |
void | keyPressEvent (QKeyEvent *event) |
void | keyReleaseEvent (QKeyEvent *event) |
void | mouseDoubleClickEvent (QMouseEvent *event) |
void | mouseMoveEvent (QMouseEvent *event) |
void | mousePressEvent (QMouseEvent *event) |
void | mouseReleaseEvent (QMouseEvent *event) |
void | paintGL (void) |
void | select_object (graphics_object obj, QMouseEvent *event, graphics_object ¤tObj, graphics_object &axesObj, bool axes_only=false, std::vector< std::string > omit=std::vector< std::string >()) |
void | updateCurrentPoint (const graphics_object &fig, const graphics_object &obj) |
void | updateCurrentPoint (const graphics_object &fig, const graphics_object &obj, QMouseEvent *event) |
void | wheelEvent (QWheelEvent *event) |
Protected Attributes | |
octave::interpreter & | m_interpreter |
octave::base_qobject & | m_octave_qobj |
Private Member Functions | |
bool | begin_rendering (void) |
void | end_rendering (void) |
QCursor | make_cursor (const QString &name, int hot_x=-1, int hot_y=-1) |
Definition at line 59 of file GLCanvas.h.
|
inherited |
octave::GLCanvas::GLCanvas | ( | octave::base_qobject & | oct_qobj, |
octave::interpreter & | interp, | ||
const graphics_handle & | handle, | ||
QWidget * | parent | ||
) |
Definition at line 53 of file GLCanvas.cc.
octave::GLCanvas::~GLCanvas | ( | void | ) |
Definition at line 63 of file GLCanvas.cc.
|
inlineinherited |
Definition at line 75 of file Canvas.h.
References octave::Canvas::m_eventMask.
Referenced by octave::Panel::Panel(), and octave::Figure::update().
|
private |
Definition at line 288 of file GLCanvas.cc.
Referenced by do_getPixels(), and do_print().
|
inherited |
Definition at line 72 of file Canvas.cc.
References octave::Canvas::m_redrawBlocked.
Referenced by octave::Figure::beingDeleted().
|
protectedinherited |
|
protectedinherited |
Definition at line 1034 of file Canvas.cc.
References octave_scalar_map::getfield(), octave::Canvas::gh_callback_event(), octave::Canvas::gh_set_event(), octave::Canvas::KeyPress, octave::Canvas::m_eventMask, octave::Canvas::m_handle, octave::Canvas::m_interpreter, octave::Utils::makeKeyEventStruct(), and octave::Canvas::updateCurrentPoint().
Referenced by keyPressEvent().
|
protectedinherited |
Definition at line 1065 of file Canvas.cc.
References octave::Canvas::gh_callback_event(), octave::Canvas::KeyRelease, octave::Canvas::m_eventMask, octave::Canvas::m_handle, octave::Canvas::m_interpreter, and octave::Utils::makeKeyEventStruct().
Referenced by keyReleaseEvent().
|
protectedinherited |
Definition at line 542 of file Canvas.cc.
References octave::Canvas::canvasMousePressEvent().
Referenced by mouseDoubleClickEvent().
|
protectedinherited |
Definition at line 440 of file Canvas.cc.
References octave::Canvas::gh_callback_event(), octave::Canvas::m_handle, octave::Canvas::m_interpreter, octave::Canvas::m_mouseAxes, octave::Canvas::m_mouseCurrent, octave::Canvas::m_mouseMode, octave::NoMode, octave::pan_mode(), octave::PanMode, octave::Utils::properties(), octave::Canvas::redraw(), octave::RotateMode, octave::Canvas::select_object(), octave::TextMode, octave::qt_graphics_toolkit::toolkitObject(), octave::Canvas::updateCurrentPoint(), octave::Figure::updateStatusBar(), octave::ZoomInMode, and octave::ZoomOutMode.
Referenced by mouseMoveEvent().
|
protectedinherited |
Definition at line 575 of file Canvas.cc.
References octave::autoscale_axes(), octave::button_number(), octave::ContextMenu::executeAt(), octave::Utils::figureSelectionType(), octave::Canvas::gh_callback_event(), octave::Canvas::gh_set_event(), octave::Canvas::m_clickMode, octave::Canvas::m_handle, octave::Canvas::m_interpreter, octave::Canvas::m_mouseAnchor, octave::Canvas::m_mouseAxes, octave::Canvas::m_mouseCurrent, octave::Canvas::m_mouseMode, octave::Canvas::m_rectMode, octave::Figure::mouseMode(), octave::NoMode, octave::PanMode, octave::Utils::properties(), octave::Canvas::redraw(), octave::RotateMode, octave::Canvas::select_object(), octave::TextMode, octave::qt_graphics_toolkit::toolkitObject(), octave::Canvas::updateCurrentPoint(), octave::ZoomInMode, and octave::ZoomOutMode.
Referenced by octave::Canvas::canvasMouseDoubleClickEvent(), and mousePressEvent().
|
protectedinherited |
Definition at line 788 of file Canvas.cc.
References annotation_dialog::get_properties(), octave::Canvas::gh_callback_event(), octave::Canvas::interpreter_event(), octave::Canvas::m_clickMode, octave::Canvas::m_handle, octave::Canvas::m_interpreter, octave::Canvas::m_mouseAnchor, octave::Canvas::m_mouseAxes, octave::Canvas::m_mouseMode, octave::Canvas::m_octave_qobj, octave::Canvas::m_rectMode, max(), min(), octave::NoMode, octave_handle::ok(), ovl(), octave_value_list::prepend(), octave::Utils::properties(), octave::Canvas::qWidget(), octave::Canvas::redraw(), octave::TextMode, octave::Canvas::updateCurrentPoint(), Faddeeva::w(), octave::zoom_mode(), octave::ZoomInMode, and octave::ZoomOutMode.
Referenced by mouseReleaseEvent().
|
protectedinherited |
Definition at line 276 of file Canvas.cc.
References octave::Canvas::draw(), octave::Canvas::drawZoomBox(), octave::Canvas::m_handle, octave::Canvas::m_interpreter, octave::Canvas::m_mouseAnchor, octave::Canvas::m_mouseAxes, octave::Canvas::m_mouseCurrent, octave::Canvas::m_mouseMode, octave::Canvas::m_rectMode, octave::Canvas::m_redrawBlocked, octave_handle::ok(), and octave::ZoomInMode.
Referenced by paintGL().
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
Definition at line 898 of file Canvas.cc.
References octave::Canvas::gh_callback_event(), octave::Canvas::m_handle, octave::Canvas::m_interpreter, octave::Utils::makeScrollEventStruct(), octave::Figure::mouseMode(), octave::NoMode, Array< T, Alloc >::numel(), octave::pan_enabled(), octave::pan_mode(), octave::PanMode, octave::Utils::properties(), octave::Canvas::redraw(), octave::Canvas::selectFromAxes(), octave::qt_graphics_toolkit::toolkitObject(), octave::zoom_enabled(), octave::zoom_mode(), octave::ZoomInMode, and octave::ZoomOutMode.
Referenced by wheelEvent().
|
inlineinherited |
Definition at line 76 of file Canvas.h.
References octave::Canvas::m_eventMask.
Referenced by octave::Figure::update().
|
staticinherited |
Definition at line 1089 of file Canvas.cc.
Referenced by octave::Container::canvas().
|
virtual |
Implements octave::Canvas.
Definition at line 92 of file GLCanvas.cc.
References begin_rendering(), octave::opengl_renderer::draw(), end_rendering(), octave::opengl_renderer::get_pixels(), octave::Canvas::m_interpreter, m_renderer, octave::opengl_renderer::set_device_pixel_ratio(), and octave::opengl_renderer::set_viewport().
|
virtual |
Implements octave::Canvas.
Definition at line 145 of file GLCanvas.cc.
References begin_rendering(), end_rendering(), error(), octave::gl2ps_print(), octave::Canvas::interpreter_event(), m_glfcns, and octave::Canvas::m_interpreter.
|
virtual |
Implements octave::Canvas.
Definition at line 73 of file GLCanvas.cc.
References octave::opengl_renderer::draw(), octave::Canvas::m_interpreter, m_renderer, octave::opengl_renderer::set_device_pixel_ratio(), and octave::opengl_renderer::set_viewport().
|
virtual |
Implements octave::Canvas.
Definition at line 220 of file GLCanvas.cc.
References octave::opengl_renderer::draw_zoom_box(), and m_renderer.
|
private |
Definition at line 319 of file GLCanvas.cc.
Referenced by do_getPixels(), and do_print().
|
inlinevirtualinherited |
Definition at line 89 of file Canvas.h.
References octave::Canvas::do_getPixels(), and octave::Canvas::m_handle.
Referenced by octave::Figure::slotGetPixels().
|
signalinherited |
|
signalinherited |
|
signalinherited |
|
signalinherited |
|
signalinherited |
void octave::GLCanvas::initializeGL | ( | void | ) |
Definition at line 67 of file GLCanvas.cc.
References octave::qopengl_functions::init(), and m_glfcns.
|
signalinherited |
Referenced by octave::Container::canvas(), octave::Canvas::canvasMouseReleaseEvent(), and do_print().
|
signalinherited |
|
protected |
Definition at line 274 of file GLCanvas.cc.
References octave::Canvas::canvasKeyPressEvent().
|
protected |
Definition at line 281 of file GLCanvas.cc.
References octave::Canvas::canvasKeyReleaseEvent().
|
privateinherited |
Definition at line 78 of file Canvas.cc.
References octave::base_qobject::get_resource_manager(), octave::resource_manager::icon(), octave::Canvas::m_octave_qobj, and name.
Referenced by octave::Canvas::setCursor().
|
protected |
Definition at line 244 of file GLCanvas.cc.
References octave::Canvas::canvasMouseDoubleClickEvent().
|
protected |
Definition at line 250 of file GLCanvas.cc.
References octave::Canvas::canvasMouseMoveEvent().
|
protected |
Definition at line 256 of file GLCanvas.cc.
References octave::Canvas::canvasMousePressEvent().
|
protected |
Definition at line 262 of file GLCanvas.cc.
References octave::Canvas::canvasMouseReleaseEvent().
|
protected |
Definition at line 238 of file GLCanvas.cc.
References octave::Canvas::canvasPaintEvent().
|
inlineinherited |
Definition at line 70 of file Canvas.h.
References octave::Canvas::do_print(), and octave::Canvas::m_handle.
Referenced by octave::Figure::print().
|
inlinevirtual |
Implements octave::Canvas.
Definition at line 77 of file GLCanvas.h.
|
inherited |
Definition at line 58 of file Canvas.cc.
References octave::Canvas::qWidget(), and Faddeeva::w().
Referenced by octave::Canvas::canvasMouseMoveEvent(), octave::Canvas::canvasMousePressEvent(), octave::Canvas::canvasMouseReleaseEvent(), octave::Canvas::canvasWheelEvent(), octave::ButtonGroup::redraw(), octave::Figure::redraw(), and octave::Panel::redraw().
Implements octave::Canvas.
Definition at line 73 of file GLCanvas.h.
|
protectedinherited |
Definition at line 340 of file Canvas.cc.
References octave::Canvas::m_interpreter, Array< T, Alloc >::numel(), octave::Utils::properties(), and octave::Canvas::selectFromAxes().
Referenced by octave::Canvas::canvasMouseMoveEvent(), and octave::Canvas::canvasMousePressEvent().
|
virtual |
Implements octave::Canvas.
Definition at line 203 of file GLCanvas.cc.
References m_glfcns, octave::opengl_selector::select(), octave::select_ignore_hittest, and octave::opengl_renderer::set_viewport().
|
inherited |
Definition at line 88 of file Canvas.cc.
References octave::Canvas::make_cursor(), Matrix, octave::NoMode, octave::PanMode, octave::Canvas::qWidget(), octave::RotateMode, octave::SelectMode, octave::TextMode, Faddeeva::w(), octave::ZoomInMode, and octave::ZoomOutMode.
Referenced by octave::Figure::update().
|
inlineinherited |
Definition at line 77 of file Canvas.h.
References octave::Canvas::m_eventMask.
Referenced by octave::Figure::Figure().
|
protectedinherited |
Definition at line 221 of file Canvas.cc.
References octave::Utils::figureCurrentPoint(), octave::Canvas::gh_set_event(), octave::Canvas::m_interpreter, Array< T, Alloc >::numel(), octave::Utils::properties(), octave::Canvas::qWidget(), and Faddeeva::w().
|
protectedinherited |
Definition at line 181 of file Canvas.cc.
References octave::Utils::figureCurrentPoint(), octave::Canvas::gh_set_event(), octave::Canvas::m_interpreter, Array< T, Alloc >::numel(), and octave::Utils::properties().
Referenced by octave::Canvas::canvasKeyPressEvent(), octave::Canvas::canvasMouseMoveEvent(), octave::Canvas::canvasMousePressEvent(), and octave::Canvas::canvasMouseReleaseEvent().
|
protected |
Definition at line 268 of file GLCanvas.cc.
References octave::Canvas::canvasWheelEvent().
|
privateinherited |
Definition at line 166 of file Canvas.h.
Referenced by octave::Canvas::canvasMousePressEvent(), and octave::Canvas::canvasMouseReleaseEvent().
|
privateinherited |
Definition at line 170 of file Canvas.h.
Referenced by octave::Canvas::addEventMask(), octave::Canvas::canvasKeyPressEvent(), octave::Canvas::canvasKeyReleaseEvent(), octave::Canvas::clearEventMask(), and octave::Canvas::setEventMask().
|
private |
Definition at line 94 of file GLCanvas.h.
Referenced by do_print(), initializeGL(), and selectFromAxes().
|
privateinherited |
Definition at line 163 of file Canvas.h.
Referenced by octave::Canvas::canvasKeyPressEvent(), octave::Canvas::canvasKeyReleaseEvent(), octave::Canvas::canvasMouseMoveEvent(), octave::Canvas::canvasMousePressEvent(), octave::Canvas::canvasMouseReleaseEvent(), octave::Canvas::canvasPaintEvent(), octave::Canvas::canvasWheelEvent(), octave::Canvas::getPixels(), and octave::Canvas::print().
|
protectedinherited |
Definition at line 157 of file Canvas.h.
Referenced by octave::Canvas::canvasKeyPressEvent(), octave::Canvas::canvasKeyReleaseEvent(), octave::Canvas::canvasMouseMoveEvent(), octave::Canvas::canvasMousePressEvent(), octave::Canvas::canvasMouseReleaseEvent(), octave::Canvas::canvasPaintEvent(), octave::Canvas::canvasWheelEvent(), do_getPixels(), do_print(), draw(), octave::Canvas::select_object(), and octave::Canvas::updateCurrentPoint().
|
privateinherited |
Definition at line 167 of file Canvas.h.
Referenced by octave::Canvas::canvasMousePressEvent(), octave::Canvas::canvasMouseReleaseEvent(), and octave::Canvas::canvasPaintEvent().
|
privateinherited |
Definition at line 169 of file Canvas.h.
Referenced by octave::Canvas::canvasMouseMoveEvent(), octave::Canvas::canvasMousePressEvent(), octave::Canvas::canvasMouseReleaseEvent(), and octave::Canvas::canvasPaintEvent().
|
privateinherited |
Definition at line 168 of file Canvas.h.
Referenced by octave::Canvas::canvasMouseMoveEvent(), octave::Canvas::canvasMousePressEvent(), and octave::Canvas::canvasPaintEvent().
|
privateinherited |
Definition at line 165 of file Canvas.h.
Referenced by octave::Canvas::canvasMouseMoveEvent(), octave::Canvas::canvasMousePressEvent(), octave::Canvas::canvasMouseReleaseEvent(), and octave::Canvas::canvasPaintEvent().
|
protectedinherited |
Definition at line 156 of file Canvas.h.
Referenced by octave::Canvas::canvasMouseReleaseEvent(), and octave::Canvas::make_cursor().
|
privateinherited |
Definition at line 171 of file Canvas.h.
Referenced by octave::Canvas::canvasMousePressEvent(), octave::Canvas::canvasMouseReleaseEvent(), and octave::Canvas::canvasPaintEvent().
|
privateinherited |
Definition at line 164 of file Canvas.h.
Referenced by octave::Canvas::blockRedraw(), and octave::Canvas::canvasPaintEvent().
|
private |
Definition at line 95 of file GLCanvas.h.
Referenced by do_getPixels(), draw(), and drawZoomBox().