Kiln » TortoiseHg » TortoiseHg
Clone URL:  
Pushed to one repository · View In Graph Contained in 0.7, 0.7.1, and 0.7.2

hgignore: use button instead of context menu to delete masks

This is less error prone.

Changeset a5bf6f6e90cf

Parent 39e1455b45cf

by Steve Borho

Changes to one file · Browse files at a5bf6f6e90cf Showing diff from parent 39e1455b45cf Diff from another changeset...

Change 1 of 2 Show Entire File hggtk/​hgignore.py Stacked
 
76
77
78
79
80
81
82
83
84
85
 
 
86
87
88
89
90
91
92
 
 
 
 
 
 
93
94
95
 
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
 
 
 
 
142
143
144
 
76
77
78
 
79
80
81
82
83
84
85
86
87
88
89
90
 
 
 
91
92
93
94
95
96
97
98
99
 
117
118
119
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
120
121
122
123
124
125
126
@@ -76,20 +76,24 @@
  frame = gtk.Frame('Filters')   hbox.pack_start(frame, True, True, 4)   pattree = gtk.TreeView() - pattree.connect('button-press-event', self.tree_button_press)   pattree.set_reorderable(False)   sel = pattree.get_selection()   sel.set_mode(gtk.SELECTION_SINGLE)   sel.connect("changed", self.pattern_rowchanged)   col = gtk.TreeViewColumn('Patterns', gtk.CellRendererText(), text=0)   pattree.append_column(col) + pattree.set_headers_visible(False) + self.pattree = pattree   scrolledwindow = gtk.ScrolledWindow()   scrolledwindow.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)   scrolledwindow.set_border_width(4)   scrolledwindow.add(pattree) - pattree.set_headers_visible(False) - self.pattree = pattree - frame.add(scrolledwindow) + remove = gtk.Button("Remove Selected") + remove.connect("pressed", self.remove_pressed, sel) + vbox = gtk.VBox() + vbox.pack_start(scrolledwindow, True, True, 2) + vbox.pack_start(remove, False, False, 2) + frame.add(vbox)     frame = gtk.Frame('Unknown Files')   hbox.pack_start(frame, True, True, 4) @@ -113,32 +117,10 @@
  glob_entry.grab_focus()   self.connect('map_event', self._on_window_map_event)   - def tree_button_press(self, widget, event): - if event.button != 3: - return False - if event.state & (gtk.gdk.SHIFT_MASK | gtk.gdk.CONTROL_MASK): - return False - - path = widget.get_path_at_pos(int(event.x), int(event.y))[0] - selection = widget.get_selection() - rows = selection.get_selected_rows() - if path[0] not in rows[1]: - selection.unselect_all() - selection.select_path(path[0]) - - menu = gtk.Menu() - menuitem = gtk.MenuItem('Remove', True) - menuitem.connect('activate', self.remove_ignore_line, path[0]) - menuitem.set_border_width(1) - menu.append(menuitem) - menu.show_all() - menu.popup(None, None, None, 0, 0) - return True - - def remove_ignore_line(self, menuitem, linenum): - model = self.pattree.get_model() - del model[linenum] - del self.ignorelines[linenum] + def remove_pressed(self, widget, selection): + model, rows = selection.get_selected_rows() + del model[rows[0]] + del self.ignorelines[rows[0][0]]   self.write_ignore_lines()   self.refresh()