
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:get/get_core/src/get_main.dart';
import 'package:location/resource/colors.gen.dart';
import 'package:location/utils/common_expand.dart';

import '../../resource/assets.gen.dart';

class AddFriendLocateResultDialog {
  static void show({
    VoidCallback? cancelOnTap,
    VoidCallback? confirmOnTap,}) {
    Get.dialog(
        SimpleDialog(
          titlePadding: EdgeInsets.zero,
          contentPadding: EdgeInsets.zero,
          insetPadding: EdgeInsets.zero,
          backgroundColor:Colors.transparent,
          children: [
            AddFriendLocateResultTipView(
                cancelOnTap: () {
                  Get.back();
                },
                confirmOnTap: confirmOnTap)
          ],
        )
    );
  }
}


class AddFriendLocateResultTipView extends StatefulWidget {
  final VoidCallback? cancelOnTap;
  final VoidCallback? confirmOnTap;


  const AddFriendLocateResultTipView({
    super.key,
    this.cancelOnTap,
    required this.confirmOnTap,
  });

  @override
  State<AddFriendLocateResultTipView> createState() => _AddFriendLocateResultTipViewState();
}


class _AddFriendLocateResultTipViewState extends State<AddFriendLocateResultTipView> {
  @override
  Widget build(BuildContext context) {
    // TODO: implement build
    return Container(
      width: 1.sw,
      margin: EdgeInsets.symmetric(horizontal: 42.w),
      child: IntrinsicHeight(
        child: Column(
          children: [
            SizedBox(
              height: 35.w,
            ),
            Container(
              decoration: BoxDecoration(
                  color: Colors.transparent,
                  image: DecorationImage(
                    image: Assets.images.iconAddFriendBackGround.provider(),
                    fit: BoxFit.fill,
                  )
              ),
              child: Column(
                children: [
                  SizedBox(
                    height: 152.w,
                  ),
                  Text("您已成功定位到好友！",
                      style: TextStyle(
                          fontSize: 20.sp,
                          color: "#333333".color,
                          fontWeight: FontWeight.bold)),
                  SizedBox(height: 32.w,),
                  GestureDetector(
                    onTap: () {
                      Get.back();
                      widget.confirmOnTap!();
                    },
                    child: Container(
                      decoration: BoxDecoration(
                        gradient: LinearGradient(
                          begin: Alignment.centerLeft, // 90度相当于从左到右
                          end: Alignment.centerRight,
                          colors: [
                            Color(0xFF7B7DFF), // #7B7DFF
                            Color(0xFF6365FF), // #6365FF
                          ],
                          stops: [0.0, 1.0],
                          // 从0%到100%
                        ),
                        borderRadius: BorderRadius.circular(40.w / 2.0),
                      ),
                      margin: EdgeInsets.symmetric(horizontal: 20.w),
                      height: 40.w,
                      alignment: Alignment.center,
                      child: Text("立即查看",
                          style: TextStyle(
                              fontSize: 14.sp,
                              color: '#FFFFFF'.color,
                              fontWeight: FontWeight.w500)
                      ),
                    ),
                  ),
                  SizedBox(
                    height: 10.w,
                  ),
                  GestureDetector(
                    onTap: widget.cancelOnTap,
                    child: Container(
                      height: 20.w,
                      child: Text("下次再说",
                          style: TextStyle(
                              fontSize: 11.sp,
                              color: '#898996'.color,
                              fontWeight: FontWeight.w500)
                      ),
                    ),
                  ),

                  SizedBox(
                    height: 12.w,
                  ),
                ],
              ),
            )
          ],
        ),
      ),
    );
  }
}