package jas2.swingstudio.adaptor;

import jas2.job.HistogramAccess;
import jas2.swingstudio.JavaAnalysisStudio;
import javax.swing.*;
import jas2.util.*;

public class HistogramFolderTreeAdaptor extends FolderTreeAdaptor
{
	public void init()
	{
		super.init();
		folder = (HistogramAccess) getAssociatedObject();
	}
	public void onDelete()
	{
		folder.delete();
	}
	public void onRename()
	{
		startEditing();
	}
	public boolean stopEditing(String newName)
	{
		try
		{
			folder.rename(newName);
			return true;
		}
		catch (hepjas.analysis.NamedObject.RenameException x)
		{
			JavaAnalysisStudio.getApp().error("Illegal name",x);
			return false;
		}
	}
	public void enableClearOnRewind(JASCheckboxState state)
	{
		state.setEnabled(folder.canSetClearOnRewind());
		state.setCheckbox(folder.isClearOnRewind());
	}
	public void onClearOnRewind(boolean value)
	{
		folder.setClearOnRewind(value);
	}
	public void onClear()
	{
		folder.clear();
	}
	protected boolean isEditable()
	{
		return true;
	}
	protected JPopupMenu getPopupMenu()
	{
		if (menu == null)
		{
			menu = super.getPopupMenu();
			menu.insert(new JASMenuItem("Clear",'C'),0);
			menu.insert(new JASCheckboxMenuItem("Clear On Rewind",'W'),1);
			menu.insert(new JASMenuItem("Rename",'R'),2);
			menu.insert(new JASMenuItem("Delete",'D'),3);
		}
		return menu;
	}
	private static JPopupMenu menu;
	private HistogramAccess folder;
}

 

Ads help maintain this website.