Пример #1
0
        void Command_Table_Select_RowsByExpression(GetExpressionDialog.Result result)
        {
            var table     = GetTable();
            var variables = GetTableVariables(table);
            var results   = new NEExpression(result.Expression).EvaluateList <bool>(variables, table.NumRows);
            var lines     = results.Indexes(res => res).Select(row => row + 1).ToList();

            SetSelections(lines.AsParallel().AsOrdered().Select(line => new Range(Data.GetOffset(line, Data.GetLineLength(line)), Data.GetOffset(line, 0))).ToList());
        }
Пример #2
0
        void Command_File_Save_SaveAsByExpression(GetExpressionDialog.Result result, AnswerResult answer, bool copyOnly = false)
        {
            var results = GetFixedExpressionResults <string>(result.Expression);

            if (results.Count != 1)
            {
                throw new Exception("Only one filename may be specified");
            }

            var newFileName = FileName.RelativeChild(results[0]);

            if (File.Exists(newFileName))
            {
                if ((answer.Answer != MessageOptions.YesToAll) && (answer.Answer != MessageOptions.NoToAll))
                {
                    answer.Answer = new Message(WindowParent)
                    {
                        Title         = "Confirm",
                        Text          = "File already exists; overwrite?",
                        Options       = MessageOptions.YesNoYesAllNoAllCancel,
                        DefaultCancel = MessageOptions.Cancel,
                    }
                }
Пример #3
0
        void Command_Expression_SelectByExpression(GetExpressionDialog.Result result)
        {
            var results = GetFixedExpressionResults <bool>(result.Expression);

            SetSelections(Selections.Where((str, num) => results[num]).ToList());
        }
Пример #4
0
 void Command_Expression_Copy(GetExpressionDialog.Result result) => SetClipboardStrings(GetVariableExpressionResults <string>(result.Expression));
Пример #5
0
 void Command_Expression_Expression(GetExpressionDialog.Result result) => ReplaceSelections(GetFixedExpressionResults <string>(result.Expression));