protected void renderValue(MultiValueResolutionDecision decision) { model.removeAllElements(); switch (decision.getDecisionType()) { case UNDECIDED: model.addElement(tr("Choose a value")); cbDecisionRenderer.setFont(getFont().deriveFont(Font.ITALIC)); cbDecisionRenderer.setSelectedIndex(0); break; case KEEP_ONE: model.addElement(decision.getChosenValue()); cbDecisionRenderer.setFont(getFont()); cbDecisionRenderer.setSelectedIndex(0); break; case KEEP_NONE: model.addElement(tr("deleted")); cbDecisionRenderer.setFont(getFont().deriveFont(Font.ITALIC)); cbDecisionRenderer.setSelectedIndex(0); break; case KEEP_ALL: model.addElement(decision.getChosenValue()); cbDecisionRenderer.setFont(getFont()); cbDecisionRenderer.setSelectedIndex(0); break; } }
protected void renderColors(MultiValueResolutionDecision decision, boolean selected) { if (selected) { setForeground(UIManager.getColor("Table.selectionForeground")); setBackground(UIManager.getColor("Table.selectionBackground")); } else { switch (decision.getDecisionType()) { case UNDECIDED: setForeground(UIManager.getColor("Table.foreground")); setBackground(ConflictColors.BGCOLOR_UNDECIDED.get()); break; case KEEP_NONE: setForeground(UIManager.getColor("Panel.foreground")); setBackground(UIManager.getColor("Panel.background")); break; default: setForeground(UIManager.getColor("Table.foreground")); setBackground(UIManager.getColor("Table.background")); break; } } }
/** * Sets the text of the tooltip for both renderers, this (the JLabel) and the combobox renderer. */ protected void renderToolTipText(MultiValueResolutionDecision decision) { switch (decision.getDecisionType()) { case UNDECIDED: { String toolTipText = tr("Please decide which values to keep"); setToolTipText(toolTipText); cbDecisionRenderer.setToolTipText(toolTipText); break; } case KEEP_ONE: { String toolTipText = tr( "Value ''{0}'' is going to be applied for key ''{1}''", decision.getChosenValue(), decision.getKey()); setToolTipText(toolTipText); cbDecisionRenderer.setToolTipText(toolTipText); break; } case KEEP_NONE: { String toolTipText = tr("The key ''{0}'' and all its values are going to be removed", decision.getKey()); setToolTipText(toolTipText); cbDecisionRenderer.setToolTipText(toolTipText); break; } case KEEP_ALL: String toolTipText = tr( "All values joined as ''{0}'' are going to be applied for key ''{1}''", decision.getChosenValue(), decision.getKey()); setToolTipText(toolTipText); cbDecisionRenderer.setToolTipText(toolTipText); break; } }