This commit is contained in:
朱子楚\zhuzi 2023-12-19 20:15:48 +08:00
parent 61659b5e31
commit fde55d254c
5 changed files with 136 additions and 33 deletions

View File

@ -240,7 +240,7 @@ FluWindow {
id:com_reveal id:com_reveal
CircularReveal{ CircularReveal{
id:reveal id:reveal
target:window.contentItem target:window.layoutContainer()
anchors.fill: parent anchors.fill: parent
onAnimationFinished:{ onAnimationFinished:{
// //
@ -269,7 +269,7 @@ FluWindow {
return return
} }
loader_reveal.sourceComponent = com_reveal loader_reveal.sourceComponent = com_reveal
var target = window.contentItem var target = window.layoutContainer()
var pos = button.mapToItem(target,0,0) var pos = button.mapToItem(target,0,0)
var mouseX = pos.x var mouseX = pos.x
var mouseY = pos.y var mouseY = pos.y

View File

@ -243,7 +243,7 @@ FluWindow {
id:com_reveal id:com_reveal
CircularReveal{ CircularReveal{
id:reveal id:reveal
target:window.contentItem target:window.layoutContainer()
anchors.fill: parent anchors.fill: parent
onAnimationFinished:{ onAnimationFinished:{
// //
@ -272,7 +272,7 @@ FluWindow {
return return
} }
loader_reveal.sourceComponent = com_reveal loader_reveal.sourceComponent = com_reveal
var target = window.contentItem var target = window.layoutContainer()
var pos = button.mapToItem(target,0,0) var pos = button.mapToItem(target,0,0)
var mouseX = pos.x var mouseX = pos.x
var mouseY = pos.y var mouseY = pos.y

View File

@ -5,7 +5,7 @@ import QtQuick.Layouts 1.15
import FluentUI 1.0 import FluentUI 1.0
Window { Window {
default property alias content: container.data default property alias content: layout_content.data
property string windowIcon: FluApp.windowIcon property string windowIcon: FluApp.windowIcon
property bool closeDestory: true property bool closeDestory: true
property int launchMode: FluWindowType.Standard property int launchMode: FluWindowType.Standard
@ -168,14 +168,11 @@ Window {
} }
} }
} }
FluLoader{
anchors.fill: parent
sourceComponent: background
}
FluLoader{ FluLoader{
id:loader_frameless id:loader_frameless
} }
Item{ Item{
id:layout_container
property int offsetX: { property int offsetX: {
if(window.visibility === Window.Maximized){ if(window.visibility === Window.Maximized){
return Math.abs(window.x-Screen.virtualX) return Math.abs(window.x-Screen.virtualX)
@ -198,6 +195,10 @@ Window {
onWidthChanged: { onWidthChanged: {
window.appBar.width = width window.appBar.width = width
} }
FluLoader{
anchors.fill: parent
sourceComponent: background
}
FluLoader{ FluLoader{
id:loader_app_bar id:loader_app_bar
anchors { anchors {
@ -214,7 +215,7 @@ Window {
sourceComponent: window.useSystemAppBar ? undefined : com_app_bar sourceComponent: window.useSystemAppBar ? undefined : com_app_bar
} }
Item{ Item{
id:container id:layout_content
anchors{ anchors{
top: loader_app_bar.bottom top: loader_app_bar.bottom
left: parent.left left: parent.left
@ -227,7 +228,7 @@ Window {
property string loadingText: "加载中..." property string loadingText: "加载中..."
property bool cancel: false property bool cancel: false
id:loader_loading id:loader_loading
anchors.fill: container anchors.fill: layout_content
} }
FluInfoBar{ FluInfoBar{
id:infoBar id:infoBar
@ -286,7 +287,10 @@ Window {
_pageRegister.onResult(data) _pageRegister.onResult(data)
} }
} }
function containerItem(){ function layoutContainer(){
return container return layout_container
}
function layoutContent(){
return layout_content
} }
} }

View File

@ -4,7 +4,7 @@ import QtQuick.tooling 1.2
// It is used for QML tooling purposes only. // It is used for QML tooling purposes only.
// //
// This file was auto-generated by: // This file was auto-generated by:
// 'qmlplugindump -nonrelocatable FluentUI 1.0 D:/QtProjects/build-FluentUI-Desktop_Qt_5_15_2_MSVC2019_64bit-Release/src' // 'qmlplugindump -nonrelocatable FluentUI 1.0 D:\QtProjects\build-FluentUI-Desktop_Qt_5_15_2_MSVC2019_64bit-Release\src'
Module { Module {
dependencies: ["QtQuick 2.0"] dependencies: ["QtQuick 2.0"]
@ -75,6 +75,12 @@ Module {
Parameter { name: "data"; type: "QVariantMap" } Parameter { name: "data"; type: "QVariantMap" }
} }
} }
Component {
name: "FluFramelessHelper"
prototype: "QObject"
exports: ["FluentUI/FluFramelessHelper 1.0"]
exportMetaObjectRevisions: [0]
}
Component { Component {
name: "FluNavigationViewType" name: "FluNavigationViewType"
exports: ["FluentUI/FluNavigationViewType 1.0"] exports: ["FluentUI/FluNavigationViewType 1.0"]
@ -1866,6 +1872,11 @@ Module {
type: "NetworkParams*" type: "NetworkParams*"
Parameter { name: "target"; type: "QObject"; isPointer: true } Parameter { name: "target"; type: "QObject"; isPointer: true }
} }
Method {
name: "openLog"
type: "NetworkParams*"
Parameter { name: "val"; type: "QVariant" }
}
Method { Method {
name: "go" name: "go"
Parameter { name: "result"; type: "NetworkCallable"; isPointer: true } Parameter { name: "result"; type: "NetworkCallable"; isPointer: true }
@ -2538,17 +2549,12 @@ Module {
exportMetaObjectRevisions: [0] exportMetaObjectRevisions: [0]
isComposite: true isComposite: true
defaultProperty: "data" defaultProperty: "data"
Property { name: "window"; type: "QVariant" }
Property { name: "jsChart"; type: "QVariant" }
Property { name: "chartType"; type: "string" } Property { name: "chartType"; type: "string" }
Property { name: "chartData"; type: "QVariant" } Property { name: "chartData"; type: "QVariant" }
Property { name: "chartOptions"; type: "QVariant" } Property { name: "chartOptions"; type: "QVariant" }
Property { name: "chartAnimationProgress"; type: "double" } Property { name: "chartAnimationProgress"; type: "double" }
Property { name: "animationEasingType"; type: "int" } Property { name: "animationEasingType"; type: "int" }
Property { name: "animationDuration"; type: "double" } Property { name: "animationDuration"; type: "double" }
Property { name: "memorizedContext"; type: "QVariant" }
Property { name: "memorizedData"; type: "QVariant" }
Property { name: "memorizedOptions"; type: "QVariant" }
Property { name: "animationRunning"; type: "bool" } Property { name: "animationRunning"; type: "bool" }
Signal { name: "animationFinished" } Signal { name: "animationFinished" }
Method { name: "animateToNewData"; type: "QVariant" } Method { name: "animateToNewData"; type: "QVariant" }
@ -2649,9 +2655,13 @@ Module {
Property { name: "neutralText"; type: "string" } Property { name: "neutralText"; type: "string" }
Property { name: "negativeText"; type: "string" } Property { name: "negativeText"; type: "string" }
Property { name: "positiveText"; type: "string" } Property { name: "positiveText"; type: "string" }
Property { name: "messageTextFormart"; type: "int" }
Property { name: "delayTime"; type: "int" } Property { name: "delayTime"; type: "int" }
Property { name: "buttonFlags"; type: "int" } Property { name: "buttonFlags"; type: "int" }
Property { name: "messageTextFormart"; type: "int" } Property { name: "contentDelegate"; type: "QVariant" }
Property { name: "onNeutralClickListener"; type: "QVariant" }
Property { name: "onNegativeClickListener"; type: "QVariant" }
Property { name: "onPositiveClickListener"; type: "QVariant" }
Signal { name: "neutralClicked" } Signal { name: "neutralClicked" }
Signal { name: "negativeClicked" } Signal { name: "negativeClicked" }
Signal { name: "positiveClicked" } Signal { name: "positiveClicked" }
@ -3003,15 +3013,15 @@ Module {
defaultProperty: "data" defaultProperty: "data"
Property { name: "logo"; type: "QUrl" } Property { name: "logo"; type: "QUrl" }
Property { name: "title"; type: "string" } Property { name: "title"; type: "string" }
Property { name: "items"; type: "FluObject_QMLTYPE_124"; isPointer: true } Property { name: "items"; type: "FluObject_QMLTYPE_125"; isPointer: true }
Property { name: "footerItems"; type: "FluObject_QMLTYPE_124"; isPointer: true } Property { name: "footerItems"; type: "FluObject_QMLTYPE_125"; isPointer: true }
Property { name: "displayMode"; type: "int" } Property { name: "displayMode"; type: "int" }
Property { name: "autoSuggestBox"; type: "QQmlComponent"; isPointer: true } Property { name: "autoSuggestBox"; type: "QQmlComponent"; isPointer: true }
Property { name: "actionItem"; type: "QQmlComponent"; isPointer: true } Property { name: "actionItem"; type: "QQmlComponent"; isPointer: true }
Property { name: "topPadding"; type: "int" } Property { name: "topPadding"; type: "int" }
Property { name: "pageMode"; type: "int" } Property { name: "pageMode"; type: "int" }
Property { name: "navItemRightMenu"; type: "FluMenu_QMLTYPE_39"; isPointer: true } Property { name: "navItemRightMenu"; type: "FluMenu_QMLTYPE_34"; isPointer: true }
Property { name: "navItemExpanderRightMenu"; type: "FluMenu_QMLTYPE_39"; isPointer: true } Property { name: "navItemExpanderRightMenu"; type: "FluMenu_QMLTYPE_34"; isPointer: true }
Property { name: "navCompactWidth"; type: "int" } Property { name: "navCompactWidth"; type: "int" }
Property { name: "navTopMargin"; type: "int" } Property { name: "navTopMargin"; type: "int" }
Property { name: "cellHeight"; type: "int" } Property { name: "cellHeight"; type: "int" }
@ -3758,6 +3768,91 @@ Module {
Method { name: "allExpand"; type: "QVariant" } Method { name: "allExpand"; type: "QVariant" }
Method { name: "allCollapse"; type: "QVariant" } Method { name: "allCollapse"; type: "QVariant" }
} }
Component {
prototype: "QQuickWindowQmlImpl"
name: "FluentUI/FluWindow 1.0"
exports: ["FluentUI/FluWindow 1.0"]
exportMetaObjectRevisions: [0]
isComposite: true
defaultProperty: "content"
Property { name: "windowIcon"; type: "string" }
Property { name: "closeDestory"; type: "bool" }
Property { name: "launchMode"; type: "int" }
Property { name: "argument"; type: "QVariant" }
Property { name: "background"; type: "QVariant" }
Property { name: "fixSize"; type: "bool" }
Property { name: "loadingItem"; type: "QQmlComponent"; isPointer: true }
Property { name: "fitsAppBarWindows"; type: "bool" }
Property { name: "appBar"; type: "QQuickItem"; isPointer: true }
Property { name: "backgroundColor"; type: "QColor" }
Property { name: "stayTop"; type: "bool" }
Property { name: "_pageRegister"; type: "QVariant" }
Property { name: "_route"; type: "string" }
Property { name: "showDark"; type: "bool" }
Property { name: "showClose"; type: "bool" }
Property { name: "showMinimize"; type: "bool" }
Property { name: "showMaximize"; type: "bool" }
Property { name: "showStayTop"; type: "bool" }
Property { name: "autoMaximize"; type: "bool" }
Property { name: "useSystemAppBar"; type: "bool" }
Property { name: "resizeBorderColor"; type: "QColor" }
Property { name: "resizeBorderWidth"; type: "int" }
Property { name: "closeListener"; type: "QVariant" }
Property { name: "content"; type: "QObject"; isList: true; isReadonly: true }
Signal {
name: "initArgument"
Parameter { name: "argument"; type: "QVariant" }
}
Signal { name: "firstVisible" }
Method { name: "destoryOnClose"; type: "QVariant" }
Method {
name: "showLoading"
type: "QVariant"
Parameter { name: "text"; type: "QVariant" }
Parameter { name: "cancel"; type: "QVariant" }
}
Method { name: "hideLoading"; type: "QVariant" }
Method {
name: "showSuccess"
type: "QVariant"
Parameter { name: "text"; type: "QVariant" }
Parameter { name: "duration"; type: "QVariant" }
Parameter { name: "moremsg"; type: "QVariant" }
}
Method {
name: "showInfo"
type: "QVariant"
Parameter { name: "text"; type: "QVariant" }
Parameter { name: "duration"; type: "QVariant" }
Parameter { name: "moremsg"; type: "QVariant" }
}
Method {
name: "showWarning"
type: "QVariant"
Parameter { name: "text"; type: "QVariant" }
Parameter { name: "duration"; type: "QVariant" }
Parameter { name: "moremsg"; type: "QVariant" }
}
Method {
name: "showError"
type: "QVariant"
Parameter { name: "text"; type: "QVariant" }
Parameter { name: "duration"; type: "QVariant" }
Parameter { name: "moremsg"; type: "QVariant" }
}
Method {
name: "registerForWindowResult"
type: "QVariant"
Parameter { name: "path"; type: "QVariant" }
}
Method { name: "moveWindowToDesktopCenter"; type: "QVariant" }
Method {
name: "onResult"
type: "QVariant"
Parameter { name: "data"; type: "QVariant" }
}
Method { name: "containerItem"; type: "QVariant" }
}
Component { Component {
prototype: "QQuickRow" prototype: "QQuickRow"
name: "FluentUI/NumberBox 1.0" name: "FluentUI/NumberBox 1.0"

View File

@ -4,7 +4,7 @@ import QtQuick.Layouts
import FluentUI import FluentUI
Window { Window {
default property alias content: container.data default property alias content: layout_content.data
property string windowIcon: FluApp.windowIcon property string windowIcon: FluApp.windowIcon
property bool closeDestory: true property bool closeDestory: true
property int launchMode: FluWindowType.Standard property int launchMode: FluWindowType.Standard
@ -167,14 +167,11 @@ Window {
} }
} }
} }
FluLoader{
anchors.fill: parent
sourceComponent: background
}
FluLoader{ FluLoader{
id:loader_frameless id:loader_frameless
} }
Item{ Item{
id:layout_container
property int offsetX: { property int offsetX: {
if(window.visibility === Window.Maximized){ if(window.visibility === Window.Maximized){
return Math.abs(window.x-Screen.virtualX) return Math.abs(window.x-Screen.virtualX)
@ -197,6 +194,10 @@ Window {
onWidthChanged: { onWidthChanged: {
window.appBar.width = width window.appBar.width = width
} }
FluLoader{
anchors.fill: parent
sourceComponent: background
}
FluLoader{ FluLoader{
id:loader_app_bar id:loader_app_bar
anchors { anchors {
@ -213,7 +214,7 @@ Window {
sourceComponent: window.useSystemAppBar ? undefined : com_app_bar sourceComponent: window.useSystemAppBar ? undefined : com_app_bar
} }
Item{ Item{
id:container id:layout_content
anchors{ anchors{
top: loader_app_bar.bottom top: loader_app_bar.bottom
left: parent.left left: parent.left
@ -226,7 +227,7 @@ Window {
property string loadingText: "加载中..." property string loadingText: "加载中..."
property bool cancel: false property bool cancel: false
id:loader_loading id:loader_loading
anchors.fill: container anchors.fill: layout_content
} }
FluInfoBar{ FluInfoBar{
id:infoBar id:infoBar
@ -285,7 +286,10 @@ Window {
_pageRegister.onResult(data) _pageRegister.onResult(data)
} }
} }
function containerItem(){ function layoutContainer(){
return container return layout_container
}
function layoutContent(){
return layout_content
} }
} }