// Copyright 2015 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. import 'package:flutter/material.dart'; import 'widget_demo.dart'; class SelectionControlsDemo extends StatefulComponent { _SelectionControlsDemoState createState() => new _SelectionControlsDemoState(); } class _SelectionControlsDemoState extends State { bool _checkboxValue = false; int _radioValue = 0; bool _switchValue = false; void _setCheckboxValue(bool value) { setState(() { _checkboxValue = value; }); } void _setRadioValue(int value) { setState(() { _radioValue = value; }); } void _setSwitchValue(bool value) { setState(() { _switchValue = value; }); } Widget build(BuildContext context) { return new Column( children: [ new Row( children: [ new Checkbox(value: _checkboxValue, onChanged: _setCheckboxValue), new Checkbox(value: false), // Disabled new Checkbox(value: true), // Disabled ], justifyContent: FlexJustifyContent.spaceAround ), new Row( children: [0, 1, 2].map((int i) { return new Radio( value: i, groupValue: _radioValue, onChanged: _setRadioValue ); }).toList(), justifyContent: FlexJustifyContent.spaceAround ), new Row( children: [0, 1].map((int i) { return new Radio(value: i, groupValue: 0); // Disabled }).toList(), justifyContent: FlexJustifyContent.spaceAround ), new Row( children: [ new Switch(value: _switchValue, onChanged: _setSwitchValue), new Switch(value: false), // Disabled new Switch(value: true), // Disabled ], justifyContent: FlexJustifyContent.spaceAround ), ], justifyContent: FlexJustifyContent.spaceAround ); } } final WidgetDemo kSelectionControlsDemo = new WidgetDemo( title: 'Selection Controls', routeName: '/selection-controls', builder: (_) => new SelectionControlsDemo() );