Exemplo n.º 1
0
        public static PropertyList ParsePropertyList(JsonObject data)
        {
            List <PropertyListItem> listItems    = PropertyListItem.ParsePropertyListItemList(data["ListItems"].GetArray());
            string                      valueId  = data["Value"].GetString();
            PropertyListItem            selected = listItems.FirstOrDefault((a) => a.Id == valueId);
            bool                        isVisibleInProductEditor = bool.Parse(data["IsVisibleInProductEditor"].GetString());
            bool                        isVisibleInMyLights      = bool.Parse(data["IsVisibleInMyLights"].GetString());
            List <PropertyMetadataItem> metadata = null;

            if (data.ContainsKey("Metadata"))
            {
                metadata = PropertyMetadataItem.ParsePropertyMetadataItemList(data["Metadata"].GetArray());
            }
            return(new PropertyList(data["Id"].GetString(), data["Caption"].GetString(), selected, listItems, isVisibleInProductEditor, isVisibleInMyLights, metadata));
        }
Exemplo n.º 2
0
 public void SelectById(string id)
 {
     if (id == null || _listItems == null || _listItems.Count == 0)
     {
         SelectedItem = null;
         return;
     }
     foreach (var item in _listItems)
     {
         if (item.Id == id)
         {
             SelectedItem = item;
             return;
         }
     }
 }
Exemplo n.º 3
0
        public override IProperty Clone()
        {
            List <PropertyListItem> clonedItems = new List <PropertyListItem>(_listItems.Count);

            for (int i = 0; i < _listItems.Count; i++)
            {
                clonedItems.Add(_listItems[i].Clone());
            }
            PropertyListItem clonedSelected = null;

            if (_selectedItem != null)
            {
                clonedSelected = clonedItems.FirstOrDefault((a) => a.Id == _selectedItem.Id);
            }
            return(new PropertyList(_id, _header, clonedSelected, clonedItems, _isVisibleInProductEditor, _isVisibleInMyLights, _metadata.Clone()));
        }
Exemplo n.º 4
0
 public PropertyList(string id, string header, PropertyListItem selectedItem, List <PropertyListItem> listItems, bool isVisibleInProductEditor, bool isVisibleInMyLights, List <PropertyMetadataItem> metadata)
     : base(id, PropertyEditorType.ComboBox, header, isVisibleInProductEditor, isVisibleInMyLights, metadata)
 {
     _selectedItem = selectedItem;
     _listItems    = listItems;
 }