Beispiel #1
0
        internal static IList <string> AutoCompleteArgs(string prefix)
        {
            IList <CVar> vars = CRegistery.ListVars(prefix, CCommand.DefaultListOptions);

            if (vars.Count == 0)
            {
                return(null);
            }

            return(Collection.Map(vars, delegate(CVar cvar)
            {
                return StringUtils.C(cvar.Name, ColorCode.TableVar);
            }));
        }
Beispiel #2
0
        protected override IList <string> AutoCompleteArgs(string commandLine, string prefix)
        {
            IList <CVar> vars = CRegistery.ListVars(delegate(CVarCommand cmd)
            {
                return(cmd.IsBool && CRegistery.ShouldListCommand(cmd, prefix, CCommand.DefaultListOptions));
            });

            if (vars.Count == 0)
            {
                return(null);
            }

            return(Collection.Map(vars, delegate(CVar cvar) {
                return StringUtils.C(cvar.Name, ColorCode.TableVar);
            }));
        }
Beispiel #3
0
        bool Execute(string prefix = null)
        {
            CommandListOptions options = CCommand.DefaultListOptions;

            if (includeSystem)
            {
                options |= CommandListOptions.System;
            }

            // TODO: refactoring
            IList <CVar> vars = CRegistery.ListVars(prefix, options);

            if (vars.Count > 0)
            {
                if (shortList)
                {
                    string[] names = Collection.Map(vars, delegate(CVar cvar) {
                        return(StringUtils.C(cvar.Name, ColorCode.TableVar));
                    });
                    Print(names);
                }
                else
                {
                    StringBuilder result = new StringBuilder();
                    for (int i = 0; i < vars.Count; ++i)
                    {
                        CVar cvar = vars[i];
                        result.AppendFormat("  {0} {1}", StringUtils.C(cvar.Name, ColorCode.TableVar), StringUtils.Arg(cvar.Value));

                        // TODO: better color highlight
                        if (!cvar.IsDefault)
                        {
                            result.AppendFormat(" {0} {1}", StringUtils.C("default", ColorCode.TableVar), cvar.DefaultValue);
                        }

                        if (i < vars.Count - 1)
                        {
                            result.Append('\n');
                        }
                    }

                    Print(result.ToString());
                }
            }

            return(true);
        }
Beispiel #4
0
        private static IList <string> ListCvars()
        {
            IList <CVar> cvars = CRegistery.ListVars(delegate(CVarCommand cmd)
            {
                return(!cmd.IsDefault && !cmd.HasFlag(CFlags.NoArchive));
            });

            IList <string> entries = new List <string>(cvars.Count);

            foreach (CVar cvar in cvars)
            {
                if (cvar.Value != null)
                {
                    entries.Add(string.Format("{0} {1}", cvar.Name, StringUtils.Arg(cvar.Value)));
                }
                else
                {
                    entries.Add("null " + cvar.Name);
                }
            }

            return(entries);
        }