Bonjour.
Je développe en ruby. J'essaye de réodonner une liste (Gtk::TreeView). Visible celà marche correctment. J'aimerai uiliser une méthode lorsque la liste est modifié de cette manière. Je connecte donc le signal "rows-reordered" du Gtk::ListStore associé au Gtk::TreeView. Lors d'un drag&drop, il me semble que le signal n'est pas émis. Ai-je manqué quelque-chose?

Code ruby : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/usr/bin/env ruby
require 'gtk2'
 
store=Gtk::ListStore.new(String)
child=store.append
child[0]='0'
child=store.append
child[0]='1'
child=store.append
child[0]='2'
child=store.append
child[0]='3'
store.signal_connect('rows-reordered'){|model, path, iter, order| p 'ok'; p path; p iter; p order}
 
renderer=Gtk::CellRendererText.new
col=Gtk::TreeViewColumn.new('Test', renderer, :text => 0)
view=Gtk::TreeView.new(store)
view.reorderable=true
view.append_column(col)
 
window=Gtk::Window.new
window.add(view)
window.show_all
 
store.rows_reordered(child.path, child, [0,1,3,2])
 
Gtk.main