成人一对一视频交友

LTUI v2.2发布,基于lua的跨平台字符终端UI接口库

elbert
elbert

LTUI是一个基于左上臂的跨平台字符终端用户界面界面库。

此框架源于xmake中图形化菜单配置的需求,类似linux内核的menuconf去配置编译参数,因此基于诅咒和左上臂实现了一整套跨平台的字符终端用户界面库。而样式风格基本上完全参照的kconfig-前端,当然用户也可以自己定制不同的用户界面风格。

另外,LTUI是完全跨平台的,windows上的末端的终端也是完全支持的,在窗子上ltui会采用pdcurses来进行窗口绘制。

Github

更新内容

新版本中,我们主要增加了对鼠标事件的支持,除了诅咒/诅咒,我们还对窗子上pdcurses也做了支持,这里我们非常感谢@laelnasan贡献。

另外我们新增一个tests/events.lua测试用例,专门用来测试各种输入事件。

$ xmake运行测试事件

我们可以通过这个测试例子,获取并显示用户的所有鼠标输入事件。

我们可以在自定义的视角上,重写on_event来获取所有事件输入,包括所有的鼠标输入事件:

本地演示=应用程序()

函数demo:init()

application.init(self,’ demo ‘)

self:background_set(黑色(

目标

函数demo:on_event(e)

如果e.type==’btn_code ‘,则

print(e.btn_name,e.x,e.y)

目标

application.on_event(self,e)

目标

demo:run()

安装使用

$ luarocks安装ltui

如果要运行自带的测试,你需要先安装左上臂或者luajit程序去加载运行ltui源码仓库中的测试程序:

$ lua tests/dialog.lua

$ lua tests/window.lua

$ lua tests/desktop.lua

$ lua tests/inputdialog.lua

$ Lua tests/mconfidialog。左上臂

或者

$ luajit tests/dialog.lua

$ luajit tests/window.lua

$ luajit tests/desktop.lua

$ luajit tests/inputdialog.lua

$ Lua JIT tests/mconfidialog。左上臂

源码编译

通常只要luarocks安装好后就可以使用,如果想要本地调试,也可以源码编译后直接运行测试,首先我们需要先安装跨平台构建工具:xmake

$ xmake

xmake会自动下载lua,ncurses等相关依赖,然后我们直接通过xmake run加载相关测试程序即可:

$ xmake运行测试对话框

$ xmake运行测试窗口

$ xmake运行测试桌面

$ xmake运行测试inputdialog

$ xmake运行测试mconfidialog

应用程序

local ltui=require(‘ltui ‘)

本地应用程序=ltui。应用

local event=ltui.event

local rect=ltui.rect

本地窗口=ltui.window

本地演示=应用程序()

函数demo:init()

application.init(self,’ demo ‘)

self:background_set(蓝色(

self : insert(窗口: new(‘窗口。main ‘,rect {1,1,self:width() – 1,self : height()-1 },’ main window ‘,true))

目标

demo:run()

标签

local lab=labe : new(‘ title ‘,rect {0,0,12,1},’ hello ltui!’):textattr_set(‘white ‘)

按钮

local btn=button:new(‘yes ‘,rect {0,1,7,2},’ Yes ‘): testattr _ set(‘ white ‘)

输入框

函数demo:init()

-.

local dialog _ input=inputdialog : new(‘ dialog。输入’,rect {0,0,50,8})

dialog _ input : text(): text _ set(‘请输入文本: ‘)

dialog _ input : button _ add(‘ no ‘,’ No ‘,function(v)dialog _ input : quit()end)

dialog _ input : button _ add(‘ yes ‘,’ Yes ‘,function(v)dialog _ input : quit()end)

self:insert(dialog_input,{ centerx=true,centery=true })

目标

组件

菜单配置

输入框

文本区域

Windows

Termux

elbert
品牌