12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- /*
- * @Author : WuWei
- * @LastEditors : WuWei
- * @Date : 2022-11-02 10:26:39
- * @LastEditTime : 2022-11-08 11:00:24
- * @Description : Do not edit
- */
- import 'package:flutter/material.dart';
- import 'package:wisdom_cli/wisdom_cli.dart';
- ///小圆点
- class WDot extends StatelessWidget {
- const WDot({
- Key? key,
- this.onTap,
- this.child,
- this.padding = EdgeInsets.zero,
- this.color = Colors.red,
- this.textStyle,
- this.constraints,
- this.iconTheme,
- this.behavior = HitTestBehavior.opaque,
- }) : super(key: key);
- ///右上角删除按钮
- WDot.delete({
- Key? key,
- this.onTap,
- this.behavior = HitTestBehavior.opaque,
- this.padding = EdgeInsets.zero,
- this.color = Colors.black45,
- this.textStyle,
- this.constraints,
- this.iconTheme,
- }) : this.child = Icon(Icons.close),
- super(key: key);
- final HitTestBehavior behavior;
- final void Function()? onTap;
- final EdgeInsetsGeometry padding;
- final Color color;
- final BoxConstraints? constraints;
- final IconThemeData? iconTheme;
- final TextStyle? textStyle;
- final Widget? child;
- @override
- Widget build(BuildContext context) {
- Widget current = DefaultTextStyle(
- style: TextStyle(
- fontSize: 10.pt,
- color: Colors.white,
- ).merge(textStyle),
- child: IconTheme(
- data: IconThemeData(
- size: 15.pt,
- color: Colors.white,
- ).merge(iconTheme),
- child: Container(
- padding: padding,
- constraints: constraints,
- decoration: BoxDecoration(
- color: color,
- borderRadius: BorderRadius.circular(1000),
- ),
- child: child,
- ),
- ),
- );
- if (onTap != null) {
- current = GestureDetector(
- behavior: behavior,
- onTap: onTap,
- child: current,
- );
- }
- return current;
- }
- }
|