Exemplo n.º 1
0
 public FunctionOrConstantCommand(string text, string toolTip, ITextProvider expressionTextProvider,
                                  IScriptProvider scriptingTextProvider, IScriptProvider customFunctionsTextProvider, ISharedViewState sharedViewState, IFunctionsDetails functionsDetails, IClickedMouseButtonsProvider clickedMouseButtonsProvider, IShowFunctionDetails showFunctionDetails)
 {
     Text    = text;
     ToolTip = toolTip;
     _expressionTextProvider      = expressionTextProvider;
     _scriptingTextProvider       = scriptingTextProvider;
     _customFunctionsTextProvider = customFunctionsTextProvider;
     _sharedViewState             = sharedViewState;
     this._functionsDetails       = functionsDetails;
     _clickedMouseButtonsProvider = clickedMouseButtonsProvider;
     _showFunctionDetails         = showFunctionDetails;
 }
        public FunctionOrConstantCommand(AutocompleteItem autocompleteItem, ITextProvider expressionTextProvider,
                                         IScriptProvider scriptingTextProvider, IScriptProvider customFunctionsTextProvider, ISharedViewState sharedViewState, IClickedMouseButtonsProvider clickedMouseButtonsProvider, IShowFunctionDetails showFunctionDetails)
        {
            this._autocompleteItem = autocompleteItem;

            //TODO: do we really want to show signature as text and title as tooltip?
            Text    = _autocompleteItem.Details.Signature;
            ToolTip = _autocompleteItem.Details.Title;

            _expressionTextProvider      = expressionTextProvider;
            _scriptingTextProvider       = scriptingTextProvider;
            _customFunctionsTextProvider = customFunctionsTextProvider;
            _sharedViewState             = sharedViewState;
            _clickedMouseButtonsProvider = clickedMouseButtonsProvider;
            _showFunctionDetails         = showFunctionDetails;
        }
Exemplo n.º 3
0
 public ConstantsCommand(ITextProvider expressionTextProvider, IScriptProvider scriptingTextProvider, IScriptProvider customFunctionsTextProvider, ISharedViewState sharedViewState, IAutocompleteProvider autocompleteProvider, IClickedMouseButtonsProvider clickedMouseButtonsProvider, IShowFunctionDetails showFunctionDetails) : base(MenuStrings.constantsToolStripMenuItem_Text,
                                                                                                                                                                                                                                                                                                                                            new Dictionary <string, string>()
 {
     { "MathematicalConstants", MenuStrings.mathematicalConstantsToolStripMenuItem_Text },
     { "PhysicalConstants", MenuStrings.physicalConstantsToolStripMenuItem_Text }
 },
                                                                                                                                                                                                                                                                                                                                            expressionTextProvider, scriptingTextProvider, customFunctionsTextProvider, sharedViewState, autocompleteProvider, clickedMouseButtonsProvider, showFunctionDetails)
 {
 }
Exemplo n.º 4
0
 public FunctionsCommand(ITextProvider expressionTextProvider, IScriptProvider scriptingTextProvider, IScriptProvider customFunctionsTextProvider, ISharedViewState sharedViewState, IFunctionsDetails functionsDetails, IClickedMouseButtonsProvider clickedMouseButtonsProvider, IShowFunctionDetails showFunctionDetails) : base(MenuStrings.functionsToolStripMenuItem_Text,
                                                                                                                                                                                                                                                                                                                                    new Dictionary <string, string>()
 {
     { "ElementaryFunctions", MenuStrings.elementaryFunctionsToolStripMenuItem_Text },
     { "SpecialFunctions", MenuStrings.specialFunctionsToolStripMenuItem_Text }
 },
                                                                                                                                                                                                                                                                                                                                    expressionTextProvider, scriptingTextProvider, customFunctionsTextProvider, sharedViewState, functionsDetails, clickedMouseButtonsProvider, showFunctionDetails)
 {
 }
