/** {@inheritDoc} */
  @Override
  protected void customizeComponents(
      Map<String, AttributeComponent> name2AttributeComponent, DetailExportStore entity) {
    super.customizeComponents(name2AttributeComponent, entity);
    final JTextField tfdQuantity =
        (JTextField) name2AttributeComponent.get("quantity").getComponent();
    final MoneyComponent mPriceUnit =
        (MoneyComponent) name2AttributeComponent.get("priceUnit").getComponent();
    final MoneyComponent mSubtotal =
        (MoneyComponent) name2AttributeComponent.get("priceSubtotal").getComponent();
    tfdQuantity.addFocusListener(
        new FocusListener() {
          @Override
          public void focusLost(FocusEvent e) {
            mSubtotal.setMoney(
                StoreViewHelper.calculatePriceSubtotal(
                    tfdQuantity.getText(), mPriceUnit.getMoney()));
          }

          @Override
          public void focusGained(FocusEvent e) {}
        });
    mPriceUnit.addChangeListener(
        new ChangeListener() {

          @Override
          public void stateChanged(ChangeEvent e) {
            mSubtotal.setMoney(
                StoreViewHelper.calculatePriceSubtotal(
                    tfdQuantity.getText(), mPriceUnit.getMoney()));
          }
        });
  }