/** Adds the required focus listeners to the fields. */
  private void addFocusListeners() {
    FocusListener l =
        new FocusListener() {
          public void focusGained(FocusEvent e) {
            lastFocusComponent = e.getComponent();
          }

          public void focusLost(FocusEvent e) {}
        };

    bServer.addFocusListener(l);
    bImport.addFocusListener(l);
    lastFocusComponent = bServer;
  }
Exemple #2
0
  /** @param buttonPanel */
  protected void installFocusHandlers(JPanel buttonPanel) {
    // disable buttons when this "frame" is defocused
    FocusListener focusListener =
        new FocusListener() {
          public void focusGained(FocusEvent e) {
            moveButton.setEnabled(true);
            closeButton.setEnabled(true);
          }

          public void focusLost(FocusEvent e) {
            moveButton.setEnabled(false);
            closeButton.setEnabled(false);
          }
        };
    textarea.addFocusListener(focusListener);
    // have to put the focus listener on every component else it doesn't work every time
    buttonPanel.addFocusListener(focusListener);
    moveButton.addFocusListener(focusListener);
    closeButton.addFocusListener(focusListener);
  }
Exemple #3
0
  public elementWrapper(String titleText, Component comp, vectorPanel parent, boolean editable) {
    if (comp == null) {
      throw new IllegalArgumentException("Error: Component parameter is null");
    }

    this.titleText = titleText;
    this.vp = parent;
    this.editable = editable;
    this.my_component = comp;

    debug = vp.gc.debug;

    if (debug) {
      System.err.println("Adding new elementWrapper");
    }

    setLayout(new BorderLayout());

    buttonPanel = new JPanel();
    buttonPanel.setOpaque(true);

    /*
    // set the border/button panel color based on the
    // object's validity

    checkValidation();

    */

    buttonPanel.setBackground(ClientColor.vectorTitles);
    setBorder(vp.wp.eWrapperBorder);

    buttonPanel.setForeground(ClientColor.vectorFore);
    buttonPanel.setLayout(new BorderLayout());

    if (editable) {
      remove = new JButton(vp.wp.removeImageIcon);
      remove.setOpaque(false);
      remove.setMargin(new Insets(0, 0, 0, 0));
      remove.setBorder(vp.wp.eWrapperButtonBorder);
      remove.setBorderPainted(false);

      // "Delete this element"
      remove.setToolTipText(ts.l("init.remove_tooltip"));
      remove.setContentAreaFilled(false);
      remove.addActionListener(this);
      remove.addFocusListener(this);
    }

    if (comp instanceof containerPanel) {
      if (titleText != null) {
        title = new JLabel(titleText);
      } else {
        // "Component"
        title = new JLabel(ts.l("init.default_label"));
      }

      title.setForeground(Color.white);
      title.addMouseListener(this);

      expand = new JButton(vp.wp.closeIcon);
      expand.setPressedIcon(vp.wp.closePressedIcon);
      expand.setMargin(new Insets(0, 0, 0, 0));
      expand.setBorder(vp.wp.eWrapperButtonBorder);
      expand.setBorderPainted(false);

      // "Expand this element"
      expand.setToolTipText(ts.l("global.expand_tooltip"));
      expand.setOpaque(false);
      expand.addActionListener(this);
      expand.addFocusListener(this);
      expand.setContentAreaFilled(false);

      buttonPanel.add("West", expand);
      buttonPanel.add("Center", title);

      if (editable) {
        buttonPanel.add("East", remove);
      }
    } else {
      if (titleText != null) {
        buttonPanel.add("West", new JLabel(titleText));
      }

      buttonPanel.add("Center", comp);

      if (editable) {
        buttonPanel.add("East", remove);
      }
    }

    add("North", buttonPanel);
  }