Exemplo n.º 1
0
        /// <summary>Detailed string for the list</summary>
        string formatItem(ProjectFile.Var item)
        {
            string line = "";

            if (item.RawOffset != "-1")
            {
                line += item.RawOffset + ": ";
            }
            line += item.Type.ToString().ToLower();
            if (item.Type == ProjectFile.VarType.Collection)
            {
                line += "<" + item.ID + ">";
            }
            line += " " + item.Name;
            if (item.DefaultValue != null)
            {
                line += " = " + item.DefaultValue;
            }
            if (item.Type != ProjectFile.VarType.Collection && item.ID != -1)
            {
                line += " ($" + item.ID + ")";
            }
            if (item.IsValidated)
            {
                line += "*";
            }
            // this next one is array only, the previous 3 wouldn't've happened
            if (item.RawQuantity != "" && item.RawQuantity != "1")
            {
                line += "[" + item.RawQuantity + "]";
            }
            return(line);
        }
Exemplo n.º 2
0
 private void txtArrayNames_Leave(object sender, EventArgs e)
 {
     if (lstItems.SelectedIndex == -1 || LoadedProject == null || LoadedProject.Properties == null)
     {
         return;
     }
     ProjectFile.Var v        = LoadedProject.Properties[lstItems.SelectedIndex];
     string[]        oldNames = v.Values.Names;
     try
     {
         string[] names = txtArrayNames.Text.Split(',');
         for (int i = 0; i < v.Quantity; i++)
         {
             try { v.Values.Names[i] = update(v.Values.Names[i], names[i]); }
             catch
             {
                 v.Values.Names[i] = update(v.Values.Names[i], i.ToString());
                 System.Diagnostics.Debug.WriteLine("Names assignment count mismatch: " + v.ToString() + "[" + i + "]");
             }
         }
     }
     catch (Exception x)
     {
         MessageBox.Show(x.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
         v.Values.Names = oldNames;
     }
     txtArrayNames.Text = (v.Values.Names != null ? string.Join(",", v.Values.Names) : "");
 }
Exemplo n.º 3
0
 private void lstItems_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (lstItems.SelectedIndex == -1 || LoadedProject.Properties == null)
     {
         return;
     }
     ProjectFile.Var v = LoadedProject.Properties[lstItems.SelectedIndex];
     txtOffset.Text        = (v.RawOffset != "-1" ? v.RawOffset : "");
     cboType.SelectedIndex = (int)v.Type;
     txtName.Text          = v.Name;
     chkInput.Checked      = (v.ID != -1 && v.Type != ProjectFile.VarType.Collection);
     lblID.Text            = "ID: " + (chkInput.Checked ? v.ID.ToString() : "0");
     chkValidate.Checked   = v.IsValidated;
     txtDefault.Text       = (v.DefaultValue != null ? v.DefaultValue.ToString() : "");
     txtComment.Text       = v.Comment;
     if (v.Values != null)
     {
         chkArray.Checked      = true;
         txtArrayQty.Text      = v.RawQuantity;
         txtArrayNames.Text    = (v.Values.Names != null ? string.Join(",", v.Values.Names) : "");
         txtArrayNames.Enabled = !v.HasDynamicQuantity;
     }
     else
     {
         chkArray.Checked = false;
     }
     if (v.Type == ProjectFile.VarType.Bool)
     {
         numBoolFalse.Value = ((ProjectFile.BoolVar)v).FalseValue;
         numBoolTrue.Value  = ((ProjectFile.BoolVar)v).TrueValue;
     }
     if (v.Type == ProjectFile.VarType.Collection)
     {
         cboCollType.SelectedIndex = LoadedProject.Types.GetIndexByID(v.ID);
     }
     if (v.Type == ProjectFile.VarType.String)
     {
         txtLength.Text            = v.RawLength;
         chkNullTermed.Checked     = ((ProjectFile.StringVar)v).NullTermed;
         cboEncoding.SelectedIndex = getValueFromEncoding(((ProjectFile.StringVar)v).Encoding);
     }
     _loading = false;
 }
Exemplo n.º 4
0
 private void txtArrayQty_Leave(object sender, EventArgs e)
 {
     if (lstItems.SelectedIndex == -1 || LoadedProject == null || LoadedProject.Properties == null)
     {
         return;
     }
     ProjectFile.Var v        = LoadedProject.Properties[lstItems.SelectedIndex];
     string[]        oldNames = v.Values.Names;
     try
     {
         v.RawQuantity = update(v.RawQuantity, txtArrayQty.Text);
         if (v.HasDynamicQuantity)
         {
             v.Values.Names     = null;
             txtArrayNames.Text = "";
         }
         else if (oldNames != null)
         {
             v.Values.Names = new string[v.Quantity];
             for (int i = 0; i < v.Values.Names.Length; i++)
             {
                 try { v.Values.Names[i] = oldNames[i]; }
                 catch
                 {
                     v.Values.Names[i] = i.ToString();
                     System.Diagnostics.Debug.WriteLine("Names truncated: " + v.ToString() + "[" + i + "]");
                 }
             }
         }
     }
     catch (Exception x)
     {
         MessageBox.Show(x.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
         txtArrayQty.Text = v.RawQuantity;
         v.Values.Names   = oldNames;
     }
     txtArrayNames.Enabled = !v.HasDynamicQuantity;
     txtArrayNames.Text    = (v.Values.Names != null ? string.Join(",", v.Values.Names) : "");
     lstItems.Items[lstItems.SelectedIndex] = formatItem(v);
 }
Exemplo n.º 5
0
        private void chkInput_Leave(object sender, EventArgs e)
        {
            if (lstItems.SelectedIndex == -1 || LoadedProject == null || LoadedProject.Properties == null)
            {
                return;
            }
            ProjectFile.Var v     = LoadedProject.Properties[lstItems.SelectedIndex];
            int             oldID = v.ID;

            if ((oldID == -1 && !chkInput.Checked) || (oldID != -1 && chkInput.Checked))
            {
                return;
            }
            if (chkInput.Checked)
            {
                LoadedProject.Properties.AssignNextID(v);
            }
            else
            {
                LoadedProject.Properties.RemoveID(v);
            }
            lstItems.Items[lstItems.SelectedIndex] = formatItem(v);
        }