package jas2.swingstudio.adaptor;
import java.util.*;
import java.io.File;
import javax.swing.*;
import jas2.swingstudio.*;
import jas2.util.OnScreenPopupMenu;
public class ProgramTreeAdaptor extends TreeAdaptor
{
final public void onDoubleClick() throws JASException
{
final String[] path = getTreeItem().path;
final String fileName = path[path.length - 1].concat(".java");
final Enumeration e = JASSourcePath.create().elements();
final File f = JASSourcePath.create().findFile(fileName);
if (f != null)
{
try
{
JavaAnalysisStudio.getApp().openFile(f);
}
catch (final FileError x)
{
JavaAnalysisStudio.getApp().error("File error", x);
}
catch (final java.net.MalformedURLException x)
{
// Cant really happen
JavaAnalysisStudio.getApp().error("File error", x);
}
}
else
{
JOptionPane.showMessageDialog(JavaAnalysisStudio.getApp().getFrame(),
"File "+ fileName +" not found in source path.", "File not found",
JOptionPane.ERROR_MESSAGE);
}
}
final protected JPopupMenu getPopupMenu()
{
final JPopupMenu menu = new OnScreenPopupMenu();
menu.add(new JMenuItem("Open source file")
{
final protected void fireActionPerformed(final java.awt.event.ActionEvent e)
{
try
{
onDoubleClick();
}
catch (Throwable t) { t.printStackTrace(); }
}
});
return menu;
}
}
Ads help maintain this website.