Exemplo n.º 1
0
        protected override IGridDataCellBuilder CreateDisplayBuilderCore(IGridHtmlHelper htmlHelper)
        {
            if (Template != null || InlineTemplate != null)
            {
                return(base.CreateDisplayBuilderCore(htmlHelper));
            }

            IGridDataCellBuilder builder;

            if (!Format.HasValue() && Encoded && !typeof(TModel).IsDataRow() && !typeof(TModel).IsDynamicObject())
            {
                builder = new GridDisplayForCellBuilder <TModel, TValue>
                {
                    Expression  = Expression,
                    ViewContext = Grid.ViewContext
                };

                builder.HtmlAttributes.Merge(HtmlAttributes);

                return(builder);
            }

            builder = new GridDataCellBuilder <TModel, TValue>
            {
                Encoded = Encoded,
                Format  = Format,
                Value   = Value,
            };
            builder.HtmlAttributes.Merge(HtmlAttributes);

            return(builder);
        }
Exemplo n.º 2
0
        public override IEnumerable<IGridActionCommandRenderer> CreateActionRenderer(IGridHtmlHelper helper, IGridUrlHelper urlHelper)
        {
            var action = CreateAction<GridActionLinkHtmlRenderer>("Изменить");

            action.Link = urlHelper.GetEditUrl;

            return new[] {action};
        }
Exemplo n.º 3
0
        protected override IGridDataCellBuilder CreateInsertBuilderCore(IGridHtmlHelper htmlHelper)
        {
            var urlBuilder = Grid.UrlBuilder;

            var buttons = Commands.SelectMany(command => command.CreateInsertButtons(urlBuilder, htmlHelper));

            return(new GridActionCellBuilder(buttons.Select(button => (Func <object, IHtmlNode>)button.Create)));
        }
        public override IEnumerable<IGridButtonBuilder> CreateDisplayButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var button = CreateButton<GridLinkButtonBuilder>(Text, UIPrimitives.Grid.Select);

            button.SpriteCssClass = "k-select";
            button.Url = urlBuilder.SelectUrl;

            return new[] { button };
        }
Exemplo n.º 5
0
        public virtual IGridDataCellBuilder CreateDisplayBuilder(IGridHtmlHelper htmlHelper)
        {
            var builder = CreateDisplayBuilderCore(htmlHelper);

            Decorate(builder);

            builder.Callback = CreateCallback(builder, false, false);

            return(builder);
        }
Exemplo n.º 6
0
        public IGridDataCellBuilder CreateInsertBuilder(IGridHtmlHelper htmlHelper)
        {
            var builder = CreateInsertBuilderCore(htmlHelper);

            Decorate(builder);

            builder.Callback = CreateCallback(builder, true, false);

            return(builder);
        }
Exemplo n.º 7
0
        protected override IGridDataCellBuilder CreateDisplayBuilderCore(IGridHtmlHelper htmlHelper)
        {
            var urlBuilder = Grid.UrlBuilder;

            var buttons = Commands.SelectMany(command => command.CreateDisplayButtons(urlBuilder, htmlHelper));

            GridActionCellBuilder builder = new GridActionCellBuilder(buttons.Select(button => (Func <object, IHtmlNode>)button.Create));

            builder.HtmlAttributes.Merge(HtmlAttributes);

            return(builder);
        }
Exemplo n.º 8
0
        public override IEnumerable<IGridButtonBuilder> CreateDisplayButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var deleteButton = CreateButton<GridFormButtonBuilder>(Text, UIPrimitives.Grid.Delete);

            deleteButton.Url = urlBuilder.DeleteUrl;

            deleteButton.HtmlHelper = htmlHelper;

            deleteButton.SpriteCssClass = "k-delete";

            return new[] { deleteButton };
        }
        public override IEnumerable<IGridButtonBuilder> CreateDisplayButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var editButton = CreateButton<GridLinkButtonBuilder>(Text, UIPrimitives.Grid.Edit);

            editButton.Url = urlBuilder.EditUrl;

            editButton.SpriteCssClass = "k-edit";

            return new[]
            {
                editButton
            };
        }
        public override IEnumerable<IGridButtonBuilder> CreateInsertButtons(IGridLocalization localization, IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var cancelButton = CreateButton<GridLinkButtonBuilder>(localization.Cancel, UIPrimitives.Grid.Cancel);

            cancelButton.Url = urlBuilder.CancelUrl;

            cancelButton.SpriteCssClass = "t-cancel";

            var insertButton = CreateButton<GridButtonBuilder>(localization.Insert, UIPrimitives.Grid.Insert);
            insertButton.SpriteCssClass = "t-insert";
            insertButton.HtmlHelper = htmlHelper;

            return new IGridButtonBuilder[]
            {
                insertButton,
                cancelButton
            };
        }
