Sha256: 490ca234bc7f1356f42d085ce14e1197c912c225e8d01c9f10864f990e1219e6

Contents?: true

Size: 1 KB

Versions: 5

Compression:

Stored size: 1 KB

Contents

require 'roby/log/gui/chronicle_view_ui'

class Ui::ChronicleView
    TIME_SCALE_STEP = 2.0
    ZOOM_STEP = 0.25

    attr_reader :display
    def setupUi(display, widget)
	@display = display
	super(widget)

	actionZoom.connect(SIGNAL(:triggered)) do
	    scale = graphics.matrix.m11
	    if scale + ZOOM_STEP > 1
		scale = 1 - ZOOM_STEP
	    end
	    graphics.resetMatrix
	    graphics.scale scale + ZOOM_STEP, scale + ZOOM_STEP
	end
	actionUnZoom.connect(SIGNAL(:triggered)) do
	    scale = graphics.matrix.m11
	    graphics.resetMatrix
	    graphics.scale scale - ZOOM_STEP, scale - ZOOM_STEP
	end
	actionTimeScale.connect(SIGNAL(:triggered)) do
	    current_scale = display.time_scale
	    if current_scale * TIME_SCALE_STEP >= 1000
		display.time_scale = 1000
		actionTimeScale.enabled = false
	    else
		display.time_scale = current_scale * TIME_SCALE_STEP
	    end
	end
	actionTimeUnscale.connect(SIGNAL(:triggered)) do
	    display.time_scale /= TIME_SCALE_STEP
	    actionTimeScale.enabled = true
	end
    end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
roby-0.8.0 lib/roby/log/gui/chronicle_view.rb
roby-0.7.2 lib/roby/log/gui/chronicle_view.rb
roby-0.7.1 lib/roby/log/gui/chronicle_view.rb
roby-0.7 lib/roby/log/gui/chronicle_view.rb
roby-0.7.3 lib/roby/log/gui/chronicle_view.rb