Skip to content

Commit 82a9745

Browse files
committed
Gmoccapy: change tool selection behavior in tooltable
- Checkboxes in the first column are only used to select the row(s) to be deleted - Tool to change to is selected by highlighting the row (same as in the offset page) - Current tool in spindle is indicated by a label in the buttonbox at the bottom
1 parent 0401b23 commit 82a9745

2 files changed

Lines changed: 22 additions & 6 deletions

File tree

lib/python/gladevcp/tooledit_widget.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ def match_value_cb(model, path, iter, pathlist):
196196
for path in pathlist:
197197
liststore.remove(liststore.get_iter(path))
198198

199-
# return the selected tool number
199+
# return tool numbers of all rows with checked checkboxes
200200
def get_selected_tool(self):
201201
liststore = self.model
202202
def match_value_cb(model, path, iter, pathlist):
@@ -211,6 +211,15 @@ def match_value_cb(model, path, iter, pathlist):
211211
else:
212212
return(liststore.get_value(liststore.get_iter(pathlist[0]),1))
213213

214+
# return tool number of the highlighted (ie selected) row
215+
def get_selected_row(self):
216+
model, iter = self.view1.get_selection().get_selected()
217+
if iter:
218+
tool = model.get_value(iter, 1)
219+
return tool
220+
else:
221+
return None
222+
214223
def set_selected_tool(self,toolnumber):
215224
try:
216225
treeselection = self.view2.get_selection()

src/emc/usr_intf/gmoccapy/gmoccapy.py

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1985,10 +1985,11 @@ def _init_tooleditor(self):
19851985
btn_save.set_label("")
19861986
btn_save.set_image(self.widgets.img_tool_save)
19871987
btn_save.set_always_show_image(True)
1988-
# Empty space in between
1989-
spacer = Gtk.Label()
1990-
spacer.show_all()
1991-
buttonbox.pack_start(spacer,True,True,0)
1988+
# Create a label for current tool in spindle
1989+
lbl_tool = Gtk.Label()
1990+
self.widgets.tooledit1.lbl_tool = lbl_tool
1991+
lbl_tool.show_all()
1992+
buttonbox.pack_start(lbl_tool,True,True,0)
19921993
# Calculator button
19931994
btn_calculator = Gtk.ToggleButton()
19941995
btn_calculator.set_size_request(56, 56)
@@ -2004,6 +2005,12 @@ def _init_tooleditor(self):
20042005
if col > 0 and col < 16:
20052006
temp = self.widgets.tooledit1.wTree.get_object("cell_%s" % name)
20062007
temp.connect('editing-started', self.on_tool_col_edit_started, col)
2008+
# override 'tooledit_widget' method 'set_selected_tool'
2009+
self.widgets.tooledit1.set_selected_tool = self.set_selected_tool
2010+
2011+
def set_selected_tool(self, toolnumber):
2012+
lbl_tool_text = "Tool loaded: " + str(toolnumber)
2013+
self.widgets.tooledit1.lbl_tool.set_text(lbl_tool_text)
20072014

20082015
def on_tree_navigate_key_press(self, treeview, event, filter):
20092016
keyname = Gdk.keyval_name(event.keyval)
@@ -5409,7 +5416,7 @@ def on_btn_select_tool_by_no_clicked(self, widget, data=None):
54095416

54105417
# set tool with M61 Q? or with T? M6
54115418
def on_btn_selected_tool_clicked(self, widget, data=None):
5412-
tool = self.widgets.tooledit1.get_selected_tool()
5419+
tool = self.widgets.tooledit1.get_selected_row()
54135420
if tool == None:
54145421
message = _("you selected no or more than one tool, the tool selection must be unique")
54155422
self.dialogs.warning_dialog(self, _("Important Warning!"), message)

0 commit comments

Comments
 (0)