Ejemplo n.º 1
0
        public View GetView(OutputFieldMetadata outputField,
                            object value,
                            MyFormHandler myFormHandler,
                            FormMetadata formMetadata,
                            List <FormInputManager> inputsManager)
        {
            var formLink = value.CastTObject <FormLink>();

            this.Layout = new LinearLayout(Application.Context)
            {
                Orientation = Orientation.Horizontal
            };
            var link = new TextView(Application.Context)
            {
                Text = outputField.Label + ": "
            };

            myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("TextView", link);
            this.Layout.AddView(link);

            if (formLink != null)
            {
                var text = this.InitializeLink(formLink, myFormHandler);
                myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("Link", text);
                this.Layout.AddView(text);
            }

            return(this.Layout);
        }
Ejemplo n.º 2
0
        public View GetView(OutputFieldMetadata outputField,
                            object value,
                            MyFormHandler myFormHandler,
                            FormMetadata formMetadata,
                            List <FormInputManager> inputsManager)
        {
            this.OutputList = new LinearLayout(Application.Context)
            {
                Orientation = Orientation.Vertical
            };
            var label = new TextView(Application.Context)
            {
                Text = outputField.Label
            };

            label.LayoutParameters = label.WrapContent();
            myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("TextView", label);
            this.OutputList.AddView(label);
            var list     = value.CastTObject <ObjectList <object> >();
            var listView = new ListView(Application.Context);
            var adapter  = new ListCustomAdapter <object>(list.Items.ToList(), list.Metadata, myFormHandler);

            listView.Adapter          = adapter;
            listView.LayoutParameters = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, listView.GetListHeigth());
            myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("ListView", listView);
            this.OutputList.AddView(listView);
            return(this.OutputList);
        }
Ejemplo n.º 3
0
        public UIView GetView(OutputFieldMetadata outputField,
                              object value,
                              MyFormHandler myFormHandler,
                              FormMetadata formMetadata,
                              List <FormInputManager> inputsManager,
                              int yAxis)
        {
            var formLink = value.CastTObject <FormLink>();
            var size     = new CGSize(UIScreen.MainScreen.Bounds.Width - 40, 30);

            this.OutputView = new UITextView
            {
                Text      = outputField.Label + ": " + formLink.Label,
                Frame     = new CGRect(new CGPoint(20, yAxis), size),
                TextColor = UIColor.Blue
            };

            var gesture = new UITapGestureRecognizer();

            gesture.AddTarget(() =>
            {
                var metadata = myFormHandler.GetFormMetadataAsync(formLink.Form);
                myFormHandler.FormWrapper.UpdateView(myFormHandler, new FormParameter(metadata, formLink.InputFieldValues));
            });
            this.OutputView.AddGestureRecognizer(gesture);
            return(this.OutputView);
        }
Ejemplo n.º 4
0
        public View GetView(OutputFieldMetadata outputField,
                            object value,
                            MyFormHandler myFormHandler,
                            FormMetadata formMetadata,
                            List <FormInputManager> inputsManager)
        {
            this.Layout = new FlexboxLayout(Application.Context);
            var tabstrip   = value.CastTObject <Tabstrip>();
            var currentTab = tabstrip.Tabs.SingleOrDefault(a => a.Form == tabstrip.CurrentTab);

            foreach (var tab in tabstrip.Tabs)
            {
                if (tab != null)
                {
                    var tv = new TextView(Application.Context)
                    {
                        Text = tab.Label
                    };

                    tv.Click += async(sender, args) =>
                    {
                        var metadata = myFormHandler.GetFormMetadata(tab.Form);

                        myFormHandler.FormWrapper.UpdateView(myFormHandler, new FormParameter(metadata, tab.InputFieldValues));
                    };

                    myFormHandler.ManagersCollection.StyleRegister.ApplyStyle(tab == currentTab ? "Tab CurrentTab" : "Tab", tv);
                    this.Layout.AddView(tv);
                    this.Layout.FlexDirection = FlexboxLayout.FlexDirectionRow;
                    this.Layout.FlexWrap      = FlexboxLayout.FlexWrapWrap;
                }
            }
            return(this.Layout);
        }
