Ejemplo n.º 1
0
        private void FillList()
        {
            SigButDefs.Refresh();
            SigButDefElements.Refresh();
            if (listComputers.SelectedIndex == -1)          //although I don't know how this could happen
            {
                listComputers.SelectedIndex = 0;
            }
            if (listComputers.SelectedIndex == 0)
            {
                SubList = SigButDefs.GetByComputer("");
            }
            else
            {
                //remember, defaults are mixed into this list unless overridden:
                SubList = SigButDefs.GetByComputer(Computers.List[listComputers.SelectedIndex - 1].CompName);
            }
            int selected = listButtons.SelectedIndex;

            listButtons.Items.Clear();
            SigButDef button;

            SigButDefElement[] elements;
            string             s;

            for (int i = 0; i < 20; i++)
            {
                button = SigButDefs.GetByIndex(i, SubList);
                if (button == null)
                {
                    listButtons.Items.Add("-" + (i + 1).ToString() + "-");
                }
                else
                {
                    s        = button.ButtonText;
                    elements = SigButDefElements.GetForButton(button.SigButDefNum);
                    for (int e = 0; e < elements.Length; e++)
                    {
                        if (e == 0)
                        {
                            s += " (";
                        }
                        else
                        {
                            s += ", ";
                        }
                        s += SigElementDefs.GetElement(elements[e].SigElementDefNum).SigText;
                        if (e == elements.Length - 1)
                        {
                            s += ")";
                        }
                    }
                    if (button.ComputerName == "" && listComputers.SelectedIndex != 0)
                    {
                        s += " " + Lan.g(this, "(all)");
                    }
                    listButtons.Items.Add(s);
                }
            }
        }
Ejemplo n.º 2
0
        private void listButtons_DoubleClick(object sender, EventArgs e)
        {
            if (listButtons.SelectedIndex == -1)           //should never happen
            {
                return;
            }
            //Save any changes to the cache because the item order could have changed.
            if (SigButDefs.UpdateButtonIndexIfChanged(_arraySigButDefs))
            {
                DataValid.SetInvalid(InvalidType.SigMessages);
            }
            int       selected  = listButtons.SelectedIndex;
            SigButDef sigButDef = SigButDefs.GetByIndex(selected, _arraySigButDefs);
            //Keep track of the currently selected computer name so we know what computer buttons to refresh after making changes.
            string computerNameSelected = (listComputers.SelectedIndex > 0) ? _listComputers[listComputers.SelectedIndex - 1].CompName : "";
            //Now create a new computer name variable that will represent the computer name for the SigButDef.
            string computerNameSigButDef = "";

            if (sigButDef == null)           //Add
            {
                sigButDef             = new SigButDef();
                sigButDef.ButtonIndex = selected;
                if (listComputers.SelectedIndex != 0)
                {
                    computerNameSigButDef = _listComputers[listComputers.SelectedIndex - 1].CompName;
                }
                sigButDef.ComputerName = computerNameSigButDef;
                FormSigButDefEdit FormS = new FormSigButDefEdit(sigButDef.Copy());
                FormS.IsNew = true;
                FormS.ShowDialog();
            }
            else if (sigButDef.ComputerName == "" && listComputers.SelectedIndex != 0)
            {
                //create a copy of the default, and treat it as a new
                sigButDef.ComputerName = _listComputers[listComputers.SelectedIndex - 1].CompName;
                FormSigButDefEdit FormS = new FormSigButDefEdit(sigButDef.Copy());
                FormS.IsNew = true;
                FormS.ShowDialog();
            }
            else                                     //edit
            {
                if (listComputers.SelectedIndex > 0) //If "All" is selected, the computerName will already be blank, so it only needs reset if it isn't "All".
                {
                    computerNameSigButDef = _listComputers[listComputers.SelectedIndex - 1].CompName;
                }
                FormSigButDefEdit FormS = new FormSigButDefEdit(sigButDef.Copy());
                FormS.ShowDialog();
            }
            //Refresh our local list to match the cache in case the user edited or added a new button item.
            _arraySigButDefs = SigButDefs.GetByComputer(computerNameSelected);
            FillList();
        }
Ejemplo n.º 3
0
 private void listComputers_Click(object sender, EventArgs e)
 {
     //Cache needs to be saved to the database.
     if (SigButDefs.UpdateButtonIndexIfChanged(_arraySigButDefs))
     {
         DataValid.SetInvalid(InvalidType.SigMessages);
     }
     if (listComputers.SelectedIndex == 0)
     {
         _arraySigButDefs = SigButDefs.GetByComputer("");
     }
     else
     {
         //remember, defaults are mixed into this list unless overridden:
         _arraySigButDefs = SigButDefs.GetByComputer(_listComputers[listComputers.SelectedIndex - 1].CompName);
     }
     FillList();
 }
Ejemplo n.º 4
0
        private void FormMessagingButSetup_Load(object sender, EventArgs e)
        {
            _listComputers = Computers.GetDeepCopy();
            listComputers.Items.Clear();
            listComputers.Items.Add(Lan.g(this, "All"));
            string s;

            for (int i = 0; i < _listComputers.Count; i++)
            {
                s = _listComputers[i].CompName;
                if (SystemInformation.ComputerName == _listComputers[i].CompName)
                {
                    s += " " + Lan.g(this, "(this computer)");
                }
                listComputers.Items.Add(s);
            }
            listComputers.SelectedIndex = 0;
            _arraySigButDefs            = SigButDefs.GetByComputer("");
            FillList();
        }