Exemplo n.º 11
0
        protected override IGridDataCellBuilder CreateEditBuilderCore(IGridHtmlHelper htmlHelper)
        {
            if (!Grid.DataSource.IsReadOnly(Member))
            {
                var builder = new GridEditorForCellBuilder <TModel, TValue>()
                {
                    Expression         = Expression,
                    AdditionalViewData = AdditionalViewData,
                    ViewContext        = Grid.ViewContext,
                    TemplateName       = EditorTemplateName,
                    Member             = Member
                };
                builder.HtmlAttributes.Merge(HtmlAttributes);

                return(builder);
            }
            return(CreateDisplayBuilder(htmlHelper));
        }
Exemplo n.º 12
0
        protected virtual IGridDataCellBuilder CreateDisplayBuilderCore(IGridHtmlHelper htmlHelper)
        {
            var template = new HtmlTemplate <T>();

            if (Template != null)
            {
                template.CodeBlockTemplate = Template;
            }

            if (InlineTemplate != null)
            {
                template.InlineTemplate = InlineTemplate;
            }

            var builder = new GridTemplateCellBuilder <T>(template);

            builder.HtmlAttributes.Merge(HtmlAttributes);
            return(builder);
        }
Exemplo n.º 13
0
        public override IEnumerable<IGridButtonBuilder> CreateEditButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var cancelButton = CreateButton<GridLinkButtonBuilder>(CancelText, UIPrimitives.Grid.Cancel);

            cancelButton.Url = urlBuilder.CancelUrl;

            cancelButton.SpriteCssClass = "k-cancel";

            var updateButton = CreateButton<GridButtonBuilder>(UpdateText, UIPrimitives.Grid.Update);
            updateButton.ShouldAppendDataKeys = true;
            updateButton.SpriteCssClass = "k-update";
            updateButton.HtmlHelper = htmlHelper;

            return new IGridButtonBuilder[]
            {
                updateButton,
                cancelButton
            };
        }
Exemplo n.º 14
0
        protected override IGridDataCellBuilder CreateEditBuilderCore(IGridHtmlHelper htmlHelper)
        {
#if MVC2 || MVC3
            if (!ReadOnly)
            {
                var builder = new GridForeignKeyEditorForCellBuilder <TModel, TValue>()
                {
                    Expression         = Expression,
                    AdditionalViewData = AdditionalViewData,
                    ViewContext        = Grid.ViewContext,
                    TemplateName       = EditorTemplateName,
                    Member             = Member,
                    AppendViewData     = SerializeSelectList
                };

                builder.HtmlAttributes.Merge(HtmlAttributes);

                return(builder);
            }
#endif
            return(CreateDisplayBuilder(htmlHelper));
        }
Exemplo n.º 15
0
 public virtual IEnumerable <IGridButtonBuilder> CreateEditButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
 {
     return(new IGridButtonBuilder[0]);
 }
        public override IEnumerable <IGridButtonBuilder> CreateDisplayButtons(IGridLocalization localization, IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var button = CreateButton <GridLinkButtonBuilder>(Text, CssClass());

            button.Url = delegate { return(urlBuilder.Url(this)); };

            return(new[] { button });
        }
Exemplo n.º 17
0
        public override IEnumerable <IGridButtonBuilder> CreateDisplayButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var button = CreateButton <GridLinkButtonBuilder>(Text, UIPrimitives.Grid.Select);

            button.SpriteCssClass = "k-select";
            button.Url            = urlBuilder.SelectUrl;

            return(new[] { button });
        }
Exemplo n.º 18
0
 public virtual IEnumerable <IGridButtonBuilder> CreateInsertButtons(IGridLocalization localization, IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
 {
     return(new IGridButtonBuilder[0]);
 }
Exemplo n.º 19
0
 public IGridDataCellBuilder CreateInsertCellBuilder(IGridColumn column, IGridHtmlHelper htmlHelper)
 {
     return column.CreateInsertBuilder(htmlHelper);
 }
Exemplo n.º 20
0
 public IGridCellHtmlRenderer CreateCell(IGridColumn column, IGridHtmlHelper htmlHelper)
 {
     return column.CreateCellRenderer(htmlHelper);
 }
Exemplo n.º 21
0
 public IGridDataCellBuilder CreateInsertCellBuilder(IGridColumn column, IGridHtmlHelper htmlHelper)
 {
     return(column.CreateInsertBuilder(htmlHelper));
 }
Exemplo n.º 22
0
 public IGridDataCellBuilder CreateDisplayCellBuilder(IGridColumn column, IGridHtmlHelper htmlHelper)
 {
     return(column.CreateDisplayBuilder(htmlHelper));
 }
Exemplo n.º 23
0
 public abstract IEnumerable <IGridButtonBuilder> CreateDisplayButtons(IGridLocalization localization, IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper);
        public override IEnumerable <IGridButtonBuilder> CreateDisplayButtons(IGridLocalization localization, IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var factory = new GridButtonFactory();
            var button  = factory.CreateButton <GridLinkButtonBuilder>(ButtonType);

            button.CssClass           += " " + UIPrimitives.Grid.Add;
            button.SpriteCssClass      = "t-add";
            button.Text                = localization.AddNew;
            button.HtmlAttributes      = HtmlAttributes;
            button.ImageHtmlAttributes = ImageHtmlAttributes;
            button.Url = urlBuilder.AddUrl;

            return(new[] { button });
        }
 public override IEnumerable <IGridButtonBuilder> CreateEditButtons(IGridLocalization localization, IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
 {
     // TODO: Implement this method
     throw new NotImplementedException();
 }
Exemplo n.º 26
0
        public override IEnumerable <IGridButtonBuilder> CreateEditButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var cancelButton = CreateButton <GridLinkButtonBuilder>(CancelText, UIPrimitives.Grid.Cancel);

            cancelButton.Url = urlBuilder.CancelUrl;

            cancelButton.SpriteCssClass = "k-cancel";

            var updateButton = CreateButton <GridButtonBuilder>(UpdateText, UIPrimitives.Grid.Update);

            updateButton.ShouldAppendDataKeys = true;
            updateButton.SpriteCssClass       = "k-update";
            updateButton.HtmlHelper           = htmlHelper;

            return(new IGridButtonBuilder[]
            {
                updateButton,
                cancelButton
            });
        }
Exemplo n.º 27
0
 public IGridDataCellBuilder CreateDisplayCellBuilder(IGridColumn column, IGridHtmlHelper htmlHelper)
 {
     return column.CreateDisplayBuilder(htmlHelper);
 }
Exemplo n.º 28
0
        public override IEnumerable <IGridButtonBuilder> CreateInsertButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var cancelButton = CreateButton <GridLinkButtonBuilder>(CancelText, UIPrimitives.Grid.Cancel);

            cancelButton.Url = urlBuilder.CancelUrl;

            cancelButton.SpriteCssClass = "k-cancel";

            var insertButton = CreateButton <GridButtonBuilder>(UpdateText, UIPrimitives.Grid.Insert);

            insertButton.SpriteCssClass = "k-insert";
            insertButton.HtmlHelper     = htmlHelper;

            return(new IGridButtonBuilder[]
            {
                insertButton,
                cancelButton
            });
        }
Exemplo n.º 29
0
        public override IEnumerable <IGridButtonBuilder> CreateDisplayButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var factory = new GridButtonFactory();
            var button  = factory.CreateButton <GridLinkButtonBuilder>(ButtonType);

            button.CssClass      += " " + UIPrimitives.Grid.Add;
            button.SpriteCssClass = "k-add";
            button.Text           = Text;
            button.HtmlAttributes = HtmlAttributes;
            //TODO: Implement command button image html attributes
            //button.ImageHtmlAttributes = ImageHtmlAttributes;
            button.Url = urlBuilder.AddUrl;

            return(new[] { button });
        }
