Compare commits

...

2 Commits

Author SHA1 Message Date
朱子楚\zhuzi
6a5f9d04a9 update 2024-03-29 16:56:09 +08:00
朱子楚\zhuzi
cb33af8836 update 2024-03-29 16:23:16 +08:00
127 changed files with 996 additions and 1244 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -33,7 +33,7 @@ FluLauncher {
FluApp.windowIcon = "qrc:/example/res/image/favicon.ico" FluApp.windowIcon = "qrc:/example/res/image/favicon.ico"
FluApp.useSystemAppBar = SettingsHelper.getUseSystemAppBar() FluApp.useSystemAppBar = SettingsHelper.getUseSystemAppBar()
FluTheme.darkMode = SettingsHelper.getDarkMode() FluTheme.darkMode = SettingsHelper.getDarkMode()
FluTheme.enableAnimation = true FluTheme.animationEnabled = true
FluRouter.routes = { FluRouter.routes = {
"/":"qrc:/example/qml/window/MainWindow.qml", "/":"qrc:/example/qml/window/MainWindow.qml",
"/about":"qrc:/example/qml/window/AboutWindow.qml", "/about":"qrc:/example/qml/window/AboutWindow.qml",

View File

@ -9,10 +9,10 @@ FluScrollablePage{
title: qsTr("Bar Chart") title: qsTr("Bar Chart")
FluArea{ FluFrame{
width: 500 Layout.preferredWidth: 500
height: 370 Layout.preferredHeight: 370
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluChart{ FluChart{
anchors.fill: parent anchors.fill: parent
@ -69,10 +69,10 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
width: 500 width: 500
height: 370 height: 370
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluChart{ FluChart{
anchors.fill: parent anchors.fill: parent

View File

@ -13,10 +13,10 @@ FluScrollablePage{
return Math.random().toFixed(1); return Math.random().toFixed(1);
} }
FluArea{ FluFrame{
height: 370 Layout.preferredWidth: 500
width: 500 Layout.preferredHeight: 370
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluChart{ FluChart{
anchors.fill: parent anchors.fill: parent

View File

@ -9,10 +9,10 @@ FluScrollablePage{
title: qsTr("Line Chart") title: qsTr("Line Chart")
FluArea{ FluFrame{
width: 500 Layout.preferredWidth: 500
height: 370 Layout.preferredHeight: 370
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluChart{ FluChart{
anchors.fill: parent anchors.fill: parent

View File

@ -9,10 +9,10 @@ FluScrollablePage{
title: qsTr("Pie Chart") title: qsTr("Pie Chart")
FluArea{ FluFrame{
width: 500 Layout.preferredWidth: 500
height: 370 Layout.preferredHeight: 370
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluChart{ FluChart{
anchors.fill: parent anchors.fill: parent
@ -50,10 +50,10 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
width: 500 Layout.preferredWidth: 500
height: 370 Layout.preferredHeight: 370
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluChart{ FluChart{
anchors.fill: parent anchors.fill: parent

View File

@ -9,10 +9,10 @@ FluScrollablePage{
title: qsTr("Polar Area Chart") title: qsTr("Polar Area Chart")
FluArea{ FluFrame{
width: 500 Layout.preferredWidth: 500
height: 370 Layout.preferredHeight: 370
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluChart{ FluChart{
anchors.fill: parent anchors.fill: parent

View File

@ -9,10 +9,10 @@ FluScrollablePage{
title: qsTr("Radar Chart") title: qsTr("Radar Chart")
FluArea{ FluFrame{
width: 500 Layout.preferredWidth: 500
height: 370 Layout.preferredHeight: 370
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluChart{ FluChart{
anchors.fill: parent anchors.fill: parent

View File

@ -13,10 +13,10 @@ FluScrollablePage{
return Math.random().toFixed(1); return Math.random().toFixed(1);
} }
FluArea{ FluFrame{
height: 370 Layout.preferredWidth: 500
width: 500 Layout.preferredHeight: 370
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluChart{ FluChart{
anchors.fill: parent anchors.fill: parent
@ -119,5 +119,4 @@ FluScrollablePage{
} }
} }
} }
} }

View File

@ -473,10 +473,12 @@ FluObject{
} }
FluPaneItem{ FluPaneItem{
title: qsTr("Test Crash") title: qsTr("Test Crash")
visible: FluTools.isWin()
onTapListener: function(){ onTapListener: function(){
AppInfo.testCrash() AppInfo.testCrash()
} }
Component.onCompleted: {
visible = FluTools.isWin()
}
} }
} }

View File

@ -11,7 +11,6 @@ FluScrollablePage{
RowLayout{ RowLayout{
spacing: 10 spacing: 10
Layout.topMargin: 20
FluText{ FluText{
text:"tintColor:" text:"tintColor:"
Layout.alignment: Qt.AlignVCenter Layout.alignment: Qt.AlignVCenter
@ -42,10 +41,10 @@ FluScrollablePage{
value: 32 value: 32
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 1200/4+20 Layout.preferredHeight: 1200/4+20
paddings: 10 padding: 10
Layout.topMargin: 10 Layout.topMargin: 10
FluClip{ FluClip{
width: 1920/4 width: 1920/4
@ -95,7 +94,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'Image{ code:'Image{
id:image id:image
width: 800 width: 800

View File

@ -12,7 +12,6 @@ FluContentPage {
id:text_box id:text_box
placeholderText: qsTr("Please enter a keyword") placeholderText: qsTr("Please enter a keyword")
anchors{ anchors{
topMargin: 20
top:parent.top top:parent.top
} }
} }

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("Badge") title: qsTr("Badge")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20
height: 120 height: 120
paddings: 10 padding: 10
Column{ Column{
spacing: 15 spacing: 15
@ -114,7 +113,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'Rectangle{ code:'Rectangle{
width: 40 width: 40
height: 40 height: 40

View File

@ -18,11 +18,10 @@ FluScrollablePage{
breadcrumb_2.items = items breadcrumb_2.items = items
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Layout.topMargin: 20
FluBreadcrumbBar{ FluBreadcrumbBar{
id:breadcrumb_1 id:breadcrumb_1
@ -36,10 +35,10 @@ FluScrollablePage{
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 100 Layout.preferredHeight: 100
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
ColumnLayout{ ColumnLayout{
@ -77,7 +76,7 @@ FluScrollablePage{
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluBreadcrumbBar{ code:'FluBreadcrumbBar{
width:parent.width width:parent.width
separator:">" separator:">"

View File

@ -10,15 +10,14 @@ FluScrollablePage{
title: qsTr("Buttons") title: qsTr("Buttons")
FluText{ FluText{
Layout.topMargin: 20
text: qsTr("Support the Tab key to switch focus, and the Space key to perform click events") text: qsTr("Support the Tab key to switch focus, and the Space key to perform click events")
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
paddings: 10 Layout.topMargin: 10
Layout.topMargin: 20 padding: 10
FluTextButton{ FluTextButton{
disabled: text_button_switch.checked disabled: text_button_switch.checked
@ -42,7 +41,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluTextButton{ code:'FluTextButton{
text:"Text Button" text:"Text Button"
onClicked: { onClicked: {
@ -51,10 +50,10 @@ FluScrollablePage{
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluButton{ FluButton{
@ -79,7 +78,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluButton{ code:'FluButton{
text:"Standard Button" text:"Standard Button"
onClicked: { onClicked: {
@ -88,11 +87,11 @@ FluScrollablePage{
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
Layout.topMargin: 20 Layout.topMargin: 20
paddings: 10 padding: 10
FluFilledButton{ FluFilledButton{
disabled: filled_button_switch.checked disabled: filled_button_switch.checked
@ -116,7 +115,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluFilledButton{ code:'FluFilledButton{
text:"Filled Button" text:"Filled Button"
onClicked: { onClicked: {
@ -125,11 +124,11 @@ FluScrollablePage{
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
Layout.topMargin: 20 Layout.topMargin: 20
paddings: 10 padding: 10
FluToggleButton{ FluToggleButton{
disabled:toggle_button_switch.checked disabled:toggle_button_switch.checked
@ -150,7 +149,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluToggleButton{ code:'FluToggleButton{
text:"Toggle Button" text:"Toggle Button"
onClicked: { onClicked: {
@ -172,11 +171,11 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
Layout.topMargin: 20 Layout.topMargin: 20
paddings: 10 padding: 10
FluProgressButton{ FluProgressButton{
id: btn_progress id: btn_progress
@ -202,7 +201,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluProgressButton{ code:'FluProgressButton{
text:"Progress Button" text:"Progress Button"
onClicked: { onClicked: {
@ -211,11 +210,11 @@ FluScrollablePage{
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
Layout.topMargin: 20 Layout.topMargin: 20
paddings: 10 padding: 10
FluLoadingButton{ FluLoadingButton{
id: btn_loading id: btn_loading
@ -241,7 +240,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluLoadingButton{ code:'FluLoadingButton{
text:"Loading Button" text:"Loading Button"
onClicked: { onClicked: {
@ -251,10 +250,10 @@ FluScrollablePage{
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: layout_icon_button.height + 30 Layout.preferredHeight: layout_icon_button.height + 30
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
Flow{ Flow{
id: layout_icon_button id: layout_icon_button
@ -323,7 +322,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluIconButton{ code:'FluIconButton{
iconSource:FluentIcons.ChromeCloseContrast iconSource:FluentIcons.ChromeCloseContrast
onClicked: { onClicked: {
@ -332,10 +331,10 @@ FluScrollablePage{
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluDropDownButton{ FluDropDownButton{
disabled: drop_down_button_switch.checked disabled: drop_down_button_switch.checked
@ -371,7 +370,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluDropDownButton{ code:'FluDropDownButton{
text:"DropDownButton" text:"DropDownButton"
FluMenuItem{ FluMenuItem{
@ -389,10 +388,10 @@ FluScrollablePage{
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 100 Layout.preferredHeight: 100
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluRadioButtons{ FluRadioButtons{
spacing: 8 spacing: 8
@ -424,7 +423,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluRadioButton{ code:'FluRadioButton{
checked:true checked:true
text:"Text Button" text:"Text Button"

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("CalendarPicker") title: qsTr("CalendarPicker")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 80
height: 80 padding: 10
paddings: 10
ColumnLayout{ ColumnLayout{
anchors{ anchors{
verticalCenter: parent.verticalCenter verticalCenter: parent.verticalCenter
@ -28,7 +27,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluCalendarPicker{ code:'FluCalendarPicker{
}' }'

View File

@ -11,7 +11,6 @@ FluScrollablePage{
FluCaptcha{ FluCaptcha{
id: captcha id: captcha
Layout.topMargin: 20
ignoreCase:switch_case.checked ignoreCase:switch_case.checked
MouseArea{ MouseArea{
anchors.fill: parent anchors.fill: parent

View File

@ -22,11 +22,10 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 370 height: 370
paddings: 10 padding: 10
Layout.topMargin: 20
Column{ Column{
spacing: 15 spacing: 15
anchors{ anchors{
@ -62,10 +61,10 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 340 height: 340
paddings: 10 padding: 10
Layout.topMargin: 10 Layout.topMargin: 10
Column{ Column{
spacing: 15 spacing: 15
@ -126,7 +125,7 @@ FluScrollablePage{
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluCarousel{ code:'FluCarousel{
id:carousel id:carousel
width: 400 width: 400

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("CheckBox") title: qsTr("CheckBox")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 72 Layout.preferredHeight: 72
paddings: 10 padding: 10
Layout.topMargin: 20
FluText{ FluText{
text: qsTr("A 2-state CheckBox") text: qsTr("A 2-state CheckBox")
@ -49,16 +48,16 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluCheckBox{ code:'FluCheckBox{
text:"Text" text:"Text"
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 72 Layout.preferredHeight: 72
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluText{ FluText{
@ -104,7 +103,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluCheckBox{ code:'FluCheckBox{
text:"Text" text:"Text"
indeterminate:true indeterminate:true

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("Clip") title: qsTr("Clip")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 380
height: 380 padding: 10
paddings: 10
Column{ Column{
spacing: 15 spacing: 15
@ -88,7 +87,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluClip{ code:'FluClip{
radius: [25,25,25,25] radius: [25,25,25,25]
width: 50 width: 50

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("ColorPicker") title: qsTr("ColorPicker")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 60
height: 60 padding: 10
paddings: 10
RowLayout{ RowLayout{
FluText{ FluText{
text: qsTr("Click to Select a Color - >") text: qsTr("Click to Select a Color - >")
@ -33,7 +32,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluColorPicker{ code:'FluColorPicker{
}' }'

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("ComboBox") title: qsTr("ComboBox")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 80 Layout.preferredHeight: 80
paddings: 5 padding: 5
Layout.topMargin: 20
Column{ Column{
spacing: 5 spacing: 5
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
@ -32,10 +31,10 @@ FluScrollablePage{
} }
} }
FluArea { FluFrame {
Layout.fillWidth: true Layout.fillWidth: true
height: 80 Layout.preferredHeight: 80
paddings: 5 padding: 5
Layout.topMargin: 20 Layout.topMargin: 20
Column{ Column{
spacing: 5 spacing: 5
@ -56,10 +55,10 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 80 height: 80
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
Column{ Column{
spacing: 5 spacing: 5
@ -85,7 +84,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluComboBox{ code:'FluComboBox{
editable: true editable: true
model: ListModel { model: ListModel {

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("DatePicker") title: qsTr("DatePicker")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 80
height: 80 padding: 10
paddings: 10
ColumnLayout{ ColumnLayout{
anchors{ anchors{
verticalCenter: parent.verticalCenter verticalCenter: parent.verticalCenter
@ -32,17 +31,17 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluDatePicker{ code:'FluDatePicker{
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.topMargin: 20
height: 80 Layout.preferredHeight: 80
paddings: 10 padding: 10
ColumnLayout{ ColumnLayout{
anchors{ anchors{
verticalCenter: parent.verticalCenter verticalCenter: parent.verticalCenter
@ -61,7 +60,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluDatePicker{ code:'FluDatePicker{
showYear:false showYear:false
}' }'

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("Dialog") title: qsTr("Dialog")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Layout.topMargin: 20
FluButton{ FluButton{
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
text: qsTr("Show Double Button Dialog") text: qsTr("Show Double Button Dialog")
@ -24,7 +23,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluContentDialog{ code:'FluContentDialog{
id:dialog id:dialog
title: qsTr("Friendly Reminder") title: qsTr("Friendly Reminder")
@ -57,10 +56,10 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluButton{ FluButton{
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
@ -72,7 +71,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluContentDialog{ code:'FluContentDialog{
id: dialog id: dialog
title: qsTr("Friendly Reminder") title: qsTr("Friendly Reminder")
@ -114,10 +113,10 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 100 Layout.preferredHeight: 100
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluButton{ FluButton{
anchors.top: parent.top anchors.top: parent.top
@ -138,7 +137,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluContentDialog{ code:'FluContentDialog{
id: dialog id: dialog
title: qsTr("Friendly Reminder") title: qsTr("Friendly Reminder")

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("Expander") title: qsTr("Expander")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: layout_column.height+20 height: layout_column.height+20
paddings: 10 padding: 10
Layout.topMargin: 20
Column{ Column{
id:layout_column id:layout_column
spacing: 15 spacing: 15
@ -83,7 +82,7 @@ My only desire is to be permitted to drive out the traitors and restore the Han.
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluExpander{ code:'FluExpander{
headerText: qsTr("Open a radio box") headerText: qsTr("Open a radio box")
Item{ Item{

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("FlipView") title: qsTr("FlipView")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 340 Layout.preferredHeight: 340
paddings: 10 padding: 10
Layout.topMargin: 20
ColumnLayout{ ColumnLayout{
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
FluText{ FluText{
@ -40,7 +39,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluFlipView{ code:'FluFlipView{
Image{ Image{
source: "qrc:/example/res/image/banner_1.jpg" source: "qrc:/example/res/image/banner_1.jpg"
@ -61,10 +60,10 @@ FluScrollablePage{
' '
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 340 height: 340
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
ColumnLayout{ ColumnLayout{
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
@ -93,7 +92,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluFlipView{ code:'FluFlipView{
vertical:true vertical:true
Image{ Image{

View File

@ -9,7 +9,8 @@ import "../global"
FluScrollablePage{ FluScrollablePage{
launchMode: FluPageType.SingleTask launchMode: FluPageType.SingleTask
animDisabled: true animationEnabled: false
header: Item{}
FluentInitalizrWindow{ FluentInitalizrWindow{
id:fluent_initalizr id:fluent_initalizr
@ -177,7 +178,7 @@ FluScrollablePage{
property string desc: modelData.extra.desc property string desc: modelData.extra.desc
width: 320 width: 320
height: 120 height: 120
FluArea{ FluFrame{
radius: 8 radius: 8
width: 300 width: 300
height: 100 height: 100

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("Image") title: qsTr("Image")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 260 Layout.preferredHeight: 260
paddings: 10 padding: 10
Layout.topMargin: 20
Column{ Column{
spacing: 15 spacing: 15
anchors{ anchors{
@ -37,7 +36,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluImage{ code:'FluImage{
width: 400 width: 400
height: 300 height: 300

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("InfoBar") title: qsTr("InfoBar")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 270
height: 270 padding: 10
paddings: 10
ColumnLayout{ ColumnLayout{
spacing: 14 spacing: 14
anchors{ anchors{
@ -60,7 +59,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'showInfo(qsTr("This is an InfoBar in the Info Style")) code:'showInfo(qsTr("This is an InfoBar in the Info Style"))
showWarning(qsTr("This is an InfoBar in the Warning Style")) showWarning(qsTr("This is an InfoBar in the Warning Style"))

View File

@ -47,11 +47,10 @@ FluScrollablePage{
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 100 Layout.preferredHeight: 100
paddings: 10 padding: 10
Layout.topMargin: 20
Column{ Column{
id: layout_column id: layout_column
spacing: 15 spacing: 15
@ -78,7 +77,7 @@ FluScrollablePage{
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluMenu{ code:'FluMenu{
id:menu id:menu
FluMenuItem:{ FluMenuItem:{
@ -99,10 +98,10 @@ menu.popup()
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 100 Layout.preferredHeight: 100
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
Column{ Column{
spacing: 15 spacing: 15
@ -151,7 +150,7 @@ menu.popup()
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluMenuBar{ code:'FluMenuBar{
id:menu id:menu
FluMenu:{ FluMenu:{

View File

@ -21,11 +21,10 @@ FluScrollablePage{
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 86 Layout.preferredHeight: 86
paddings: 10 padding: 10
Layout.topMargin: 20
Column{ Column{
spacing: 15 spacing: 15
anchors{ anchors{
@ -44,10 +43,10 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 86 Layout.preferredHeight: 86
paddings: 10 padding: 10
Layout.topMargin: 10 Layout.topMargin: 10
Column{ Column{
spacing: 15 spacing: 15
@ -68,10 +67,10 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 86 Layout.preferredHeight: 86
paddings: 10 padding: 10
Layout.topMargin: 10 Layout.topMargin: 10
Column{ Column{
spacing: 15 spacing: 15
@ -92,7 +91,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluWindow{ code:'FluWindow{
//launchMode: FluWindowType.Standard //launchMode: FluWindowType.Standard
//launchMode: FluWindowType.SingleTask //launchMode: FluWindowType.SingleTask
@ -102,10 +101,10 @@ FluScrollablePage{
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 100 Layout.preferredHeight: 100
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
Column{ Column{
spacing: 15 spacing: 15
@ -126,7 +125,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluButton{ code:'FluButton{
text: qsTr("Create Window") text: qsTr("Create Window")
onClicked: { onClicked: {
@ -136,10 +135,10 @@ FluScrollablePage{
' '
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 130 Layout.preferredHeight: 130
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
Column{ Column{
@ -164,7 +163,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluWindowResultLauncher{ code:'FluWindowResultLauncher{
id:loginResultLauncher id:loginResultLauncher
path: "/login" path: "/login"

View File

@ -40,7 +40,6 @@ FluContentPage{
clip: true clip: true
anchors{ anchors{
top: parent.top top: parent.top
topMargin: 20
bottom: parent.bottom bottom: parent.bottom
left: parent.left left: parent.left
} }
@ -533,7 +532,7 @@ FluContentPage{
} }
} }
FluArea{ FluFrame{
anchors{ anchors{
top: layout_flick.top top: layout_flick.top
bottom: layout_flick.bottom bottom: layout_flick.bottom

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("Pagination") title: qsTr("Pagination")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 200 Layout.preferredHeight: 200
paddings: 10 padding: 10
Layout.topMargin: 20
ColumnLayout{ ColumnLayout{
spacing: 20 spacing: 20
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
@ -37,7 +36,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluPagination{ code:'FluPagination{
pageCurrent: 1 pageCurrent: 1
itemCount: 1000 itemCount: 1000

View File

@ -9,13 +9,10 @@ FluScrollablePage{
title: qsTr("Pivot") title: qsTr("Pivot")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 400
height: 400 padding: 10
paddings: 10
FluPivot{ FluPivot{
anchors.fill: parent anchors.fill: parent
@ -49,7 +46,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluPivot{ code:'FluPivot{
anchors.fill: parent anchors.fill: parent
FluPivotItem:{ FluPivotItem:{

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("Progress") title: qsTr("Progress")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 130
height: 130 padding: 10
paddings: 10
ColumnLayout{ ColumnLayout{
spacing: 10 spacing: 10
@ -32,7 +31,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluProgressBar{ code:'FluProgressBar{
} }
@ -42,11 +41,11 @@ FluProgressRing{
' '
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.topMargin: 20
height: 286 Layout.preferredHeight: 286
paddings: 10 padding: 10
ColumnLayout{ ColumnLayout{
spacing: 10 spacing: 10
@ -88,7 +87,7 @@ FluProgressRing{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluProgressBar{ code:'FluProgressBar{
indeterminate: false indeterminate: false
} }

View File

@ -11,7 +11,6 @@ FluScrollablePage{
FluQRCode{ FluQRCode{
id:qrcode id:qrcode
Layout.topMargin: 20
size:slider_size.value size:slider_size.value
text:text_box.text text:text_box.text
color:color_picker.current color:color_picker.current

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("RadioButton") title: qsTr("RadioButton")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Layout.topMargin: 20
Row{ Row{
spacing: 30 spacing: 30
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
@ -41,16 +40,16 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluRadioButton{ code:'FluRadioButton{
text:"Text" text:"Text"
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 100 Layout.preferredHeight: 100
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluRadioButtons{ FluRadioButtons{
spacing: 8 spacing: 8
@ -83,7 +82,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluRadioButtons{ code:'FluRadioButtons{
spacing: 8 spacing: 8
FluRadioButton{ FluRadioButton{

View File

@ -9,11 +9,10 @@ FluScrollablePage {
title: qsTr("RatingControl") title: qsTr("RatingControl")
FluArea { FluFrame {
Layout.fillWidth: true Layout.fillWidth: true
height: 100 Layout.preferredHeight: 100
paddings: 10 padding: 10
Layout.topMargin: 20
Column { Column {
spacing: 10 spacing: 10
@ -27,7 +26,7 @@ FluScrollablePage {
CodeExpander { CodeExpander {
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code: 'FluRatingControl{ code: 'FluRatingControl{
}' }'

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("Rectangle") title: qsTr("Rectangle")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 80
height: 80 padding: 10
paddings: 10
Column{ Column{
spacing: 15 spacing: 15
@ -64,7 +63,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluRectangle{ code:'FluRectangle{
radius: [25,25,25,25] radius: [25,25,25,25]
width: 50 width: 50

View File

@ -7,8 +7,9 @@ import "../component"
FluPage{ FluPage{
launchMode: FluPageType.SingleTop launchMode: FluPageType.SingleTop
header:Item{}
FluRemoteLoader{ FluRemoteLoader{
anchors.fill: parent anchors.fill: parent
source: "https://zhu-zichu.gitee.io/Qt5_T_RemoteLoader.qml" source: "https://zhu-zichu.gitee.io/Qt_174_RemoteLoader.qml"
} }
} }

View File

@ -17,11 +17,11 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.topMargin: 20
height: 60 Layout.preferredHeight: 60
paddings: 10 padding: 10
Row{ Row{
spacing: 20 spacing: 20
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
@ -42,11 +42,11 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.topMargin: 20
height: 50 height: 50
paddings: 10 padding: 10
FluCheckBox{ FluCheckBox{
text: qsTr("Use System AppBar") text: qsTr("Use System AppBar")
checked: FluApp.useSystemAppBar checked: FluApp.useSystemAppBar
@ -58,11 +58,11 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.topMargin: 20
height: 50 height: 50
paddings: 10 padding: 10
FluCheckBox{ FluCheckBox{
text:qsTr("Fits AppBar Windows") text:qsTr("Fits AppBar Windows")
checked: window.fitsAppBarWindows checked: window.fitsAppBarWindows
@ -85,11 +85,11 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.topMargin: 20
height: 128 height: 128
paddings: 10 padding: 10
ColumnLayout{ ColumnLayout{
spacing: 5 spacing: 5
@ -115,11 +115,11 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.topMargin: 20
height: 160 height: 160
paddings: 10 padding: 10
ColumnLayout{ ColumnLayout{
spacing: 5 spacing: 5
@ -155,11 +155,11 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.topMargin: 20
height: 80 height: 80
paddings: 10 padding: 10
ColumnLayout{ ColumnLayout{
spacing: 10 spacing: 10

View File

@ -9,18 +9,17 @@ FluScrollablePage{
title: qsTr("ShortcutPicker") title: qsTr("ShortcutPicker")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 100
height: 100 padding: 10
paddings: 10
FluShortcutPicker{ FluShortcutPicker{
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
} }
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluShortcutPicker{ code:'FluShortcutPicker{
}' }'

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("Slider") title: qsTr("Slider")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.preferredHeight: 200 Layout.preferredHeight: 200
Layout.topMargin: 20 padding: 10
paddings: 10
Row{ Row{
spacing: 30 spacing: 30
@ -27,18 +26,18 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluSlider{ code:'FluSlider{
value:50 value:50
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.preferredHeight: 200 Layout.preferredHeight: 200
Layout.topMargin: 20 Layout.topMargin: 20
paddings: 10 padding: 10
Row{ Row{
spacing: 30 spacing: 30
FluRangeSlider{ FluRangeSlider{
@ -51,7 +50,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluRangeSlider{ code:'FluRangeSlider{
orientation: Qt.Vertical orientation: Qt.Vertical
}' }'

View File

@ -13,7 +13,6 @@ FluContentPage{
id:layout_dropdown id:layout_dropdown
anchors{ anchors{
top: parent.top top: parent.top
topMargin: 20
} }
FluText{ FluText{
text:"orientation:" text:"orientation:"

View File

@ -27,7 +27,6 @@ FluContentPage{
Flickable{ Flickable{
id: scroll id: scroll
anchors.fill: parent anchors.fill: parent
anchors.topMargin: 20
boundsBehavior:Flickable.StopAtBounds boundsBehavior:Flickable.StopAtBounds
contentHeight: staggered_view.implicitHeight contentHeight: staggered_view.implicitHeight
clip: true clip: true

View File

@ -9,12 +9,11 @@ FluScrollablePage{
title: qsTr("StatusLayout") title: qsTr("StatusLayout")
FluArea{ FluFrame{
id:layout_actions id:layout_actions
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 50
height: 50 padding: 10
paddings: 10
RowLayout{ RowLayout{
spacing: 14 spacing: 14
FluDropDownButton{ FluDropDownButton{
@ -53,11 +52,11 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 10 Layout.topMargin: 10
height: 380 Layout.preferredHeight: 380
paddings: 10 padding: 10
FluStatusLayout{ FluStatusLayout{
id:status_view id:status_view
anchors.fill: parent anchors.fill: parent
@ -76,7 +75,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluStatusLayout{ code:'FluStatusLayout{
anchors.fill: parent anchors.fill: parent
statusMode: FluStatusLayoutType.Loading statusMode: FluStatusLayoutType.Loading

View File

@ -29,11 +29,10 @@ FluScrollablePage{
newTab() newTab()
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 50
height: 50 padding: 10
paddings: 10
RowLayout{ RowLayout{
spacing: 14 spacing: 14
FluDropDownButton{ FluDropDownButton{
@ -91,11 +90,11 @@ FluScrollablePage{
} }
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 15 Layout.topMargin: 15
height: 400 Layout.preferredHeight: 400
paddings: 10 padding: 10
FluTabView{ FluTabView{
id:tab_view id:tab_view
onNewPressed:{ onNewPressed:{
@ -105,7 +104,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluTabView{ code:'FluTabView{
anchors.fill: parent anchors.fill: parent
Component.onCompleted: { Component.onCompleted: {

View File

@ -159,7 +159,7 @@ FluContentPage{
FluCheckBox{ FluCheckBox{
anchors.centerIn: parent anchors.centerIn: parent
checked: true === options.checked checked: true === options.checked
enableAnimation: false animationEnabled: false
clickListener: function(){ clickListener: function(){
var obj = table_view.getRow(row) var obj = table_view.getRow(row)
obj.checkbox = table_view.customItem(com_checbox,{checked:!options.checked}) obj.checkbox = table_view.customItem(com_checbox,{checked:!options.checked})
@ -239,7 +239,7 @@ FluContentPage{
} }
FluCheckBox{ FluCheckBox{
checked: true === root.seletedAll checked: true === root.seletedAll
enableAnimation: false animationEnabled: false
Layout.alignment: Qt.AlignVCenter Layout.alignment: Qt.AlignVCenter
clickListener: function(){ clickListener: function(){
root.seletedAll = !root.seletedAll root.seletedAll = !root.seletedAll
@ -390,7 +390,7 @@ FluContentPage{
} }
} }
FluArea{ FluFrame{
id:layout_controls id:layout_controls
anchors{ anchors{
left: parent.left left: parent.left

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("Text") title: qsTr("Text")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 60
height: 60 padding: 10
paddings: 10
FluCopyableText{ FluCopyableText{
text: qsTr("This is a text that can be copied") text: qsTr("This is a text that can be copied")
@ -23,7 +22,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluCopyableText{ code:'FluCopyableText{
text: qsTr("This is a text that can be copied") text: qsTr("This is a text that can be copied")
}' }'

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("TextBox") title: qsTr("TextBox")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Layout.topMargin: 20
FluTextBox{ FluTextBox{
placeholderText: qsTr("Single-line Input Box") placeholderText: qsTr("Single-line Input Box")
@ -36,16 +35,16 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluTextBox{ code:'FluTextBox{
placeholderText: qsTr("Single-line Input Box") placeholderText: qsTr("Single-line Input Box")
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluPasswordBox{ FluPasswordBox{
@ -67,16 +66,16 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluPasswordBox{ code:'FluPasswordBox{
placeholderText: qsTr("Please enter your password") placeholderText: qsTr("Please enter your password")
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 36+multiine_textbox.height Layout.preferredHeight: 36+multiine_textbox.height
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluMultilineTextBox{ FluMultilineTextBox{
@ -100,16 +99,16 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluMultilineTextBox{ code:'FluMultilineTextBox{
placeholderText: qsTr("Multi-line Input Box") placeholderText: qsTr("Multi-line Input Box")
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluAutoSuggestBox{ FluAutoSuggestBox{
placeholderText: qsTr("AutoSuggestBox") placeholderText: qsTr("AutoSuggestBox")
@ -131,16 +130,16 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluAutoSuggestBox{ code:'FluAutoSuggestBox{
placeholderText: qsTr("AutoSuggestBox") placeholderText: qsTr("AutoSuggestBox")
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Layout.topMargin: 20 Layout.topMargin: 20
FluSpinBox{ FluSpinBox{
disabled: spin_box_switch.checked disabled: spin_box_switch.checked
@ -160,7 +159,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluSpinBox{ code:'FluSpinBox{
}' }'

View File

@ -11,11 +11,10 @@ FluScrollablePage{
id: root id: root
title: qsTr("Theme") title: qsTr("Theme")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20
Layout.preferredHeight: 340 Layout.preferredHeight: 340
paddings: 10 padding: 10
ColumnLayout{ ColumnLayout{
spacing:0 spacing:0
@ -115,16 +114,16 @@ FluScrollablePage{
} }
FluToggleSwitch{ FluToggleSwitch{
Layout.topMargin: 5 Layout.topMargin: 5
checked: FluTheme.enableAnimation checked: FluTheme.animationEnabled
onClicked: { onClicked: {
FluTheme.enableAnimation = !FluTheme.enableAnimation FluTheme.animationEnabled = !FluTheme.animationEnabled
} }
} }
} }
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluTheme.accentColor = FluColors.Orange code:'FluTheme.accentColor = FluColors.Orange
FluTheme.dark = true FluTheme.dark = true

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("TimePicker") title: qsTr("TimePicker")
launchMode: FluPageType.SingleInstance launchMode: FluPageType.SingleInstance
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.preferredHeight: 80
height: 80 padding: 10
paddings: 10
ColumnLayout{ ColumnLayout{
@ -43,17 +42,17 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluTimePicker{ code:'FluTimePicker{
}' }'
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.topMargin: 20
height: 80 Layout.preferredHeight: 80
paddings: 10 padding: 10
ColumnLayout{ ColumnLayout{
@ -83,7 +82,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluTimePicker{ code:'FluTimePicker{
hourFormat:FluTimePickerType.HH hourFormat:FluTimePickerType.HH
}' }'

View File

@ -106,7 +106,6 @@ FluScrollablePage{
RowLayout{ RowLayout{
spacing: 20 spacing: 20
Layout.topMargin: 20
FluTextBox{ FluTextBox{
id: text_box id: text_box
text: "Technical testing 2015-09-01" text: "Technical testing 2015-09-01"

View File

@ -9,11 +9,10 @@ FluScrollablePage{
title: qsTr("ToggleSwitch") title: qsTr("ToggleSwitch")
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Layout.topMargin: 20
Row{ Row{
spacing: 30 spacing: 30
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
@ -41,7 +40,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluToggleSwitch{ code:'FluToggleSwitch{
text:"Text" text:"Text"
}' }'

View File

@ -10,15 +10,14 @@ FluScrollablePage{
title: qsTr("Tooltip") title: qsTr("Tooltip")
FluText{ FluText{
Layout.topMargin: 20
text: qsTr("Hover over Tultip and it pops up") text: qsTr("Hover over Tultip and it pops up")
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.topMargin: 20
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Column{ Column{
spacing: 5 spacing: 5
@ -41,7 +40,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluIconButton{ code:'FluIconButton{
iconSource:FluentIcons.ChromeCloseContrast iconSource:FluentIcons.ChromeCloseContrast
iconSize: 15 iconSize: 15
@ -53,11 +52,11 @@ FluScrollablePage{
' '
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: 20 Layout.topMargin: 20
height: 68 Layout.preferredHeight: 68
paddings: 10 padding: 10
Column{ Column{
spacing: 5 spacing: 5
@ -84,7 +83,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluButton{ code:'FluButton{
id: button_1 id: button_1
text: qsTr("Delete") text: qsTr("Delete")

View File

@ -18,11 +18,10 @@ FluScrollablePage{
] ]
} }
FluArea{ FluFrame{
Layout.fillWidth: true Layout.fillWidth: true
height: 130 Layout.preferredHeight: 130
paddings: 10 padding: 10
Layout.topMargin: 20
FluFilledButton{ FluFilledButton{
anchors{ anchors{
@ -66,7 +65,7 @@ FluScrollablePage{
} }
CodeExpander{ CodeExpander{
Layout.fillWidth: true Layout.fillWidth: true
Layout.topMargin: -1 Layout.topMargin: -6
code:'FluTour{ code:'FluTour{
id:tour id:tour
steps:[ steps:[

View File

@ -33,7 +33,6 @@ FluContentPage {
spacing: 12 spacing: 12
width: 300 width: 300
anchors{ anchors{
topMargin: 20
top:parent.top top:parent.top
left: parent.left left: parent.left
leftMargin: 10 leftMargin: 10
@ -103,7 +102,7 @@ FluContentPage {
} }
} }
} }
FluArea{ FluFrame{
anchors{ anchors{
left: layout_column.right left: layout_column.right
top: parent.top top: parent.top

View File

@ -10,15 +10,14 @@ FluContentPage {
title: qsTr("Typography") title: qsTr("Typography")
rightPadding: 10 rightPadding: 10
FluArea{ FluFrame{
anchors{ anchors{
top:parent.top top:parent.top
left: parent.left left: parent.left
right: parent.right right: parent.right
bottom: parent.bottom bottom: parent.bottom
topMargin: 20
} }
paddings: 10 padding: 10
ColumnLayout{ ColumnLayout{
spacing: 0 spacing: 0
scale: textScale scale: textScale

View File

@ -9,9 +9,8 @@ FluContentPage{
title: qsTr("Watermark") title: qsTr("Watermark")
FluArea{ FluFrame{
anchors.fill: parent anchors.fill: parent
anchors.topMargin: 20
ColumnLayout{ ColumnLayout{
anchors{ anchors{

View File

@ -20,7 +20,7 @@ FluWindow {
loader.reload() loader.reload()
} }
} }
FluArea{ FluFrame{
anchors.fill: parent anchors.fill: parent
FluRemoteLoader{ FluRemoteLoader{
id:loader id:loader

View File

@ -253,7 +253,7 @@ FluWindow {
} }
function handleDarkChanged(button){ function handleDarkChanged(button){
if(!FluTheme.enableAnimation || window.fitsAppBarWindows === false){ if(!FluTheme.animationEnabled || window.fitsAppBarWindows === false){
changeDark() changeDark()
}else{ }else{
if(loader_reveal.sourceComponent){ if(loader_reveal.sourceComponent){

View File

@ -14,7 +14,7 @@ FluTheme::FluTheme(QObject *parent):QObject{parent}{
accentColor(FluColors::getInstance()->Blue()); accentColor(FluColors::getInstance()->Blue());
darkMode(FluThemeType::DarkMode::Light); darkMode(FluThemeType::DarkMode::Light);
nativeText(false); nativeText(false);
enableAnimation(true); animationEnabled(true);
_systemDark = systemDark(); _systemDark = systemDark();
qApp->installEventFilter(this); qApp->installEventFilter(this);
} }

View File

@ -32,7 +32,7 @@ class FluTheme : public QObject
Q_PROPERTY_AUTO(QColor,itemCheckColor); Q_PROPERTY_AUTO(QColor,itemCheckColor);
Q_PROPERTY_AUTO(int,darkMode); Q_PROPERTY_AUTO(int,darkMode);
Q_PROPERTY_AUTO(bool,nativeText); Q_PROPERTY_AUTO(bool,nativeText);
Q_PROPERTY_AUTO(bool,enableAnimation); Q_PROPERTY_AUTO(bool,animationEnabled);
QML_NAMED_ELEMENT(FluTheme) QML_NAMED_ELEMENT(FluTheme)
QML_SINGLETON QML_SINGLETON
private: private:

View File

@ -36,7 +36,7 @@ void FluentUI::registerTypes(const char *uri){
qmlRegisterType(QUrl("qrc:/qt/qml/FluentUI/Controls/FluAcrylic.qml"),uri,major,minor,"FluAcrylic"); qmlRegisterType(QUrl("qrc:/qt/qml/FluentUI/Controls/FluAcrylic.qml"),uri,major,minor,"FluAcrylic");
qmlRegisterType(QUrl("qrc:/qt/qml/FluentUI/Controls/FluAppBar.qml"),uri,major,minor,"FluAppBar"); qmlRegisterType(QUrl("qrc:/qt/qml/FluentUI/Controls/FluAppBar.qml"),uri,major,minor,"FluAppBar");
qmlRegisterType(QUrl("qrc:/qt/qml/FluentUI/Controls/FluArea.qml"),uri,major,minor,"FluArea"); qmlRegisterType(QUrl("qrc:/qt/qml/FluentUI/Controls/FluFrame.qml"),uri,major,minor,"FluFrame");
qmlRegisterType(QUrl("qrc:/qt/qml/FluentUI/Controls/FluAutoSuggestBox.qml"),uri,major,minor,"FluAutoSuggestBox"); qmlRegisterType(QUrl("qrc:/qt/qml/FluentUI/Controls/FluAutoSuggestBox.qml"),uri,major,minor,"FluAutoSuggestBox");
qmlRegisterType(QUrl("qrc:/qt/qml/FluentUI/Controls/FluBadge.qml"),uri,major,minor,"FluBadge"); qmlRegisterType(QUrl("qrc:/qt/qml/FluentUI/Controls/FluBadge.qml"),uri,major,minor,"FluBadge");
qmlRegisterType(QUrl("qrc:/qt/qml/FluentUI/Controls/FluBreadcrumbBar.qml"),uri,major,minor,"FluBreadcrumbBar"); qmlRegisterType(QUrl("qrc:/qt/qml/FluentUI/Controls/FluBreadcrumbBar.qml"),uri,major,minor,"FluBreadcrumbBar");

View File

@ -1,28 +0,0 @@
import QtQuick 2.15
import QtQuick.Controls 2.15
import QtQuick.Window 2.15
import FluentUI 1.0
Rectangle {
default property alias contentData : layout_content.data
property int paddings : 0
property int leftPadding : 0
property int rightPadding : 0
property int topPadding : 0
property int bottomPadding : 0
id:control
radius: 4
color: FluTheme.dark ? Window.active ? Qt.rgba(38/255,44/255,54/255,1) : Qt.rgba(39/255,39/255,39/255,1) : Qt.rgba(251/255,251/255,253/255,1)
border.color: FluTheme.dark ? Window.active ? Qt.rgba(55/255,55/255,55/255,1):Qt.rgba(45/255,45/255,45/255,1) : Qt.rgba(226/255,229/255,234/255,1)
border.width: 1
implicitHeight: height
implicitWidth: width
Item {
id: layout_content
anchors.fill: parent
anchors.leftMargin: Math.max(paddings,leftPadding)
anchors.rightMargin: Math.max(paddings,rightPadding)
anchors.topMargin: Math.max(paddings,topPadding)
anchors.bottomMargin: Math.max(paddings,bottomPadding)
}
}

View File

@ -56,7 +56,7 @@ FluTextBox{
property: "opacity" property: "opacity"
from:0 from:0
to:1 to:1
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
} }
} }
contentItem: FluRectangle{ contentItem: FluRectangle{

View File

@ -33,7 +33,7 @@ Item {
properties: "opacity" properties: "opacity"
from: 1 from: 1
to: 0 to: 0
duration: FluTheme.enableAnimation ? 83 : 1 duration: FluTheme.animationEnabled ? 83 : 1
} }
} }
add: Transition { add: Transition {
@ -41,7 +41,7 @@ Item {
properties: "opacity" properties: "opacity"
from: 0 from: 0
to: 1 to: 1
duration: FluTheme.enableAnimation ? 83 : 1 duration: FluTheme.animationEnabled ? 83 : 1
} }
} }
delegate: Item{ delegate: Item{

View File

@ -63,7 +63,7 @@ FluButton {
property: "opacity" property: "opacity"
from:0 from:0
to:1 to:1
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
} }
} }
exit:Transition { exit:Transition {
@ -71,12 +71,12 @@ FluButton {
property: "opacity" property: "opacity"
from:1 from:1
to:0 to:0
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
} }
} }
contentItem: Item{ contentItem: Item{
clip: true clip: true
FluArea{ FluFrame{
id:container id:container
width: 300 width: 300
height: 360 height: 360
@ -163,7 +163,7 @@ FluButton {
OpacityAnimator{ OpacityAnimator{
from: 0 from: 0
to: 1 to: 1
duration: 88 duration: 83
} }
ScaleAnimator{ ScaleAnimator{
from: 0.5 from: 0.5
@ -176,7 +176,7 @@ FluButton {
OpacityAnimator{ OpacityAnimator{
from: 1 from: 1
to: 0 to: 0
duration: 88 duration: 83
} }
ScaleAnimator{ ScaleAnimator{
from: 1.0 from: 1.0

View File

@ -22,7 +22,7 @@ Button {
property alias textColor: btn_text.textColor property alias textColor: btn_text.textColor
property bool textRight: true property bool textRight: true
property real textSpacing: 6 property real textSpacing: 6
property bool enableAnimation: FluTheme.enableAnimation property bool animationEnabled: FluTheme.animationEnabled
property var clickListener : function(){ property var clickListener : function(){
checked = !checked checked = !checked
} }
@ -94,7 +94,7 @@ Button {
return normalColor return normalColor
} }
Behavior on color { Behavior on color {
enabled: control.enableAnimation enabled: control.animationEnabled
ColorAnimation{ ColorAnimation{
duration: 83 duration: 83
} }
@ -107,7 +107,7 @@ Button {
visible: indeterminate visible: indeterminate
iconColor: FluTheme.dark ? Qt.rgba(0,0,0,1) : Qt.rgba(1,1,1,1) iconColor: FluTheme.dark ? Qt.rgba(0,0,0,1) : Qt.rgba(1,1,1,1)
Behavior on visible { Behavior on visible {
enabled: control.enableAnimation enabled: control.animationEnabled
NumberAnimation{ NumberAnimation{
duration: 83 duration: 83
} }
@ -121,7 +121,7 @@ Button {
visible: checked && !indeterminate visible: checked && !indeterminate
iconColor: FluTheme.dark ? Qt.rgba(0,0,0,1) : Qt.rgba(1,1,1,1) iconColor: FluTheme.dark ? Qt.rgba(0,0,0,1) : Qt.rgba(1,1,1,1)
Behavior on visible { Behavior on visible {
enabled: control.enableAnimation enabled: control.animationEnabled
NumberAnimation{ NumberAnimation{
duration: 83 duration: 83
} }

View File

@ -120,7 +120,7 @@ T.ComboBox {
property: "opacity" property: "opacity"
from:0 from:0
to:1 to:1
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
} }
} }
exit:Transition { exit:Transition {
@ -128,7 +128,7 @@ T.ComboBox {
property: "opacity" property: "opacity"
from:1 from:1
to:0 to:0
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
} }
} }
background:Rectangle{ background:Rectangle{

View File

@ -5,56 +5,4 @@ import QtQuick.Controls 2.15
import FluentUI 1.0 import FluentUI 1.0
FluPage { FluPage {
property alias title: text_title.text
default property alias content: container.data
property int leftPadding: 10
property int topPadding: 0
property int rightPadding: 10
property int bottomPadding: 10
property alias color: status_view.color
property alias statusMode: status_view.statusMode
property alias loadingText: status_view.loadingText
property alias emptyText:status_view.emptyText
property alias errorText:status_view.errorText
property alias errorButtonText:status_view.errorButtonText
property alias loadingItem :status_view.loadingItem
property alias emptyItem : status_view.emptyItem
property alias errorItem :status_view.errorItem
signal errorClicked
id:control
FluText{
id:text_title
visible: text !== ""
height: visible ? contentHeight : 0
font: FluTextStyle.Title
anchors{
top: parent.top
topMargin: control.topPadding
left: parent.left
right: parent.right
leftMargin: control.leftPadding
rightMargin: control.rightPadding
}
}
FluStatusLayout{
id:status_view
color: "#00000000"
statusMode: FluStatusLayoutType.Success
onErrorClicked: control.errorClicked()
anchors{
left: parent.left
right: parent.right
top: text_title.bottom
bottom: parent.bottom
leftMargin: control.leftPadding
rightMargin: control.rightPadding
bottomMargin: control.bottomPadding
}
Item{
clip: true
id:container
anchors.fill: parent
}
}
} }

View File

@ -105,7 +105,7 @@ FluButton {
property: "opacity" property: "opacity"
from:0 from:0
to:1 to:1
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
} }
} }
exit:Transition { exit:Transition {
@ -113,7 +113,7 @@ FluButton {
property: "opacity" property: "opacity"
from:1 from:1
to:0 to:0
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
} }
} }
background:Item{ background:Item{

View File

@ -64,7 +64,7 @@ Item {
iconSource:FluentIcons.ChevronUp iconSource:FluentIcons.ChevronUp
iconSize: 15 iconSize: 15
Behavior on rotation { Behavior on rotation {
enabled: FluTheme.enableAnimation enabled: FluTheme.animationEnabled
NumberAnimation{ NumberAnimation{
duration: 167 duration: 167
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
@ -115,7 +115,7 @@ Item {
to:"expand" to:"expand"
NumberAnimation { NumberAnimation {
properties: "anchors.topMargin" properties: "anchors.topMargin"
duration: FluTheme.enableAnimation && d.flag ? 167 : 0 duration: FluTheme.animationEnabled && d.flag ? 167 : 0
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
} }
}, },
@ -123,7 +123,7 @@ Item {
to:"collapsed" to:"collapsed"
NumberAnimation { NumberAnimation {
properties: "anchors.topMargin" properties: "anchors.topMargin"
duration: FluTheme.enableAnimation && d.flag ? 167 : 0 duration: FluTheme.animationEnabled && d.flag ? 167 : 0
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
} }
} }

View File

@ -0,0 +1,24 @@
import QtQuick 2.15
import QtQuick.Window 2.15
import QtQuick.Controls 2.15
import QtQuick.Controls.impl 2.15
import QtQuick.Templates 2.15 as T
import FluentUI 1.0
T.Frame {
property alias border: d.border
property alias color: d.color
property alias radius: d.radius
id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding)
implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset,
contentHeight + topPadding + bottomPadding)
padding: 0
background: Rectangle {
id:d
radius: 4
border.color: FluTheme.dark ? Window.active ? Qt.rgba(55/255,55/255,55/255,1):Qt.rgba(45/255,45/255,45/255,1) : Qt.rgba(226/255,229/255,234/255,1)
color: FluTheme.dark ? Window.active ? Qt.rgba(38/255,44/255,54/255,1) : Qt.rgba(39/255,39/255,39/255,1) : Qt.rgba(251/255,251/255,253/255,1)
}
}

View File

@ -54,7 +54,7 @@ FluObject {
NumberAnimation { NumberAnimation {
properties: "y" properties: "y"
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
duration: FluTheme.enableAnimation ? 333 : 0 duration: FluTheme.animationEnabled ? 333 : 0
} }
} }
onChildrenChanged: if(children.length === 0) destroy(); onChildrenChanged: if(children.length === 0) destroy();
@ -95,7 +95,7 @@ FluObject {
scale: item ? 1 : 0; scale: item ? 1 : 0;
asynchronous: true asynchronous: true
Behavior on scale { Behavior on scale {
enabled: FluTheme.enableAnimation enabled: FluTheme.animationEnabled
NumberAnimation { NumberAnimation {
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
duration: 167 duration: 167

View File

@ -23,7 +23,7 @@ FluButton {
visible: Number(width)!==0 visible: Number(width)!==0
clip: true clip: true
Behavior on width { Behavior on width {
enabled: FluTheme.enableAnimation enabled: FluTheme.animationEnabled
NumberAnimation{ NumberAnimation{
duration: 167 duration: 167
easing.type: Easing.OutCubic easing.type: Easing.OutCubic

View File

@ -5,7 +5,7 @@ import QtQuick.Templates 2.15 as T
import FluentUI 1.0 import FluentUI 1.0
T.Menu { T.Menu {
property bool enableAnimation: true property bool animationEnabled: true
id: control id: control
implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset, implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
contentWidth + leftPadding + rightPadding) contentWidth + leftPadding + rightPadding)
@ -20,7 +20,7 @@ T.Menu {
property: "opacity" property: "opacity"
from:0 from:0
to:1 to:1
duration: FluTheme.enableAnimation && control.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled && control.animationEnabled ? 83 : 0
} }
} }
exit:Transition { exit:Transition {
@ -28,7 +28,7 @@ T.Menu {
property: "opacity" property: "opacity"
from:1 from:1
to:0 to:0
duration: FluTheme.enableAnimation && control.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled && control.animationEnabled ? 83 : 0
} }
} }
contentItem: ListView { contentItem: ListView {

View File

@ -167,7 +167,7 @@ Item {
return control.cellHeight return control.cellHeight
} }
Behavior on height { Behavior on height {
enabled: FluTheme.enableAnimation && d.animDisabled enabled: FluTheme.animationEnabled && d.animDisabled
NumberAnimation{ NumberAnimation{
duration: 83 duration: 83
} }
@ -310,7 +310,7 @@ Item {
return true return true
} }
Behavior on rotation { Behavior on rotation {
enabled: FluTheme.enableAnimation && d.animDisabled enabled: FluTheme.animationEnabled && d.animDisabled
NumberAnimation{ NumberAnimation{
duration: 167 duration: 167
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
@ -457,7 +457,7 @@ Item {
id:com_panel_item id:com_panel_item
Item{ Item{
Behavior on height { Behavior on height {
enabled: FluTheme.enableAnimation && d.animDisabled enabled: FluTheme.animationEnabled && d.animDisabled
NumberAnimation{ NumberAnimation{
duration: 167 duration: 167
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
@ -771,13 +771,13 @@ Item {
visible: opacity visible: opacity
opacity: d.isMinimal opacity: d.isMinimal
Behavior on opacity{ Behavior on opacity{
enabled: FluTheme.enableAnimation && d.animDisabled enabled: FluTheme.animationEnabled && d.animDisabled
NumberAnimation{ NumberAnimation{
duration: 83 duration: 83
} }
} }
Behavior on Layout.preferredWidth { Behavior on Layout.preferredWidth {
enabled: FluTheme.enableAnimation && d.animDisabled enabled: FluTheme.animationEnabled && d.animDisabled
NumberAnimation{ NumberAnimation{
duration: 167 duration: 167
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
@ -880,7 +880,7 @@ Item {
} }
} }
Behavior on anchors.leftMargin { Behavior on anchors.leftMargin {
enabled: FluTheme.enableAnimation && d.animDisabled enabled: FluTheme.animationEnabled && d.animDisabled
NumberAnimation{ NumberAnimation{
duration: 167 duration: 167
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
@ -925,14 +925,14 @@ Item {
} }
x: visible ? 0 : -width x: visible ? 0 : -width
Behavior on width { Behavior on width {
enabled: FluTheme.enableAnimation && d.animDisabled enabled: FluTheme.animationEnabled && d.animDisabled
NumberAnimation{ NumberAnimation{
duration: 167 duration: 167
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
} }
} }
Behavior on x { Behavior on x {
enabled: FluTheme.enableAnimation && d.animDisabled enabled: FluTheme.animationEnabled && d.animDisabled
NumberAnimation{ NumberAnimation{
duration: 167 duration: 167
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
@ -1012,7 +1012,7 @@ Item {
interactive: false interactive: false
model:d.handleItems() model:d.handleItems()
boundsBehavior: ListView.StopAtBounds boundsBehavior: ListView.StopAtBounds
highlightMoveDuration: FluTheme.enableAnimation && d.animDisabled ? 167 : 0 highlightMoveDuration: FluTheme.animationEnabled && d.animDisabled ? 167 : 0
highlight: Item{ highlight: Item{
clip: true clip: true
Rectangle{ Rectangle{
@ -1231,11 +1231,15 @@ Item {
} }
} }
function setCurrentIndex(index){ function setCurrentIndex(index){
nav_list.currentIndex = index
var item = nav_list.model[index] var item = nav_list.model[index]
if(item.url){
nav_list.currentIndex = index
if(item instanceof FluPaneItem){ if(item instanceof FluPaneItem){
item.tap() item.tap()
} }
}else{
item.onTapListener()
}
} }
function getItems(){ function getItems(){
return nav_list.model return nav_list.model

View File

@ -4,31 +4,45 @@ import QtQuick.Controls 2.15
import QtQuick.Window 2.15 import QtQuick.Window 2.15
import FluentUI 1.0 import FluentUI 1.0
Item { Page {
property int launchMode: FluPageType.SingleTop property int launchMode: FluPageType.SingleTop
property bool animDisabled: false property bool animationEnabled: FluTheme.animationEnabled
property string url : "" property string url : ""
id: control id: control
opacity: visible
visible: false
StackView.onRemoved: destroy() StackView.onRemoved: destroy()
Behavior on opacity{ padding: 5
enabled: !animDisabled && FluTheme.enableAnimation visible: false
NumberAnimation{ opacity: visible
duration: 167
}
}
transform: Translate { transform: Translate {
y: control.visible ? 0 : 80 y: control.visible ? 0 : 80
Behavior on y{ Behavior on y{
enabled: !animDisabled && FluTheme.enableAnimation enabled: control.animationEnabled
NumberAnimation{ NumberAnimation{
duration: 167 duration: 167
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
} }
} }
} }
Behavior on opacity {
enabled: control.animationEnabled
NumberAnimation{
duration: 83
}
}
background: Item{}
header: Item{
implicitHeight: 40
FluText{
id:text_title
text: control.title
font: FluTextStyle.Title
anchors{
left: parent.left
leftMargin: 5
}
}
}
Component.onCompleted: { Component.onCompleted: {
visible = true control.visible = true
} }
} }

View File

@ -30,7 +30,7 @@ Page {
spacing: control.headerSpacing spacing: control.headerSpacing
interactive: false interactive: false
orientation: ListView.Horizontal orientation: ListView.Horizontal
highlightMoveDuration: FluTheme.enableAnimation ? 167 : 0 highlightMoveDuration: FluTheme.animationEnabled ? 167 : 0
highlight: Item{ highlight: Item{
clip: true clip: true
Rectangle{ Rectangle{
@ -40,7 +40,7 @@ Page {
width: nav_list.currentItem ? nav_list.currentItem.width : 0 width: nav_list.currentItem ? nav_list.currentItem.width : 0
y:d.tabY y:d.tabY
Behavior on width { Behavior on width {
enabled: FluTheme.enableAnimation enabled: FluTheme.animationEnabled
NumberAnimation{ NumberAnimation{
duration: 167 duration: 167
easing.type: Easing.OutCubic easing.type: Easing.OutCubic

View File

@ -15,7 +15,7 @@ Popup {
enter: Transition { enter: Transition {
NumberAnimation { NumberAnimation {
property: "opacity" property: "opacity"
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
from:0 from:0
to:1 to:1
} }
@ -24,7 +24,7 @@ Popup {
exit:Transition { exit:Transition {
NumberAnimation { NumberAnimation {
property: "opacity" property: "opacity"
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
from:1 from:1
to:0 to:0
} }

View File

@ -3,6 +3,7 @@ import QtQuick.Controls 2.15
import FluentUI 1.0 import FluentUI 1.0
ProgressBar{ ProgressBar{
property int duration: 888
property real strokeWidth: 6 property real strokeWidth: 6
property bool progressVisible: false property bool progressVisible: false
property color color: FluTheme.primaryColor property color color: FluTheme.primaryColor
@ -17,7 +18,7 @@ ProgressBar{
if(!indeterminate){ if(!indeterminate){
animator_x.duration = 0 animator_x.duration = 0
rect_progress.x = 0 rect_progress.x = 0
animator_x.duration = 888 animator_x.duration = control.duration
} }
} }
background: Rectangle { background: Rectangle {
@ -46,7 +47,7 @@ ProgressBar{
from: -rect_progress.width from: -rect_progress.width
to:control.width+rect_progress.width to:control.width+rect_progress.width
loops: Animation.Infinite loops: Animation.Infinite
duration: 888 duration: control.duration
} }
} }
} }

View File

@ -73,10 +73,10 @@ Button {
enabled: control.progress !== 0 enabled: control.progress !== 0
SequentialAnimation { SequentialAnimation {
PauseAnimation { PauseAnimation {
duration: FluTheme.enableAnimation ? 167 : 0 duration: FluTheme.animationEnabled ? 167 : 0
} }
NumberAnimation{ NumberAnimation{
duration: FluTheme.enableAnimation ? 167 : 0 duration: FluTheme.animationEnabled ? 167 : 0
from: 3 from: 3
to: background.height to: background.height
} }

View File

@ -66,7 +66,7 @@ Button {
return checked ? 4 : 1 return checked ? 4 : 1
} }
Behavior on border.width { Behavior on border.width {
enabled: FluTheme.enableAnimation enabled: FluTheme.animationEnabled
NumberAnimation{ NumberAnimation{
duration: 167 duration: 167
easing.type: Easing.OutCubic easing.type: Easing.OutCubic

View File

@ -5,75 +5,16 @@ import QtQuick.Controls 2.15
import FluentUI 1.0 import FluentUI 1.0
FluPage { FluPage {
property alias title: text_title.text
default property alias content: container.data default property alias content: container.data
property int spacing : 0
property int leftPadding: 10
property int topPadding: 0
property int rightPadding: 10
property int bottomPadding: 10
property alias color: status_view.color
property alias statusMode: status_view.statusMode
property alias loadingText: status_view.loadingText
property alias emptyText:status_view.emptyText
property alias errorText:status_view.errorText
property alias errorButtonText:status_view.errorButtonText
property alias loadingItem :status_view.loadingItem
property alias emptyItem : status_view.emptyItem
property alias errorItem :status_view.errorItem
signal errorClicked
id:control
FluText{
id:text_title
font: FluTextStyle.Title
visible: text !== ""
height: visible ? contentHeight : 0
padding: 0
anchors{
top: parent.top
topMargin: control.topPadding
left: parent.left
right: parent.right
leftMargin: control.leftPadding
rightMargin: control.rightPadding
}
}
FluStatusLayout{
id:status_view
color: "#00000000"
statusMode: FluStatusLayoutType.Success
onErrorClicked: control.errorClicked()
anchors{
left: parent.left
right: parent.right
top: text_title.bottom
bottom: parent.bottom
bottomMargin: control.bottomPadding
}
Flickable{ Flickable{
id:flickview
clip: true clip: true
anchors.fill: parent anchors.fill: parent
contentWidth: parent.width ScrollBar.vertical: FluScrollBar {}
contentHeight: container.height
ScrollBar.vertical: FluScrollBar {
anchors.right: flickview.right
anchors.rightMargin: 2
}
boundsBehavior: Flickable.StopAtBounds boundsBehavior: Flickable.StopAtBounds
contentHeight: container.height
ColumnLayout{ ColumnLayout{
id:container id:container
spacing: control.spacing
clip: true
anchors{
left: parent.left
right: parent.right
top: parent.top
leftMargin: control.leftPadding
rightMargin: control.rightPadding
}
width: parent.width width: parent.width
} }
} }
} }
}

View File

@ -62,7 +62,7 @@ T.SpinBox {
} }
} }
Behavior on height{ Behavior on height{
enabled: FluTheme.enableAnimation enabled: FluTheme.animationEnabled
NumberAnimation{ NumberAnimation{
duration: 83 duration: 83
easing.type: Easing.OutCubic easing.type: Easing.OutCubic

View File

@ -42,8 +42,8 @@ Item{
} }
Component{ Component{
id:com_loading id:com_loading
FluArea{ FluFrame{
paddings: 0 padding: 0
border.width: 0 border.width: 0
radius: 0 radius: 0
color:control.color color:control.color
@ -62,8 +62,8 @@ Item{
} }
Component { Component {
id:com_empty id:com_empty
FluArea{ FluFrame{
paddings: 0 padding: 0
border.width: 0 border.width: 0
radius: 0 radius: 0
color:control.color color:control.color
@ -79,8 +79,8 @@ Item{
} }
Component{ Component{
id:com_error id:com_error
FluArea{ FluFrame{
paddings: 0 padding: 0
border.width: 0 border.width: 0
radius: 0 radius: 0
color:control.color color:control.color

View File

@ -46,7 +46,7 @@ FluClip{
} }
} }
Behavior on height{ Behavior on height{
enabled: FluTheme.enableAnimation enabled: FluTheme.animationEnabled
NumberAnimation{ NumberAnimation{
duration: 83 duration: 83
easing.type: Easing.OutCubic easing.type: Easing.OutCubic

View File

@ -9,7 +9,7 @@ FluMenu{
property string selectAllText : qsTr("Select All") property string selectAllText : qsTr("Select All")
property var inputItem property var inputItem
id:menu id:menu
enableAnimation: false animationEnabled: false
width: 120 width: 120
focus: false focus: false
onVisibleChanged: { onVisibleChanged: {

View File

@ -121,7 +121,7 @@ FluButton {
property: "opacity" property: "opacity"
from:0 from:0
to:1 to:1
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
} }
} }
exit:Transition { exit:Transition {
@ -129,7 +129,7 @@ FluButton {
property: "opacity" property: "opacity"
from:1 from:1
to:0 to:0
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
} }
} }
background:Item{ background:Item{

View File

@ -102,7 +102,7 @@ Button {
} }
} }
Behavior on x { Behavior on x {
enabled: FluTheme.enableAnimation enabled: FluTheme.animationEnabled
NumberAnimation { NumberAnimation {
duration: 167 duration: 167
easing.type: Easing.OutCubic easing.type: Easing.OutCubic

View File

@ -124,7 +124,7 @@ Popup{
ctx.fill() ctx.fill()
} }
} }
FluArea{ FluFrame{
id: layout_panne id: layout_panne
radius: 5 radius: 5
width: 500 width: 500

View File

@ -51,7 +51,7 @@ Item {
} }
NumberAnimation { NumberAnimation {
properties: "opacity" properties: "opacity"
duration: 88 duration: 83
from: 0 from: 0
to: 1 to: 1
} }
@ -70,7 +70,7 @@ Item {
} }
NumberAnimation { NumberAnimation {
properties: "opacity" properties: "opacity"
duration: 88 duration: 83
from: 0 from: 0
to: 1 to: 1
} }
@ -373,7 +373,7 @@ Item {
horizontalPadding:0 horizontalPadding:0
verticalPadding: 0 verticalPadding: 0
checked: itemModel.checked checked: itemModel.checked
enableAnimation:false animationEnabled:false
visible: control.checkable visible: control.checkable
padding: 0 padding: 0
clickListener: function(){ clickListener: function(){

View File

@ -142,7 +142,7 @@ Window {
Behavior on opacity { Behavior on opacity {
SequentialAnimation { SequentialAnimation {
PauseAnimation { PauseAnimation {
duration: 88 duration: 83
} }
NumberAnimation{ NumberAnimation{
duration: 167 duration: 167

View File

@ -5,7 +5,6 @@
<file>FluentUI/Font/Segoe_Fluent_Icons.ttf</file> <file>FluentUI/Font/Segoe_Fluent_Icons.ttf</file>
<file>FluentUI/Controls/FluAcrylic.qml</file> <file>FluentUI/Controls/FluAcrylic.qml</file>
<file>FluentUI/Controls/FluAppBar.qml</file> <file>FluentUI/Controls/FluAppBar.qml</file>
<file>FluentUI/Controls/FluArea.qml</file>
<file>FluentUI/Controls/FluAutoSuggestBox.qml</file> <file>FluentUI/Controls/FluAutoSuggestBox.qml</file>
<file>FluentUI/Controls/FluBadge.qml</file> <file>FluentUI/Controls/FluBadge.qml</file>
<file>FluentUI/Controls/FluBreadcrumbBar.qml</file> <file>FluentUI/Controls/FluBreadcrumbBar.qml</file>
@ -107,5 +106,6 @@
<file>FluentUI/Controls/qmldir</file> <file>FluentUI/Controls/qmldir</file>
<file>FluentUI/Controls/FluEvent.qml</file> <file>FluentUI/Controls/FluEvent.qml</file>
<file>FluentUI/Controls/FluEventBus.qml</file> <file>FluentUI/Controls/FluEventBus.qml</file>
<file>FluentUI/Controls/FluFrame.qml</file>
</qresource> </qresource>
</RCC> </RCC>

View File

@ -1,28 +0,0 @@
import QtQuick
import QtQuick.Controls
import QtQuick.Window
import FluentUI
Rectangle {
default property alias contentData : layout_content.data
property int paddings : 0
property int leftPadding : 0
property int rightPadding : 0
property int topPadding : 0
property int bottomPadding : 0
id:control
radius: 4
color: FluTheme.dark ? Window.active ? Qt.rgba(38/255,44/255,54/255,1) : Qt.rgba(39/255,39/255,39/255,1) : Qt.rgba(251/255,251/255,253/255,1)
border.color: FluTheme.dark ? Window.active ? Qt.rgba(55/255,55/255,55/255,1):Qt.rgba(45/255,45/255,45/255,1) : Qt.rgba(226/255,229/255,234/255,1)
border.width: 1
implicitHeight: height
implicitWidth: width
Item {
id: layout_content
anchors.fill: parent
anchors.leftMargin: Math.max(paddings,leftPadding)
anchors.rightMargin: Math.max(paddings,rightPadding)
anchors.topMargin: Math.max(paddings,topPadding)
anchors.bottomMargin: Math.max(paddings,bottomPadding)
}
}

View File

@ -55,7 +55,7 @@ FluTextBox{
property: "opacity" property: "opacity"
from:0 from:0
to:1 to:1
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
} }
} }
contentItem: FluRectangle{ contentItem: FluRectangle{

View File

@ -33,7 +33,7 @@ Item {
properties: "opacity" properties: "opacity"
from: 1 from: 1
to: 0 to: 0
duration: FluTheme.enableAnimation ? 83 : 1 duration: FluTheme.animationEnabled ? 83 : 1
} }
} }
add: Transition { add: Transition {
@ -41,7 +41,7 @@ Item {
properties: "opacity" properties: "opacity"
from: 0 from: 0
to: 1 to: 1
duration: FluTheme.enableAnimation ? 83 : 1 duration: FluTheme.animationEnabled ? 83 : 1
} }
} }
delegate: Item{ delegate: Item{

View File

@ -62,7 +62,7 @@ FluButton {
property: "opacity" property: "opacity"
from:0 from:0
to:1 to:1
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
} }
} }
exit:Transition { exit:Transition {
@ -70,12 +70,12 @@ FluButton {
property: "opacity" property: "opacity"
from:1 from:1
to:0 to:0
duration: FluTheme.enableAnimation ? 83 : 0 duration: FluTheme.animationEnabled ? 83 : 0
} }
} }
contentItem: Item{ contentItem: Item{
clip: true clip: true
FluArea{ FluFrame{
id:container id:container
width: 300 width: 300
height: 360 height: 360
@ -162,7 +162,7 @@ FluButton {
OpacityAnimator{ OpacityAnimator{
from: 0 from: 0
to: 1 to: 1
duration: 88 duration: 83
} }
ScaleAnimator{ ScaleAnimator{
from: 0.5 from: 0.5
@ -175,7 +175,7 @@ FluButton {
OpacityAnimator{ OpacityAnimator{
from: 1 from: 1
to: 0 to: 0
duration: 88 duration: 83
} }
ScaleAnimator{ ScaleAnimator{
from: 1.0 from: 1.0

Some files were not shown because too many files have changed in this diff Show More