Exemplo n.º 5
0
        private static List <IToolbarCommand> BuildFunctionsOrConstantsCommands(string key, ITextProvider expressionTextProvider, IScriptProvider scriptingTextProvider, IScriptProvider customFunctionsTextProvider, ISharedViewState sharedViewState, IAutocompleteProvider autocompleteProvider, IClickedMouseButtonsProvider mouseButtonsProvider, IShowFunctionDetails showFunctionDetails)
        {
            var dict = new Dictionary <string, IToolbarCommand>();

            foreach (var f in autocompleteProvider.ExpressionAutocompleteItems)
            {
                if (f.Details.IsNullOrEmpty() || f.Details.Type != key)
                {
                    continue;
                }

                //TODO: remove this code when made sure it does nothing:
                if (f.Details.Category == "")
                {
                    f.Details.Category = "_empty_";
                }


                if (!dict.ContainsKey(f.Details.Category))
                {
                    //var cat = new ToolStripMenuItem(f.Value.Category) { Name = f.Value.Category };
                    var command = new DummyCommand(f.Details.Category)
                    {
                        ChildrenCommands = new List <IToolbarCommand>()
                    };
                    dict.Add(f.Details.Category, command);
                }
                (dict[f.Details.Category].ChildrenCommands as List <IToolbarCommand>).Add(
                    new FunctionOrConstantCommand(f, expressionTextProvider,
                                                  scriptingTextProvider, customFunctionsTextProvider, sharedViewState, mouseButtonsProvider, showFunctionDetails));
            }

            return(dict.Values.ToList());
        }
Exemplo n.º 6
0
        public FunctionDetailsBasedCommand(string name, Dictionary <string, string> KeyAndNameOfCommandCollection, ITextProvider expressionTextProvider, IScriptProvider scriptingTextProvider, IScriptProvider customFunctionsTextProvider, ISharedViewState sharedViewState, IAutocompleteProvider autocompleteProvider, IClickedMouseButtonsProvider mouseButtonsProvider, IShowFunctionDetails showFunctionDetails) : base(name)
        {
            var childrenCommands = new List <IToolbarCommand>();

            foreach (var keyValue in KeyAndNameOfCommandCollection)
            {
                childrenCommands.Add(new DummyCommand(keyValue.Value)
                {
                    ChildrenCommands = BuildFunctionsOrConstantsCommands(keyValue.Key, expressionTextProvider,
                                                                         scriptingTextProvider, customFunctionsTextProvider, sharedViewState, autocompleteProvider, mouseButtonsProvider, showFunctionDetails)
                });
            }

            ChildrenCommands = childrenCommands;
        }
        private static List <IToolbarCommand> BuildFunctionsOrConstantsCommands(string key, ITextProvider expressionTextProvider, IScriptProvider scriptingTextProvider, IScriptProvider customFunctionsTextProvider, ISharedViewState sharedViewState, IFunctionsDetails functionsDetails, IClickedMouseButtonsProvider mouseButtonsProvider, IShowFunctionDetails showFunctionDetails)
        {
            var dict = new Dictionary <string, IToolbarCommand>();

            var functions = functionsDetails.ToArray();


            foreach (var f in functions)
            {
                if (f.Value.Type != key)
                {
                    continue;
                }


                if (f.Value.Category == "")
                {
                    f.Value.Category = "_empty_";
                }

                if (!dict.ContainsKey(f.Value.Category))
                {
                    //var cat = new ToolStripMenuItem(f.Value.Category) { Name = f.Value.Category };
                    var command = new DummyCommand(f.Value.Category)
                    {
                        ChildrenCommands = new List <IToolbarCommand>()
                    };
                    dict.Add(f.Value.Category, command);
                }
                (dict[f.Value.Category].ChildrenCommands as List <IToolbarCommand>).Add(
                    new FunctionOrConstantCommand(f.Value.Signature, f.Value.Title, expressionTextProvider,
                                                  scriptingTextProvider, customFunctionsTextProvider, sharedViewState, functionsDetails, mouseButtonsProvider, showFunctionDetails));
            }

            return(dict.Values.ToList());
        }