GripperCoupleNodeView.java 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package urgrip.programnodes;
  2. import com.ur.urcap.api.contribution.ContributionProvider;
  3. import com.ur.urcap.api.contribution.program.swing.SwingProgramNodeView;
  4. import com.ur.urcap.api.domain.userinteraction.keyboard.KeyboardNumberInput;
  5. import javax.swing.*;
  6. import java.awt.*;
  7. import java.awt.event.MouseAdapter;
  8. import java.awt.event.MouseEvent;
  9. public class GripperCoupleNodeView implements SwingProgramNodeView<GripperCoupleNodeContribution>{
  10. private final Style style;
  11. private JTextField jtfPosition, jtfSpeed;
  12. private JRadioButton coupleButton, decoubleButton;
  13. public GripperCoupleNodeView(Style style) {
  14. this.style = style;
  15. }
  16. @Override
  17. public void buildUI(JPanel jPanel, final ContributionProvider<GripperCoupleNodeContribution> provider) {
  18. jPanel.setLayout(new BoxLayout(jPanel, BoxLayout.Y_AXIS));
  19. jPanel.add(createVerticalSpacing(style.getVerticalSpacing()));
  20. jPanel.add(createInput(provider));
  21. jPanel.add(createVerticalSpacing(style.getExtraLargeVerticalSpacing()));
  22. }
  23. private Box createInput(final ContributionProvider<GripperCoupleNodeContribution> provider) {
  24. Box inputBox = Box.createHorizontalBox();
  25. inputBox.setAlignmentX(Component.LEFT_ALIGNMENT);
  26. inputBox.add(createHorizontalSpacing());
  27. coupleButton = new JRadioButton("Couple");
  28. decoubleButton = new JRadioButton("Decouple");
  29. ButtonGroup group = new ButtonGroup();
  30. group.add(coupleButton);
  31. group.add(decoubleButton);
  32. inputBox.add(coupleButton);
  33. inputBox.add(decoubleButton);
  34. return inputBox;
  35. }
  36. private Component createVerticalSpacing(int height) {
  37. return Box.createRigidArea(new Dimension(0, height));
  38. }
  39. private Component createHorizontalSpacing() {
  40. return Box.createRigidArea(new Dimension(style.getHorizontalSpacing(), 0));
  41. }
  42. public void setAction(String which) {
  43. if(which.equals("COUPLE"))
  44. coupleButton.setSelected(true);
  45. else
  46. decoubleButton.setSelected(true);
  47. }
  48. public String getAction() {
  49. if(coupleButton.isSelected()) return "COUPLE";
  50. return "DECOUPLE";
  51. }
  52. }