Ejemplo n.º 5
0
        private Button CreateLoadMoreButton(MyFormHandler myFormHandler,
                                            FormMetadata formMetadata,
                                            OutputFieldMetadata outputField,
                                            ListView listView,
                                            List <FormInputManager> inputsManager,
                                            Dictionary <string, FormMetadata> allFormsMetadata)
        {
            var btnLoadMore = new Button(Application.Context)
            {
                Text = "Load More"
            };

            btnLoadMore.Click += async(sender, args) =>
            {
                this.PageIndex++;
                var paginator = inputsManager.Find(a => a.Input.Type == "paginator");
                paginator.Manager.SetValue(new Paginator
                {
                    PageSize  = 10,
                    PageIndex = this.PageIndex
                });
                var response = await myFormHandler.HandleFormAsync(formMetadata, inputsManager);

                object responsevalue;
                if (response.Data.GetType() == typeof(JObject))
                {
                    var jsonObj = (JObject)response.Data;
                    responsevalue = jsonObj.GetValue(outputField.Id, StringComparison.OrdinalIgnoreCase);
                }
                else
                {
                    var propertyInfo = response.Data.GetType().GetProperty(outputField.Id);
                    responsevalue = propertyInfo?.GetValue(response.Data, null);
                }

                var paginatedData = responsevalue.CastTObject <PaginatedData <object> >();
                var newList       = paginatedData.Results.ToList();

                if (newList.Any())
                {
                    foreach (var item in newList)
                    {
                        this.ItemList.Add(item);
                    }
                }
                //// Appending new data to menuItems ArrayList
                listView.Refresh(this.ItemList, outputField, myFormHandler, allFormsMetadata);

                // Setting new scroll position
                listView.SetSelectionFromTop(10 * (this.PageIndex - 1), 0);
                listView.LayoutParameters = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, listView.GetListHeigth());

                if (this.ItemList.Count == this.TotalCount)
                {
                    btnLoadMore.Visibility = ViewStates.Invisible;
                }
            };

            return(btnLoadMore);
        }
Ejemplo n.º 6
0
        public UIView GetView(OutputFieldMetadata outputField,
                              object value,
                              MyFormHandler myFormHandler,
                              FormMetadata formMetadata,
                              List <FormInputManager> inputsManager,
                              int yAxis)
        {
            this.OutputView = new UIView();
            var actions = value?.CastTObject <ActionList>();

            if (actions != null)
            {
                int y = 0;
                foreach (var btn in actions.Actions)
                {
                    var button = this.InitializeActionButton(btn, myFormHandler, y);
                    y += 40;
                    this.OutputView.AddSubview(button);
                }
                var size = new CGSize(UIScreen.MainScreen.Bounds.Width - 40, actions.Actions.Count * 40);
                this.OutputView.Frame = new CGRect(new CGPoint(20, yAxis), size);
            }

            return(this.OutputView);
        }
Ejemplo n.º 7
0
        public View GetView(OutputFieldMetadata outputField,
                            object value,
                            MyFormHandler myFormHandler,
                            FormMetadata formMetadata,
                            List <FormInputManager> inputsManager)
        {
            this.OutputList = new LinearLayout(Application.Context)
            {
                Orientation = Orientation.Vertical
            };
            if (!string.IsNullOrEmpty(outputField.Label))
            {
                var label = new TextView(Application.Context)
                {
                    Text = outputField.Label + ": "
                };
                label.LayoutParameters = label.WrapContent();
                myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("TextView", label);
                this.OutputList.AddView(label);
            }
            var list     = value.CastTObject <IList <object> >();
            var listView = list.IntializeListView(outputField, myFormHandler);

            listView.LayoutParameters = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, listView.GetListHeigth());
            myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("ListView", listView);
            this.OutputList.AddView(listView);
            return(this.OutputList);
        }
Ejemplo n.º 8
0
        public View GetView(OutputFieldMetadata outputField,
                            object value,
                            MyFormHandler myFormHandler,
                            FormMetadata formMetadata,
                            List <FormInputManager> inputsManager)
        {
            this.OutputView = new LinearLayout(Application.Context)
            {
                Orientation = Orientation.Vertical
            };
            var label = new TextView(Application.Context)
            {
                Text = outputField.Label
            };

            label.LayoutParameters = label.WrapContent();
            myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("TextView", label);
            this.OutputView.AddView(label);
            var formInstance = value.CastTObject <FormInstanceModel>();

            foreach (var formInstanceValue in formInstance.Values)
            {
                var textView = new TextView(Application.Context)
                {
                    Text = formInstanceValue.Label + ": " + formInstanceValue.Value
                };
                textView.LayoutParameters = textView.WrapContent();
                myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("TextView", textView);
                this.OutputView.AddView(textView);
            }
            return(this.OutputView);
        }
