private void fillLabels()
        {
            object raw_tree_tag;
            int int_tag;
            int[] int_array_tag;

            ElementInfo currentElement;
            string current_key;
            if (_variedParameters.Count == 0)
            {
                ClearAllButton.Enabled = false;
                GenerateButton.Enabled = false;
            }
            else
            {
                ClearAllButton.Enabled = true;
                GenerateButton.Enabled = true;
            }
            raw_tree_tag = this.FileTreeView.SelectedNode.Tag;

            if (raw_tree_tag.ToString() == "-1")
            {
                // if it is "PARAMETERS"
                clearLabels();
            }
            else if(raw_tree_tag is Array) //selected field is single parameter
            {
                this.EditButton.Enabled = true;
                int_array_tag = (int[])raw_tree_tag;
                int tagArrayLength = 2;
                currentElement = _xmlManager.GetElementInfo(int_array_tag, tagArrayLength);

                SetAttributeLabelsTexts(currentElement);

                // Getting group and parameter id from the node tag
                _activeGroupId = int_array_tag[0];
                _activeParamId = int_array_tag[1];

                _activeXmlElement = currentElement;

                current_key = _activeGroupId.ToString() + "_" + _activeParamId.ToString();
                if (_variedParameters.ContainsKey(current_key))
                {
                    this.ModifiyInicatorCheckBox.Checked = true;
                    this.VarAmountLabel.Text = _variedParameters[current_key].values.Count.ToString();
                    this.FileTreeView.SelectedNode.ForeColor = Color.Blue;
                    this.ClearCurrentButton.Enabled = true;
                    this.GenerateButton.Enabled = true;
                }
                else
                {
                    this.ModifiyInicatorCheckBox.Checked = false;
                    this.VarAmountLabel.Text = "0";
                    this.ClearCurrentButton.Enabled = false;
                    if (_variedParameters.Count == 0)
                    {
                        this.ClearAllButton.Enabled = false;
                        this.GenerateButton.Enabled = false;
                    }
                    else
                    {
                        ClearAllButton.Enabled = true;
                        GenerateButton.Enabled = true;
                    }
                }
            }
            else //selected field is group
            {
                this.EditButton.Enabled = false;
                int_tag = (int)raw_tree_tag;
                int tagArrayLength = 1;
                currentElement = _xmlManager.GetElementInfo(new int[] { int_tag }, tagArrayLength);

                SetAttributeLabelsTexts(currentElement);

                this.ModifiyInicatorCheckBox.Checked = false;
                this.ClearCurrentButton.Enabled = false;
                if (_variedParameters.Count == 0)
                {
                    this.ClearAllButton.Enabled = false;
                    this.GenerateButton.Enabled = false;
                    this.VarAmountLabel.Text = "0";
                }
                else
                {
                    this.VarAmountLabel.Text = CalculateGroupVariationsAmount(int_tag).ToString();
                    ClearAllButton.Enabled = true;
                    GenerateButton.Enabled = true;
                }
            }
        }
 private void SetAttributeLabelsTexts(ElementInfo currentElement)
 {
     this.AttributeNameLabel.Text = currentElement.Name;
     this.AttributeHintLabel.Text = currentElement.Hint;
     this.AttributeTypeLabel.Text = currentElement.Type;
     this.AttributeValueLabel.Text = currentElement.Value;
     this.AttributeLevelLabel.Text = currentElement.Level;
 }
Example #3
0
        public VaryParameterForm(ElementInfo parameter, int new_group_id, int new_param_id,
            bool is_varied, ref Dictionary<string, VariedParameter> variations_dict)
        {
            InitializeComponent();

            param_name = parameter.Name;
            param_hint = parameter.Hint;
            value_type = parameter.Type;

            if ((value_type == "Bool") || (value_type == "Text"))
            {
                this.RangeRadioButton.Enabled = false;
            }

            this.AttributeNameLabel.Text = param_name;
            this.AttribueHintLabel.Text = param_hint;

            varied_parameters = variations_dict;

            varied = is_varied;

            gid = new_group_id;
            pid = new_param_id;

            element_key = gid.ToString() + "_" + pid.ToString();

            if (varied_parameters.ContainsKey(element_key))
            {
                current_variation = varied_parameters[element_key];
            }
            else
            {
                current_variation = new VariedParameter(gid, pid, value_type);
            }

            if (varied_parameters.ContainsKey(element_key))
            {
                switch (current_variation.variation_type)
                {
                    case "single":
                        this.SingleRadioButton.Checked = true;
                        this.SingleTextBox.Text = current_variation.single;
                    break;

                    case "range":
                        this.RangeRadioButton.Checked = true;
                        this.RangeMinTextBox.Text = current_variation.range_min;
                        this.RangeMaxTextBox.Text = current_variation.range_max;
                        this.RangeStepTextBox.Text = current_variation.range_step;
                    break;

                    case "list":
                        this.ListRadioButton.Checked = true;
                        foreach (string item in current_variation.values)
                        {
                            this.ListListBox.Items.Add(item);
                        }

                    break;
                }
            }
            else
            {
                original_value = parameter.Value;
                this.SingleRadioButton.Checked = true;
                this.SingleTextBox.Text = original_value.ToString();
            }
        }