Skip to content

Commit 205f5ec

Browse files
authored
docs(material/button-toggle): Update docs and examples (#29256)
1 parent 27503ed commit 205f5ec

File tree

11 files changed

+63
-54
lines changed

11 files changed

+63
-54
lines changed

src/components-examples/material/button-toggle/BUILD.bazel

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ ng_module(
1717
"//src/cdk/testing/testbed",
1818
"//src/material/button-toggle",
1919
"//src/material/button-toggle/testing",
20+
"//src/material/checkbox",
2021
"//src/material/icon",
2122
"@npm//@angular/platform-browser",
2223
"@npm//@types/jasmine",

src/components-examples/material/button-toggle/button-toggle-appearance/button-toggle-appearance-example.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {Component} from '@angular/core';
1+
import {ChangeDetectionStrategy, Component} from '@angular/core';
22
import {MatButtonToggleModule} from '@angular/material/button-toggle';
33

44
/**
@@ -10,5 +10,6 @@ import {MatButtonToggleModule} from '@angular/material/button-toggle';
1010
styleUrl: 'button-toggle-appearance-example.css',
1111
standalone: true,
1212
imports: [MatButtonToggleModule],
13+
changeDetection: ChangeDetectionStrategy.OnPush,
1314
})
1415
export class ButtonToggleAppearanceExample {}

src/components-examples/material/button-toggle/button-toggle-exclusive/button-toggle-exclusive-example.css

Lines changed: 0 additions & 3 deletions
This file was deleted.

src/components-examples/material/button-toggle/button-toggle-exclusive/button-toggle-exclusive-example.html

Lines changed: 0 additions & 15 deletions
This file was deleted.

src/components-examples/material/button-toggle/button-toggle-exclusive/button-toggle-exclusive-example.ts

Lines changed: 0 additions & 15 deletions
This file was deleted.

src/components-examples/material/button-toggle/button-toggle-forms/button-toggle-forms-example.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {Component} from '@angular/core';
1+
import {ChangeDetectionStrategy, Component} from '@angular/core';
22
import {FormControl, FormsModule, ReactiveFormsModule} from '@angular/forms';
33
import {MatButtonToggleModule} from '@angular/material/button-toggle';
44

@@ -10,6 +10,7 @@ import {MatButtonToggleModule} from '@angular/material/button-toggle';
1010
templateUrl: 'button-toggle-forms-example.html',
1111
standalone: true,
1212
imports: [MatButtonToggleModule, FormsModule, ReactiveFormsModule],
13+
changeDetection: ChangeDetectionStrategy.OnPush,
1314
})
1415
export class ButtonToggleFormsExample {
1516
fontStyleControl = new FormControl('');

src/components-examples/material/button-toggle/button-toggle-harness/button-toggle-harness-example.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {Component, signal} from '@angular/core';
1+
import {ChangeDetectionStrategy, Component, signal} from '@angular/core';
22
import {MatButtonToggleAppearance, MatButtonToggleModule} from '@angular/material/button-toggle';
33

44
/**
@@ -9,6 +9,7 @@ import {MatButtonToggleAppearance, MatButtonToggleModule} from '@angular/materia
99
templateUrl: 'button-toggle-harness-example.html',
1010
standalone: true,
1111
imports: [MatButtonToggleModule],
12+
changeDetection: ChangeDetectionStrategy.OnPush,
1213
})
1314
export class ButtonToggleHarnessExample {
1415
disabled = signal(false);
Lines changed: 39 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,39 @@
1-
<h3>Single selection</h3>
2-
<mat-button-toggle-group name="favoriteColor" aria-label="Favorite Color">
3-
<mat-button-toggle value="red">Red</mat-button-toggle>
4-
<mat-button-toggle value="green">Green</mat-button-toggle>
5-
<mat-button-toggle value="blue">Blue</mat-button-toggle>
6-
</mat-button-toggle-group>
7-
8-
<h3>Multiple selection</h3>
9-
<mat-button-toggle-group name="ingredients" aria-label="Ingredients" multiple>
10-
<mat-button-toggle value="flour">Flour</mat-button-toggle>
11-
<mat-button-toggle value="eggs">Eggs</mat-button-toggle>
12-
<mat-button-toggle value="sugar">Sugar</mat-button-toggle>
13-
</mat-button-toggle-group>
1+
<section>
2+
<mat-checkbox
3+
[checked]="hideSingleSelectionIndicator()"
4+
(change)="toggleSingleSelectionIndicator()"
5+
>
6+
Hide Single Selection Indicator
7+
</mat-checkbox>
8+
<mat-checkbox
9+
[checked]="hideMultipleSelectionIndicator()"
10+
(change)="toggleMultipleSelectionIndicator()"
11+
>
12+
Hide Multiple Selection Indicator
13+
</mat-checkbox>
14+
</section>
15+
<section>
16+
<h3>Single selection</h3>
17+
<mat-button-toggle-group
18+
name="favoriteColor"
19+
aria-label="Favorite Color"
20+
[hideSingleSelectionIndicator]="hideSingleSelectionIndicator()"
21+
>
22+
<mat-button-toggle value="red">Red</mat-button-toggle>
23+
<mat-button-toggle value="green">Green</mat-button-toggle>
24+
<mat-button-toggle value="blue">Blue</mat-button-toggle>
25+
</mat-button-toggle-group>
26+
</section>
27+
<section>
28+
<h3>Multiple selection</h3>
29+
<mat-button-toggle-group
30+
name="ingredients"
31+
aria-label="Ingredients"
32+
[hideMultipleSelectionIndicator]="hideMultipleSelectionIndicator()"
33+
multiple
34+
>
35+
<mat-button-toggle value="flour">Flour</mat-button-toggle>
36+
<mat-button-toggle value="eggs">Eggs</mat-button-toggle>
37+
<mat-button-toggle value="sugar">Sugar</mat-button-toggle>
38+
</mat-button-toggle-group>
39+
</section>
Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
import {Component} from '@angular/core';
1+
import {ChangeDetectionStrategy, Component, signal} from '@angular/core';
22
import {MatButtonToggleModule} from '@angular/material/button-toggle';
3+
import {MatCheckboxModule} from '@angular/material/checkbox';
34

45
/**
56
* @title Button toggle selection mode
@@ -8,6 +9,18 @@ import {MatButtonToggleModule} from '@angular/material/button-toggle';
89
selector: 'button-toggle-mode-example',
910
templateUrl: 'button-toggle-mode-example.html',
1011
standalone: true,
11-
imports: [MatButtonToggleModule],
12+
imports: [MatButtonToggleModule, MatCheckboxModule],
13+
changeDetection: ChangeDetectionStrategy.OnPush,
1214
})
13-
export class ButtonToggleModeExample {}
15+
export class ButtonToggleModeExample {
16+
hideSingleSelectionIndicator = signal(false);
17+
hideMultipleSelectionIndicator = signal(false);
18+
19+
toggleSingleSelectionIndicator() {
20+
this.hideSingleSelectionIndicator.update(value => !value);
21+
}
22+
23+
toggleMultipleSelectionIndicator() {
24+
this.hideMultipleSelectionIndicator.update(value => !value);
25+
}
26+
}

src/components-examples/material/button-toggle/index.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
export {ButtonToggleAppearanceExample} from './button-toggle-appearance/button-toggle-appearance-example';
2-
export {ButtonToggleExclusiveExample} from './button-toggle-exclusive/button-toggle-exclusive-example';
32
export {ButtonToggleOverviewExample} from './button-toggle-overview/button-toggle-overview-example';
43
export {ButtonToggleHarnessExample} from './button-toggle-harness/button-toggle-harness-example';
54
export {ButtonToggleFormsExample} from './button-toggle-forms/button-toggle-forms-example';

src/material/button-toggle/button-toggle.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ and `ngModel` is not supported.
1919
### Appearance
2020
By default, the appearance of `mat-button-toggle-group` and `mat-button-toggle` will follow the
2121
latest Material Design guidelines. If you want to, you can switch back to the appearance that was
22-
following the previous Material Design spec by using the `appearance` input. The `appearance` can
22+
following a previous Material Design spec by using the `appearance` input. The `appearance` can
2323
be configured globally using the `MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS` injection token.
2424

2525
<!-- example(button-toggle-appearance) -->

0 commit comments

Comments
 (0)