Axis class

From Catglobe Wiki
Revision as of 03:19, 9 August 2018 by Administrator (talk | contribs)
Jump to: navigation, search

Axis



Represents an axis in a data cache specification.

Constructors

Methods

  • Empty AddAccessGroup(int groupResourceId "Group to give access") - Add a new group that has access to this option.
  • int AddOption(AxisOption option "Option to add") - Add an option to current list
  • Empty AddOrUpdateAxisInAxisSet() - Add or Update this axis in the axis set of the given data cache
  • bool AddTag(string tag "Tag to work on") - Add a new tag. Return false if already added
  • bool AddToAxisSet() - Add this axis to the axis set of the given data cache. Return false if Name already exists
  • bool Contains(object element "Element to check for") - Return true if the array contains the element using the normal equal operator.
  • int CountOptions() - Number of current options
  • array Except(array elements "Elements to remove") - Return all elements that does not exist in the other collection.
  • object First(Function selector "A function to test each element for a condition.") - Returns the first element in a sequence that satisfies a specified condition.
  • object FirstOrDefault(Function selector "A function to test each element for a condition.") - Returns the first element in a sequence that satisfies a specified condition or empty if not found.
  • int Frequency(number number "The number to search for") - Counts the number of times a given Number object exists in the Array. Can only use if all the elements are of type Number
  • object this[] { get; }(int index "Index") - Backward-compatible indexer
  • bool HasAccessGroup(int groupResourceId "AccessGroup to work on") - Return true if group is added
  • bool HasTag(string tag "Tag to work on") - Return true if tag is added
  • bool IsCharacterArray() - check if array is an array of characters
  • bool IsNumericArray() - check if array is an array of integer numbers
  • bool IsStringArray() - check if array is an array of string
  • Array of number ListAccessGroups() - Return list of all added AccessGroups
  • Array of string ListTags() - Return list of all added tags
  • array OrderBy(Function comparer "Function that compares two objects of the same type. Must return a signed integer that indicates the relative values of first param A and second param B. Value Less than 0 : A is less than B.Value 0 : A equals B.Value Greater than 0 : A is greater than B.It can also be a function that takes 1 parameter and returns a string or number.") - Sorts the elements of a sequence in ascending order by using a specified comparer.
  • Empty Randomize() - Randomize the order of the elements in the current array.
  • Empty RemoveAccessGroup(int groupResourceId "AccessGroup to work on") - Remove a group.
  • Empty RemoveOption(AxisOption option "Option to remove") - Remove option
  • bool RemoveOption(int index "Index of option in the list") - Remove option
  • bool RemoveTag(string tag "Tag to work on") - Remove a tag. Return false if not added
  • array Select(Function selector "A transform function to apply to each element.") - Projects each element of a sequence into a new form.
  • array SelectMany(Function selector "A transform function to get each sub array.") - Projects each array element of a sequence into a new form.
  • Empty this[] { set; }(int index "Index", object value "Value to set") - Backward-compatible indexer
  • array Skip(int n "How many elements to skip") - Get all but the n first elements.
  • array Take(int n "How many elements to take") - Get the n first elements.
  • Dictionary ToDictionary(Function keySelector "A transform function to get the key of each element.") - Return a dictionary with the elements of the array.
  • Dictionary ToDictionary(Function keySelector "A transform function to get the key of each element.", Function valueSelector "A transform function to get the value of each element.") - Return a dictionary with the elements of the array.
  • string ToString() - The string representation of the object.
  • bool UpdateAxisInAxisSet() - Update this axis in the axis set of the given data cache. Return false if Name does not exist already
  • array Where(Function predicate "A function that takes 1 parameter of the types in the array and return true/false") - Filters a sequence of values based on a predicate.

Properties

  • number Average { get; } - Average of the objects in the Array object. Can only use if all the elements are of type Number
  • Color Color { get; set; } - Get/set Color for this axis
  • bool HasAccess { get; } - Get if current logged in user has access (Voluntary access control, doesn't check inheritance, if no groups defined this returns true)
  • LocalizedString LocalizedTexts { get; } - Get/set localized Text (description)
  • LocalizedString LocalizedTitles { get; } - Get/set localized Titles
  • string MathBase { get; set; } - Get/set Math base (dcs column used to calculate statitics on)
  • string MathBaseModifier { get; set; } - Get/set Math base modifier (filter for statistics calculations)
  • number Max { get; } - Largest of all the objects in the Array object. Can only use if all the elements are of type Number
  • number Min { get; } - Smallest of all the objects in the Array object. Can only use if all the elements are of type Number
  • string Name { get; set; } - Get/set Name (unique id)
  • string ObjectTypeName { get; } - The name of the type of object.
  • array Options { get; set; } - Get/set options
  • string PctBase { get; set; } - Get/set Percentage base (denominator) for all options
  • number Sum { get; } - Sum of all the objects in the Array object. Can only use if all the elements are of type Number
  • string Text { get; set; } - Get/set default language text (description)
  • TypeInformation TypeInformation { get; } - Get information about this class.
  • bool Weight { get; set; } - Get/set if used for weight


Examples

New Axis

DataCacheSpecification dcs = new DataCacheSpecification(15636760);
Axis axis = new Axis (dcs, "Gender", "Your Gender");
axis.MathBase = "Gender";
axis.PctBase = "Gender!=empty";
axis.AddOption(new AxisOption(dcs, "Male", "Gender == [1]"));
axis.AddOption(new AxisOption(dcs, "Female", "Gender == [2]"));
axis.AddToAxisSet();
dcs.Save();
print(Catglobe.Json.Encode(axis));
//{"id":"Gender","title":{},"desc":{"":"Your Gender"},"mathbase":"Gender","mathbasemod":"","pctbase":"Gender!=empty","color":"#00000000","options":[{"title":{"":"Male"},"expression":"Gender == [1]","pctbase":"","color":"#00000000","tags":[]},{"title":{"":"Female"},"expression":"Gender == [2]","pctbase":"","color":"#00000000","tags":[]}],"tags":[]}

Remove options

DCS_use(15636575);
Axis axis = AxisSet_getAxis("Gender");
array options = axis.Options;
for(number i=0; i<options.Count; i++)
{
	AxisOption option = options[i];
	axis.RemoveOption(option);
}
AxisSet_save();