Class: SvgWindow
- Defined in:
- ext/ruby/qtruby/examples/painting/svgviewer/svgwindow.rb
Constant Summary collapse
- Native =
0
- OpenGL =
1
- Image =
2
Instance Method Summary collapse
-
#initialize ⇒ SvgWindow
constructor
A new instance of SvgWindow.
- #mouseMoveEvent(event) ⇒ Object
- #mousePressEvent(event) ⇒ Object
- #mouseReleaseEvent(event) ⇒ Object
- #openFile(file) ⇒ Object
- #renderer=(type = Native) ⇒ Object
Constructor Details
#initialize ⇒ SvgWindow
Returns a new instance of SvgWindow.
34 35 36 37 38 39 40 41 |
# File 'ext/ruby/qtruby/examples/painting/svgviewer/svgwindow.rb', line 34 def initialize() super() view = Qt::Widget.new(self) @mousePressPos = Qt::Point.new @scrollBarValuesOnMousePress = Qt::Point.new @renderer = Native setWidget(view) end |
Instance Method Details
#mouseMoveEvent(event) ⇒ Object
70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'ext/ruby/qtruby/examples/painting/svgviewer/svgwindow.rb', line 70 def mouseMoveEvent(event) if @mousePressPos.null? event.ignore return end horizontalScrollBar.value = @scrollBarValuesOnMousePress.x - event.pos.x + @mousePressPos.x verticalScrollBar.value = @scrollBarValuesOnMousePress.y - event.pos.y + @mousePressPos.y horizontalScrollBar.update verticalScrollBar.update event.accept end |
#mousePressEvent(event) ⇒ Object
63 64 65 66 67 68 |
# File 'ext/ruby/qtruby/examples/painting/svgviewer/svgwindow.rb', line 63 def mousePressEvent(event) @mousePressPos = event.pos @scrollBarValuesOnMousePress.rx = horizontalScrollBar.value @scrollBarValuesOnMousePress.ry = verticalScrollBar.value event.accept end |
#mouseReleaseEvent(event) ⇒ Object
83 84 85 86 |
# File 'ext/ruby/qtruby/examples/painting/svgviewer/svgwindow.rb', line 83 def mouseReleaseEvent(event) @mousePressPos = Qt::Point.new event.accept end |
#openFile(file) ⇒ Object
43 44 45 46 |
# File 'ext/ruby/qtruby/examples/painting/svgviewer/svgwindow.rb', line 43 def openFile(file) @currentPath = file self.renderer = @renderer end |
#renderer=(type = Native) ⇒ Object
48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'ext/ruby/qtruby/examples/painting/svgviewer/svgwindow.rb', line 48 def renderer=(type = Native) @renderer = type if @renderer == OpenGL view = SvgGLView.new(@currentPath, self) elsif @renderer == Image view = SvgRasterView.new(@currentPath, self) else view = SvgNativeView.new(@currentPath, self) end setWidget(view) view.show() end |