/**
   * Creates the "Translation" input tabbed page
   *
   * @param tabbedPane the tabbed pane to add the ranslation tab to.
   */
  private void getTranslationInput(JTabbedPane tabbedPane) {
    JPanel translationInput = new JPanel(new GridBagLayout());

    GridBagConstraints gbc = new GridBagConstraints();
    gbc.gridwidth = REMAINDER;
    gbc.fill = BOTH;
    gbc.anchor = NORTHWEST;
    gbc.weighty = 1.0;

    chainwheelTranslationInput.addContentChangeListener(this);
    translationInput.add(chainwheelTranslationInput, gbc);

    sprocketTranslationInput.addContentChangeListener(this);
    translationInput.add(sprocketTranslationInput, gbc);

    generalTranslationInput.addContentChangeListener(this);
    translationInput.add(generalTranslationInput, gbc);

    driveTrainDrawing.addContentChangeListener(this);
    driveTrainDrawing.addContentChangeListener(zoomInput);
    driveTrainOutput.addContentChangeListener(this);

    tabbedPane.addTab(
        Messages.getString("TransmissionDetails"),
        null,
        translationInput,
        Messages.getString("TransmissionDetailsTip"));
  }
 /** Support method to notify children of any changes to model or style. */
 public void update() {
   generalTranslationInput.update();
   generalGeometryInput.update();
   driveTrainDrawing.update();
   driveTrainOutput.update();
   chainwheelTranslationInput.update();
   chainwheelGeometryInput.update();
   sprocketTranslationInput.update();
   sprocketGeometryInput.update();
 }
 /**
  * Sets the model and notofies children to reflect the changes.
  *
  * @param model The model to set.
  */
 public void setModel(DriveTrain model) {
   this.model = model;
   generalTranslationInput.setModel(model);
   generalGeometryInput.setModel(model);
   chainwheelTranslationInput.setModel(model.getChainwheels());
   chainwheelGeometryInput.setModel(model.getChainwheels());
   sprocketTranslationInput.setModel(model.getSprockets());
   sprocketGeometryInput.setModel(model.getSprockets());
   driveTrainDrawing.setModel(model);
   driveTrainOutput.setModel(model);
   update();
   driveTrainOutput.structureChanged();
 }