![]() |
Reassigning button.whenPressed during teleop
Hi,
I think this is a straight-up technical question. How can we reassign the command that is assigned to button.whenPressed during teleop? We tried something like : Code:
CommandBase.oi.myPublicButton.whenPressed(new myOtherCommand())Tia - mp |
Re: Reassigning button.whenPressed during teleop
I don't think it's possible. Button.whenPressed() calls Trigger.whenActive(), which adds a ButtonScheduler to the Scheduler's internal list of buttons. I don't think there's a way to remove it. I believe there is an alternative, though.
Custom buttons are pretty easy to make, they just need a get() method. So, if you want an easy way to disable a certain button binding, have a variable: Code:
Button doubleBoundButton; // this is the button you want to trigger differently at different timesCode:
initialBinding.whenPressed(new DoSomething());Code:
initialBindingEnabled = !initialBindingEnabled; |
Re: Reassigning button.whenPressed during teleop
Wow -that is some pretty snappy code! I have never seen the override of a get in a new before, but I'm a relative novice at java. Can any public method be overridden for an instance of a class in Java? I will give it a try tomorrow night.
Btw, do you have a link to the source of the wpilib? There are times when I would like to understand more about what is going on behind the scenes. Thanks - Mike Parker - programming mentor, team 102 |
Re: Reassigning button.whenPressed during teleop
Quote:
lil something i made, allows you to assign different commands to different modes than set the mode of the button (e.g. set A to lock for drive, B for climb in climbing than set the mode of all the buttons to 2 when u want to climb) Button source code is in C:\Users\yourname\sunspotfrcsdk\lib\wpilibj.src.zi p to your override question.... Yeah you can override any public method. You can also use super.(method) to refer to the method that you were overriding |
Re: Reassigning button.whenPressed during teleop
Quote:
Quote:
|
Re: Reassigning button.whenPressed during teleop
Great! Thanks for the pointer!
|
Re: Reassigning button.whenPressed during teleop
Quote:
|
Re: Reassigning button.whenPressed during teleop
Quote:
|
Re: Reassigning button.whenPressed during teleop
Quote:
|
| All times are GMT -5. The time now is 22:35. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi