Quote:
Originally Posted by SamCarlberg
Do you have parameter presets? If a command takes parameters, a button will be generated for each preset. If it doesn't, that's a bug
|
No I did not have presets. This maybe why the buttons did not generate.
I have been testing the update and the issues I have expressed are fixed. Found a new one.
When adding a parameter to a command the private double m_? does not generate if the command already has been created.
ie.
1 create "my Command" with parameter a,b and presets 0,1
2 The myCommand is created with private double m_a; and m_b;.
Code:
public class myCommand extends Command {
// BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=VARIABLE_DECLARATIONS
private double m_a;
private double m_b;
// END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=VARIABLE_DECLARATIONS
// BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=CONSTRUCTOR
public myCommand(double a, double b) {
// END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=CONSTRUCTOR
// BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=VARIABLE_SETTING
m_a = a;
m_b = b;
// END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=VARIABLE_SETTING
// BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=REQUIRES
// END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=REQUIRES
}
3 The IO class created a new smartdashboard item adding the button with presets 0,1
Code:
SmartDashboard.putData("my Command: pre", new myCommand(0,1));
4 add a parameter to myCommand in robot builder [c] and a value to the presets for it [2]
5 The myCommand in eclipse does not add the private double m_c;
Still=
Code:
public class myCommand extends Command {
// BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=VARIABLE_DECLARATIONS
private double m_a;
private double m_b;
// END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=VARIABLE_DECLARATIONS
// BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=CONSTRUCTOR
public myCommand(double a, double b) {
// END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=CONSTRUCTOR
// BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=VARIABLE_SETTING
m_a = a;
m_b = b;
// END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=VARIABLE_SETTING
// BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=REQUIRES
// END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=REQUIRES
}
6 the IO class DOES have the preset added to the smartdashboard entery [0,1,2] but is errored because myCommand only has 2 parameters.
Code:
SmartDashboard.putData("my Command: pre", new myCommand(0,1,2));