From 1f2b2c4dc433064d91f06c8e0c66db7d70fe934e Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 22 Jan 2016 11:24:32 +0100 Subject: [client] Only expand first level of tree --- .../java/org/openslx/dozmod/gui/control/JCheckBoxTree.java | 10 +++++++++- .../java/org/openslx/dozmod/gui/control/LocationSelector.java | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) (limited to 'dozentenmodul/src/main/java') diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/JCheckBoxTree.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/JCheckBoxTree.java index 7406ce69..45602a04 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/JCheckBoxTree.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/JCheckBoxTree.java @@ -93,10 +93,18 @@ public class JCheckBoxTree extends JTree { public void setModel(TreeModel newModel) { super.setModel(newModel); resetCheckingState(); - // expand all nodes + // Hack to get rid of leaf nodes with an expand button + // first expand all nodes for (int i = 0; i < this.getRowCount(); i++) { this.expandRow(i); } + // Now collapse again if it's not first level + for (int i = 0; i < this.getRowCount(); i++) { + TreePath path = this.getPathForRow(i); + if (path.getPathCount() > 1) { + this.collapseRow(i); + } + } } // Preselection stuff public void setCheckedState(List paths, boolean check) { diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/LocationSelector.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/LocationSelector.java index 20774530..822aa478 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/LocationSelector.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/LocationSelector.java @@ -158,7 +158,7 @@ public class LocationSelector extends JPanel { } locationTree.setModel(treeModel); - locationTree.updateUI(); + locationTree.repaint(); return true; } -- cgit v1.2.3-55-g7522