com.ibm.as400.vaccess.VObjectCellEditor Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jt400 Show documentation
Show all versions of jt400 Show documentation
The Open Source version of the IBM Toolbox for Java
The newest version!
///////////////////////////////////////////////////////////////////////////////
//
// JTOpen (IBM Toolbox for Java - OSS version)
//
// Filename: VObjectCellEditor.java
//
// The source code contained herein is licensed under the IBM Public License
// Version 1.0, which has been approved by the Open Source Initiative.
// Copyright (C) 1997-2000 International Business Machines Corporation and
// others. All rights reserved.
//
///////////////////////////////////////////////////////////////////////////////
package com.ibm.as400.vaccess;
import javax.swing.DefaultCellEditor;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.JTree;
import java.awt.BorderLayout;
import java.awt.Component;
/**
The VObjectCellEditor class allows editing of the
name of an object.
**/
class VObjectCellEditor
extends DefaultCellEditor
{
private static final String copyright = "Copyright (C) 1997-2000 International Business Machines Corporation and others.";
/**
Constructs a VObjectCellEditor object.
**/
public VObjectCellEditor ()
{
super (new JTextField ());
// We do not want double clicks to start an edit,
// since that means invoke the default action.
setClickCountToStart (100); // @C0C
}
/**
Builds the component as needed.
@param value The value.
@param open true if the icon should be open,
false otherwise.
@param defaultComponent The component built by default.
**/
private Component buildComponent (Object value,
boolean open,
Component defaultComponent)
{
JLabel label = new JLabel ();
if (value instanceof VObject)
label.setIcon (((VObject) value).getIcon (16, open));
else
label.setIcon (null);
JPanel panel = new JPanel ();
panel.setLayout (new BorderLayout ());
panel.add ("West", label);
panel.add ("Center", defaultComponent);
return panel;
}
/**
Edits the value for a table.
@param table The table.
@param value The value.
@param selected true if the item is selected, false otherwise.
@param rowIndex The row index.
@param columnIndex The column index.
@return The rendered component.
**/
public Component getTableCellEditorComponent (JTable table,
Object value,
boolean selected,
int rowIndex,
int columnIndex)
{
Component defaultComponent = super.getTableCellEditorComponent (table,
value, selected, rowIndex, columnIndex);
return buildComponent (value, false, defaultComponent);
}
/**
Edits the value for a tree.
@param tree The tree.
@param value The value.
@param selected true if the item is selected, false otherwise.
@param expanded true if the item is expanded, false otherwise.
@param leaf true if the item is a leaf, false otherwise.
@return The rendered component.
**/
public Component getTreeCellEditorComponent (JTree tree,
Object value,
boolean selected,
boolean expanded,
boolean leaf,
int index)
{
Component defaultComponent = super.getTreeCellEditorComponent (tree,
value, selected, expanded, leaf, index);
return buildComponent (value, selected, defaultComponent);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy