Пример #1
0
        public void SaveRequested()
        {
            BaseDatabase db = CreateDatabase(DatabaseName);


            // if we did not create the panel then do not waste time trying to save
            if (false == PanelWasMade)
            {
                return;
            }
            for (int i = 0; i < configPanel.Controls.Count; i++)
            {
                if (configPanel.Controls[i] is VisualKey)
                {
                    VisualKey key = (VisualKey)configPanel.Controls [i];
                    if (true == key.IsModified && key.keyOut != null)
                    {
                        // we have a modified key and it should be stored into the database
                        if (db.Exists(TableName, columnGUID, key.keyOut.GetGUID()))
                        {
                            // modified existing
                            db.UpdateSpecificColumnData(TableName, new string[columnCount - 1] {
                                columnGUID,
                                columnKeyModifier,
                                columnKey
                            }, new object[columnCount - 1] {
                                key.keyOut.GetGUID(),
                                key.keyOut.ModifyingKey.ToString(),
                                key.keyOut.Key.ToString()
                            }, columnGUID, key.keyOut.GetGUID());
                        }
                        else
                        {
                            // add new
                            db.InsertData(TableName, new string[columnCount - 1] {
                                columnGUID,
                                columnKeyModifier,
                                columnKey
                            }, new object[columnCount - 1] {
                                key.keyOut.GetGUID(),
                                key.keyOut.ModifyingKey.ToString(),
                                key.keyOut.Key.ToString()
                            });
                        }
                    }
                }
            }

            db.Dispose();
        }
Пример #2
0
        private void RebuildListOfKeys()
        {
            configPanel.Controls.Clear();
            HotKeys.Sort();

            List <KeyData> ModifiedKeys = GetListOfModifiedKeys(DatabaseName);


            //NewMessage.Show (HotKeys.Count.ToString());
            foreach (KeyData keysy in HotKeys)
            {
                KeyData keyModified = ModifiedKeys.Find(KeyData => KeyData.GetGUID() == keysy.GetGUID());

                if (keyModified != null)
                {
                    // we have an overriden key
                    keysy.Key          = keyModified.Key;
                    keysy.ModifyingKey = keyModified.ModifyingKey;
                }

                VisualKey keyPanel = new VisualKey(keysy, MainFormBase.MainFormIcon, AfterKeyEdit);
                // apply any overrides from database storage

                configPanel.Controls.Add(keyPanel);
                keyPanel.Dock = DockStyle.Top;
            }

            Button Reset = new Button();

            Reset.Text   = Loc.Instance.GetString("Reset");
            Reset.Dock   = DockStyle.Top;
            Reset.Click += HandleResetClick;

            configPanel.Controls.Add(Reset);
            Reset.BringToFront();

            CheckForErrors();
        }