Ejemplo n.º 9
0
        public IEnumerable <Column <object> > GetColumns(string field, OutputFieldMetadata outputFieldMetadata, IList <object> data)
        {
            if (outputFieldMetadata.CustomProperties != null &&
                outputFieldMetadata.CustomProperties.TryGetValue("hiddenInExcel", out var _))
            {
                yield break;
            }

            var label = outputFieldMetadata.Label;

            var factory = ColumnRegistry.Default.FactoryFor(outputFieldMetadata.Type);

            if (factory != null)
            {
                var columns = factory.GetColumn(field, outputFieldMetadata, data);
                foreach (var column in columns)
                {
                    yield return(column);
                }
            }

            else if (field != null)
            {
                yield return(new Column <object>(
                                 label,
                                 row => new CellData(row.GetPropertyValue(field))));
            }
        }
Ejemplo n.º 10
0
        public UIView GetView(OutputFieldMetadata outputField,
                              object value,
                              MyFormHandler myFormHandler,
                              FormMetadata formMetadata,
                              List <FormInputManager> inputsManager,
                              int yAxis)
        {
            var list       = ((IEnumerable <object>)value).ToList();
            var properties = list[0].GetType().GetProperties();
            var height     = properties.Length * 25 * list.Count;

            this.OutputList = new UIView();
            var size = new CGSize(UIScreen.MainScreen.Bounds.Width - 40, height + 30);

            this.OutputList.Frame = new CGRect(new CGPoint(20, yAxis), size);
            var label = new UITextView {
                Text = outputField.Label
            };
            var labelSize = new CGSize(UIScreen.MainScreen.Bounds.Width - 40, 30);

            label.Frame = new CGRect(new CGPoint(0, 0), labelSize);
            this.OutputList.AddSubview(label);
            var listViewSize = new CGSize(UIScreen.MainScreen.Bounds.Width - 40, height);
            var listView     = new UITableView(new CGRect(new CGPoint(10, 30), listViewSize))
            {
                //Source = new CustomTableViewController(list)
            };

            this.OutputList.AddSubview(listView);

            return(this.OutputList);
        }
Ejemplo n.º 11
0
        public UIView GetView(OutputFieldMetadata outputField,
                              object value,
                              MyFormHandler myFormHandler,
                              FormMetadata formMetadata,
                              List <FormInputManager> inputsManager,
                              int yAxis)
        {
            var paginatedData = value.CastTObject <PaginatedData <object> >();

            this.ItemList   = paginatedData.Results.ToList();
            this.TotalCount = paginatedData.TotalCount;

            var outputFieldProperty = outputField.CustomProperties.GetCustomProperty <IEnumerable <OutputFieldMetadata> >("columns");

            this.OutputList = new UIView();
            this.OutputList.UserInteractionEnabled = true;
            var label = new UITextView {
                Text = outputField.Label
            };
            var labelSize = new CGSize(UIScreen.MainScreen.Bounds.Width - 40, 30);

            label.Frame = new CGRect(new CGPoint(0, 0), labelSize);
            this.OutputList.AddSubview(label);


            UITableView tableView = new UITableView();

            tableView.Frame           = UIScreen.MainScreen.Bounds;
            tableView.AllowsSelection = false;
            // tableView.IndexPathForCell()
            var listViewSize = new CGSize(tableView.Frame.Width, tableView.Frame.Height);

            tableView.Source = new CustomTableViewController <object>(this.ItemList, outputFieldProperty, myFormHandler, this.OutputList);

            var listView = new UITableView(new CGRect(new CGPoint(10, 30), listViewSize))
            {
                Source = new CustomTableViewController <object>(this.ItemList, outputFieldProperty, myFormHandler, this.OutputList)
            };


            if (this.TotalCount > 10)
            {
                if (formMetadata != null)
                {
                    //var btnLoadMore = this.CreateLoadMoreButton(myFormHandler, formMetadata, outputField, listView, inputsManager, myFormHandler.AllFormsMetadata);
                    //listView.TableFooterView = btnLoadMore;
                }
            }

            listView.ContentInset     = UIEdgeInsets.Zero;
            listView.AutoresizingMask =
                UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight;     //for resizing (switching from table to portait for example)
            listView.Bounces = false;
            listView.SetContentOffset(CGPoint.Empty, false);
            this.OutputList.AddSubview(tableView);
            this.OutputList.Frame = new CGRect(new CGPoint(20, yAxis), listViewSize);
            return(this.OutputList);
        }
