masdul_widget 0.0.9 masdul_widget: ^0.0.9 copied to clipboard
Masdul widget help in simplifying code for some complicated widget.
Description #
Masdul widget help in simplifying code for some complicated widget.
Features #
- Circle Image
- Stacked Image
- Rounded Image
- Text Field
- Chat Bubble
- Button
Circle image #
import 'package:faker/faker.dart';
import 'package:flutter/material.dart';
import 'package:masdul_widget/circle_image.dart';
class CircleImageSample extends StatefulWidget {
const CircleImageSample({super.key});
@override
State<CircleImageSample> createState() => _CircleImageSampleState();
}
class _CircleImageSampleState extends State<CircleImageSample> {
var faker = Faker();
@override
Widget build(BuildContext context) {
// TODO: implement build
return Scaffold(
appBar: AppBar(
title: Text("Circle Image"),
),
body: Center(
child: CircleImage(
image: Image.network(faker.image.image()),
size: 50,
),
),
);
}
}
Stacked image #
import 'package:faker/faker.dart';
import 'package:flutter/material.dart';
import 'package:masdul_widget/stacked_image.dart';
class StackedImageSample extends StatefulWidget {
const StackedImageSample({super.key});
@override
State<StackedImageSample> createState() => _StackedImageSampleState();
}
class _StackedImageSampleState extends State<StackedImageSample> {
var faker = Faker();
@override
Widget build(BuildContext context) {
// TODO: implement build
return Scaffold(
appBar: AppBar(
title: Text("Stacked Image"),
),
body: Center(
child: StackedImage(
firstInFront: true,
images: [
Image.network(faker.image.image()),
Image.network(faker.image.image()),
Image.network(faker.image.image()),
],
space: 50,
imageSize: 100,
radius: 50,
),
),
);
}
}
rounded image #
import 'package:faker/faker.dart';
import 'package:flutter/material.dart';
import 'package:masdul_widget/rounded_image.dart';
class RoundedImageSample extends StatefulWidget {
const RoundedImageSample({super.key});
@override
State<RoundedImageSample> createState() => _RoundedImageSampleState();
}
class _RoundedImageSampleState extends State<RoundedImageSample> {
var faker = Faker();
@override
Widget build(BuildContext context) {
// TODO: implement build
return Scaffold(
appBar: AppBar(
title: Text("Rounded Image"),
),
body: Center(
child: RoundedImage(
image: Image.network(faker.image.image()),
size: 50,
radius: 10,
),
),
);
}
}
text field #
import 'package:flutter/material.dart';
import 'package:masdul_widget/textfield_widget.dart';
class TextFieldSample extends StatefulWidget {
const TextFieldSample({super.key});
@override
State<TextFieldSample> createState() => _TextFieldSampleState();
}
class _TextFieldSampleState extends State<TextFieldSample> {
TextEditingController controller = TextEditingController();
bool isObsecure = true;
@override
Widget build(BuildContext context) {
// TODO: implement build
return Scaffold(
appBar: AppBar(
title: Text("Text Field"),
),
body: Center(
child: Container(
padding: const EdgeInsets.symmetric(horizontal: 20),
child: TextFieldWidget(
controller: controller,
hint: "Type here...",
prefix: const Icon(Icons.key),
suffix: InkWell(
onTap: () {
isObsecure = !isObsecure;
setState(() {});
},
child: const Icon(Icons.visibility),
),
obscureText: isObsecure,
),
),
),
);
}
}
chat bubble #
import 'package:flutter/material.dart';
import 'package:masdul_widget/bubble_chat.dart';
class BubbleChatSample extends StatefulWidget {
const BubbleChatSample({super.key});
@override
State<BubbleChatSample> createState() => _BubbleChatSampleState();
}
class _BubbleChatSampleState extends State<BubbleChatSample> {
TextEditingController controller = TextEditingController();
bool isObsecure = true;
@override
Widget build(BuildContext context) {
// TODO: implement build
return Scaffold(
appBar: AppBar(
title: Text("Bubble Chat"),
),
body: Container(
width: double.infinity,
padding: const EdgeInsets.symmetric(vertical: 20),
child: Column(
children: [
Container(
padding: const EdgeInsets.only(left: 20, right: 20, bottom: 5),
child: BubbleChat(
from: Text(
"Jhon Doe",
style: TextStyle(
fontWeight: FontWeight.bold,
),
),
width: 270,
direction: BubbleChatDirection.left,
cevron: BubbleChatCevron.left,
color: Colors.greenAccent,
child: const Text("hello"),
),
),
Container(
padding: const EdgeInsets.only(left: 20, right: 20, bottom: 5),
child: BubbleChat(
width: 270,
color: Colors.greenAccent,
child: const Text("how are you?"),
),
),
Container(
padding: const EdgeInsets.only(left: 20, right: 20, bottom: 5),
child: BubbleChat(
width: 270,
direction: BubbleChatDirection.right,
cevron: BubbleChatCevron.right,
color: Colors.grey,
from: Text(
"Jhen Doo",
style: TextStyle(
fontWeight: FontWeight.bold,
),
),
repliedChild: Text("how are you?"),
child: const Text("oh hai, i'm fine thank you"),
),
),
],
),
),
);
}
}
button #
import 'package:flutter/material.dart';
import 'package:masdul_widget/button_widget.dart';
class ButtonWidgetSample extends StatefulWidget {
const ButtonWidgetSample({super.key});
@override
State<ButtonWidgetSample> createState() => _ButtonWidgetSampleState();
}
class _ButtonWidgetSampleState extends State<ButtonWidgetSample> {
TextEditingController controller = TextEditingController();
bool isObsecure = true;
@override
Widget build(BuildContext context) {
// TODO: implement build
return Scaffold(
appBar: AppBar(
title: Text("Button Sample"),
),
body: Container(
width: double.infinity,
padding: const EdgeInsets.symmetric(vertical: 20),
child: Column(
children: [
Container(
padding: const EdgeInsets.only(left: 20, right: 20, bottom: 5),
child: Container(
width: double.infinity,
child: ButtonWidget(
onPressed: () {},
text: "Button",
radius: 10,
background: Colors.blue,
),
),
),
Container(
padding: const EdgeInsets.only(left: 20, right: 20, bottom: 5),
child: Container(
width: double.infinity,
child: ButtonWidget(
onPressed: () {},
text: "Button",
radius: 10,
background: Colors.white,
textStyle: TextStyle(color: Colors.blue),
borderColor: Colors.blue,
),
),
),
],
),
),
);
}
}
Usage #
import 'package:masdul_widget/circle_image.dart';
import 'package:masdul_widget/stacked_image.dart';
import 'package:masdul_widget/rounded_image.dart';
import 'package:masdul_widget/textfield_widget.dart';
import 'package:masdul_widget/bubble_chat.dart';
import 'package:masdul_widget/button_widget.dart';