summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStas Negara <snegara@google.com>2015-05-15 17:32:30 -0700
committerStas Negara <snegara@google.com>2015-05-15 17:46:29 -0700
commitae29366ae1e5c77f635945cd8a0689847ddca89b (patch)
treeab0fb2cc2dc34d0503ad34a97112f3fe1d194ea7
parent7cf47851ef8f2520405dad8c3976bcb132091efa (diff)
downloadtesting-ae29366ae1e5c77f635945cd8a0689847ddca89b.tar.gz
Checked/selected dimension values should use bold text font.
A group with at least one checked/selected child should also use bold text font. Change-Id: I9210b1397948419a71d4f2800e32981d6ac1245b
-rw-r--r--src/com/google/gct/testing/TwoPanelTree.java23
1 files changed, 19 insertions, 4 deletions
diff --git a/src/com/google/gct/testing/TwoPanelTree.java b/src/com/google/gct/testing/TwoPanelTree.java
index b7f7e5f..0440064 100644
--- a/src/com/google/gct/testing/TwoPanelTree.java
+++ b/src/com/google/gct/testing/TwoPanelTree.java
@@ -50,6 +50,8 @@ import java.util.Map;
import java.util.Random;
import static com.android.tools.idea.run.CloudConfiguration.Kind.SINGLE_DEVICE;
+import static com.intellij.ui.SimpleTextAttributes.REGULAR_ATTRIBUTES;
+import static com.intellij.ui.SimpleTextAttributes.REGULAR_BOLD_ATTRIBUTES;
import static javax.swing.tree.TreeSelectionModel.SINGLE_TREE_SELECTION;
@@ -447,17 +449,28 @@ public class TwoPanelTree extends MouseAdapter implements ListSelectionListener,
Object userObject = ((DefaultMutableTreeNode)value).getUserObject();
if (userObject instanceof CloudTestingType) {
CloudTestingType cloudTestingType = (CloudTestingType)userObject;
- getTextRenderer().append(cloudTestingType.getConfigurationDialogDisplayName());
+ getTextRenderer().append(cloudTestingType.getConfigurationDialogDisplayName(),
+ ((CheckedTreeNode) value).isChecked() ? REGULAR_BOLD_ATTRIBUTES : REGULAR_ATTRIBUTES);
updateTreeState(tree, (CheckedTreeNode)value, cloudTestingType);
} else if (userObject instanceof CloudTestingTypeGroup) {
CloudTestingTypeGroup group = (CloudTestingTypeGroup)userObject;
- getTextRenderer().append(group.getName());
+ getTextRenderer().append(group.getName(),
+ hasCheckedChildren((CheckedTreeNode) value) ? REGULAR_BOLD_ATTRIBUTES : REGULAR_ATTRIBUTES);
CloudTestingType type = (CloudTestingType) ((CheckedTreeNode) ((DefaultMutableTreeNode)value).getChildAt(0)).getUserObject();
updateTreeState(tree, (CheckedTreeNode)value, type);
}
}
}
+ private boolean hasCheckedChildren(CheckedTreeNode node) {
+ for (int i = 0; i < node.getChildCount(); i++) {
+ if (((CheckedTreeNode)node.getChildAt(i)).isChecked()) {
+ return true;
+ }
+ }
+ return false;
+ }
+
private void updateTreeState(JTree tree, CheckedTreeNode node, CloudTestingType cloudTestingType) {
if (node.isEnabled()) {
//getTextRenderer().setForeground(Color.BLACK);
@@ -547,11 +560,13 @@ public class TwoPanelTree extends MouseAdapter implements ListSelectionListener,
Object userObject = ((DefaultMutableTreeNode)value).getUserObject();
if (userObject instanceof CloudTestingType) {
CloudTestingType googleCloudTestingType = (CloudTestingType)userObject;
- myTextRenderer.append(googleCloudTestingType.getConfigurationDialogDisplayName());
+
+ myTextRenderer.append(googleCloudTestingType.getConfigurationDialogDisplayName(),
+ myRadioButton.isSelected() ? REGULAR_BOLD_ATTRIBUTES : REGULAR_ATTRIBUTES);
updateTreeState(tree, (CheckedTreeNode)value, googleCloudTestingType);
} else if (userObject instanceof CloudTestingTypeGroup) {
CloudTestingTypeGroup group = (CloudTestingTypeGroup)userObject;
- myTextRenderer.append(group.getName());
+ myTextRenderer.append(group.getName(), myRadioButton.isSelected() ? REGULAR_BOLD_ATTRIBUTES : REGULAR_ATTRIBUTES);
CloudTestingType type = (CloudTestingType)((CheckedTreeNode)((DefaultMutableTreeNode)value).getChildAt(0)).getUserObject();
updateTreeState(tree, (CheckedTreeNode)value, type);
}