private SelectBox GetSelectBox(
            FilterHtmlGenerator.Filter filterData,
            Store storeFilter,
            bool isRangeControlId,
            bool isAdditionalFieldSet,
            bool isHideParentFieldSet)
        {
            var selectBox = new SelectBox(StandartConfigSelectBoxFilter())
            {
                ID           = RegistrationControlToRepository(UniquePrefixes.SelectBoxFilterOperations, filterData, isAdditionalFieldSet, isHideParentFieldSet),
                ClientIDMode = ClientIDMode.Static,
            };

            if (filterData.Type == FilterHtmlGenerator.FilterType.Boolean)
            {
                selectBox.Triggers.Add(new FieldTrigger()
                {
                    Icon = TriggerIcon.Clear,
                    Qtip = Resources.SRemoveSelected
                });
                selectBox.Listeners.TriggerClick.Handler = @"
                            this.clearValue();";
            }
            selectBox.Store.Add(storeFilter);
            SetListenersSelectBox(filterData, isRangeControlId, selectBox);
            return(selectBox);
        }
 private void SetListeners(FilterHtmlGenerator.Filter filterData, DateField dateField, bool isRangeControl)
 {
     if (!isRangeControl && !string.IsNullOrEmpty(filterData.OnChangedValue))
     {
         dateField.Listeners.Change.Handler += filterData.OnChangedValue;
     }
 }
        private AbstractProxy GetProxyLookup(FilterHtmlGenerator.Filter filterData)
        {
            // todo: если метод будет расти, рефакторить его.

            const string url                       = "/AutoCompleteHandler.ashx";
            const string dataSourceType            = AutoCompleteHandler.DataSourceType;
            const string suffixTypeName            = "JournalDataSourceView";
            const string localizationParameterName = "isKz";
            const string jsonReaderRoot            = "Data";
            const string jsonReaderTotalProperty   = "Total";
            const string jsonReaderIdProperty      = "jReader";

            const string pointSeparator = ".";
            const string commoSeparator = ", ";

            var proxyLookup = new AjaxProxy {
                Url = url
            };

            var sourceParameter = new Parameter
            {
                Name  = dataSourceType,
                Value = new StringBuilder().Append(filterData.ProjectName)
                        .Append(pointSeparator)
                        .Append(filterData.TableName)
                        .Append(suffixTypeName)
                        .ToString()
            };

            var localizationParameter = new Parameter
            {
                Name  = localizationParameterName,
                Value = LocalizationHelper.IsCultureKZ.ToString()
            };

            var reader = new JsonReader
            {
                Root          = jsonReaderRoot,
                TotalProperty = jsonReaderTotalProperty,
                IDProperty    = jsonReaderIdProperty
            };

            proxyLookup.ActionMethods.Read = HttpMethod.POST;

            proxyLookup.Reader.Add(reader);
            proxyLookup.ExtraParams.Add(sourceParameter);
            proxyLookup.ExtraParams.Add(localizationParameter);

            if (filterData.ComboBoxView != null)
            {
                proxyLookup.ExtraParams.Add(
                    new Parameter
                {
                    Name  = AutoCompleteHandler.ComboBoxView,
                    Value = filterData.ComboBoxView.GetType().FullName,
                });
            }

            return(proxyLookup);
        }
        private Store GetStore(FilterHtmlGenerator.Filter filterData)
        {
            var listConfig = filterData.ComboBoxView as IListConfig;
            var store      = new Store
            {
                ID           = RegistrationControlToRepository(UniquePrefixes.StoreFilterValues, filterData),
                ClientIDMode = ClientIDMode.Static,
            };

            store.Model.Add(GetModel(StandartModelFieldsItems(filterData)));
            store.InitializeListConfig(listConfig);

            if (filterData.Lookup)
            {
                store.Proxy.Add(GetProxyLookup(filterData));
                store.Listeners.BeforeLoad.Handler +=
                    string.Format(@"store.getProxy().extraParams.parameters = GetLookupFiltersByValues(App.{0}.tag.browseUrl);",
                                  GetControlId(UniquePrefixes.ComboBoxFilterValues, filterData.FilterName));
            }
            else
            {
                store.DataSource   = GetMultiComboBoxItems(filterData);
                store.AutoDataBind = true;
            }

            return(store);
        }
        private DateField GetDateFiledItem(FilterHtmlGenerator.Filter filterData, bool isRangeControl)
        {
            var config  = StandartConfigDateField(isRangeControl);
            var maxDate = (DateTime?)filterData.MaxValue;

            if (maxDate != null)
            {
                config.MaxDate = maxDate.Value;
            }

            var dateField = new DateField(config)
            {
                ID = RegistrationControlToRepository(isRangeControl
                                                 ? UniquePrefixes.EndDateField
                                                 : UniquePrefixes.BeginDateField,
                                                     filterData,
                                                     isRangeControl),
                ClientIDMode = ClientIDMode.Static,
            };

            dateField.CustomConfig.Add(new ConfigItem("rememberMaxValue", maxDate?.ToShortDateString() ?? "", ParameterMode.Value));
            dateField.CustomConfig.Add(new ConfigItem("maxText", Resources.SMaxDateText, ParameterMode.Value));
            dateField.CustomConfig.Add(new ConfigItem("minText", Resources.SMinDateText, ParameterMode.Value));

            return(dateField);
        }
        private NumberField GetNumberFieldItem(FilterHtmlGenerator.Filter filterData, bool isRangeControl)
        {
            var config   = StandartConfigNumberField(isRangeControl);
            var maxValue = filterData.MaxValue == null ? (double?)null : Convert.ToDouble(filterData.MaxValue);

            if (maxValue != null)
            {
                config.MaxValue = maxValue.Value;
            }

            var numberField = new NumberField(config)
            {
                ID = RegistrationControlToRepository(
                    isRangeControl
                            ? UniquePrefixes.EndNumberField
                            : UniquePrefixes.BeginNumberField,
                    filterData,
                    isRangeControl),
                ClientIDMode     = ClientIDMode.Static,
                DecimalPrecision = filterData.DecimalPrecision
            };

            numberField.CustomConfig.Add(new ConfigItem("rememberMaxValue", maxValue?.ToString() ?? "", ParameterMode.Value));
            return(numberField);
        }
 private static Store.Config StandartConfigStoreFilter(FilterHtmlGenerator.Filter filterData)
 {
     return(new Store.Config
     {
         DataSource = GetOperationsFilter(filterData),
         AutoDataBind = true,
     });
 }
        private void SetListeners(FilterHtmlGenerator.Filter filterData, PickerFieldListeners listeners)
        {
            listeners.Select.Handler       = FilterJs.JsCallShowClearTrigger;
            listeners.Change.Handler       = FilterJs.JsSetContextToolTipByChagneValueHandler + filterData.OnChangedValue;
            listeners.TriggerClick.Handler = FilterJs.JsCallSelectTriggerClick;

            listeners.BoxReady.Handler = FilterJs.JsCallClearTriggerHide;
        }
 private void SetListenersSelectBox(
     FilterHtmlGenerator.Filter filterData,
     bool isRangeControlId,
     SelectBox selectBox)
 {
     if (isRangeControlId)
     {
         selectBox.Listeners.Change.Handler = FilterJs.JsCallToggleVisibleSecondRangeControl;
     }
 }
        private TextField GetTextFieldItem(FilterHtmlGenerator.Filter filterData)
        {
            var textField = new TextField(StandartConfigTextFieldItem())
            {
                ID           = RegistrationControlToRepository(UniquePrefixes.TextFieldFilterValues, filterData),
                ClientIDMode = ClientIDMode.Static,
            };

            SetListeners(textField);
            return(textField);
        }
        private Store GetStoreFilter(FilterHtmlGenerator.Filter filterData)
        {
            var store = new Store(StandartConfigStoreFilter(filterData))
            {
                ID           = RegistrationControlToRepository(UniquePrefixes.StoreFilterOperations, filterData),
                ClientIDMode = ClientIDMode.Static,
            };

            store.Model.Add(GetModelStoreFilter());
            return(store);
        }
        protected FieldContainer GetFieldContainerFilter(
            FilterHtmlGenerator.Filter filterData,
            bool isAdditionalFieldSet,
            bool isHideParentFieldSet,
            bool isRangeControlId = false)
        {
            var storeFilter     = GetStoreFilter(filterData);
            var selectBoxFilter = GetSelectBox(filterData, storeFilter, isRangeControlId, isAdditionalFieldSet, isHideParentFieldSet);

            return(GetFieldContainer(filterData, selectBoxFilter));
        }
        private bool IsHideParentFieldSet(FilterHtmlGenerator.Filter filterData)
        {
            var childs     = filterData.Children.Where(f => f.Visible);
            var enumerable = childs as IList <FilterHtmlGenerator.Filter> ?? childs.ToList();

            if (enumerable.Any() && enumerable.All(s => s.Type == FilterHtmlGenerator.FilterType.Group))
            {
                return(IsAdditionalFieldSet(enumerable));
            }

            return(false);
        }
        protected string RegistrationControlToRepository(
            UniquePrefixes prefix,
            FilterHtmlGenerator.Filter filterData,
            bool isAdditionalFieldSet = false,
            bool isHideParentFieldSet = false,
            bool isRangeControl       = false)
        {
            var controlId = GetControlId(prefix, filterData.FilterName);

            PackingJsMember(prefix, filterData, controlId, isRangeControl, isAdditionalFieldSet, isHideParentFieldSet);
            return(controlId);
        }
        private FieldContainer GetFieldContainer(
            FilterHtmlGenerator.Filter filterData,
            SelectBox selectBox)
        {
            var fieldContainer = new FieldContainer(StandartConfigFilterFieldContainer(filterData))
            {
                ID           = RegistrationControlToRepository(UniquePrefixes.FieldContainerCommon, filterData),
                ClientIDMode = ClientIDMode.Static,
            };

            fieldContainer.Items.Add(selectBox);
            return(fieldContainer);
        }
        private AbstractComponent GetComboBoxValues(
            FilterHtmlGenerator.Filter filterData,
            out PickerFieldListeners listeners)
        {
            var comboBox = new ComboBox(StandartConfigComboBoxItems())
            {
                ID           = RegistrationControlToRepository(UniquePrefixes.ComboBoxFilterValues, filterData),
                ClientIDMode = ClientIDMode.Static,
            };

            listeners = comboBox.Listeners;
            return(comboBox);
        }
        private AbstractComponent GetFilterControlsByType(
            FilterHtmlGenerator.Filter filterData,
            IList <string> clientRepositoryJs,
            bool isAdditionalFieldSet,
            bool?isHideParentFieldSet,
            out string controlMemberJs)
        {
            var hideParentGroupFieldSet = isHideParentFieldSet.HasValue && isHideParentFieldSet.Value;

            switch (filterData.Type)
            {
            case FilterHtmlGenerator.FilterType.Group:
            {
                //todo: не протестированно -> не найден прецедент.
                controlMemberJs = null;
                return(new FilterControlFieldSet().GetFilledFieldSet(
                           SortFilters(filterData.Children.Where(f => f.Visible)), clientRepositoryJs, false, hideParentGroupFieldSet || IsHideParentFieldSet(filterData), filterData.Header));
            }

            case FilterHtmlGenerator.FilterType.Reference:
            {
                return(new FilterControlComboBox().GetControl(filterData, isAdditionalFieldSet, hideParentGroupFieldSet, out controlMemberJs));
            }

            case FilterHtmlGenerator.FilterType.Numeric:
            {
                if (filterData.IsDateTime)
                {
                    return(new FilterControlDateField().GetControl(filterData, isAdditionalFieldSet, hideParentGroupFieldSet, out controlMemberJs));
                }

                return(new FilterControlNumberField().GetControl(filterData, isAdditionalFieldSet, hideParentGroupFieldSet, out controlMemberJs));
            }

            case FilterHtmlGenerator.FilterType.Boolean:
            {
                return(new FilterControlBoolean().GetControl(filterData, isAdditionalFieldSet, hideParentGroupFieldSet, out controlMemberJs));
            }

            case FilterHtmlGenerator.FilterType.Text:
            case FilterHtmlGenerator.FilterType.FullTextSearch:
            {
                return(new FilterControlTextField().GetControl(filterData, isAdditionalFieldSet, hideParentGroupFieldSet, out controlMemberJs));
            }
            }

            controlMemberJs = String.Empty;
            return(null);
        }
        protected static string GetSerializeBrowseFilterParameters(FilterHtmlGenerator.Filter filterData)
        {
            string serializedData = null;

            if (filterData.BrowseFilterParameters != null)
            {
                var triplet = new Triplet(filterData.BrowseFilterParameters.ClientControlParameters,
                                          filterData.BrowseFilterParameters.ClientValueParameters,
                                          string.Empty);

                serializedData = new JavaScriptSerializer().Serialize(triplet);
            }

            return(serializedData);
        }
        private void PackingJsMember(
            UniquePrefixes prefix,
            FilterHtmlGenerator.Filter filterData,
            string controlId,
            bool isRangeControl,
            bool isAdditionalFieldSet,
            bool isHideParentFieldSet)
        {
            var typePrefix       = prefix.GetType();
            var fieledInfo       = typePrefix.GetField(prefix.ToString());
            var filterAttributes = fieledInfo.GetCustomAttributes(false);

            foreach (var typeFilterAttribute in filterAttributes.Select(filterAttribute => filterAttribute.GetType()))
            {
                if (typeFilterAttribute == typeof(FilterTypeIdAttribute))
                {
                    AddItemToJsMember(JsMemberItemTypes.FilterTypeId, controlId);
                    AddItemToJsMember(JsMemberItemTypes.FilterName, filterData.FilterName);
                    AddItemToJsMember(JsMemberItemTypes.DefaultFilterType, filterData.DefaultFilterType == null ? null : filterData.DefaultFilterType.ToString());
                    AddItemToJsMember(JsMemberItemTypes.IsHiddenParentFieldSet, isAdditionalFieldSet.ToString());
                    AddItemToJsMember(JsMemberItemTypes.IsMain, filterData.MainGroup.ToString());
                    AddItemToJsMember(JsMemberItemTypes.RequiredFilter, filterData.RequiredFilter);
                    AddItemToJsMember(JsMemberItemTypes.DependedFilters, filterData.DependedFilters);
                    AddItemToJsHandler(JsMemberItemTypes.GetDependedVisible, filterData.DependedHandler, "values");
                    AddItemToJsMember(JsMemberItemTypes.IsHideParentGroupFieldSet, isHideParentFieldSet.ToString());
                }

                if (typeFilterAttribute == typeof(RangeFilterValueIdAttribute))
                {
                    AddItemToJsMember(JsMemberItemTypes.SecondFilterValueId, controlId);
                }

                if (typeFilterAttribute == typeof(FilterValueIdAttribute))
                {
                    AddItemToJsMember(JsMemberItemTypes.FirstFilterValueId, controlId);

                    if (!isRangeControl)
                    {
                        AddItemToJsMember(JsMemberItemTypes.SecondFilterValueId, string.Empty);
                    }
                }

                if (typeFilterAttribute == typeof(CommonContainerAttribute))
                {
                    SetFinalParthToJsMember();
                }
            }
        }
        private static FieldContainer.Config StandartConfigFilterFieldContainer(
            FilterHtmlGenerator.Filter filterData)
        {
            var fieldContainerConfig = new FieldContainer.Config
            {
                FieldLabel = filterData.Header,
                LabelAlign = LabelAlign.Right,
                LabelWidth = 146,
                Layout     = "HBoxLayout",
                MarginSpec = "5 20 5 5",
                Flex       = 1,
                LabelStyle = "white-space: nowrap !important; text-overflow: ellipsis; overflow: hidden;",
            };

            return(fieldContainerConfig);
        }
        private AbstractComponent GetMultiComboBoxValues(FilterHtmlGenerator.Filter filterData, out PickerFieldListeners listeners)
        {
            var multiComboBox = new MultiCombo(StandartConfigMultiComboBoxItems())
            {
                ID           = RegistrationControlToRepository(UniquePrefixes.MultiBoxFilterValues, filterData),
                ClientIDMode = ClientIDMode.Static,
            };

            multiComboBox.ListConfig.Listeners.ItemMouseLeave.Handler = string.Format("{0}.itemLeave = index; window.setTimeout(function() {{ if ({0}.itemLeave == index) {0}.collapse(); }}, 400);", multiComboBox.ClientID);
            multiComboBox.ListConfig.Listeners.ItemMouseEnter.Handler = string.Format("{0}.itemLeave = -1;", multiComboBox.ClientID);
            if (!filterData.IsMultipleSelect)
            {
                multiComboBox.Listeners.BeforeSelect.Handler = "item.clearValue(); window.setTimeout(function() {item.collapse(); }, 100);";
            }
            listeners = multiComboBox.Listeners;
            return(multiComboBox);
        }
