Guest User

Edit

a guest
Jan 22nd, 2020
76
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. import 'package:bb_storage_inventory/models/category.dart';
  3. import 'package:bb_storage_inventory/services/abstract/firebase.entity.dart';
  4. import 'package:bb_storage_inventory/services/categories.dart';
  5. import 'package:bb_storage_inventory/views/abstract/firebase.entity.edit.widget.dart';
  6. import 'package:firebase_auth/firebase_auth.dart';
  7. import 'package:flutter/material.dart';
  8.  
  9. class CategoryEdit extends FirebaseEntityEditWidget<Category> {
  10.   CategoryEdit({Key key, @required Category category}) : super(key: key, itemModel: category);
  11.  
  12.   @override
  13.   _CategoryEditState createState() => _CategoryEditState();
  14. }
  15.  
  16. class _CategoryEditState extends FirebaseEntityEditWidgetState<Category, Categories, CategoryEdit>  {
  17.   @override
  18.   FirebaseEntityModel newModelInstanceProvider() {
  19.     return new Category();
  20.   }
  21.  
  22.   @override
  23.   FirebaseEntity<FirebaseEntityModel> serviceInstanceProvider(FirebaseUser userInstance) {
  24.     return new Categories(userInstance.uid);
  25.   }
  26.  
  27.   @override
  28.   String get appBarEditTitle => "Add / Edit a Category";
  29.  
  30.   /// Returns the body of this widget.
  31.   @override
  32.   List<Widget> get bodyWidgets {
  33.     return <Widget>[
  34.       Form(
  35.         child: Container(
  36.           padding: EdgeInsets.symmetric(horizontal: 25),
  37.           child: Column(
  38.             children: <Widget>[
  39.               SizedBox(height: 20.0),
  40.               TextFormField(
  41.                 decoration: InputDecoration(
  42.                   labelText: 'Name'
  43.                 ),
  44.                 initialValue: currentItem.name,
  45.                 onChanged: (String value) {
  46.                   setState(() {
  47.                     this.currentItem.name = value;
  48.                   });
  49.                 }
  50.               ),
  51.               SizedBox(height: 20.0),
  52.               TextFormField(
  53.                 decoration: InputDecoration(
  54.                   labelText: 'Icon'
  55.                 ),
  56.                 initialValue: currentItem.icon,
  57.                 onChanged: (String value) {
  58.                   setState(() {
  59.                     this.currentItem.icon = value;
  60.                   });
  61.                 }
  62.               )
  63.             ],
  64.           )
  65.         )
  66.       )
  67.     ];
  68.   }
  69. }
RAW Paste Data