コード例 #1
0
 public ActionItem(sp.VoiceAction o)
 {
     ObjRef = o;
 }
コード例 #2
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            switch((sender as Button).Name){
                    //............................................................
                    case "btnCancel": this.Close(); break;

                    //............................................................
                    case "btnAddCmd":
                        var newCmd = new sp.VoiceCommand("New Command");
                        mProfile.Commands.Add(newCmd);
                        mCommandItems.Add(new CommandItem(){ ObjRef = newCmd });

                        var va = new sp.VoiceAction(){ Type = "kb", Data = "LCTRL x" };
                        newCmd.Actions.Add(va);
                    break;

                    //............................................................
                    case "btnRemoveCmd":
                        if(lvCommands.SelectedItem != null) {
                            CommandItem ci = (CommandItem) lvCommands.SelectedItem;
                            mProfile.Commands.Remove(ci.ObjRef);	//Remove From Profile
                            mCommandItems.Remove(ci);				//Remove from bound list
                        }//if
                    break;

                    //............................................................
                    case "btnAddAct":
                        if(lvCommands.SelectedItem != null){
                            var vaa = new sp.VoiceAction(){ Type = "kb", Data = "LCTRL x" };
                            (lvCommands.SelectedItem as CommandItem).ObjRef.Actions.Add(vaa);
                            mActionItems.Add(new ActionItem(vaa));
                        }//if
                    break;

                    //............................................................
                    case "btnRemoveAct":
                        if(lvActions.SelectedItem != null){
                            CommandItem ci = (CommandItem) lvCommands.SelectedItem;
                            ActionItem ai = (ActionItem) lvActions.SelectedItem;
                            ci.ObjRef.Actions.Remove(ai.ObjRef);	//Remove From Command
                            mActionItems.Remove(ai);				//Remove from bound list
                        }//if
                    break;

                    //............................................................
                    case "btnSave":
                        string pName = tbProfileName.Text.Trim();
                        if(String.IsNullOrEmpty(pName)) {
                            MessageBox.Show("Must have a profile name","Warning",MessageBoxButton.OK,MessageBoxImage.Warning);
                            return;
                        }//if

                        //Convert delimited string into an string array for the profile.
                        string[] ary;
                        foreach(var cmd in mCommandItems){
                            cmd.ObjRef.Grammar.Clear();
                            ary = cmd.Grammar.ToLower().Split(',');
                            foreach(string str in ary) cmd.ObjRef.Grammar.Add(str.Trim());
                        }//for

                        //Save everything else
                        mProfile.Name = pName;
                        mProfile.Save();
                        mHasSaved = true;

                        //If changing the profile name, then the profile will save to a new file
                        //Because of that, we need to delete the old profile. TODO
                        if(mProfileName != null && !mProfileName.Equals(pName)){
                        }//if

                        this.Close();
                    break;
                }//switch
        }
コード例 #3
0
        }                //func

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            switch ((sender as Button).Name)
            {
            //............................................................
            case "btnCancel": this.Close(); break;

            //............................................................
            case "btnAddCmd":
                var newCmd = new sp.VoiceCommand("New Command");
                mProfile.Commands.Add(newCmd);
                mCommandItems.Add(new CommandItem()
                {
                    ObjRef = newCmd
                });

                var va = new sp.VoiceAction()
                {
                    Type = "kb", Data = "LCTRL x"
                };
                newCmd.Actions.Add(va);
                break;

            //............................................................
            case "btnRemoveCmd":
                if (lvCommands.SelectedItem != null)
                {
                    CommandItem ci = (CommandItem)lvCommands.SelectedItem;
                    mProfile.Commands.Remove(ci.ObjRef); //Remove From Profile
                    mCommandItems.Remove(ci);            //Remove from bound list
                }                                        //if
                break;

            //............................................................
            case "btnAddAct":
                if (lvCommands.SelectedItem != null)
                {
                    var vaa = new sp.VoiceAction()
                    {
                        Type = "kb", Data = "LCTRL x"
                    };
                    (lvCommands.SelectedItem as CommandItem).ObjRef.Actions.Add(vaa);
                    mActionItems.Add(new ActionItem(vaa));
                }                                //if
                break;

            //............................................................
            case "btnRemoveAct":
                if (lvActions.SelectedItem != null)
                {
                    CommandItem ci = (CommandItem)lvCommands.SelectedItem;
                    ActionItem  ai = (ActionItem)lvActions.SelectedItem;
                    ci.ObjRef.Actions.Remove(ai.ObjRef); //Remove From Command
                    mActionItems.Remove(ai);             //Remove from bound list
                }                                        //if
                break;

            //............................................................
            case "btnSave":
                string pName = tbProfileName.Text.Trim();
                if (String.IsNullOrEmpty(pName))
                {
                    MessageBox.Show("Must have a profile name", "Warning", MessageBoxButton.OK, MessageBoxImage.Warning);
                    return;
                }                                //if

                //Convert delimited string into an string array for the profile.
                string[] ary;
                foreach (var cmd in mCommandItems)
                {
                    cmd.ObjRef.Grammar.Clear();
                    ary = cmd.Grammar.ToLower().Split(',');
                    foreach (string str in ary)
                    {
                        cmd.ObjRef.Grammar.Add(str.Trim());
                    }
                }                                //for

                //Save everything else
                mProfile.Name = pName;
                mProfile.Save();
                mHasSaved = true;

                //If changing the profile name, then the profile will save to a new file
                //Because of that, we need to delete the old profile. TODO
                if (mProfileName != null && !mProfileName.Equals(pName))
                {
                }                                //if

                this.Close();
                break;
            }                    //switch
        }