/** * Creates the cell renderer. * * @param renderer the actual renderer for the tree node. This method will return a cell renderer that use a check * box and put the actual renderer inside it. * @return the cell renderer. */ protected CheckBoxTreeCellRenderer createCellRenderer(TreeCellRenderer renderer) { final CheckBoxTreeCellRenderer checkBoxTreeCellRenderer = new CheckBoxTreeCellRenderer(renderer, getCheckBox()); addPropertyChangeListener(CELL_RENDERER_PROPERTY, new CellRendererPropertyChangeListener(checkBoxTreeCellRenderer)); return checkBoxTreeCellRenderer; }
/** * Initialize the CheckBoxTree. */ protected void init() { _checkBoxTreeSelectionModel = createCheckBoxTreeSelectionModel(getModel()); _checkBoxTreeSelectionModel.setTree(this); Handler handler = createHandler(); JideSwingUtilities.insertMouseListener(this, handler, 0); addKeyListener(handler); _checkBoxTreeSelectionModel.addTreeSelectionListener(handler); if (_modelChangeListener == null) { _modelChangeListener = new ModelPropertyChangeListener(); } addPropertyChangeListener(JTree.SELECTION_MODEL_PROPERTY, _modelChangeListener); addPropertyChangeListener("model", _modelChangeListener); updateRowMapper(); }