apiurl.dart 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import 'package:flutter/material.dart';
  2. import 'package:get/get.dart';
  3. import '../controller.dart';
  4. import '../socket.dart' as socket;
  5. class _SetApiUrl extends StatefulWidget {
  6. @override
  7. _SetApiUrlState createState() => _SetApiUrlState();
  8. }
  9. class _SetApiUrlState extends State<_SetApiUrl> {
  10. String apiUrl;
  11. Controller controller = Get.find();
  12. @override
  13. Widget build(BuildContext context) {
  14. if (controller == null) {
  15. return null;
  16. }
  17. return Dialog(child: Column(
  18. children: <Widget>[
  19. Text('Current value: ${controller.apiUrl}'),
  20. TextField(
  21. onChanged: (newValue) {
  22. this.apiUrl = newValue;
  23. },
  24. decoration: InputDecoration(
  25. border: InputBorder.none,
  26. hintText: 'Set API URL',
  27. ),
  28. ),
  29. TextButton(
  30. child: Text('Set'),
  31. onPressed: () {
  32. socket.setApiUrl(controller, this.apiUrl);
  33. Navigator.pop(context);
  34. },
  35. ),
  36. ],
  37. ));
  38. }
  39. }
  40. Widget widgetBuilderSetApiUrl(BuildContext context) {
  41. return _SetApiUrl();
  42. }