clui

Command Line User Interface (Console UI inspired by TurboVision)

Github星跟踪图

CLUI

Command Line User Interface (Console UI inspired by TurboVision) with built-in theme support. Please see screenshots of working examples at the end of the README.

Installation

go get -u github.com/VladimirMarkelov/clui

Current version

The current version is 1.2.1. Please see details in changelog.

Applications that uses the library

Documentation

The list of available controls

  • Window (Main control container - with maximize, window order and other window features)
  • Label (Horizontal and Vertical with basic color control tags)
  • Button (Simple push button control)
  • EditField (One line text edit control with basic clipboard control)
  • ListBox (string list control with vertical scroll)
  • TextView (ListBox-alike control with vertical and horizontal scroll, and wordwrap mode)
  • ProgressBar (Vertical and horizontal. The latter one supports custom text over control)
  • Frame (A decorative control that can be a container for other controls as well)
  • Scrollable frame
  • CheckBox (Simple check box)
  • Radio (Simple radio button. Useless alone - should be used along with RadioGroup)
  • RadioGroup (Non-visual control to manage a group of a few RadioButtons)
  • ConfirmationDialog (modal View to ask a user confirmation, button titles are custom)
  • SelectDialog (modal View to ask a user to select an item from the list - list can be ListBox or RadioGroup)
  • SelectEditDialog (modal View to ask a user to enter a value)
  • BarChart (Horizontal bar chart without scroll)
  • SparkChart (Show tabular data as a bar graph)
  • GridView (Table to show structured data - only virtual and readonly mode with scroll support)
  • FilePicker
  • LoginDialog - a simple authorization dialog with two fields: Username and Password
  • TextDisplay - a "virtual" text view control: it does not store any data, every time it needs to draw its line it requests the line from external source by line ID

Screenshots

The main demo (theme changing and radio group control)

The screencast of demo:

The library is in the very beginning but it can be used to create working utilities: below is the example of my Dilbert comix downloader:

License

CLUI is dual-licensed under MIT OR BSD-2-Clause

主要指标

概览
名称与所有者VladimirMarkelov/clui
主编程语言Go
编程语言Go (语言数: 1)
平台
许可证MIT License
所有者活动
创建于2015-09-18 18:16:55
推送于2022-05-29 03:33:29
最后一次提交2022-05-28 21:33:28
发布数8
最新版本名称v1.2.1 (发布于 )
第一版名称v0.6.3 (发布于 )
用户参与
星数682
关注者数27
派生数49
提交数284
已启用问题?
问题数119
打开的问题数16
拉请求数27
打开的拉请求数1
关闭的拉请求数3
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?