📄 superdemo.java
字号:
// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov Date: 8/14/2005 10:56:19 AM
// Home Page : http://members.fortunecity.com/neshkov/dj.html - Check often for new version!
// Decompiler options: packimports(3)
package org.jfree.chart.demo;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.io.PrintStream;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import javax.swing.*;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;
import javax.swing.tree.*;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
// Referenced classes of package demo:
// MemoryUsageDemo, DemoDescription
public class SuperDemo extends ApplicationFrame
implements ActionListener, TreeSelectionListener
{
static class DisplayDemo
implements Runnable
{
public void run()
{
try
{
Class class1 = Class.forName(demoDescription.getClassName());
Method method = class1.getDeclaredMethod("createDemoPanel", null);
JPanel jpanel = (JPanel)method.invoke(null, null);
app.chartContainer.removeAll();
app.chartContainer.add(jpanel);
app.displayPanel.validate();
String s = class1.getName();
String s1 = s;
int i = s.lastIndexOf('.');
if(i > 0)
s1 = s.substring(i + 1);
s1 = s1 + ".html";
app.displayDescription(s1);
}
catch(ClassNotFoundException classnotfoundexception)
{
classnotfoundexception.printStackTrace();
}
catch(NoSuchMethodException nosuchmethodexception)
{
nosuchmethodexception.printStackTrace();
}
catch(InvocationTargetException invocationtargetexception)
{
invocationtargetexception.printStackTrace();
}
catch(IllegalAccessException illegalaccessexception)
{
illegalaccessexception.printStackTrace();
}
}
private SuperDemo app;
private DemoDescription demoDescription;
public DisplayDemo(SuperDemo superdemo, DemoDescription demodescription)
{
app = superdemo;
demoDescription = demodescription;
}
}
public SuperDemo(String s)
{
super(s);
setContentPane(createContent());
setJMenuBar(createMenuBar());
}
private JComponent createContent()
{
JPanel jpanel = new JPanel(new BorderLayout());
JTabbedPane jtabbedpane = new JTabbedPane();
JPanel jpanel1 = new JPanel(new BorderLayout());
jpanel1.setBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4));
JSplitPane jsplitpane = new JSplitPane(1);
JTree jtree = new JTree(createTreeModel());
jtree.addTreeSelectionListener(this);
jsplitpane.setLeftComponent(new JScrollPane(jtree));
jsplitpane.setRightComponent(createChartDisplayPanel());
jpanel1.add(jsplitpane);
jtabbedpane.add("Demos", jpanel1);
MemoryUsageDemo memoryusagedemo = new MemoryUsageDemo(0x493e0);
//(new MemoryUsageDemo.DataGenerator(memoryusagedemo, 1000)).start();
(memoryusagedemo. new DataGenerator(100)).start();
jtabbedpane.add("Memory Usage", memoryusagedemo);
jtabbedpane.add("Source Code", createSourceCodePanel());
jtabbedpane.setBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4));
jpanel.add(jtabbedpane);
return jpanel;
}
private JMenuBar createMenuBar()
{
JMenuBar jmenubar = new JMenuBar();
JMenu jmenu = new JMenu("File", true);
jmenu.setMnemonic('F');
JMenuItem jmenuitem = new JMenuItem("Exit", 120);
jmenuitem.setActionCommand("EXIT");
jmenuitem.addActionListener(this);
jmenu.add(jmenuitem);
jmenubar.add(jmenu);
return jmenubar;
}
private JPanel createSourceCodePanel()
{
JPanel jpanel = new JPanel(new BorderLayout());
jpanel.setBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4));
JEditorPane jeditorpane = new JEditorPane();
jeditorpane.setEditable(false);
java.net.URL url = (org.jfree.chart.demo.SuperDemo.class).getResource("source.html");
if(url != null)
try
{
jeditorpane.setPage(url);
}
catch(IOException ioexception)
{
System.err.println("Attempted to read a bad URL: " + url);
}
else
System.err.println("Couldn't find file: source.html");
JScrollPane jscrollpane = new JScrollPane(jeditorpane);
jscrollpane.setVerticalScrollBarPolicy(20);
jscrollpane.setPreferredSize(new Dimension(250, 145));
jscrollpane.setMinimumSize(new Dimension(10, 10));
jpanel.add(jscrollpane);
return jpanel;
}
public void actionPerformed(ActionEvent actionevent)
{
String s = actionevent.getActionCommand();
if(s.equals("EXIT"))
attemptExit();
}
private void attemptExit()
{
String s = "Confirm";
String s1 = "Are you sure you want to exit the demo?";
int i = JOptionPane.showConfirmDialog(this, s1, s, 0, 3);
if(i == 0)
{
dispose();
System.exit(0);
}
}
private JPanel createChartDisplayPanel()
{
displayPanel = new JPanel(new BorderLayout());
chartContainer = new JPanel(new BorderLayout());
chartContainer.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4), BorderFactory.createLineBorder(Color.black)));
chartContainer.add(createNoDemoSelectedPanel());
descriptionContainer = new JPanel(new BorderLayout());
descriptionContainer.setBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4));
descriptionContainer.setPreferredSize(new Dimension(600, 140));
descriptionPane = new JTextPane();
descriptionPane.setEditable(false);
JScrollPane jscrollpane = new JScrollPane(descriptionPane, 20, 31);
descriptionContainer.add(jscrollpane);
displayDescription("select.html");
JSplitPane jsplitpane = new JSplitPane(0);
jsplitpane.setTopComponent(chartContainer);
jsplitpane.setBottomComponent(descriptionContainer);
displayPanel.add(jsplitpane);
jsplitpane.setDividerLocation(0.75D);
return displayPanel;
}
private TreeModel createTreeModel()
{
DefaultMutableTreeNode defaultmutabletreenode = new DefaultMutableTreeNode("JFreeChart");
defaultmutabletreenode.add(createPieChartsNode());
defaultmutabletreenode.add(createBarChartsNode());
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -