Gscreen - a GTK / Glade / Python based screen
04 Feb 2014 21:42 #43539
by andypugh
It sounds like the arrows are being captured as jog commands by the GUI rather than being passed on to the system.
At a guess it is something in git.linuxcnc.org/gitweb?p=linuxcnc.git;a...33d76c802143;hb=HEAD
but possibly the generic GladeVCP key-forwarder: git.linuxcnc.org/gitweb?p=linuxcnc.git;a...f9fb95c95731;hb=HEAD
Replied by andypugh on topic Gscreen - a GTK / Glade / Python based screen
The shop supervisor noticed something on this build that the up, down arrow keys do not work while in edit mode, making it a little interesting trying to make multiple edits to a long program.
Any Ideas?
It sounds like the arrows are being captured as jog commands by the GUI rather than being passed on to the system.
At a guess it is something in git.linuxcnc.org/gitweb?p=linuxcnc.git;a...33d76c802143;hb=HEAD
but possibly the generic GladeVCP key-forwarder: git.linuxcnc.org/gitweb?p=linuxcnc.git;a...f9fb95c95731;hb=HEAD
Please Log in or Create an account to join the conversation.
13 Feb 2014 23:08 #43829
by LAIR82
Replied by LAIR82 on topic Gscreen - a GTK / Glade / Python based screen
So if I went into this file,
[linuxcnc.git] / src / emc / usr_intf / gscreen / keybindings.py
and modified
45 self.Up = 'YPOS'
46 self.Down = 'YNEG'
47 self.Left = 'XPOS'
48 self.Right = 'XNEG'
to something along the lines of
45 self.Up = 'cursor up'
Would that change the outcome and make the cursor move up, down, left, and right?
Or am I out in left field? ( left field in a different ball diamond probably)
Rick
[linuxcnc.git] / src / emc / usr_intf / gscreen / keybindings.py
and modified
45 self.Up = 'YPOS'
46 self.Down = 'YNEG'
47 self.Left = 'XPOS'
48 self.Right = 'XNEG'
to something along the lines of
45 self.Up = 'cursor up'
Would that change the outcome and make the cursor move up, down, left, and right?
Or am I out in left field? ( left field in a different ball diamond probably)
Rick
Please Log in or Create an account to join the conversation.
14 Feb 2014 12:32 #43842
by cmorley
No.
The self.Up = "YPOS" sets 'Up' (that's the key - the cursor up key) to a binding called YPOS and YPOS calls 'on_keycall_YPOS'
which is a function to move the Y axis in the positive direction.
It's not clear to me what you are trying to do. You want to move a cursor with the cursor keys ? Do you mean the mouse pointer?
Chris M
Replied by cmorley on topic Gscreen - a GTK / Glade / Python based screen
So if I went into this file,
[linuxcnc.git] / src / emc / usr_intf / gscreen / keybindings.py
and modified
45 self.Up = 'YPOS'
46 self.Down = 'YNEG'
47 self.Left = 'XPOS'
48 self.Right = 'XNEG'
to something along the lines of
45 self.Up = 'cursor up'
Would that change the outcome and make the cursor move up, down, left, and right?
Or am I out in left field? ( left field in a different ball diamond probably)
Rick
No.
The self.Up = "YPOS" sets 'Up' (that's the key - the cursor up key) to a binding called YPOS and YPOS calls 'on_keycall_YPOS'
which is a function to move the Y axis in the positive direction.
It's not clear to me what you are trying to do. You want to move a cursor with the cursor keys ? Do you mean the mouse pointer?
Chris M
Please Log in or Create an account to join the conversation.
14 Feb 2014 12:47 - 14 Feb 2014 12:48 #43844
by cmorley
Replied by cmorley on topic Gscreen - a GTK / Glade / Python based screen
Sorry I missed the posts above your question.
Andy is right keyboard jogging is stealing the cursor keys.
in Gscreen look for
Remove the 'True' after the 'return' (all of them) and test.
Do you use any of the keyboard controls?
Chris M
Andy is right keyboard jogging is stealing the cursor keys.
in Gscreen look for
def on_key_event(self,widget, event,state):
CNTRL = SHIFT = ALT = 0
keyname = gtk.gdk.keyval_name(event.keyval)
print("Key %s (%d) was pressed state: %d last: %s" % (keyname, event.keyval,state, self.data.key_event_last))
if event.state & gtk.gdk.CONTROL_MASK:
CNTRL = 1
self.verbosely_print("Control was being held down")
if event.state & gtk.gdk.MOD1_MASK:
ALT = 1
self.verbosely_print("Alt was being held down")
if event.state & gtk.gdk.SHIFT_MASK:
SHIFT = 1
self.verbosely_print("Shift was being held down")
if keyname in( "Shift_L","Shift_R"): return True # ignore shift key press
if self.data.key_event_last[0] == keyname and self.data.key_event_last[1] == state : return True
self.data.key_event_last = keyname,state
try:
method = self.keylookup.convert(keyname)
if method:
try:
self.handler_instance[method](state,SHIFT,CNTRL,ALT)
return True
except:
self[method](state,SHIFT,CNTRL,ALT)
return True
except:
self.show_try_errors()
Remove the 'True' after the 'return' (all of them) and test.
Do you use any of the keyboard controls?
Chris M
Last edit: 14 Feb 2014 12:48 by cmorley.
Please Log in or Create an account to join the conversation.
14 Feb 2014 20:41 #43854
by LAIR82
Replied by LAIR82 on topic Gscreen - a GTK / Glade / Python based screen
Since I use a RIP config, do I need to re-compile after I make those changes? I found that section, made the changes and had no effect.
We don't really use the keyboard for anything other than program editing and changing tool "wear" offsets, lots and lots of tool "wear" offset changes.
But, now that I'm in this deep with it, and have seen these internals, if I change the labeling around for those arrow keys in relation to which axis they jog, in the keybindings.py file will it change which axis jogs? Reason I ask is, I have told the operators of the lathes that the keyboard jog doesn't correlate like it should with the z axis using pg up and pg dwn.
Its always something with me,
Thanks
Rick
We don't really use the keyboard for anything other than program editing and changing tool "wear" offsets, lots and lots of tool "wear" offset changes.
But, now that I'm in this deep with it, and have seen these internals, if I change the labeling around for those arrow keys in relation to which axis they jog, in the keybindings.py file will it change which axis jogs? Reason I ask is, I have told the operators of the lathes that the keyboard jog doesn't correlate like it should with the z axis using pg up and pg dwn.
Its always something with me,
Thanks
Rick
Please Log in or Create an account to join the conversation.
14 Feb 2014 20:50 #43856
by andypugh
However, you have to make sure that you edited the correct file, you probably have an installed file in /usr/ and a rip file in ~/linuxcnc-dev/
Replied by andypugh on topic Gscreen - a GTK / Glade / Python based screen
No, as Python is interpreted not compiled.Since I use a RIP config, do I need to re-compile after I make those changes?
However, you have to make sure that you edited the correct file, you probably have an installed file in /usr/ and a rip file in ~/linuxcnc-dev/
The following user(s) said Thank You: LAIR82
Please Log in or Create an account to join the conversation.
14 Feb 2014 21:04 #43860
by LAIR82
Replied by LAIR82 on topic Gscreen - a GTK / Glade / Python based screen
I made the changes to files in the linuxcnc-dev folder.
I will try again and see if maybe I goofed up somewhere,
Do I need to open the file thru the terminal window using sudo?
Rick
I will try again and see if maybe I goofed up somewhere,
Do I need to open the file thru the terminal window using sudo?
Rick
Please Log in or Create an account to join the conversation.
15 Feb 2014 00:46 #43864
by cmorley
Replied by cmorley on topic Gscreen - a GTK / Glade / Python based screen
You need to re make so the file is copied over to usr/bin.
Yes changing those entries around will change the key binding.
Please let me know how they want it for a lathe and I'll fix it properly layer.
Yes changing those entries around will change the key binding.
Please let me know how they want it for a lathe and I'll fix it properly layer.
The following user(s) said Thank You: LAIR82
Please Log in or Create an account to join the conversation.
15 Feb 2014 02:28 #43867
by LAIR82
Replied by LAIR82 on topic Gscreen - a GTK / Glade / Python based screen
Works like a champ now in edit mode, Thank You
I have it set now as follows to correlate with a back tool slant bed lathe.
arrow left: Z negative
arrow right: Z positive
arrow up: X positive
arrow down: X negative
Thank You guys again for all of the help
Rick
I have it set now as follows to correlate with a back tool slant bed lathe.
arrow left: Z negative
arrow right: Z positive
arrow up: X positive
arrow down: X negative
Thank You guys again for all of the help
Rick
Please Log in or Create an account to join the conversation.
21 Feb 2014 14:54 #44033
by cmorley
Replied by cmorley on topic Gscreen - a GTK / Glade / Python based screen
Just a heads up - I pushed code to have Gscreen check the preference file for key binding info.
By editing the preference file on can change the the bindings of the default key calls to any other key.
jogging, increments, power and estop are defined.
Not as handy as on screen selection but I'm pressed for time right now.
Lair82: If you update linuxcnc again this is the way to reset your keybindings. The last hack i had you use won't work after that.
You'll recognize the names and they are under the heading [KEYCODES]
They are case sensitive - type them exactly.
Chris M
By editing the preference file on can change the the bindings of the default key calls to any other key.
jogging, increments, power and estop are defined.
Not as handy as on screen selection but I'm pressed for time right now.
Lair82: If you update linuxcnc again this is the way to reset your keybindings. The last hack i had you use won't work after that.
You'll recognize the names and they are under the heading [KEYCODES]
They are case sensitive - type them exactly.
Chris M
Please Log in or Create an account to join the conversation.
Time to create page: 0.199 seconds