mirror of
https://github.com/zhuzichu520/FluentUI.git
synced 2024-11-26 21:37:04 +08:00
update
This commit is contained in:
parent
79ab73105e
commit
54f52e0886
@ -189,5 +189,6 @@
|
|||||||
<file>qml/page/T_Clip.qml</file>
|
<file>qml/page/T_Clip.qml</file>
|
||||||
<file>qml/page/T_3D.qml</file>
|
<file>qml/page/T_3D.qml</file>
|
||||||
<file>res/obj/test.obj</file>
|
<file>res/obj/test.obj</file>
|
||||||
|
<file>qml/global/Lang.qml</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
|
@ -2,6 +2,7 @@ pragma Singleton
|
|||||||
|
|
||||||
import QtQuick
|
import QtQuick
|
||||||
import FluentUI
|
import FluentUI
|
||||||
|
import "qrc:///example/qml/global"
|
||||||
|
|
||||||
FluObject{
|
FluObject{
|
||||||
|
|
||||||
@ -12,7 +13,7 @@ FluObject{
|
|||||||
FluPaneItemSeparator{}
|
FluPaneItemSeparator{}
|
||||||
|
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:lang.about
|
title:Lang.about
|
||||||
icon:FluentIcons.Contact
|
icon:FluentIcons.Contact
|
||||||
onDropped: { FluApp.navigate("/about") }
|
onDropped: { FluApp.navigate("/about") }
|
||||||
onTapListener:function(){
|
onTapListener:function(){
|
||||||
@ -21,7 +22,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:lang.settings
|
title:Lang.settings
|
||||||
icon:FluentIcons.Settings
|
icon:FluentIcons.Settings
|
||||||
url:"qrc:/example/qml/page/T_Settings.qml"
|
url:"qrc:/example/qml/page/T_Settings.qml"
|
||||||
onDropped:{ FluApp.navigate("/pageWindow",{title:title,url:url}) }
|
onDropped:{ FluApp.navigate("/pageWindow",{title:title,url:url}) }
|
||||||
|
@ -2,6 +2,7 @@ pragma Singleton
|
|||||||
|
|
||||||
import QtQuick
|
import QtQuick
|
||||||
import FluentUI
|
import FluentUI
|
||||||
|
import "qrc:///example/qml/global"
|
||||||
|
|
||||||
FluObject{
|
FluObject{
|
||||||
|
|
||||||
@ -16,7 +17,7 @@ FluObject{
|
|||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
id:item_home
|
id:item_home
|
||||||
count: 9
|
count: 9
|
||||||
title:lang.home
|
title:Lang.home
|
||||||
infoBadge:FluBadge{
|
infoBadge:FluBadge{
|
||||||
count: item_home.count
|
count: item_home.count
|
||||||
}
|
}
|
||||||
@ -47,7 +48,7 @@ FluObject{
|
|||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
id:item_expander_basic_input
|
id:item_expander_basic_input
|
||||||
title:lang.basic_input
|
title:Lang.basic_input
|
||||||
icon:FluentIcons.CheckboxComposite
|
icon:FluentIcons.CheckboxComposite
|
||||||
editDelegate: FluTextBox{
|
editDelegate: FluTextBox{
|
||||||
text:item_expander_basic_input.title
|
text:item_expander_basic_input.title
|
||||||
@ -137,7 +138,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
title:lang.form
|
title:Lang.form
|
||||||
icon:FluentIcons.GridView
|
icon:FluentIcons.GridView
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:"TextBox"
|
title:"TextBox"
|
||||||
@ -172,7 +173,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
title:lang.surface
|
title:Lang.surface
|
||||||
icon:FluentIcons.SurfaceHub
|
icon:FluentIcons.SurfaceHub
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:"InfoBar"
|
title:"InfoBar"
|
||||||
@ -246,7 +247,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
title:lang.popus
|
title:Lang.popus
|
||||||
icon:FluentIcons.ButtonMenu
|
icon:FluentIcons.ButtonMenu
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:"Dialog"
|
title:"Dialog"
|
||||||
@ -284,7 +285,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
title:lang.navigation
|
title:Lang.navigation
|
||||||
icon:FluentIcons.AllApps
|
icon:FluentIcons.AllApps
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:"Pivot"
|
title:"Pivot"
|
||||||
@ -353,7 +354,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
title:lang.theming
|
title:Lang.theming
|
||||||
icon:FluentIcons.Brightness
|
icon:FluentIcons.Brightness
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:"Acrylic"
|
title:"Acrylic"
|
||||||
@ -393,7 +394,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
title:lang.other
|
title:Lang.other
|
||||||
icon:FluentIcons.Shop
|
icon:FluentIcons.Shop
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:"QRCode"
|
title:"QRCode"
|
||||||
|
77
example/qml-Qt6/global/Lang.qml
Normal file
77
example/qml-Qt6/global/Lang.qml
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
pragma Singleton
|
||||||
|
|
||||||
|
import QtQuick
|
||||||
|
|
||||||
|
QtObject {
|
||||||
|
|
||||||
|
property string home
|
||||||
|
property string basic_input
|
||||||
|
property string form
|
||||||
|
property string surface
|
||||||
|
property string popus
|
||||||
|
property string navigation
|
||||||
|
property string theming
|
||||||
|
property string media
|
||||||
|
property string dark_mode
|
||||||
|
property string sys_dark_mode
|
||||||
|
property string search
|
||||||
|
property string about
|
||||||
|
property string settings
|
||||||
|
property string locale
|
||||||
|
property string navigation_view_display_mode
|
||||||
|
property string other
|
||||||
|
|
||||||
|
function zh(){
|
||||||
|
home="首页"
|
||||||
|
basic_input="基本输入"
|
||||||
|
form="表单"
|
||||||
|
surface="表面"
|
||||||
|
popus="弹窗"
|
||||||
|
navigation="导航"
|
||||||
|
theming="主题"
|
||||||
|
media="媒体"
|
||||||
|
dark_mode="夜间模式"
|
||||||
|
sys_dark_mode="跟随系统"
|
||||||
|
search="查找"
|
||||||
|
about="关于"
|
||||||
|
settings="设置"
|
||||||
|
locale="语言环境"
|
||||||
|
navigation_view_display_mode="导航视图显示模式"
|
||||||
|
other="其他"
|
||||||
|
}
|
||||||
|
|
||||||
|
function en(){
|
||||||
|
home="Home"
|
||||||
|
basic_input="Basic Input"
|
||||||
|
form="Form"
|
||||||
|
surface="Surfaces"
|
||||||
|
popus="Popus"
|
||||||
|
navigation="Navigation"
|
||||||
|
theming="Theming"
|
||||||
|
media="Media"
|
||||||
|
dark_mode="Dark Mode"
|
||||||
|
sys_dark_mode="Sync with system"
|
||||||
|
search="Search"
|
||||||
|
about="About"
|
||||||
|
settings="Settings"
|
||||||
|
locale="Locale"
|
||||||
|
navigation_view_display_mode="NavigationView Display Mode"
|
||||||
|
other="Other"
|
||||||
|
}
|
||||||
|
|
||||||
|
property string __locale
|
||||||
|
property var __localeList: ["Zh","En"]
|
||||||
|
|
||||||
|
on__LocaleChanged: {
|
||||||
|
if(__locale === "Zh"){
|
||||||
|
zh()
|
||||||
|
}else{
|
||||||
|
en()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Component.onCompleted: {
|
||||||
|
__locale = "En"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -1,2 +1,3 @@
|
|||||||
singleton ItemsOriginal 1.0 ItemsOriginal.qml
|
singleton ItemsOriginal 1.0 ItemsOriginal.qml
|
||||||
singleton ItemsFooter 1.0 ItemsFooter.qml
|
singleton ItemsFooter 1.0 ItemsFooter.qml
|
||||||
|
singleton Lang 1.0 Lang.qml
|
||||||
|
@ -101,7 +101,7 @@ FluScrollablePage{
|
|||||||
left: parent.left
|
left: parent.left
|
||||||
}
|
}
|
||||||
FluText{
|
FluText{
|
||||||
text:lang.dark_mode
|
text:Lang.dark_mode
|
||||||
font: FluTextStyle.BodyStrong
|
font: FluTextStyle.BodyStrong
|
||||||
Layout.bottomMargin: 4
|
Layout.bottomMargin: 4
|
||||||
}
|
}
|
||||||
@ -131,7 +131,7 @@ FluScrollablePage{
|
|||||||
left: parent.left
|
left: parent.left
|
||||||
}
|
}
|
||||||
FluText{
|
FluText{
|
||||||
text:lang.navigation_view_display_mode
|
text:Lang.navigation_view_display_mode
|
||||||
font: FluTextStyle.BodyStrong
|
font: FluTextStyle.BodyStrong
|
||||||
Layout.bottomMargin: 4
|
Layout.bottomMargin: 4
|
||||||
}
|
}
|
||||||
@ -162,7 +162,7 @@ FluScrollablePage{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluText{
|
FluText{
|
||||||
text:lang.locale
|
text:Lang.locale
|
||||||
font: FluTextStyle.BodyStrong
|
font: FluTextStyle.BodyStrong
|
||||||
Layout.bottomMargin: 4
|
Layout.bottomMargin: 4
|
||||||
}
|
}
|
||||||
@ -170,12 +170,12 @@ FluScrollablePage{
|
|||||||
Flow{
|
Flow{
|
||||||
spacing: 5
|
spacing: 5
|
||||||
Repeater{
|
Repeater{
|
||||||
model: ["Zh","En"]
|
model: Lang.__localeList
|
||||||
delegate: FluRadioButton{
|
delegate: FluRadioButton{
|
||||||
checked: AppInfo.lang.objectName === modelData
|
checked: Lang.__locale === modelData
|
||||||
text:modelData
|
text:modelData
|
||||||
clickListener:function(){
|
clickListener:function(){
|
||||||
AppInfo.changeLang(modelData)
|
Lang.__locale = modelData
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -38,8 +38,8 @@ FluWindow {
|
|||||||
checkUpdate(false)
|
checkUpdate(false)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Component.onCompleted: {
|
Component.onCompleted: {
|
||||||
|
console.debug(Lang.about)
|
||||||
FluTools.setQuitOnLastWindowClosed(false)
|
FluTools.setQuitOnLastWindowClosed(false)
|
||||||
tour.open()
|
tour.open()
|
||||||
checkUpdate(true)
|
checkUpdate(true)
|
||||||
@ -119,7 +119,7 @@ FluWindow {
|
|||||||
left: parent.left
|
left: parent.left
|
||||||
right: parent.right
|
right: parent.right
|
||||||
}
|
}
|
||||||
darkText: lang.dark_mode
|
darkText: Lang.dark_mode
|
||||||
showDark: true
|
showDark: true
|
||||||
z:7
|
z:7
|
||||||
darkClickListener:(button)=>handleDarkChanged(button)
|
darkClickListener:(button)=>handleDarkChanged(button)
|
||||||
@ -169,7 +169,7 @@ FluWindow {
|
|||||||
left: parent.left
|
left: parent.left
|
||||||
right: parent.right
|
right: parent.right
|
||||||
}
|
}
|
||||||
darkText: lang.dark_mode
|
darkText: Lang.dark_mode
|
||||||
showDark: true
|
showDark: true
|
||||||
darkClickListener:(button)=>handleDarkChanged(button)
|
darkClickListener:(button)=>handleDarkChanged(button)
|
||||||
z:7
|
z:7
|
||||||
@ -202,7 +202,7 @@ FluWindow {
|
|||||||
autoSuggestBox:FluAutoSuggestBox{
|
autoSuggestBox:FluAutoSuggestBox{
|
||||||
iconSource: FluentIcons.Search
|
iconSource: FluentIcons.Search
|
||||||
items: ItemsOriginal.getSearchData()
|
items: ItemsOriginal.getSearchData()
|
||||||
placeholderText: lang.search
|
placeholderText: Lang.search
|
||||||
onItemClicked:
|
onItemClicked:
|
||||||
(data)=>{
|
(data)=>{
|
||||||
ItemsOriginal.startPageByItem(data)
|
ItemsOriginal.startPageByItem(data)
|
||||||
|
@ -2,6 +2,7 @@ pragma Singleton
|
|||||||
|
|
||||||
import QtQuick 2.15
|
import QtQuick 2.15
|
||||||
import FluentUI 1.0
|
import FluentUI 1.0
|
||||||
|
import "qrc:///example/qml/global"
|
||||||
|
|
||||||
FluObject{
|
FluObject{
|
||||||
|
|
||||||
@ -12,7 +13,7 @@ FluObject{
|
|||||||
FluPaneItemSeparator{}
|
FluPaneItemSeparator{}
|
||||||
|
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:lang.about
|
title:Lang.about
|
||||||
icon:FluentIcons.Contact
|
icon:FluentIcons.Contact
|
||||||
onDropped: { FluApp.navigate("/about") }
|
onDropped: { FluApp.navigate("/about") }
|
||||||
onTapListener:function(){
|
onTapListener:function(){
|
||||||
@ -21,7 +22,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:lang.settings
|
title:Lang.settings
|
||||||
icon:FluentIcons.Settings
|
icon:FluentIcons.Settings
|
||||||
url:"qrc:/example/qml/page/T_Settings.qml"
|
url:"qrc:/example/qml/page/T_Settings.qml"
|
||||||
onDropped:{ FluApp.navigate("/pageWindow",{title:title,url:url}) }
|
onDropped:{ FluApp.navigate("/pageWindow",{title:title,url:url}) }
|
||||||
|
@ -2,6 +2,7 @@ pragma Singleton
|
|||||||
|
|
||||||
import QtQuick 2.15
|
import QtQuick 2.15
|
||||||
import FluentUI 1.0
|
import FluentUI 1.0
|
||||||
|
import "qrc:///example/qml/global"
|
||||||
|
|
||||||
FluObject{
|
FluObject{
|
||||||
|
|
||||||
@ -16,7 +17,7 @@ FluObject{
|
|||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
id:item_home
|
id:item_home
|
||||||
count: 9
|
count: 9
|
||||||
title:lang.home
|
title:Lang.home
|
||||||
infoBadge:FluBadge{
|
infoBadge:FluBadge{
|
||||||
count: item_home.count
|
count: item_home.count
|
||||||
}
|
}
|
||||||
@ -47,7 +48,7 @@ FluObject{
|
|||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
id:item_expander_basic_input
|
id:item_expander_basic_input
|
||||||
title:lang.basic_input
|
title:Lang.basic_input
|
||||||
icon:FluentIcons.CheckboxComposite
|
icon:FluentIcons.CheckboxComposite
|
||||||
editDelegate: FluTextBox{
|
editDelegate: FluTextBox{
|
||||||
text:item_expander_basic_input.title
|
text:item_expander_basic_input.title
|
||||||
@ -137,7 +138,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
title:lang.form
|
title:Lang.form
|
||||||
icon:FluentIcons.GridView
|
icon:FluentIcons.GridView
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:"TextBox"
|
title:"TextBox"
|
||||||
@ -172,7 +173,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
title:lang.surface
|
title:Lang.surface
|
||||||
icon:FluentIcons.SurfaceHub
|
icon:FluentIcons.SurfaceHub
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:"InfoBar"
|
title:"InfoBar"
|
||||||
@ -246,7 +247,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
title:lang.popus
|
title:Lang.popus
|
||||||
icon:FluentIcons.ButtonMenu
|
icon:FluentIcons.ButtonMenu
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:"Dialog"
|
title:"Dialog"
|
||||||
@ -284,7 +285,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
title:lang.navigation
|
title:Lang.navigation
|
||||||
icon:FluentIcons.AllApps
|
icon:FluentIcons.AllApps
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:"Pivot"
|
title:"Pivot"
|
||||||
@ -353,7 +354,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
title:lang.theming
|
title:Lang.theming
|
||||||
icon:FluentIcons.Brightness
|
icon:FluentIcons.Brightness
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:"Acrylic"
|
title:"Acrylic"
|
||||||
@ -393,7 +394,7 @@ FluObject{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluPaneItemExpander{
|
FluPaneItemExpander{
|
||||||
title:lang.other
|
title:Lang.other
|
||||||
icon:FluentIcons.Shop
|
icon:FluentIcons.Shop
|
||||||
FluPaneItem{
|
FluPaneItem{
|
||||||
title:"QRCode"
|
title:"QRCode"
|
||||||
|
77
example/qml/global/Lang.qml
Normal file
77
example/qml/global/Lang.qml
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
pragma Singleton
|
||||||
|
|
||||||
|
import QtQuick 2.15
|
||||||
|
|
||||||
|
QtObject {
|
||||||
|
|
||||||
|
property string home
|
||||||
|
property string basic_input
|
||||||
|
property string form
|
||||||
|
property string surface
|
||||||
|
property string popus
|
||||||
|
property string navigation
|
||||||
|
property string theming
|
||||||
|
property string media
|
||||||
|
property string dark_mode
|
||||||
|
property string sys_dark_mode
|
||||||
|
property string search
|
||||||
|
property string about
|
||||||
|
property string settings
|
||||||
|
property string locale
|
||||||
|
property string navigation_view_display_mode
|
||||||
|
property string other
|
||||||
|
|
||||||
|
function zh(){
|
||||||
|
home="首页"
|
||||||
|
basic_input="基本输入"
|
||||||
|
form="表单"
|
||||||
|
surface="表面"
|
||||||
|
popus="弹窗"
|
||||||
|
navigation="导航"
|
||||||
|
theming="主题"
|
||||||
|
media="媒体"
|
||||||
|
dark_mode="夜间模式"
|
||||||
|
sys_dark_mode="跟随系统"
|
||||||
|
search="查找"
|
||||||
|
about="关于"
|
||||||
|
settings="设置"
|
||||||
|
locale="语言环境"
|
||||||
|
navigation_view_display_mode="导航视图显示模式"
|
||||||
|
other="其他"
|
||||||
|
}
|
||||||
|
|
||||||
|
function en(){
|
||||||
|
home="Home"
|
||||||
|
basic_input="Basic Input"
|
||||||
|
form="Form"
|
||||||
|
surface="Surfaces"
|
||||||
|
popus="Popus"
|
||||||
|
navigation="Navigation"
|
||||||
|
theming="Theming"
|
||||||
|
media="Media"
|
||||||
|
dark_mode="Dark Mode"
|
||||||
|
sys_dark_mode="Sync with system"
|
||||||
|
search="Search"
|
||||||
|
about="About"
|
||||||
|
settings="Settings"
|
||||||
|
locale="Locale"
|
||||||
|
navigation_view_display_mode="NavigationView Display Mode"
|
||||||
|
other="Other"
|
||||||
|
}
|
||||||
|
|
||||||
|
property string __locale
|
||||||
|
property var __localeList: ["Zh","En"]
|
||||||
|
|
||||||
|
on__LocaleChanged: {
|
||||||
|
if(__locale === "Zh"){
|
||||||
|
zh()
|
||||||
|
}else{
|
||||||
|
en()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Component.onCompleted: {
|
||||||
|
__locale = "En"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -1,2 +1,3 @@
|
|||||||
singleton ItemsOriginal 1.0 ItemsOriginal.qml
|
singleton ItemsOriginal 1.0 ItemsOriginal.qml
|
||||||
singleton ItemsFooter 1.0 ItemsFooter.qml
|
singleton ItemsFooter 1.0 ItemsFooter.qml
|
||||||
|
singleton Lang 1.0 Lang.qml
|
||||||
|
@ -104,7 +104,7 @@ FluScrollablePage{
|
|||||||
left: parent.left
|
left: parent.left
|
||||||
}
|
}
|
||||||
FluText{
|
FluText{
|
||||||
text:lang.dark_mode
|
text:Lang.dark_mode
|
||||||
font: FluTextStyle.BodyStrong
|
font: FluTextStyle.BodyStrong
|
||||||
Layout.bottomMargin: 4
|
Layout.bottomMargin: 4
|
||||||
}
|
}
|
||||||
@ -134,7 +134,7 @@ FluScrollablePage{
|
|||||||
left: parent.left
|
left: parent.left
|
||||||
}
|
}
|
||||||
FluText{
|
FluText{
|
||||||
text:lang.navigation_view_display_mode
|
text:Lang.navigation_view_display_mode
|
||||||
font: FluTextStyle.BodyStrong
|
font: FluTextStyle.BodyStrong
|
||||||
Layout.bottomMargin: 4
|
Layout.bottomMargin: 4
|
||||||
}
|
}
|
||||||
@ -165,7 +165,7 @@ FluScrollablePage{
|
|||||||
}
|
}
|
||||||
|
|
||||||
FluText{
|
FluText{
|
||||||
text:lang.locale
|
text:Lang.locale
|
||||||
font: FluTextStyle.BodyStrong
|
font: FluTextStyle.BodyStrong
|
||||||
Layout.bottomMargin: 4
|
Layout.bottomMargin: 4
|
||||||
}
|
}
|
||||||
@ -173,12 +173,12 @@ FluScrollablePage{
|
|||||||
Flow{
|
Flow{
|
||||||
spacing: 5
|
spacing: 5
|
||||||
Repeater{
|
Repeater{
|
||||||
model: ["Zh","En"]
|
model: Lang.__localeList
|
||||||
delegate: FluRadioButton{
|
delegate: FluRadioButton{
|
||||||
checked: AppInfo.lang.objectName === modelData
|
checked: Lang.__locale === modelData
|
||||||
text:modelData
|
text:modelData
|
||||||
clickListener:function(){
|
clickListener:function(){
|
||||||
AppInfo.changeLang(modelData)
|
Lang.__locale = modelData
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -121,7 +121,7 @@ FluWindow {
|
|||||||
left: parent.left
|
left: parent.left
|
||||||
right: parent.right
|
right: parent.right
|
||||||
}
|
}
|
||||||
darkText: lang.dark_mode
|
darkText: Lang.dark_mode
|
||||||
showDark: true
|
showDark: true
|
||||||
z:7
|
z:7
|
||||||
darkClickListener:(button)=>handleDarkChanged(button)
|
darkClickListener:(button)=>handleDarkChanged(button)
|
||||||
@ -171,7 +171,7 @@ FluWindow {
|
|||||||
left: parent.left
|
left: parent.left
|
||||||
right: parent.right
|
right: parent.right
|
||||||
}
|
}
|
||||||
darkText: lang.dark_mode
|
darkText: Lang.dark_mode
|
||||||
showDark: true
|
showDark: true
|
||||||
darkClickListener:(button)=>handleDarkChanged(button)
|
darkClickListener:(button)=>handleDarkChanged(button)
|
||||||
z:7
|
z:7
|
||||||
@ -204,7 +204,7 @@ FluWindow {
|
|||||||
autoSuggestBox:FluAutoSuggestBox{
|
autoSuggestBox:FluAutoSuggestBox{
|
||||||
iconSource: FluentIcons.Search
|
iconSource: FluentIcons.Search
|
||||||
items: ItemsOriginal.getSearchData()
|
items: ItemsOriginal.getSearchData()
|
||||||
placeholderText: lang.search
|
placeholderText: Lang.search
|
||||||
onItemClicked:
|
onItemClicked:
|
||||||
(data)=>{
|
(data)=>{
|
||||||
ItemsOriginal.startPageByItem(data)
|
ItemsOriginal.startPageByItem(data)
|
||||||
|
@ -3,35 +3,14 @@
|
|||||||
#include <QQmlContext>
|
#include <QQmlContext>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
#include <QGuiApplication>
|
#include <QGuiApplication>
|
||||||
#include "lang/En.h"
|
|
||||||
#include "lang/Zh.h"
|
|
||||||
#include "Version.h"
|
#include "Version.h"
|
||||||
|
|
||||||
AppInfo::AppInfo(QObject *parent)
|
AppInfo::AppInfo(QObject *parent)
|
||||||
: QObject{parent}
|
: QObject{parent}
|
||||||
{
|
{
|
||||||
version(APPLICATION_VERSION);
|
version(APPLICATION_VERSION);
|
||||||
lang(new En());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppInfo::init(QQmlApplicationEngine *engine){
|
void AppInfo::init(QQmlApplicationEngine *engine){
|
||||||
QQmlContext * context = engine->rootContext();
|
engine->rootContext();
|
||||||
Lang* lang = this->lang();
|
|
||||||
context->setContextProperty("lang",lang);
|
|
||||||
QObject::connect(this,&AppInfo::langChanged,this,[=]{
|
|
||||||
context->setContextProperty("lang",this->lang());
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
void AppInfo::changeLang(const QString& locale){
|
|
||||||
if(_lang){
|
|
||||||
_lang->deleteLater();
|
|
||||||
}
|
|
||||||
if(locale=="Zh"){
|
|
||||||
lang(new Zh());
|
|
||||||
}else if(locale=="En"){
|
|
||||||
lang(new En());
|
|
||||||
}else {
|
|
||||||
lang(new En());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
|
|
||||||
#include <QObject>
|
#include <QObject>
|
||||||
#include <QQmlApplicationEngine>
|
#include <QQmlApplicationEngine>
|
||||||
#include "lang/Lang.h"
|
|
||||||
#include "stdafx.h"
|
#include "stdafx.h"
|
||||||
#include "singleton.h"
|
#include "singleton.h"
|
||||||
|
|
||||||
@ -11,13 +10,11 @@ class AppInfo : public QObject
|
|||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
Q_PROPERTY_AUTO(QString,version)
|
Q_PROPERTY_AUTO(QString,version)
|
||||||
Q_PROPERTY_AUTO(Lang*,lang)
|
|
||||||
private:
|
private:
|
||||||
explicit AppInfo(QObject *parent = nullptr);
|
explicit AppInfo(QObject *parent = nullptr);
|
||||||
public:
|
public:
|
||||||
SINGLETONG(AppInfo)
|
SINGLETONG(AppInfo)
|
||||||
void init(QQmlApplicationEngine *engine);
|
void init(QQmlApplicationEngine *engine);
|
||||||
Q_INVOKABLE void changeLang(const QString& locale);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // APPINFO_H
|
#endif // APPINFO_H
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
#include "En.h"
|
|
||||||
|
|
||||||
En::En(QObject *parent)
|
|
||||||
: Lang{parent}
|
|
||||||
{
|
|
||||||
setObjectName("En");
|
|
||||||
home("Home");
|
|
||||||
basic_input("Basic Input");
|
|
||||||
form("Form");
|
|
||||||
surface("Surfaces");
|
|
||||||
popus("Popus");
|
|
||||||
navigation("Navigation");
|
|
||||||
theming("Theming");
|
|
||||||
media("Media");
|
|
||||||
dark_mode("Dark Mode");
|
|
||||||
sys_dark_mode("Sync with system");
|
|
||||||
search("Search");
|
|
||||||
about("About");
|
|
||||||
settings("Settings");
|
|
||||||
locale("Locale");
|
|
||||||
navigation_view_display_mode("NavigationView Display Mode");
|
|
||||||
other("Other");
|
|
||||||
}
|
|
@ -1,17 +0,0 @@
|
|||||||
#ifndef EN_H
|
|
||||||
#define EN_H
|
|
||||||
|
|
||||||
#include <QObject>
|
|
||||||
#include "Lang.h"
|
|
||||||
|
|
||||||
class En : public Lang
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
public:
|
|
||||||
explicit En(QObject *parent = nullptr);
|
|
||||||
|
|
||||||
signals:
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // EN_H
|
|
@ -1,7 +0,0 @@
|
|||||||
#include "Lang.h"
|
|
||||||
|
|
||||||
Lang::Lang(QObject *parent)
|
|
||||||
: QObject{parent}
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
@ -1,31 +0,0 @@
|
|||||||
#ifndef LANG_H
|
|
||||||
#define LANG_H
|
|
||||||
|
|
||||||
#include <QObject>
|
|
||||||
#include "../stdafx.h"
|
|
||||||
|
|
||||||
class Lang : public QObject
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
Q_PROPERTY_AUTO(QString,home);
|
|
||||||
Q_PROPERTY_AUTO(QString,basic_input);
|
|
||||||
Q_PROPERTY_AUTO(QString,form);
|
|
||||||
Q_PROPERTY_AUTO(QString,surface);
|
|
||||||
Q_PROPERTY_AUTO(QString,popus);
|
|
||||||
Q_PROPERTY_AUTO(QString,navigation);
|
|
||||||
Q_PROPERTY_AUTO(QString,theming);
|
|
||||||
Q_PROPERTY_AUTO(QString,media);
|
|
||||||
Q_PROPERTY_AUTO(QString,dark_mode);
|
|
||||||
Q_PROPERTY_AUTO(QString,sys_dark_mode);
|
|
||||||
Q_PROPERTY_AUTO(QString,search);
|
|
||||||
Q_PROPERTY_AUTO(QString,about);
|
|
||||||
Q_PROPERTY_AUTO(QString,settings);
|
|
||||||
Q_PROPERTY_AUTO(QString,navigation_view_display_mode);
|
|
||||||
Q_PROPERTY_AUTO(QString,locale);
|
|
||||||
Q_PROPERTY_AUTO(QString,other);
|
|
||||||
public:
|
|
||||||
explicit Lang(QObject *parent = nullptr);
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // LANG_H
|
|
@ -1,23 +0,0 @@
|
|||||||
#include "Zh.h"
|
|
||||||
|
|
||||||
Zh::Zh(QObject *parent)
|
|
||||||
: Lang{parent}
|
|
||||||
{
|
|
||||||
setObjectName("Zh");
|
|
||||||
home("首页");
|
|
||||||
basic_input("基本输入");
|
|
||||||
form("表单");
|
|
||||||
surface("表面");
|
|
||||||
popus("弹窗");
|
|
||||||
navigation("导航");
|
|
||||||
theming("主题");
|
|
||||||
media("媒体");
|
|
||||||
dark_mode("夜间模式");
|
|
||||||
sys_dark_mode("跟随系统");
|
|
||||||
search("查找");
|
|
||||||
about("关于");
|
|
||||||
settings("设置");
|
|
||||||
locale("语言环境");
|
|
||||||
navigation_view_display_mode("导航视图显示模式");
|
|
||||||
other("其他");
|
|
||||||
}
|
|
@ -1,17 +0,0 @@
|
|||||||
#ifndef ZH_H
|
|
||||||
#define ZH_H
|
|
||||||
|
|
||||||
#include <QObject>
|
|
||||||
#include "Lang.h"
|
|
||||||
|
|
||||||
class Zh : public Lang
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
public:
|
|
||||||
explicit Zh(QObject *parent = nullptr);
|
|
||||||
|
|
||||||
signals:
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // ZH_H
|
|
Loading…
Reference in New Issue
Block a user