Ejemplo n.º 12
0
        public static ListView IntializeListView(this IList <object> itemList, OutputFieldMetadata outputField, MyFormHandler myFormHandler)
        {
            var listView            = new ListView(Application.Context);
            var outputFieldProperty = outputField.CustomProperties.GetCustomProperty <IEnumerable <OutputFieldMetadata> >("columns");
            var adapter             = new ListCustomAdapter <object>(itemList.ToList(), outputFieldProperty, myFormHandler);

            listView.Adapter = adapter;
            return(listView);
        }
Ejemplo n.º 13
0
 public View GetView(OutputFieldMetadata outputField, object value, MyFormHandler myFormHandler, FormMetadata formMetadata, List <FormInputManager> inputsManager)
 {
     this.OutputText = new TextView(Application.Context)
     {
         Text = outputField.Label + ": " + value
     };
     myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("TextView", this.OutputText);
     return(this.OutputText);
 }
Ejemplo n.º 14
0
        public UIView GetView(OutputFieldMetadata outputField,
                              object value,
                              MyFormHandler myFormHandler,
                              FormMetadata formMetadata,
                              List <FormInputManager> inputsManager,
                              int yAxis)
        {
            this.OutputView = new UIView();
            var labelSize = new CGSize(UIScreen.MainScreen.Bounds.Width - 40, 30);

            this.OutputView.Frame = new CGRect(new CGPoint(20, yAxis), labelSize);

            var tabstrip   = value.CastTObject <Tabstrip>();
            var currentTab = tabstrip.Tabs.SingleOrDefault(a => a.Form == tabstrip.CurrentTab);

            var x     = 0;
            var width = UIScreen.MainScreen.Bounds.Width - 60;

            foreach (var tab in tabstrip.Tabs)
            {
                var size = new CGSize(width / tabstrip.Tabs.Count, 30);
                if (tab != null)
                {
                    var tv = new UITextView
                    {
                        Text      = tab.Label,
                        Frame     = new CGRect(new CGPoint(x, 0), size),
                        TextColor = UIColor.LightGray
                    };
                    nfloat borderWidth = 2;
                    var    border      = new CALayer
                    {
                        BorderColor = UIColor.LightGray.CGColor,
                        Frame       = new CGRect(0, tv.Frame.Size.Height - borderWidth, tv.Frame.Size.Width - 20, tv.Frame.Size.Height),
                        BorderWidth = width
                    };

                    x += (int)tv.Frame.Width;
                    UITapGestureRecognizer gesture = new UITapGestureRecognizer();
                    gesture.AddTarget(() =>
                    {
                        var metadata = myFormHandler.GetFormMetadataAsync(tab.Form);
                        myFormHandler.FormWrapper.UpdateView(myFormHandler, new FormParameter(metadata, tab.InputFieldValues));
                    });
                    tv.AddGestureRecognizer(gesture);
                    if (tab == currentTab)
                    {
                        tv.TextColor       = UIColor.Black;
                        border.BorderColor = UIColor.Black.CGColor;
                    }
                    tv.Layer.AddSublayer(border);
                    tv.Layer.MasksToBounds = true;
                    this.OutputView.AddSubview(tv);
                }
            }
            return(this.OutputView);
        }
Ejemplo n.º 15
0
        public View GetView(OutputFieldMetadata outputField,
                            object value,
                            MyFormHandler myFormHandler,
                            FormMetadata formMetadata,
                            List <FormInputManager> inputsManager)
        {
            this.OutputList = new LinearLayout(Application.Context)
            {
                Orientation = Orientation.Vertical
            };
            if (!string.IsNullOrEmpty(outputField.Label))
            {
                var label = new TextView(Application.Context)
                {
                    Text = outputField.Label + ": "
                };
                this.OutputList.AddView(label, this.OutputList.MatchParentWrapContent());
                myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("TextView", label);
            }

            var paginatedData = value.CastTObject <PaginatedData <object> >();

            this.ItemList   = paginatedData.Results.ToList();
            this.TotalCount = paginatedData.TotalCount;

            var listView = this.ItemList.IntializeListView(outputField, myFormHandler);

            if (this.TotalCount > 10)
            {
                if (formMetadata != null)
                {
                    var btnLoadMore = this.CreateLoadMoreButton(myFormHandler, formMetadata, outputField, listView, inputsManager,
                                                                myFormHandler.AllFormsMetadata);
                    myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("Button Link LoadMore", btnLoadMore);
                    listView.AddFooterView(btnLoadMore);
                }
            }

            if (this.ItemList.Count == 0)
            {
                var noResult = new TextView(Application.Context)
                {
                    Text = "no data."
                };
                noResult.LayoutParameters = noResult.MatchParentWrapContent();
                myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("TextView NoResult", noResult);
                this.OutputList.AddView(noResult);
            }
            listView.LayoutParameters = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, listView.GetListHeigth());
            myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("ListView", listView);
            this.OutputList.AddView(listView);
            return(this.OutputList);
        }
Ejemplo n.º 16
0
        public static ListView Refresh(this ListView listView,
                                       IList <object> newItemList,
                                       OutputFieldMetadata outputField,
                                       MyFormHandler myFormHandler,
                                       Dictionary <string, FormMetadata> allFormsMetadata)
        {
            var outputFieldProperty = outputField.CustomProperties.GetCustomProperty <IEnumerable <OutputFieldMetadata> >("columns");
            var adapter             = new ListCustomAdapter <object>(newItemList.ToList(), outputFieldProperty, myFormHandler);

            listView.Adapter = adapter;
            return(listView);
        }
Ejemplo n.º 17
0
        public View GetView(OutputFieldMetadata outputField,
                            object value,
                            MyFormHandler myFormHandler,
                            FormMetadata formMetadata,
                            List <FormInputManager> inputsManager)
        {
            var inlineForm = value.CastTObject <InlineForm>();

            this.LayouView = myFormHandler.GetIForm(inlineForm.Form, inlineForm.InputFieldValues);

            return(this.LayouView);
        }
Ejemplo n.º 18
0
        public View GetView(OutputFieldMetadata outputField,
                            object value,
                            MyFormHandler myFormHandler,
                            FormMetadata formMetadata,
                            List <FormInputManager> inputsManager)
        {
            var list = value.CastTObject <IEnumerable <object> >();

            this.OutputText = new TextView(Application.Context)
            {
                Text = outputField.Label + ": " + string.Join(", ", list)
            };
            myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("TextView", this.OutputText);
            return(this.OutputText);
        }
        public override IEnumerable <Column <object> > GetColumn(string field, OutputFieldMetadata outputFieldMetadata, IList <object> data)
        {
            yield return(new Column <object>(
                             outputFieldMetadata.Label,
                             row =>
            {
                var value = row.GetPropertyValue(field);

                if (!(value is bool boolean))
                {
                    return new CellData(null);
                }

                return new CellData(boolean.ToYesOrNoString());
            }));
        public override IEnumerable <Column <object> > GetColumn(string field, OutputFieldMetadata outputFieldMetadata, IList <object> data)
        {
            yield return(new Column <object>(
                             outputFieldMetadata.Label,
                             row =>
            {
                var value = row.GetPropertyValue(field);

                if (!(value is HtmlString htmlString))
                {
                    return new CellData(null);
                }

                return new CellData(htmlString.Value.GetPlainTextFromHtml());
            }));
Ejemplo n.º 21
0
        public override IEnumerable <Column <object> > GetColumn(string field, OutputFieldMetadata outputFieldMetadata, IList <object> data)
        {
            yield return(new Column <object>(
                             outputFieldMetadata.Label,
                             row =>
            {
                var value = row.GetPropertyValue(field);

                if (!(value is Alert alert))
                {
                    return new CellData(null);
                }

                return new CellData(alert.Heading);
            }));
Ejemplo n.º 22
0
	    public UIView GetView(OutputFieldMetadata outputField,
	        object value,
	        MyFormHandler myFormHandler,
	        FormMetadata formMetadata,
	        List<FormInputManager> inputsManager,
	        int yAxis)
	    {
	        this.OutputText = new UITextView();
	        if (value != null)
	        {
	            this.OutputText.Text = outputField.Label + ": " + value;
	            var labelSize = new CGSize(UIScreen.MainScreen.Bounds.Width - 40, 30);
	            this.OutputText.Frame = new CGRect(new CGPoint(20, yAxis), labelSize);
	        }
	        return this.OutputText;
	    }
Ejemplo n.º 23
0
        public override IEnumerable <Column <object> > GetColumn(string field, OutputFieldMetadata outputFieldMetadata, IList <object> data)
        {
            yield return(new Column <object>(
                             outputFieldMetadata.Label,
                             row =>
            {
                var value = row.GetPropertyValue(field);

                if (!(value is Link link))
                {
                    return new CellData(null);
                }

                var siteRoot = ConfigurationReader.GetConfigurations().GetSection("AppConfig")["SiteRoot"];
                var url = siteRoot + link.Url;
                return new CellData(link.Anchor, url);
            }));
Ejemplo n.º 24
0
        public UIView GetView(OutputFieldMetadata outputField,
                              object value,
                              MyFormHandler myFormHandler,
                              FormMetadata formMetadata,
                              List <FormInputManager> inputsManager,
                              int yAxis)
        {
            this.OutputText = new UITextView();
            if (value != null)
            {
                DateTime datetime = value.CastTObject <DateTime>();
                this.OutputText.Text = outputField.Label + ": " + datetime.ToShortDateString();

                var labelSize = new CGSize(UIScreen.MainScreen.Bounds.Width - 40, 30);
                this.OutputText.Frame = new CGRect(new CGPoint(20, yAxis), labelSize);
            }
            return(this.OutputText);
        }
Ejemplo n.º 25
0
        public override IEnumerable <Column <object> > GetColumn(string field, OutputFieldMetadata outputFieldMetadata, IList <object> data)
        {
            yield return(new Column <object>(
                             outputFieldMetadata.Label,
                             row =>
            {
                var value = row.GetPropertyValue(field);

                if (value == null)
                {
                    return new CellData(null);
                }

                return new CellData(Convert.ToDateTime(row.GetPropertyValue(field)))
                {
                    NumberFormat = "yyyy-MM-dd HH:mm:ss"
                };
            }));
        }
Ejemplo n.º 26
0
        public View GetView(OutputFieldMetadata outputField, object value, MyFormHandler myFormHandler, FormMetadata formMetadata, List <FormInputManager> inputsManager)
        {
            this.OutputText = new TextView(Application.Context);
            myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("TextView", this.OutputText);
            if (value != null)
            {
                var result = "";
                if (value.GetType() == typeof(JValue))
                {
                    var jValue = (JValue)value;
                    if (jValue.HasValues)
                    {
                        var datetime = jValue.CastTObject <DateTime>();
                        result = datetime.ToShortDateString();
                    }
                }

                this.OutputText.Text = outputField.Label + ": " + result;
            }

            return(this.OutputText);
        }
Ejemplo n.º 27
0
        public override IEnumerable <Column <object> > GetColumn(string field, OutputFieldMetadata outputFieldMetadata, IList <object> data)
        {
            yield return(new Column <object>(
                             outputFieldMetadata.Label,
                             row =>
            {
                var value = row.GetPropertyValue(field);

                if (!(value is FormLink formLink))
                {
                    return new CellData(null);
                }

                var siteRoot = ConfigurationReader.GetConfigurations().GetSection("AppConfig")["SiteRoot"];
                if (string.IsNullOrEmpty(formLink.Form))
                {
                    return new CellData(formLink.Label);
                }

                var query = formLink.InputFieldValues.Select(t => t.Key + "=" + t.Value).Join("&");
                var url = siteRoot + "#/form/" + formLink.Form + "?" + query;
                return new CellData(formLink.Label, url);
            }));
Ejemplo n.º 28
0
        public View GetView(OutputFieldMetadata outputField,
                            object value,
                            MyFormHandler myFormHandler,
                            FormMetadata formMetadata,
                            List <FormInputManager> inputsManager)
        {
            this.OutputView = new FlexboxLayout(Application.Context);
            var actions = value.CastTObject <ActionList>();

            if (actions != null)
            {
                foreach (var btn in actions.Actions)
                {
                    var button = this.InitializeActionButton(btn, myFormHandler);

                    myFormHandler.ManagersCollection.StyleRegister.ApplyStyle("Button", button);
                    this.OutputView.AddView(button);
                    this.OutputView.FlexDirection = FlexboxLayout.FlexDirectionRow;
                    this.OutputView.FlexWrap      = FlexboxLayout.FlexWrapWrap;
                }
            }

            return(this.OutputView);
        }
Ejemplo n.º 29
0
 public abstract IEnumerable <Column <object> > GetColumn(string field, OutputFieldMetadata outputFieldMetadata, IList <object> data);