Example #1
0
 /// <summary>
 /// Edit data
 /// </summary>
 /// <param name="list">data list</param>
 /// <param name="po">printer object</param>
 /// <returns>added variable</returns>
 public static bool EditData(ListBox list, PrinterObject po)
 {
     if (list.SelectedIndices.Count == 1)
     {
         int    pos = list.SelectedIndices[0];
         string s   = po.Datas.ElementAt(pos);
         Data   d   = new Data();
         FillVars(d.Controls["vars"] as ListBox, po);
         if (s.StartsWith("[") && s.EndsWith("]"))
         {
             d.Controls["vars"].Text = s.Substring(1, s.Length - 2);
             (d.Controls["rbVariable"] as RadioButton).Checked = true;
         }
         else
         {
             d.Controls["txtConst"].Text = s;
             (d.Controls["rbConst"] as RadioButton).Checked = true;
         }
         DialogResult dr = d.ShowDialog();
         if (dr == DialogResult.OK)
         {
             bool byVar = (d.Controls["rbVariable"] as RadioButton).Checked;
             if (byVar)
             {
                 po.UseChangeVariable(pos, d.Controls["vars"].Text);
             }
             else
             {
                 po.EditData(pos, d.Controls["txtConst"].Text);
             }
             list.Items[pos] = po.Datas.ElementAt(pos);
             list.Refresh();
             hasModified = true;
             return(true);
         }
         return(false);
     }
     return(false);
 }