Exemplo n.º 30
0
        public override IEnumerable <IGridButtonBuilder> CreateDisplayButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var deleteButton = CreateButton <GridFormButtonBuilder>(Text, UIPrimitives.Grid.Delete);

            deleteButton.Url = urlBuilder.DeleteUrl;

            deleteButton.HtmlHelper = htmlHelper;

            deleteButton.SpriteCssClass = "k-delete";

            return(new[] { deleteButton });
        }
Exemplo n.º 31
0
 protected abstract IGridDataCellBuilder CreateInsertBuilderCore(IGridHtmlHelper htmlHelper);
Exemplo n.º 32
0
        public override IEnumerable <IGridButtonBuilder> CreateDisplayButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var button = CreateButton <GridLinkButtonBuilder>(Text, CssClass());

            button.Url = (dataItem) =>
            {
                var navigatable = new RequestSettings
                {
                    ActionName     = ActionName,
                    ControllerName = ControllerName,
                };

                navigatable.RouteValues.AddRange(RouteValues);

                var dataRouteValues = DataRouteValues.Cast <IDataKey>();

                if (SendDataKeys)
                {
                    dataRouteValues = dataRouteValues.Concat(urlBuilder.GetDataKeys());
                }

                foreach (var key in dataRouteValues)
                {
                    navigatable.RouteValues.Add(key.RouteKey, key.GetValue(dataItem));
                }

                return(urlBuilder.Url(navigatable, SendState));
            };

            return(new [] { button });
        }
        public override IEnumerable <IGridButtonBuilder> CreateDisplayButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var factory = new GridButtonFactory();

            var save = factory.CreateButton <GridLinkButtonBuilder>(ButtonType);

            save.CssClass      += " " + UIPrimitives.Grid.SaveChanges;
            save.SpriteCssClass = "k-update";
            save.Text           = SaveText;
            save.HtmlAttributes = HtmlAttributes;

            //TODO: Implement command button image html attributes
            //save.ImageHtmlAttributes = ImageHtmlAttributes;
            save.Url = delegate { return("#"); };

            var cancel = factory.CreateButton <GridLinkButtonBuilder>(ButtonType);

            cancel.CssClass      += " " + UIPrimitives.Grid.CancelChanges;
            cancel.SpriteCssClass = "k-cancel";
            cancel.Text           = CancelText;
            cancel.HtmlAttributes = HtmlAttributes;

            //TODO: Implement command button image html attributes
            //cancel.ImageHtmlAttributes = ImageHtmlAttributes;
            cancel.Url = delegate { return("#"); };

            return(new[] { save, cancel });
        }
Exemplo n.º 34
0
        public override IEnumerable <IGridButtonBuilder> CreateDisplayButtons(IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var editButton = CreateButton <GridLinkButtonBuilder>(Text, UIPrimitives.Grid.Edit);

            editButton.Url = urlBuilder.EditUrl;

            editButton.SpriteCssClass = "k-edit";

            return(new[]
            {
                editButton
            });
        }
Exemplo n.º 35
0
 protected override IGridDataCellBuilder CreateInsertBuilderCore(IGridHtmlHelper htmlHelper)
 {
     return(CreateDisplayBuilderCore(htmlHelper));
 }
Exemplo n.º 36
0
        public override IEnumerable <IGridButtonBuilder> CreateDisplayButtons(IGridLocalization localization, IGridUrlBuilder urlBuilder, IGridHtmlHelper htmlHelper)
        {
            var factory = new GridButtonFactory();

            var save = factory.CreateButton <GridLinkButtonBuilder>(ButtonType);

            save.CssClass           += " " + UIPrimitives.Grid.SaveChanges;
            save.SpriteCssClass      = "t-update";
            save.Text                = localization.SaveChanges;
            save.HtmlAttributes      = HtmlAttributes;
            save.ImageHtmlAttributes = ImageHtmlAttributes;
            save.Url = delegate { return("#"); };

            var cancel = factory.CreateButton <GridLinkButtonBuilder>(ButtonType);

            cancel.CssClass           += " " + UIPrimitives.Grid.CancelChanges;
            cancel.SpriteCssClass      = "t-cancel";
            cancel.Text                = localization.CancelChanges;
            cancel.HtmlAttributes      = HtmlAttributes;
            cancel.ImageHtmlAttributes = ImageHtmlAttributes;
            cancel.Url = delegate { return("#"); };

            return(new[] { save, cancel });
        }