CheckBox: support styling indeterminate state of tri-state check boxes (issue #919)

This commit is contained in:
Karl Tauber
2024-12-11 16:54:03 +01:00
parent 7bdfd49921
commit b9c68fbe77
9 changed files with 220 additions and 52 deletions

View File

@@ -672,7 +672,7 @@ class FlatThemePreviewSwitches
}
@Override
public boolean isSelected() {
return isStateSelected();
return isStateSelected() || isStateIndeterminate();
}
} );

View File

@@ -98,6 +98,10 @@ CheckBox.icon.checkmarkColor
CheckBox.icon.disabledBackground
CheckBox.icon.disabledBorderColor
CheckBox.icon.disabledCheckmarkColor
CheckBox.icon.disabledIndeterminateBackground
CheckBox.icon.disabledIndeterminateBorderColor
CheckBox.icon.disabledIndeterminateBorderWidth
CheckBox.icon.disabledIndeterminateCheckmarkColor
CheckBox.icon.disabledSelectedBackground
CheckBox.icon.disabledSelectedBorderColor
CheckBox.icon.disabledSelectedBorderWidth
@@ -106,16 +110,29 @@ CheckBox.icon.focusWidth
CheckBox.icon.focusedBackground
CheckBox.icon.focusedBorderColor
CheckBox.icon.focusedCheckmarkColor
CheckBox.icon.focusedIndeterminateBackground
CheckBox.icon.focusedIndeterminateBorderColor
CheckBox.icon.focusedIndeterminateCheckmarkColor
CheckBox.icon.focusedSelectedBackground
CheckBox.icon.focusedSelectedBorderColor
CheckBox.icon.hoverBackground
CheckBox.icon.hoverBorderColor
CheckBox.icon.hoverCheckmarkColor
CheckBox.icon.hoverIndeterminateBackground
CheckBox.icon.hoverIndeterminateBorderColor
CheckBox.icon.hoverIndeterminateCheckmarkColor
CheckBox.icon.hoverSelectedBackground
CheckBox.icon.hoverSelectedBorderColor
CheckBox.icon.indeterminateBackground
CheckBox.icon.indeterminateBorderColor
CheckBox.icon.indeterminateBorderWidth
CheckBox.icon.indeterminateCheckmarkColor
CheckBox.icon.pressedBackground
CheckBox.icon.pressedBorderColor
CheckBox.icon.pressedCheckmarkColor
CheckBox.icon.pressedIndeterminateBackground
CheckBox.icon.pressedIndeterminateBorderColor
CheckBox.icon.pressedIndeterminateCheckmarkColor
CheckBox.icon.pressedSelectedBackground
CheckBox.icon.pressedSelectedBorderColor
CheckBox.icon.selectedBackground
@@ -130,6 +147,10 @@ CheckBox.icon[filled].checkmarkColor
CheckBox.icon[filled].disabledBackground
CheckBox.icon[filled].disabledBorderColor
CheckBox.icon[filled].disabledCheckmarkColor
CheckBox.icon[filled].disabledIndeterminateBackground
CheckBox.icon[filled].disabledIndeterminateBorderColor
CheckBox.icon[filled].disabledIndeterminateBorderWidth
CheckBox.icon[filled].disabledIndeterminateCheckmarkColor
CheckBox.icon[filled].disabledSelectedBackground
CheckBox.icon[filled].disabledSelectedBorderColor
CheckBox.icon[filled].disabledSelectedBorderWidth
@@ -137,16 +158,29 @@ CheckBox.icon[filled].focusWidth
CheckBox.icon[filled].focusedBackground
CheckBox.icon[filled].focusedBorderColor
CheckBox.icon[filled].focusedCheckmarkColor
CheckBox.icon[filled].focusedIndeterminateBackground
CheckBox.icon[filled].focusedIndeterminateBorderColor
CheckBox.icon[filled].focusedIndeterminateCheckmarkColor
CheckBox.icon[filled].focusedSelectedBackground
CheckBox.icon[filled].focusedSelectedBorderColor
CheckBox.icon[filled].hoverBackground
CheckBox.icon[filled].hoverBorderColor
CheckBox.icon[filled].hoverCheckmarkColor
CheckBox.icon[filled].hoverIndeterminateBackground
CheckBox.icon[filled].hoverIndeterminateBorderColor
CheckBox.icon[filled].hoverIndeterminateCheckmarkColor
CheckBox.icon[filled].hoverSelectedBackground
CheckBox.icon[filled].hoverSelectedBorderColor
CheckBox.icon[filled].indeterminateBackground
CheckBox.icon[filled].indeterminateBorderColor
CheckBox.icon[filled].indeterminateBorderWidth
CheckBox.icon[filled].indeterminateCheckmarkColor
CheckBox.icon[filled].pressedBackground
CheckBox.icon[filled].pressedBorderColor
CheckBox.icon[filled].pressedCheckmarkColor
CheckBox.icon[filled].pressedIndeterminateBackground
CheckBox.icon[filled].pressedIndeterminateBorderColor
CheckBox.icon[filled].pressedIndeterminateCheckmarkColor
CheckBox.icon[filled].pressedSelectedBackground
CheckBox.icon[filled].pressedSelectedBorderColor
CheckBox.icon[filled].selectedBackground