public ShoppingListView(IShoppingList shoppingList) { if (shoppingList is null) { throw new ArgumentNullException(nameof(shoppingList)); } var items = shoppingList.Items is null ? new ShoppingListItem[0] : shoppingList.Items; Array.Sort(items); // Your milage may vary when it comes to color here. There are still a few bugs to iron // out in the rendering system. So far this is working in VS Code on macOS Catalina. Add(new ContentView($"{shoppingList.ListName}".Rgb(168, 139, 50))); Add(new ContentView("\n")); var view = new TableView <ShoppingListItem>(); view.Items = items; view.AddColumn <TextSpan>(item => item.Quantity.ToString().LightGreen(), new ContentView("#".UnderlineRed())); view.AddColumn <TextSpan>(item => item.Name.White(), new ContentView("Items to Purchase".UnderlineRed())); Add(view); Add(new ContentView("\n")); Add(new ContentView("\n")); }
private static Command listCommand() { var command = new Command("list"); command.Description = "list all your albums"; command.AddOption(new Option("--search", "provide a text that is in the album title.", new Argument <string>())); command.Handler = CommandHandler.Create <string>(async(s) => { if (!String.IsNullOrWhiteSpace(s)) { // TODO: implement search throw new NotImplementedException("The search option isn't implemented yet."); } await graphService.Login(); var albumService = new AlbumService(graphService); var result = await albumService.GetAlbums(); var console = new SystemConsole(); var tableView = new TableView <Album>() { Items = (await albumService.GetAlbums()).ToList() }; tableView.AddColumn(a => a.name, "Name"); tableView.AddColumn(a => a.createdDateTime.ToLocalTime().ToLongDateString(), "created"); tableView.AddColumn(a => a.createdBy.user.displayName, "Author"); tableView.AddColumn(a => a.lastModifiedDateTime.ToLocalTime().ToLongDateString(), "modifed"); tableView.AddColumn(A => A.lastModifiedBy.user.displayName, "last Author"); var consoleRenderer = new ConsoleRenderer(console); var screen = new ScreenView(consoleRenderer) { Child = tableView }; screen.Render(); }); return(command); }
private static Command richList() { List <Post> Posts = new List <Post>(); var client = new HttpClient(); var task = client.GetAsync("https://jsonplaceholder.typicode.com/posts") .ContinueWith((taskwithresponse) => { var response = taskwithresponse.Result; var jsonString = response.Content.ReadAsStringAsync(); jsonString.Wait(); Posts = JsonConvert.DeserializeObject <List <Post> >(jsonString.Result); }); task.Wait(); var cmd = new Command("list"); cmd.Handler = CommandHandler.Create(() => { var table = new TableView <Post> { Items = Posts.Take(20).ToList() }; table.AddColumn(user => user.ID, "ID"); table.AddColumn(user => user.Title, "Title"); var screen = new ScreenView(_consoleRenderer, _invocationContext.Console) { Child = table }; screen.Render(); }); return(cmd); }
public AnimationViewer(EditorWindow hostWindow) { // m_hostWindow = hostWindow; // create the table with a specified object type m_dataTable = new TableView(hostWindow, typeof(AnimationImportData)); // setup the description for content m_dataTable.AddColumn("RootPath", "PackageRootPath", 0.35f, TextAnchor.MiddleLeft); m_dataTable.AddColumn("FileNameMatch", "Name", 0.05f); m_dataTable.AddColumn("Index", "Priority", 0.05f); m_dataTable.AddColumn("TotalCount", "Count", 0.05f); m_dataTable.AddColumn("TotalMemuse", "Memory", 0.1f, TextAnchor.MiddleCenter, "<fmt_bytes>"); m_dataTable.AddColumn("AnimationType", "AnimationType", 0.2f); m_dataTable.AddColumn("AnimationCompression", "AnimationCompression", 0.2f); // sorting m_dataTable.SetSortParams(2, false); m_showTable = new TableView(hostWindow, typeof(AnimationInfo)); m_showTable.AddColumn("Path", "Path", 0.5f, TextAnchor.MiddleLeft); m_showTable.AddColumn("MemSize", "Memory", 0.1f, TextAnchor.MiddleCenter, "<fmt_bytes>"); m_showTable.AddColumn("AnimationType", "AnimationType", 0.2f); m_showTable.AddColumn("AnimationCompression", "AnimationCompression", 0.2f); m_showTable.SetSortParams(1, true); m_control = new AnimationDataControl(m_dataTable, m_showTable); // register the event-handling function m_dataTable.OnSelected += m_control.OnDataSelected; m_showTable.OnSelected += m_control.OnInfoSelected; }
/// <summary> /// The RenderTableData. /// </summary> /// <param name="avDatas">The avDatas<see cref="List{AvData}"/>.</param> /// <param name="serviceProvider">The serviceProvider<see cref="IServiceProvider"/>.</param> public static void RenderTableData(List <AvData> avDatas, IServiceProvider serviceProvider) { var region = new Region(0, 0, Console.WindowWidth, Console.WindowHeight, false); var context = serviceProvider.GetService <InvocationContext>(); var console = context.Console; if (console is ITerminal terminal) { terminal.Clear(); } var consoleRenderer = new ConsoleRenderer( console, mode: context.BindingContext.OutputMode(), resetAfterRender: true); var tableView = new TableView <AvData> { Items = avDatas }; tableView.AddColumn(data => $"{data.Title.Shorten(8)}", "Title"); tableView.AddColumn(data => $"{data.Number}", "Number"); tableView.AddColumn(data => $"{data.Time}", "Time"); tableView.AddColumn(data => $"{data.Actors?.Join(",")}", "Actors"); tableView.AddColumn(data => $"{data.Tags?.Join(",")}", "Tags"); //table.AddColumn(process => ContentView.FromObservable(process.TrackCpuUsage(), x => $"{x.UsageTotal:P}"), "CPU", ColumnDefinition.Star(1)); var screen = new ScreenView(renderer: consoleRenderer, console) { Child = tableView }; screen.Render(region); }
private static void RenderFrequencyTable(Dictionary <string, int> referenceHistogram, IConsole console) { Dictionary <int, int> referenceCountHistogram = new Dictionary <int, int>(); foreach (var(_, count) in referenceHistogram) { referenceCountHistogram.AddRange(count); } var normalizedFactor = (int)Math.Ceiling(referenceCountHistogram.Values.Max() / 50.0); var lines = referenceCountHistogram .GroupBy(kvp => kvp.Key) .OrderByDescending(x => x.Key) .SelectMany(x => x) .Where(x => x.Value / normalizedFactor > 1); var view = new TableView <KeyValuePair <int, int> > { Items = lines.ToArray() }; view.AddColumn(cellValue: x => x.Key, header: new ContentView("# of References".Underline())); view.AddColumn(cellValue: x => string.Join("", Enumerable.Repeat("*", x.Value / normalizedFactor)), new ContentView("Frequency".Underline())); var consoleRenderer = new ConsoleRenderer(console, mode: console.GetTerminal().DetectOutputMode(), resetAfterRender: true); var screen = new ScreenView(renderer: consoleRenderer, console) { Child = view }; screen.Render(new Region(0, 0, width: Console.WindowWidth, height: int.MaxValue)); console.GetTerminal().ShowCursor(); }
private static TableView GetTableView([NotNull] ITable table, [CanBeNull] string fieldName, bool caseSensitive) { Assert.ArgumentNotNull(table, nameof(table)); if (fieldName != null) { // parse/remove/use case sensitivty hint bool?caseSensitivityOverride; fieldName = ExpressionUtils.ParseCaseSensitivityHint(fieldName, out caseSensitivityOverride); if (caseSensitivityOverride != null) { caseSensitive = caseSensitivityOverride.Value; } } const bool useAsConstraint = false; TableView result = TableViewFactory.Create(table, fieldName, useAsConstraint, caseSensitive); result.AddColumn(QaConnections.StartsIn, typeof(bool)); DataColumn fieldColumn = result.AddColumn(_expressionFieldName, typeof(object)); fieldColumn.Expression = fieldName; return(result); }
public DirectoryTableView(DirectoryInfo directory) { if (directory == null) { throw new ArgumentNullException(nameof(directory)); } Add(new ContentView("\n")); Add(new ContentView(Span($"Directory: {directory.FullName.Rgb(235, 30, 180)}"))); Add(new ContentView("\n")); var tableView = new TableView <FileSystemInfo>(); tableView.Items = directory.EnumerateFileSystemInfos() .OrderByDescending(f => f is DirectoryInfo) .ToList(); tableView.AddColumn( cellValue: f => f is DirectoryInfo ? f.Name.LightGreen() : f.Name.White(), header: new ContentView("Name".Underline())); tableView.AddColumn( cellValue: f => Span(f.CreationTime), header: new ContentView("Created".Underline())); tableView.AddColumn( cellValue: f => Span(f.LastWriteTime), header: new ContentView("Modified".Underline())); Add(tableView); Formatter.AddFormatter <DateTime>(d => $"{d:d} {ForegroundColorSpan.DarkGray()}{d:t}"); }
static void Main(InvocationContext context, DirectoryInfo argument = null) { argument ??= new DirectoryInfo("."); var consoleRenderer = new ConsoleRenderer( context.Console, context.BindingContext.OutputMode(), true); var tableView = new TableView <FileInfo> { Items = argument.EnumerateFiles().ToList() }; tableView.AddColumn(f => f.Name, "Name"); tableView.AddColumn(f => f.LastWriteTime, "Modified"); tableView.AddColumn(f => f.Length, "Size"); var screen = new ScreenView(consoleRenderer, context.Console) { Child = tableView }; screen.Render(); }
public MemTableBrowser(EditorWindow hostWindow) { _hostWindow = hostWindow; // create the table with a specified object type _typeTable = new TableView(hostWindow, typeof(MemType)); _objectTable = new TableView(hostWindow, typeof(MemObject)); // setup the description for content _typeTable.AddColumn("TypeName", "Type Name", 0.6f, TextAnchor.MiddleLeft); _typeTable.AddColumn("Count", "Count", 0.15f); _typeTable.AddColumn("Size", "Size", 0.25f, TextAnchor.MiddleCenter, PAEditorConst.BytesFormatter); _objectTable.AddColumn("InstanceName", "Instance Name", 0.8f, TextAnchor.MiddleLeft); _objectTable.AddColumn("Size", "Size", 0.1f, TextAnchor.MiddleCenter, PAEditorConst.BytesFormatter); _objectTable.AddColumn("RefCount", "Refs", 0.1f); // sorting _typeTable.SetSortParams(2, true); _objectTable.SetSortParams(1, true); // register the event-handling function _typeTable.OnSelected += OnTypeSelected; _objectTable.OnSelected += OnObjectSelected; }
public Task <int> InvokeAsync(InvocationContext context) { var table = new TableView <KeyValuePair <string, ServiceEntry> > { Items = _options.Value.ToList() }; table.AddColumn( entry => entry.Key, Underline("Name"), ColumnDefinition.SizeToContent()); table.AddColumn( entry => entry.Value.Sources.Count(), Underline("Configured Sources"), ColumnDefinition.Star(1)); // table.AddColumn( // entry => entry.SourceType, // Underline(nameof(ServiceEntry.SourceType)), // ColumnDefinition.SizeToContent()); // // table.AddColumn( // entry => entry.Type, // Underline(nameof(ServiceEntry.Type)), // ColumnDefinition.SizeToContent()); // // table.AddColumn( // entry => entry.GitCloneUrl, // Underline(nameof(ServiceEntry.GitCloneUrl)), // ColumnDefinition.Star(1)); _console.Append(table, _console.DetectOutputMode()); return(Task.FromResult(context.ResultCode)); }
private static void DisplayHelp() { Console.WriteLine("\r\nTerminal Keys"); Console.WriteLine("-------------"); var consoleRenderer = new ConsoleRenderer( _invocationContext.Console, _invocationContext.BindingContext.OutputMode(), true); var helpList = new List <dynamic>(); helpList.Add(new { Key = "F1", Function = "Display SerialTerm key help" }); helpList.Add(new { Key = "F2", Function = "Disconnect / Reconnect serial connection" }); helpList.Add(new { Key = "F3", Function = "Display serial port settings" }); helpList.Add(new { Key = "F4", Function = "Soft reset ESP32 by toggling RTS enabled" }); helpList.Add(new { Key = "Home", Function = "Clear terminal screen" }); helpList.Add(new { Key = "ESC", Function = "Exit terminal program" }); var tableView = new TableView <dynamic> { Items = helpList.ToList() }; tableView.AddColumn(f => f.Key, "Key"); tableView.AddColumn(f => f.Function, "Function"); Region region = new Region(0, 0, new Size(Console.WindowWidth, Console.BufferHeight)); tableView.Render(consoleRenderer, region); Console.WriteLine(); Console.WriteLine(); }
private static void RenderReferenceTable(Dictionary <string, int> referenceHistogram, int?numberOfRows, IConsole console) { var lines = referenceHistogram .GroupBy(kvp => kvp.Value) .OrderByDescending(x => x.Key) .SelectMany(x => x); if (numberOfRows is int rows) { lines = lines.Take(rows); } var view = new TableView <KeyValuePair <string, int> > { Items = lines.ToArray() }; view.AddColumn(cellValue: x => Path.GetFileName(x.Key).Replace("\"", ""), new ContentView("Assembly Name".Underline())); view.AddColumn(cellValue: x => x.Value, new ContentView("Times Projects Referenced This Assemby".Underline())); var consoleRenderer = new ConsoleRenderer(console, mode: console.GetTerminal().DetectOutputMode(), resetAfterRender: true); var screen = new ScreenView(renderer: consoleRenderer, console) { Child = view }; screen.Render(new Region(0, 0, width: Console.WindowWidth, height: int.MaxValue)); console.GetTerminal().ShowCursor(); }
public void List() { var consoleRenderer = new ConsoleRenderer(Console); var protobufElements = Project.GetItems(ProtobufElement).ToList(); if (protobufElements.Count == 0) { Console.Log(CoreStrings.LogNoReferences); return; } var table = new TableView <ProjectItem> { Items = protobufElements }; // Required columns (always displayed) table.AddColumn(r => r.UnevaluatedInclude, CoreStrings.TableColumnProtobufReference); table.AddColumn(r => { var serviceType = r.GetMetadataValue(GrpcServicesElement); return(string.IsNullOrEmpty(serviceType) ? "Both" : serviceType); }, CoreStrings.TableColumnServiceType); // Optional columns (only displayed if an element is not default) if (protobufElements.Any(r => !string.IsNullOrEmpty(r.GetMetadataValue(SourceUrlElement)))) { table.AddColumn(r => r.GetMetadataValue(SourceUrlElement), CoreStrings.TableColumnSourceUrl); } // The default value is Public set by Grpc.Tools so skip this column if everything is default if (protobufElements.Any(r => !string.Equals(r.GetMetadataValue(AccessElement), Access.Public.ToString(), StringComparison.OrdinalIgnoreCase))) { table.AddColumn(r => r.GetMetadataValue(AccessElement), CoreStrings.TableColumnAccess); } if (protobufElements.Any(r => !string.IsNullOrEmpty(r.GetMetadataValue(AdditionalImportDirsElement)))) { table.AddColumn(r => r.GetMetadataValue(AdditionalImportDirsElement), CoreStrings.TableColumnAdditionalImports); } var screen = new ScreenView(consoleRenderer, Console) { Child = table }; Region region; try { // System.Console.WindowWidth can throw an IOException when runnning without a console attached region = new Region(0, 0, System.Console.WindowWidth, System.Console.WindowHeight); } catch (IOException) { region = new Region(0, 0, int.MaxValue, int.MaxValue); } screen.Child?.Render(consoleRenderer, region); }
private static void DisplayPorts() { var consoleRenderer = new ConsoleRenderer( _invocationContext.Console, _invocationContext.BindingContext.OutputMode(), true); string[] portnames = SerialPort.GetPortNames(); if (portnames.Length == 0) { Console.WriteLine("No serial ports detected."); return; } List <dynamic> serialList = new List <dynamic>(); int count = 0; foreach (var port in portnames) { _serialPort = new SerialPort(); _serialPort.PortName = portnames[count]; bool serialStatus = false; try { _serialPort.Open(); _serialPort.Close(); } catch (Exception) { serialStatus = true; } var serialObject = new { Count = count + 1, Port = portnames[count], Status = !serialStatus ? "(free)" : "(busy)" }; serialList.Add(serialObject); count++; } var tableView = new TableView <dynamic> { Items = serialList.ToList() }; tableView.AddColumn(f => f.Count, "#"); tableView.AddColumn(f => f.Port, "Port"); tableView.AddColumn(f => f.Status, "Status"); Region region = new Region(0, 0, new Size(Console.WindowWidth, Console.BufferHeight)); tableView.Render(consoleRenderer, region); }
public void _init() { int depWidth = 400; _tableView = new TableView(Win, typeof(TextureReportInfo)); _tableView.OnSelected += OnSelectAnimation; _tableView.AddColumn("TextureName", "纹理名称", 0.1f); _tableView.AddColumn("Guid", "Guid", 0.2f); //_tableView.AddColumn("MemSize", TextureReport.SIZE, 0.1f,TextAnchor.MiddleCenter, "<fmt_bytes>"); _tableView.AddColumn("MemSize", TextureReport.SIZE, 0.1f, TextAnchor.MiddleCenter); _tableView.AddColumn("Width", TextureReport.WIDTH, 0.1f); _tableView.AddColumn("Height", TextureReport.HEIGHT, 0.1f); _tableView.AddColumn("Format", TextureReport.FORMAT, 0.1f); _tableView.AddColumn("MipMap", TextureReport.MIP_MAP, 0.1f); _tableView.AddColumn("ReadWrite", TextureReport.READ_WRITE, 0.1f); _tableView.AddColumn("BeRefCount", TextureReport.AB_COUNT, 0.1f); _panel = new TableViewPanel(Ew - 10 - depWidth, Eh); _panel.AddTableView(_tableView); AddComponent(_panel, 5, 5); _depTableView = new TableView(Win, typeof(TmpStringInfo)); _depTableView.AddColumn("_param1", "冗余列表", 1, TextAnchor.MiddleLeft); _depTableView.OnSelected += OnSelectFile; _depTabPanel = new TableViewPanel(depWidth, Eh); _depTabPanel.AddTableView(_depTableView); AddComponentRight(_depTabPanel, _panel); }
public ConsoleViewZipInfo(ZipArchive zipArchive) { var tableView = new TableView <ZipArchiveEntry> { Items = zipArchive.Entries }; tableView.AddColumn(cellValue: e => e.Name, header: new ContentView("Name".Underline())); tableView.AddColumn(cellValue: e => e.Length, header: new ContentView("Length".Underline())); tableView.AddColumn(cellValue: e => e.CompressedLength, header: new ContentView("CompressedLength".Underline())); tableView.AddColumn(cellValue: e => e.Crc32, header: new ContentView("Crc32".Underline())); Add(tableView); }
public Command NewProject(List <Projects> repositories, InvocationContext invocationContext, ConsoleRenderer consoleRenderer) { var cmd = new Command("new", "Comando para criar um novo projeto"); foreach (var command in repositories) { var repositoryCommad = new Command(command.Description, $"Comando para criar um projeto à partir do template {command.Description}"); repositoryCommad.AddOption(new Option(new[] { "--name", "-n" }, "Nome da solução") { Argument = new Argument <string> { Arity = ArgumentArity.ExactlyOne } }); repositoryCommad.Handler = CommandHandler.Create <string>((name) => { if (string.IsNullOrEmpty(name)) { Console.WriteLine("Usage: new [template] [options]"); Console.WriteLine("\n"); Console.WriteLine("Options:"); Console.WriteLine("-n, --name <NomeDoSeuProjeto>"); return; } CreateProject(name, command.Url); }); cmd.Add(repositoryCommad); } cmd.Handler = CommandHandler.Create(() => { var table = new TableView <Projects> { Items = repositories }; Console.WriteLine("\n"); Console.WriteLine("Usage: new [template]"); Console.WriteLine("\n"); table.AddColumn(template => template.Description, "Template"); var screen = new ScreenView(consoleRenderer, invocationContext.Console) { Child = table }; screen.Render(); Console.WriteLine("-----"); Console.WriteLine("\n"); Console.WriteLine("Exemples:"); Console.WriteLine($" CodInsightsCLI new { repositories[0].Description } --name NomeDoSeuProjeto"); }); return(cmd); }
public BundleDataViewer(EditorWindow hostWindow) { m_dataTable = new TableView(hostWindow, typeof(BundleImportData)); // setup the description for content m_dataTable.AddColumn("RootPath", "RootPath", 0.30f, TextAnchor.MiddleLeft); m_dataTable.AddColumn("FileNameMatch", "Name", 0.15f); m_dataTable.AddColumn("Index", "Priority", 0.05f); m_dataTable.AddColumn("Publish", "Publish", 0.05f); m_dataTable.AddColumn("PushDependice", "Push", 0.05f); m_dataTable.AddColumn("Type", "Type", 0.10f); m_dataTable.AddColumn("LoadState", "LoadState", 0.10f); m_dataTable.AddColumn("LimitCount", "LimitCount", 0.05f); m_dataTable.AddColumn("LimitKBSize", "LimitKBSize", 0.05f); m_dataTable.AddColumn("SkipData", "SkipData", 0.05f); m_dataTable.AddColumn("TotalCount", "Count", 0.05f); // sorting m_dataTable.SetSortParams(2, false); m_showTable = new TableView(hostWindow, typeof(AssetPathInfo)); m_showTable.AddColumn("Path", "Path", 1.00f, TextAnchor.MiddleLeft); //m_showTable.SetSortParams(1, true); m_control = BundleDataControl.Instance; m_control.SetViewer(m_dataTable, m_showTable); // register the event-handling function m_dataTable.OnSelected += m_control.OnDataSelected; m_showTable.OnSelected += m_control.OnInfoSelected; }
public AutoPlaylistSongsListView(AutoPlaylist playlist) { //BackgroundColor = NSColor.Blue; TableView.AddColumn(new NSTableColumn("Title") { Title = "Title" }); TableView.AddColumn(new NSTableColumn("Artist") { Title = "Artist" }); TableView.AddColumn(new NSTableColumn("Album") { Title = "Album" }); TableView.DoubleClick += (object sender, EventArgs e) => { var item = Model.GetItem(TableView.SelectedRow); Model.PlayItem(item); }; Model = new AutoPlaylistSongViewModel { Playlist = playlist, AutoPlay = false, }; }
private void UpdateShowTableTitle() { _showTable.ClearColumns(); foreach (var columnType in _viewerModeManager.GetShowTable(_mode)) { _showTable.AddColumn(columnType.colDataPropertyName, columnType.colTitleText, columnType.widthByPercent, columnType.alignment, columnType.fmt); } }
public DirectoryView(DirectoryInfo directory) { if (directory == null) { throw new ArgumentNullException(nameof(directory)); } var formatter = new SpanFormatter(); formatter.AddFormatter <DateTime>(d => $"{d:d} {ForegroundColorSpan.DarkGray()}{d:t}"); Add(new ContentView("")); Add(new ContentView("")); Add(new ContentView($"Directory: {directory.FullName}")); Add(new ContentView("")); Add(new ContentView("")); var directoryContents = directory.EnumerateFileSystemInfos() .OrderBy(f => f is DirectoryInfo ? 0 : 1).ToList(); var tableView = new TableView <FileSystemInfo>(); tableView.Items = directoryContents; tableView.AddColumn(f => f is DirectoryInfo ? Span($"{ForegroundColorSpan.LightGreen()}{f.Name} ") : Span($"{ForegroundColorSpan.White()}{f.Name} "), new ContentView(formatter.ParseToSpan($"{Ansi.Text.UnderlinedOn}Name{Ansi.Text.UnderlinedOff}"))); tableView.AddColumn(f => formatter.Format(f.CreationTime), new ContentView(formatter.ParseToSpan($"{Ansi.Text.UnderlinedOn}Created{Ansi.Text.UnderlinedOff}"))); tableView.AddColumn(f => formatter.Format(f.LastWriteTime), new ContentView(formatter.ParseToSpan($"{Ansi.Text.UnderlinedOn}Modified{Ansi.Text.UnderlinedOff}"))); Add(tableView); Span Span(FormattableString formattableString) { return(formatter.ParseToSpan(formattableString)); } }
public void _init(EditorWindow win) { _rootPath = new ELabelInput("根目录:", 80, "", 400); _searchBtn = new EButton("根据目录检索", 150); _serchAllBtn = new EButton("检索所有目录", 150); _loadRuleBtn = new EButton("加载纹理规则", 150); _formatBtn = new EButton("格式化纹理", 150); _searchBtn.OnClick += OnSearchByPath; _serchAllBtn.OnClick += OnSearchAll; _loadRuleBtn.OnClick += OnloadRuleBtn; _formatBtn.OnClick += OnFormatBtn; ERect item = _rootPath; AddComponent(_rootPath, 5, 5); item = AddComponentRight(_searchBtn, item); item = AddComponentRight(_serchAllBtn, item); item = AddComponentRight(_loadRuleBtn, item); item = AddComponentRight(_formatBtn, item); _texRuleTable = new TableView(win, typeof(AssetFormatRule)); _texRuleTable.OnSelected += OnRuleSelected; _texRuleTable.AddColumn("FilterPath", "过滤的路径", 0.45f); _texRuleTable.AddColumn("FilterRule", "过滤规则", 0.35f); _texRuleTable.AddColumn("FormatRule", "格式化", 0.25f); _texRuleTablePanel = new TableViewPanel(Ew - 10, 200); _texRuleTablePanel.AddTableView(_texRuleTable); AddComponent(_texRuleTablePanel, 5, 10 + _rootPath.Eh); _texShowTable = new TableView(win, typeof(TextureFormatInfo)); _texShowTable.OnSelected += OnInfoSelected; _texShowTable.AddColumn("Path", "路径", 0.35f, TextAnchor.MiddleLeft); _texShowTable.AddColumn("MemSize", "内存占用", 0.05f, TextAnchor.MiddleCenter, "<fmt_bytes>"); _texShowTable.AddColumn("ReadWriteEnable", "R/W", 0.05f); _texShowTable.AddColumn("MipmapEnable", "Mipmap", 0.05f); _texShowTable.AddColumn("IsSpriteTag", "图集(和Format冲突)", 0.1f); _texShowTable.AddColumn("AndroidFormat", "AndroidFormat", 0.1f); _texShowTable.AddColumn("IosFormat", "IosFormat", 0.1f); _texShowTable.AddColumn("ImportType", "纹理格式", 0.1f); _texShowTable.AddColumn("ImportShape", "ImportShape", 0.1f); _texShowTablePanel = new TableViewPanel(Ew - 10, Eh - 10 - _rootPath.Eh - _texRuleTablePanel.Eh); _texShowTablePanel.AddTableView(_texShowTable); AddComponentDown(_texShowTablePanel, _texRuleTablePanel); }
public static async Task Handler(InvocationContext invocationContext, Uri fhirServer) { var region = new Region( 0, 0, Console.WindowWidth, Console.WindowHeight, true); var httpClient = new HttpClient { BaseAddress = fhirServer, }; var jsonResult = await httpClient.GetStringAsync(new Uri("/_schema/versions")); List <JToken> resultsJson = JArray.Parse(jsonResult).ToList(); var tableView = new TableView <JToken> { Items = resultsJson, }; tableView.AddColumn( cellValue: f => f["id"], header: new ContentView("Version")); tableView.AddColumn( cellValue: f => f["script"], header: new ContentView("Script")); var consoleRenderer = new ConsoleRenderer( invocationContext.Console, mode: invocationContext.BindingContext.OutputMode(), resetAfterRender: true); var screen = new ScreenView(renderer: consoleRenderer) { Child = tableView }; screen.Render(region); }
void Awake() { _shaderRefTable = new TableView(this, typeof(ShaderItem)); _shaderRefTable.AddColumn("ShaderName", "ShaderName", 0.8f, TextAnchor.MiddleLeft); _shaderRefTable.AddColumn("ShaderRefCount", "RefCount", 0.2f); _shaderRefTable.OnSelected += TableView_ShaderSelected; _otherShaderRefTable = new TableView(this, typeof(ShaderItem)); _otherShaderRefTable.AddColumn("ShaderName", "ShaderName", 0.8f, TextAnchor.MiddleLeft); _otherShaderRefTable.AddColumn("ShaderRefCount", "RefCount", 0.2f); _otherShaderRefTable.OnSelected += TableView_ShaderSelected; _matList = new TableView(this, typeof(MaterialItem)); _matList.AddColumn("MatName", "Name", 0.3f, TextAnchor.MiddleLeft); _matList.AddColumn("MatPath", "Path", 0.7f, TextAnchor.MiddleLeft); _matList.OnSelected += TableView_MaterialSelected; RefreshTables(); }
public void _init(EditorWindow win) { _rootPath = new ELabelInput("文件名:", 80, "", 400); _searchFileBtn = new EButton("文件名检索", 150); _searchFileBtn.OnClick += OnSearchFileByPath; ERect item = _rootPath; AddComponent(_rootPath, 5, 5); item = AddComponentRight(_searchFileBtn, item); _effectTable = new TableView(win, typeof(CheckEffectReportCnf)); _effectTable.OnSelected += OnRuleSelected; _effectTable.AddColumn("_assetPath", CheckEffectReportCnf.ASSET_PATH, 0.4f); _effectTable.AddColumn("_effName", CheckEffectReportCnf.EFFECT_NAME, 0.15f); _effectTable.AddColumn("_loadTime", CheckEffectReportCnf.LOAD_TIME, 0.05f); _effectTable.AddColumn("_instTime", CheckEffectReportCnf.INST_TIME, 0.05f); _effectTable.AddColumn("_dc", CheckEffectReportCnf.DRAWCALL, 0.05f); _effectTable.AddColumn("_triangles", CheckEffectReportCnf.TRIANGLES, 0.05f); _effectTable.AddColumn("_materialCount", CheckEffectReportCnf.MATERIAL_COUNT, 0.05f); _effectTable.AddColumn("_totalPsCount", CheckEffectReportCnf.TOTAL_PS_COUNT, 0.05f); _effectTable.AddColumn("_texMemBytes", CheckEffectReportCnf.TEX_MEM_BYTES, 0.05f); _effectTable.AddColumn("_texMemCount", CheckEffectReportCnf.TEX_MEM_COUNT, 0.05f); _effectTable.AddColumn("_animationCount", CheckEffectReportCnf.ANIM_COUNT, 0.05f); _effectTablePanel = new TableViewPanel(Ew - 10, 200); _effectTablePanel.AddTableView(_effectTable); _effectTablePanel.RefreshData(_shows); AddComponent(_effectTablePanel, 5, 10 + _rootPath.Eh); _effectTexTable = new TableView(win, typeof(TmpStringInfo)); _effectTexTable.AddColumn("_param1", "路径", 0.45f, TextAnchor.MiddleLeft); _effectTexTable.AddColumn("_param2", "内存占用", 0.05f, TextAnchor.MiddleCenter); _effectTexTablePanel = new TableViewPanel(Ew - 10, Eh - 10 - _rootPath.Eh - _effectTablePanel.Eh); _effectTexTablePanel.AddTableView(_effectTexTable); AddComponentDown(_effectTexTablePanel, _effectTablePanel); }
public TextureInfoViewer() { _textureInfoTable = new TableView(this, typeof(TextureInfoItem)); _textureInfoTable.AddColumn("TextureName", "Texture Name", 0.5f, TextAnchor.MiddleLeft); _textureInfoTable.AddColumn("TextureWidth", "Width", 0.1f, TextAnchor.MiddleCenter); _textureInfoTable.AddColumn("TextureHeight", "Height", 0.1f, TextAnchor.MiddleCenter); _textureInfoTable.AddColumn("TextureSize", "Size", 0.2f, TextAnchor.MiddleCenter, PAEditorConst.BytesFormatter); _textureInfoTable.OnSelected += OnTextureSelected; _textureInfoTiles = new TileView(this); _textureInfoTiles.OnSelected += OnTextureSelected; _textureCatTable = new TableView(this, typeof(TextureCategoryItem)); _textureCatTable.AddColumn("TextureCatName", "Category Name", 0.5f, TextAnchor.MiddleLeft); _textureCatTable.AddColumn("TextureCat", "CatID", 0.1f); _textureCatTable.AddColumn("TextureCatSize", "Size", 0.2f, TextAnchor.MiddleCenter, PAEditorConst.BytesFormatter); _textureCatTable.AddColumn("TextureCatCount", "Count", 0.2f); _textureCatTable.OnSelected += TableView_TextureCategorySelected; }
public TextureOverviewViewer(EditorWindow hostWindow) { m_data = new List <object> [(int)TextureOverviewMode.Count]; m_flag = new bool[(int)TextureOverviewMode.Count]; for (int i = 0; i < (int)TextureOverviewMode.Count; ++i) { m_flag[i] = false; m_data[i] = new List <object>(); } m_dataTable = new TableView(hostWindow, typeof(TextureOverviewData)); TextureOverviewData.SwitchDataTableMode(m_mode, m_dataTable); m_showTable = new TableView(hostWindow, typeof(TextureInfo)); m_showTable.AddColumn("Path", "Path", 0.8f, TextAnchor.MiddleLeft); m_showTable.AddColumn("MemSize", "Memory", 0.2f, TextAnchor.MiddleCenter, "<fmt_bytes>"); m_dataTable.OnSelected += OnDataSelected; m_showTable.OnSelected += OnInfoSelected; }
public void _init() { int depWidth = 400; _tableView = new TableView(Win, typeof(AnimationReportInfo)); _tableView.OnSelected += OnSelectAnimation; _tableView.AddColumn("AnimationName", "动作名称", 0.8f); _tableView.AddColumn("MemSizeT", "内存占用", 0.1f); _tableView.AddColumn("BeRefCount", "冗余数", 0.1f); _panel = new TableViewPanel(Ew - 10 - depWidth, Eh); _panel.AddTableView(_tableView); AddComponent(_panel, 5, 5); _depTableView = new TableView(Win, typeof(TmpStringInfo)); _depTableView.AddColumn("_param1", "冗余列表", 1, TextAnchor.MiddleLeft); _depTableView.OnSelected += OnSelectFile; _depTabPanel = new TableViewPanel(depWidth, Eh); _depTabPanel.AddTableView(_depTableView); AddComponentRight(_depTabPanel, _panel); }
/// <summary> /// Initializes a new instance of the <see cref="CaptureView"/> class. /// </summary> public CaptureView(List <Capture> captures) { Add(new ContentView("")); Add(new ContentView("Captures")); Add(new ContentView("")); var table = new TableView <Capture>() { Items = captures }; table.AddColumn(p => p.UrlKey, new ContentView("Url".PadRight(60).Underline())); table.AddColumn(p => p.MimeType, new ContentView("MimeType".PadRight(30).Underline())); table.AddColumn(p => p.Length, new ContentView("Length".Underline())); table.AddColumn(p => { if (String.IsNullOrEmpty(p.Operation)) { return("--".PadRight(15).Red()); } switch (p.Operation) { case "Waiting": return(p.Operation.PadRight(15).LightYellow()); case "Downloading": return(p.Operation.PadRight(15).Magenta()); case "Exists": return(p.Operation.PadRight(15).Yellow()); case "Saving": return(p.Operation.PadRight(15).Green()); case "Done": return(p.Operation.PadRight(15).LightGreen()); case "Error": return(p.Operation.PadRight(15).Red()); default: return(p.Operation.PadRight(15).White()); } }, new ContentView("Status".Underline())); Add(table); }