You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
2.6 KiB
Dart
83 lines
2.6 KiB
Dart
import 'dart:ffi';
|
|
|
|
import 'package:doctor_app_flutter/config/size_config.dart';
|
|
|
|
import '../shared/rounded_container_widget.dart';
|
|
import 'package:flutter/material.dart';
|
|
import '../shared/app_texts_widget.dart';
|
|
|
|
class DashboardItemIconText extends StatefulWidget {
|
|
final IconData icon;
|
|
final String value;
|
|
final String label;
|
|
final Color backgroundColor;
|
|
final bool showBorder;
|
|
final Color borderColor;
|
|
final double titleFontSize;
|
|
final Color titleFontColor;
|
|
final Color valueFontColor;
|
|
final double valueFontSize;
|
|
final Color iconColor;
|
|
// OWNER : Ibrahim albitar
|
|
// DATE : 05-04-2020
|
|
// DESCRIPTION : Custom widget for dashboard items has texts and icons widgets
|
|
|
|
DashboardItemIconText(this.icon, this.value, this.label,
|
|
{this.backgroundColor = Colors.white,
|
|
this.showBorder = false,
|
|
this.titleFontSize = 12,
|
|
this.valueFontSize = 26,
|
|
this.valueFontColor = Colors.white,
|
|
this.titleFontColor = Colors.white,
|
|
this.iconColor = Colors.white,
|
|
this.borderColor = Colors.white});
|
|
@override
|
|
_DashboardItemTextsState createState() => _DashboardItemTextsState();
|
|
}
|
|
|
|
class _DashboardItemTextsState extends State<DashboardItemIconText> {
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return new RoundedContainer(
|
|
margin: 10,
|
|
child: Stack(
|
|
children: <Widget>[
|
|
Align(
|
|
alignment: FractionalOffset.topLeft,
|
|
child: Container(
|
|
padding: EdgeInsets.all(10),
|
|
child: Icon(
|
|
widget.icon,
|
|
size: SizeConfig.textMultiplier * 2.8,
|
|
color: widget.iconColor,
|
|
),
|
|
)),
|
|
Align(
|
|
alignment: FractionalOffset.bottomRight,
|
|
child: Container(
|
|
padding: EdgeInsets.all(10),
|
|
child: Column(
|
|
mainAxisAlignment: MainAxisAlignment.end,
|
|
crossAxisAlignment: CrossAxisAlignment.end,
|
|
children: <Widget>[
|
|
AppText(
|
|
widget.value,
|
|
color: widget.valueFontColor,
|
|
fontSize: widget.valueFontSize,
|
|
),
|
|
AppText(
|
|
widget.label,
|
|
color: widget.titleFontColor,
|
|
fontSize: widget.titleFontSize,
|
|
),
|
|
],
|
|
))),
|
|
],
|
|
),
|
|
backgroundColor: widget.backgroundColor,
|
|
showBorder: widget.showBorder,
|
|
borderColor: widget.borderColor,
|
|
);
|
|
}
|
|
}
|