001package kiwi.ui.propeditor; 002 003import java.awt.*; 004import java.util.*; 005import javax.swing.*; 006 007import kiwi.ui.*; 008import kiwi.ui.model.*; 009 010 011/** 012 * 013 */ 014 015public class PropertyEditor extends KPanel 016 { 017 private KTreeModel model; 018 private JTree tree; 019 private KTreeModelTreeAdapter adapter; 020 private PropertyEditorFactory factory 021 = DefaultPropertyEditorFactory.getInstance(); 022 private Hashtable editors = new Hashtable(); 023 private PropertyCellEditor cellEditor; 024 025 public PropertyEditor() 026 { 027 setLayout(new BorderLayout(3, 3)); 028 029 tree = new JTree(); 030 tree.setRowHeight(18); 031 tree.setRootVisible(false); 032 tree.setEditable(true); 033 034 cellEditor = new PropertyCellEditor(factory); 035 036 tree.setCellRenderer(cellEditor); 037 tree.setCellEditor(cellEditor); 038 039 KScrollPane sp = new KScrollPane(tree); 040 add("Center", sp); 041 042 adapter = new KTreeModelTreeAdapter(tree); 043 tree.setModel(adapter); 044 } 045 046 public void setEditorFactory(PropertyEditorFactory factory) 047 { 048 cellEditor.setEditorFactory(factory); 049 } 050 051 public PropertyEditorFactory getEditorFactory() 052 { 053 return(factory); 054 } 055 056 public void setModel(KTreeModel model) 057 { 058 this.model = model; 059 adapter.setTreeModel(model); 060 061// repaint(); 062 } 063 064 public KTreeModel getModel() 065 { 066 return(model); 067 } 068 069 /* 070 */ 071 072 073 /* 074 */ 075 076 077 } 078 079/* end of source file */