//import 'package:diplomaticquarterapp/pages/BookAppointment/Search.dart'; import 'package:diplomaticquarterapp/config/size_config.dart'; import 'package:diplomaticquarterapp/pages/BookAppointment/Search.dart'; import 'package:flutter/material.dart'; import 'package:giffy_dialog/giffy_dialog.dart'; import 'package:url_launcher/url_launcher.dart'; import 'package:maps_launcher/maps_launcher.dart'; import '../NearestEr.dart'; class CardPosition extends StatelessWidget { final image; final text; final subText; final type; final telephone; final networkImage; final latitude; final longitude; final projectname; const CardPosition( { @required this.image, @required this.text, @required this.subText, @required this.type, @required this.telephone, @required this.networkImage , @required this.latitude, @required this.longitude, @required this.projectname , }); @override Widget build(BuildContext context) { return GestureDetector( onTap: () { navigateToSearch(context, this.type,this.telephone,this.networkImage,this.latitude,this.longitude,this.projectname); }, child: Container( width:MediaQuery.of(context).size.width * 0.47,//165, margin: EdgeInsets.fromLTRB(7.0, 7.0, 7.0, 7.0), decoration: BoxDecoration(boxShadow: [ BoxShadow(color: Colors.grey[400], blurRadius: 2.0, spreadRadius: 0.0) ], borderRadius: BorderRadius.circular(10), color: Colors.white), child: Column( crossAxisAlignment: CrossAxisAlignment.center, children: [ Container( margin: EdgeInsets.fromLTRB(10.0, 10.0, 10.0, 0.0), child: Text(this.text, overflow: TextOverflow.clip, style: TextStyle( color: Colors.black, letterSpacing: 1.0, fontSize: 2 * SizeConfig.textMultiplier)), ), Container( alignment: Alignment.center, margin: EdgeInsets.fromLTRB(0.0, 0.0, 10.0, 8.0), child: Image.asset(this.image, width: 60.0, height: 60.0), ), Container( margin: EdgeInsets.fromLTRB(10.0, 0.0, 10.0, 0.0), child: Text(this.subText, overflow: TextOverflow.clip, style: TextStyle( color: Color(0xFFc5272d), letterSpacing: 1.0, fontSize: 15.0)), ), ], ), ), ); } Future navigateToSearch(context, type,telephone,networkImage,latitude,longitude,projectname) async { showDialog( context: context,builder: (_) => AssetGiffyDialog( title: Text(projectname, style: TextStyle( fontSize: 22.0, fontWeight: FontWeight.w600), ),image:Image.network(networkImage, fit: BoxFit.cover,), buttonOkText:Text("LOCATION"), buttonOkColor: Colors.grey, buttonCancelText:Text('CAll') , buttonCancelColor: Colors.grey, onOkButtonPressed: () { MapsLauncher.launchCoordinates(double.parse(latitude),double.parse(longitude),projectname);}, onCancelButtonPressed :() {launch("tel://" +telephone);} ) ); } }