Files
work-secretfile-selfcheck/UmiOCR-data/qt_res/qml/TabPages/About/About.qml

137 lines
5.1 KiB
QML

// ===================================================
// =============== 功能页:关于/检查更新 ===============
// ===================================================
import QtQuick 2.15
import QtQuick.Controls 2.15
import ".."
import "../../Widgets"
TabPage {
id: tabPage
Panel{
anchors.fill: parent
anchors.margins: size_.line
ScrollView {
anchors.fill: parent
anchors.margins: size_.spacing
anchors.leftMargin: size_.line * 2
anchors.rightMargin: size_.line * 2
contentWidth: width
clip: true
Column {
anchors.left: parent.left
anchors.right: parent.right
anchors.rightMargin: size_.spacing * 2
spacing: size_.spacing
clip: true
// ==================== 标题 ====================
Image {
anchors.left: parent.left
anchors.right: parent.right
height: size_.line * 10
fillMode: Image.PreserveAspectFit
source: "../../../images/Umi-OCR_logo_full.png"
}
Text_ {
anchors.horizontalCenter: parent.horizontalCenter
text: qsTr("开源、免费的离线OCR软件")
}
SplitLine {}
// ==================== 软件 / 项目信息 ====================
Text_ {text: qsTr("当前版本") + " • " + UmiAbout.version.string}
UrlList {
title: qsTr("项目链接")
urlList: [
{text:qsTr("官方网站"), url:UmiAbout.url.home},
{text:qsTr("插件拓展"), url:UmiAbout.url.plugins},
{text:qsTr("问题反馈"), url:UmiAbout.url.issue},
]
}
UrlList {
title: qsTr("发布地址")
urlList: [
{text:"Github", url:"https://github.com/hiroi-sora/Umi-OCR/releases/latest"},
{text:"Source Forge", url:"https://sourceforge.net/projects/umi-ocr"},
{text:"Lanzou (蓝奏云)", url:"https://hiroi-sora.lanzoul.com/s/umi-ocr"},
]
}
UrlList {
title: qsTr("许可协议")
urlList: [
{text:UmiAbout.license.type, url:UmiAbout.license.url},
]
}
SplitLine {}
// ==================== 开发者 ====================
UrlList {
title: qsTr("作者")
urlList: (() => {
let as = UmiAbout.authors, t = []
for(const i in as)
t.push({ text: as[i].name, url: as[i].url, })
return t
})()
}
Text_ {text: qsTr("译者")}
Repeater {
model: UmiAbout.localization
UrlList {
anchors.leftMargin: size_.line * 2
textSize: size_.smallText
title: UmiAbout.localization[index].language
urlList: (() => {
let as = UmiAbout.localization[index].translators, t = []
for(const i in as)
t.push({ text: as[i].name, url: as[i].url, })
return t
})()
}
}
SplitLine {}
// ==================== 系统 / Debug信息 ====================
Row {
anchors.left: parent.left
Text_ {
font.pixelSize: size_.smallText
height: size_.smallLine + size_.spacing*2
verticalAlignment: Text.AlignVCenter
text: qsTr("运行环境信息(如需请求协助,请提供给开发者)")
}
Button_ {
height: size_.smallLine + size_.spacing*2
textSize: size_.smallText
text_: qsTr("复制")
textColor_: theme.yesColor
onClicked: {
const info = JSON.stringify(UmiAbout.app, null, 2)
qmlapp.utilsConnector.copyText(info)
}
}
}
Text_ {
anchors.left: parent.left
anchors.leftMargin: size_.line * 2
wrapMode: Text.WordWrap
font.pixelSize: size_.smallText
text: JSON.stringify(UmiAbout.app, null, 2)
}
Item {width: 1; height: size_.line}
}
}
}
}