All Downloads are FREE. Search and download functionalities are using the official Maven repository.

jive3.DefaultPanel Maven / Gradle / Ivy

The newest version!
package jive3;

import jive.JiveUtils;

import javax.swing.*;
import javax.swing.border.Border;
import java.awt.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

class DefaultPanel extends JPanel implements ActionListener {

  private JEditorPane value;
  private JScrollPane valueView;
  private JPanel      btnPanel;
  private JButton     refreshButton;
  private TangoNode   src = null;
  private int size;

  DefaultPanel()  {

    setLayout(new BorderLayout());
    value = new JEditorPane();
    value.setEditable(false);
    value.setDragEnabled(true);
    value.setBorder(BorderFactory.createLoweredBevelBorder());
    value.setContentType("text/html");
    valueView = new JScrollPane(value);
    Border b = BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(),"...");
    valueView.setBorder(b);
    add(valueView,BorderLayout.CENTER);
    btnPanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
    refreshButton = new JButton("Refresh");
    refreshButton.addActionListener(this);
    btnPanel.add(refreshButton);
    add(btnPanel,BorderLayout.SOUTH);

  }

  public void actionPerformed(ActionEvent e) {
    Object src = e.getSource();
    if( src==refreshButton ) {
      refreshValue();
    }
  }

  void setSource(TangoNode src,int size) {
    this.src = src;
    this.size = size;
    refreshValue();
  }

  public void setText(String str) {

    StringBuffer strBuff = new StringBuffer();

    strBuff.append("\n" +
                   "
\n");
    strBuff.append(str);
    strBuff.append("
\n"); value.setText(strBuff.toString()); } private void refreshValue() { if (src != null) { setText(src.getValue()); value.setCaretPosition(0); String title = src.getTitle(); if(size>1) title += " [" + size + " items]"; Border b = BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), title); valueView.setBorder(b); } else { setText(""); value.setCaretPosition(0); Border b = BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), "..."); valueView.setBorder(b); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy