/// <summary>
        /// Подготовка модели для отображения виджета в интерфейсе
        /// </summary>
        /// <param name="def">Определение виджета</param>
        /// <param name="widget">Данные об экземпляре виджета</param>
        /// <param name="parameters">Параметры виджета</param>
        /// <param name="session">Сессия БД</param>
        private object GetWidgetModel(IWidgetDefinition def, Widget widget, WidgetParameter[] parameters, ISession session)
        {
            try
            {
                var data = def.GetWidgetData(widget, parameters, session, Logger);

                var model = new
                {
                    id          = widget.Id,
                    type        = widget.TypeAlias,
                    displayName = widget.DisplayName,
                    sortOrder   = widget.SortOrder,
                    data
                };

                return(model);
            }
            catch (Exception ex)
            {
                var message = string.Format(
                    "UI widget error (id: {0}, type:{1})", widget.Id, widget.TypeAlias);
                Logger.ErrorException(message, ex);

                return(null);
            }
        }
Esempio n. 2
0
 private static IWidget CreateIWidget(IWidgetDefinition widget, string rendererType)
 {
     if (widget is DateWidgetDefinition)
     {
         return(new DateWidget((DateWidgetDefinition)widget));
     }
     if (widget is HiddenWidgetDefinition)
     {
         return(new HiddenWidget((HiddenWidgetDefinition)widget));
     } //TODO: implement <image> widget parsing
     if (rendererType == "image")
     {
         return(new ImageWidget(new ImageWidgetDefinition()));
     }
     if (widget is TextWidgetDefinition)
     {
         return(new TextWidget((TextWidgetDefinition)widget));
     }
     if (widget is NumberWidgetDefinition)
     {
         return(new NumberWidget((NumberWidgetDefinition)widget));
     }
     if (widget is LookupWidgetDefinition)
     {
         return(new LookupWidget((LookupWidgetDefinition)widget));
     }
     if (widget is ImageWidgetDefinition)
     {
         return(new ImageWidget((ImageWidgetDefinition)widget));
     }
     return(null);
 }
        //        private readonly IDictionary<String, String> _rendererParameters;


        public ApplicationFieldDefinition(string applicationName, string attribute, string label, bool isRequired, bool isReadOnly, bool isIsHidden,
                                          FieldRenderer renderer, IWidgetDefinition widgetDefinition, string defaultValue, string qualifier, string showExpression, string toolTip)
            : base(applicationName, label, attribute, isRequired, isReadOnly, defaultValue, qualifier, showExpression, toolTip)
        {
            if (widgetDefinition == null)
            {
                throw new ArgumentNullException("widgetDefinition");
            }
            _widgetDefinition = widgetDefinition;
            _renderer         = renderer;
            _isHidden         = isIsHidden;
            if (String.IsNullOrEmpty(renderer.RendererType))
            {
                var newRenderer = BuildFromWidget();
                if (newRenderer != null)
                {
                    _renderer = newRenderer;
                }
            }
        }
Esempio n. 4
0
 public ApplicationFieldDefinition(string applicationName, string attribute, string label, string requiredExpression, bool isReadOnly, bool isIsHidden,
                                   FieldRenderer renderer, FieldFilter filter, IWidgetDefinition widgetDefinition, string defaultValue, string qualifier, string showExpression, string toolTip,
                                   string attributeToServer, ISet <ApplicationEvent> events, string enableExpression, string evalExpression)
     : base(applicationName, label, attribute, requiredExpression, isReadOnly, defaultValue, qualifier, showExpression, toolTip, attributeToServer, events, enableExpression)
 {
     if (widgetDefinition == null)
     {
         throw new ArgumentNullException("widgetDefinition");
     }
     _widgetDefinition = widgetDefinition;
     _renderer         = renderer;
     _filter           = filter;
     IsHidden          = isIsHidden;
     if (renderer == null || String.IsNullOrEmpty(renderer.RendererType))
     {
         var newRenderer = BuildFromWidget();
         if (newRenderer != null)
         {
             _renderer = newRenderer;
         }
     }
     _eventsSet     = events;
     EvalExpression = evalExpression;
 }
        private object GetWidgetModel(IWidgetDefinition def, Widget widget, WidgetParameter[] parameters, ISession session)
        {
            try
            {
                var data = def.GetWidgetData(widget, parameters, session, Logger);

                var model = new
                {
                    id = widget.Id,
                    type = widget.TypeAlias,
                    displayName = widget.DisplayName,
                    sortOrder = widget.SortOrder,
                    data
                };

                return model;
            }
            catch (Exception ex)
            {
                var message = string.Format(
                    "UI widget error (id: {0}, type:{1})", widget.Id, widget.TypeAlias);
                Logger.ErrorException(message, ex);

                return null;
            }
        }