Free cookie consent management tool by TermsFeed Policy Generator

source: branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/Interfaces/IJsonItem.cs @ 17420

Last change on this file since 17420 was 17420, checked in by dpiringe, 4 years ago

#3026:

  • refactored ranged based VMs -> created new 'base' class for ranged based VMs RangedValueBaseVM
  • renamed AddChilds to AddChildren
  • implemented ArrayValueVM and JsonItemArrayValueControl
  • added ranges for array and matrix values
File size: 707 bytes
Line 
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Text;
5using System.Threading.Tasks;
6using Newtonsoft.Json;
7
8namespace HeuristicLab.JsonInterface {
9  public interface IJsonItem {
10    string Name { get; set; }
11
12    string Path {
13      get;
14    }
15
16    [JsonIgnore]
17    IList<IJsonItem> Children { get; } //TODO: IEnumerable
18
19    [JsonIgnore]
20    IJsonItem Parent { get; set; }
21
22    object Value { get; set; }
23
24    IEnumerable<object> Range { get; set; }
25
26    string ActualName { get; set; }
27
28    IJsonItemValidator GetValidator();
29
30    void AddChildren(params IJsonItem[] childs);
31
32    void AddChildren(IEnumerable<IJsonItem> childs);
33  }
34}
Note: See TracBrowser for help on using the repository browser.