class Ui::RelationsConfig
Constants
- DELAYED_UPDATE_TIMEOUT
The amount of time we wait before triggering an update on the display. This is meant to avoid unnecessary updates (for instance for configuration parameters in textboxes)
Attributes
current_color[R]
delegate[R]
display[R]
model[R]
relation_color[R]
relation_item[R]
Public Class Methods
new(widget, display)
click to toggle source
Calls superclass method
# File lib/roby/gui/relations_view/relations_config.rb, line 200 def initialize(widget, display) super() if !system("dot", "-V") raise "the 'dot' tool is unavailable" end setupUi(widget, display) end
Public Instance Methods
delayed_update()
click to toggle source
# File lib/roby/gui/relations_view/relations_config.rb, line 278 def delayed_update @delayed_update_timer.start(DELAYED_UPDATE_TIMEOUT) end
setupUi(widget, display)
click to toggle source
Calls superclass method
# File lib/roby/gui/relations_view/relations_config.rb, line 209 def setupUi(widget, display) super(widget) @display = display @model = RelationConfigModel.new(display) @delegate = RelationDelegate.new relations.set_item_delegate @delegate relations.header.resize_mode = Qt::HeaderView::Stretch relations.model = @model relations.set_expanded model.task_root_index, true relations.set_expanded model.event_root_index, true @layout_model = LayoutMethodModel.new(display, layoutMethod) Qt::Object.connect(layoutMethod, SIGNAL("currentIndexChanged(int)"), @layout_model, SLOT("selected()")) layoutMethod.model = @layout_model showOwnership.checked = display.show_ownership showOwnership.connect(SIGNAL('clicked(bool)')) do |state| display.show_ownership = state display.update end showFinalized.checked = !display.hide_finalized showFinalized.connect(SIGNAL('clicked(bool)')) do |state| display.hide_finalized = !state display.update end removedPrefixes.setText(display.removed_prefixes.to_a.join(",")) removedPrefixes.connect(SIGNAL('textChanged(QString)')) do |removed_prefixes| display.removed_prefixes = removed_prefixes.split(',') delayed_update end hiddenLabels.setText(display.hidden_labels.to_a.join(",")) hiddenLabels.connect(SIGNAL('textChanged(QString)')) do |hidden_labels| display.hidden_labels = hidden_labels.split(',') delayed_update end if display.display_policy == :explicit displayExplicit.checked = true elsif display.display_policy == :emitters displayEmitters.checked = true elsif display.display_policy == :emitters_and_parents displayEmittersAndParents.checked = true end displayExplicit.connect(SIGNAL('clicked()')) do display.display_policy = :explicit delayed_update end displayEmitters.connect(SIGNAL('clicked()')) do display.display_policy = :emitters delayed_update end displayEmittersAndParents.connect(SIGNAL('clicked()')) do display.display_policy = :emitters_and_parents delayed_update end @delayed_update_timer = Qt::Timer.new(display) @delayed_update_timer.setSingleShot(true) @delayed_update_timer.connect(SIGNAL('timeout()')) do display.update end end