Added widgets
This commit is contained in:
parent
8d382ad937
commit
e38801dcf6
3 changed files with 56 additions and 10 deletions
36
lib/widgets/circle_widget.dart
Normal file
36
lib/widgets/circle_widget.dart
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:gap/gap.dart';
|
||||||
|
import 'package:ocbo_esign_validator/widgets/text_widget.dart';
|
||||||
|
|
||||||
|
class CircleWidget extends StatelessWidget {
|
||||||
|
final IconData? icon;
|
||||||
|
final String text;
|
||||||
|
final VoidCallback onPressed;
|
||||||
|
|
||||||
|
const CircleWidget({super.key, required this.icon, required this.text, required this.onPressed});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return InkWell(
|
||||||
|
onTap: onPressed,
|
||||||
|
child: Container(
|
||||||
|
padding: EdgeInsets.all(16),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
borderRadius: BorderRadius.circular(16),
|
||||||
|
color: Colors.white10,
|
||||||
|
border: Border.all(color: const Color.fromARGB(77, 255, 255, 255)),
|
||||||
|
),
|
||||||
|
width: 120,
|
||||||
|
height: 120,
|
||||||
|
child: Column(
|
||||||
|
children: [
|
||||||
|
const Gap(8),
|
||||||
|
Icon(icon, color: Colors.white, size: 32),
|
||||||
|
const Gap(8),
|
||||||
|
TextWidget(text: text, size: 16),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -5,20 +5,30 @@ class ImageWidget extends StatelessWidget {
|
||||||
final double size;
|
final double size;
|
||||||
final bool measureByHeight;
|
final bool measureByHeight;
|
||||||
final bool? network;
|
final bool? network;
|
||||||
const ImageWidget(
|
const ImageWidget({
|
||||||
{super.key, required this.imagePath, required this.size, required this.measureByHeight, this.network});
|
super.key,
|
||||||
|
required this.imagePath,
|
||||||
|
required this.size,
|
||||||
|
required this.measureByHeight,
|
||||||
|
this.network,
|
||||||
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return (network == true)
|
return (network == true)
|
||||||
? (measureByHeight)
|
? (measureByHeight)
|
||||||
? Image.network(imagePath,
|
? Image.network(
|
||||||
height: size, cacheHeight: (size * MediaQuery.of(context).devicePixelRatio).round())
|
imagePath,
|
||||||
: Image.network(imagePath,
|
height: size,
|
||||||
width: size, cacheWidth: (size * MediaQuery.of(context).devicePixelRatio).round())
|
cacheHeight: (size * MediaQuery.of(context).devicePixelRatio).round(),
|
||||||
|
)
|
||||||
|
: Image.network(
|
||||||
|
imagePath,
|
||||||
|
width: size,
|
||||||
|
cacheWidth: (size * MediaQuery.of(context).devicePixelRatio).round(),
|
||||||
|
)
|
||||||
: (measureByHeight)
|
: (measureByHeight)
|
||||||
? Image.asset(imagePath,
|
? Image.asset(imagePath, height: size, cacheHeight: (size * MediaQuery.of(context).devicePixelRatio).round())
|
||||||
height: size, cacheHeight: (size * MediaQuery.of(context).devicePixelRatio).round())
|
: Image.asset(imagePath, width: size, cacheWidth: (size * MediaQuery.of(context).devicePixelRatio).round());
|
||||||
: Image.asset(imagePath, width: size, cacheWidth: (size * MediaQuery.of(context).devicePixelRatio).round());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,6 @@ class TextWidget extends StatelessWidget {
|
||||||
|
|
||||||
return title == true
|
return title == true
|
||||||
? Text(text, style: GoogleFonts.outfit(textStyle: textStyle))
|
? Text(text, style: GoogleFonts.outfit(textStyle: textStyle))
|
||||||
: Text(text, style: GoogleFonts.inter(textStyle: textStyle));
|
: Text(text, style: GoogleFonts.roboto(textStyle: textStyle));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue