public EditFavoriteScreen(
     EditFavoriteScreenViewModel viewModel,
     EditFavoriteScreenActionModel actionModel,
     Key key = null
     ) : base(key: key)
 {
     this.viewModel   = viewModel;
     this.actionModel = actionModel;
 }
 public override Widget build(BuildContext context)
 {
     return(new StoreConnector <AppState, EditFavoriteScreenViewModel>(
                converter: state => new EditFavoriteScreenViewModel {
         tagId = this.tagId,
         favoriteTagDict = state.favoriteState.favoriteTagDict
     },
                builder: (context1, viewModel, dispatcher) => {
         var actionModel = new EditFavoriteScreenActionModel {
             mainRouterPop = () => dispatcher.dispatch(new MainNavigatorPopAction()),
             editFavoriteTag = (tagId, iconStyle, name, description) =>
                               dispatcher.dispatch <IPromise>(Actions.editFavoriteTag(tagId: tagId, iconStyle: iconStyle,
                                                                                      name: name, description: description)),
             createFavoriteTag = (iconStyle, name, description) =>
                                 dispatcher.dispatch <IPromise>(Actions.createFavoriteTag(iconStyle: iconStyle, name: name,
                                                                                          description: description))
         };
         return new EditFavoriteScreen(viewModel: viewModel, actionModel: actionModel);
     }
                ));
 }