Example #22
0
        public FieldContainer GetControl(
            FilterHtmlGenerator.Filter filterData,
            bool isAdditionalFieldSet,
            bool isHideParentFieldSet,
            out string controlMemberJs)
        {
            var fieldContainer = GetFieldContainerFilter(filterData, isAdditionalFieldSet, isHideParentFieldSet);

            controlMemberJs = ClientRepositoryJsMember;
            if (!string.IsNullOrEmpty(filterData.OnChangedValue))
            {
                var box = fieldContainer.Items.OfType <SelectBox>().First();
                box.Listeners.Change.Handler += filterData.OnChangedValue;
            }

            return(fieldContainer);
        }
        private void SetSelectConfiguration(
            FilterHtmlGenerator.Filter filterData,
            ComboBoxBase selectBox,
            PickerFieldListeners listeners)
        {
            var store = GetStore(filterData);

            selectBox.Store.Add(store);
            SetTriggersToSelectBox(selectBox.Triggers, filterData.Lookup);
            SetListeners(filterData, listeners);
            selectBox.Tag = new
            {
                browseUrl = GetSerializeBrowseFilterParameters(filterData),
                tableName = filterData.TableName,
                header    = filterData.TableHeader
            };
        }
        private IEnumerable <ModelField> StandartModelFieldsItems(FilterHtmlGenerator.Filter filterData)
        {
            var modelFieldId = new ModelField("id", ModelFieldType.String)
            {
                ServerMapping = string.IsNullOrEmpty(filterData.SelectKeyValueColumn)
                                        ? "Value"
                                        : "Item." + filterData.SelectKeyValueColumn
            };

            return(new List <ModelField>
            {
                modelFieldId,
                new ModelField("RowName", ModelFieldType.String)
                {
                    ServerMapping = "Name"
                }
            });
        }
        public FieldContainer GetControl(
            FilterHtmlGenerator.Filter filterData,
            bool isAdditionalFieldSet,
            bool isHideParentFieldSet,
            out string controlMemberJs)
        {
            const bool isRangeControl = true;
            var        dateFieldBegin = GetDateFiledItem(filterData, !isRangeControl);
            var        dateFieldEnd   = GetDateFiledItem(filterData, isRangeControl);
            var        fieldContainer = GetFieldContainerFilter(filterData, isAdditionalFieldSet, isHideParentFieldSet, isRangeControl);

            SetListeners(filterData, dateFieldBegin, !isRangeControl);
            SetListeners(filterData, dateFieldEnd, isRangeControl);
            new ExtNetRangeControlsValidator().CompareValidator(dateFieldBegin, dateFieldEnd);
            fieldContainer.Items.Add(dateFieldBegin);
            fieldContainer.Items.Add(dateFieldEnd);
            controlMemberJs = ClientRepositoryJsMember;
            return(fieldContainer);
        }
        internal FieldContainer GetControl(
            FilterHtmlGenerator.Filter filterData,
            bool isAdditionalFieldSet,
            bool isHideParentFieldSet,
            out string controlMemberJs)
        {
            var textField      = GetTextFieldItem(filterData);
            var fieldContainer = GetFieldContainerFilter(filterData, isAdditionalFieldSet, isHideParentFieldSet);

            fieldContainer.Items.Add(textField);

            if (!string.IsNullOrEmpty(filterData.OnChangedValue))
            {
                textField.Listeners.Change.Handler += filterData.OnChangedValue;
            }

            controlMemberJs = ClientRepositoryJsMember;
            return(fieldContainer);
        }
        protected static object GetMultiComboBoxItems(FilterHtmlGenerator.Filter filterData)
        {
            var view = filterData.DataSource != null
                ? filterData.DataSource.GetView(filterData.TableName)
                : filterData.GetDataSourceView();

            if (view == null)
            {
                return(null);
            }

            var dataSourceSelectArguments = new DataSourceSelectArguments {
                StartRowIndex = 0, MaximumRows = 100
            };
            IEnumerable listValues = null;

            view.Select(dataSourceSelectArguments, r => listValues = r);
            return(listValues.Cast <object>().ToArray());
        }
        internal FieldContainer GetControl(
            FilterHtmlGenerator.Filter filterData,
            bool isAdditionalFieldSet,
            bool isHideParentFieldSet,
            out string controlMemberJs)
        {
            PickerFieldListeners listeners;
            var selectBox = (ComboBoxBase)(filterData.Lookup
                              ? GetComboBoxValues(filterData, out listeners)
                              : GetMultiComboBoxValues(filterData, out listeners));

            var listConfig = filterData.ComboBoxView as IListConfig;

            selectBox.InitializeListConfig(listConfig);
            SetSelectConfiguration(filterData, selectBox, listeners);

            var fieldContainer = GetFieldContainerFilter(filterData, isAdditionalFieldSet, isHideParentFieldSet);

            fieldContainer.Items.Add(selectBox);
            controlMemberJs = ClientRepositoryJsMember;
            return(fieldContainer);
        }
        private static IEnumerable GetOperationsFilter(FilterHtmlGenerator.Filter filterData)
        {
            IEnumerable <KeyValuePair <object, object> > list = new List <KeyValuePair <object, object> >();

            switch (filterData.Type)
            {
            case FilterHtmlGenerator.FilterType.Reference:
            {
                list = filterData.FilterByStartsWithCode
                        ? InitializerSection.StaticFilterNamesResources
                       .ReferenceListWithTextFilterForCodeTypes
                        : InitializerSection.StaticFilterNamesResources.ReferencesFilterTypes;

                var bfilter = filterData as BaseFilterParameter;
                if (bfilter != null && bfilter.OTextValueExpressionRu == null)
                {
                    list = list.Where(r => !((string)r.Key).EndsWith("ByRef")).ToList();
                }

                break;
            }

            case FilterHtmlGenerator.FilterType.Numeric:
            {
                list = filterData.IsDateTime
                        ? InitializerSection.StaticFilterNamesResources.DatetimeFilterTypes
                        : InitializerSection.StaticFilterNamesResources.NumericFilterTypes;
                break;
            }

            case FilterHtmlGenerator.FilterType.Boolean:
            {
                var filterList = new List <KeyValuePair <object, object> >();
                foreach (
                    var referenceFilterType in InitializerSection.StaticFilterNamesResources.ReferenceFilterTypes)
                {
                    if (referenceFilterType.Key.Equals("Equals"))
                    {
                        filterList.Add(new KeyValuePair <object, object>("Equals", filterData.TrueBooleanText));
                    }
                    else if (referenceFilterType.Key.Equals("NotEquals"))
                    {
                        filterList.Add(new KeyValuePair <object, object>("NotEquals", filterData.FalseBooleanText));
                    }
                    else
                    {
                        filterList.Add(referenceFilterType);
                    }
                }

                list = filterList;
                break;
            }

            case FilterHtmlGenerator.FilterType.Text:
            {
                list = InitializerSection.StaticFilterNamesResources.TextFilterTypes;
                break;
            }

            case FilterHtmlGenerator.FilterType.FullTextSearch:
            {
                var filterList = new List <KeyValuePair <object, object> >();
                filterList.Add(new KeyValuePair <object, object>(DefaultFilters.TextFilter.Contains.ToString(),
                                                                 InitializerSection.StaticFilterNamesResources.SContains));
                list = filterList;
                break;
            }
            }

            if (filterData.AllowedFilterTypes != null)
            {
                list = list.Where(r => filterData.AllowedFilterTypes.Contains(r.Key));
                var add     = filterData.AllowedFilterTypes.Where(r => list.All(f => (string)f.Key != r));
                var newList = list.ToList();
                foreach (var item in add)
                {
                    var referenceType =
                        (DefaultFilters.ReferenceFilter)Enum.Parse(typeof(DefaultFilters.ReferenceFilter), item);
                    switch (referenceType)
                    {
                    case DefaultFilters.ReferenceFilter.MoreOrEqual:
                        newList.Add(new KeyValuePair <object, object>(item,
                                                                      InitializerSection.StaticFilterNamesResources.SMore));

                        break;

                    case DefaultFilters.ReferenceFilter.LessOrEqual:
                        newList.Add(new KeyValuePair <object, object>(item,
                                                                      InitializerSection.StaticFilterNamesResources.SLess));

                        break;

                    default:
                        throw new ArgumentOutOfRangeException();
                    }
                }

                list = newList;
            }

            return(ConvertToObjectsArray(list));
        }