mirror of
https://github.com/zhuzichu520/FluentUI.git
synced 2024-11-22 19:00:07 +08:00
update
This commit is contained in:
parent
1a0f2afee0
commit
a443f3a9ba
4
.github/workflows/windows-mingw.yml
vendored
4
.github/workflows/windows-mingw.yml
vendored
@ -91,14 +91,14 @@ jobs:
|
|||||||
if: startsWith(github.event.ref, 'refs/tags/')
|
if: startsWith(github.event.ref, 'refs/tags/')
|
||||||
uses: zhuzichu520/inno-setup-action@v1.0.1
|
uses: zhuzichu520/inno-setup-action@v1.0.1
|
||||||
with:
|
with:
|
||||||
filepath: ./action-cli/InstallerScript.iss
|
filepath: ./package/InstallerScript.iss
|
||||||
|
|
||||||
- name: uploadRelease
|
- name: uploadRelease
|
||||||
if: startsWith(github.event.ref, 'refs/tags/')
|
if: startsWith(github.event.ref, 'refs/tags/')
|
||||||
uses: svenstaro/upload-release-action@v2
|
uses: svenstaro/upload-release-action@v2
|
||||||
with:
|
with:
|
||||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
file: ./action-cli/installer.exe
|
file: ./package/installer.exe
|
||||||
asset_name: ${{ env.fileName }}_${{ github.ref_name }}_${{ matrix.qt_arch }}_Qt${{ matrix.qt_ver }}.exe
|
asset_name: ${{ env.fileName }}_${{ github.ref_name }}_${{ matrix.qt_arch }}_Qt${{ matrix.qt_ver }}.exe
|
||||||
tag: ${{ github.ref }}
|
tag: ${{ github.ref }}
|
||||||
overwrite: true
|
overwrite: true
|
||||||
|
4
.github/workflows/windows-qt5.yml
vendored
4
.github/workflows/windows-qt5.yml
vendored
@ -78,14 +78,14 @@ jobs:
|
|||||||
if: startsWith(github.event.ref, 'refs/tags/')
|
if: startsWith(github.event.ref, 'refs/tags/')
|
||||||
uses: zhuzichu520/inno-setup-action@v1.0.1
|
uses: zhuzichu520/inno-setup-action@v1.0.1
|
||||||
with:
|
with:
|
||||||
filepath: ./action-cli/InstallerScript.iss
|
filepath: ./package/InstallerScript.iss
|
||||||
|
|
||||||
- name: uploadRelease
|
- name: uploadRelease
|
||||||
if: startsWith(github.event.ref, 'refs/tags/')
|
if: startsWith(github.event.ref, 'refs/tags/')
|
||||||
uses: svenstaro/upload-release-action@v2
|
uses: svenstaro/upload-release-action@v2
|
||||||
with:
|
with:
|
||||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
file: ./action-cli/installer.exe
|
file: ./package/installer.exe
|
||||||
asset_name: ${{ env.fileName }}_${{ github.ref_name }}_${{ matrix.qt_arch }}_Qt${{ matrix.qt_ver }}.exe
|
asset_name: ${{ env.fileName }}_${{ github.ref_name }}_${{ matrix.qt_arch }}_Qt${{ matrix.qt_ver }}.exe
|
||||||
tag: ${{ github.ref }}
|
tag: ${{ github.ref }}
|
||||||
overwrite: true
|
overwrite: true
|
||||||
|
4
.github/workflows/windows.yml
vendored
4
.github/workflows/windows.yml
vendored
@ -85,14 +85,14 @@ jobs:
|
|||||||
if: startsWith(github.event.ref, 'refs/tags/')
|
if: startsWith(github.event.ref, 'refs/tags/')
|
||||||
uses: zhuzichu520/inno-setup-action@v1.0.1
|
uses: zhuzichu520/inno-setup-action@v1.0.1
|
||||||
with:
|
with:
|
||||||
filepath: ./action-cli/InstallerScript.iss
|
filepath: ./package/InstallerScript.iss
|
||||||
|
|
||||||
- name: uploadRelease
|
- name: uploadRelease
|
||||||
if: startsWith(github.event.ref, 'refs/tags/')
|
if: startsWith(github.event.ref, 'refs/tags/')
|
||||||
uses: svenstaro/upload-release-action@v2
|
uses: svenstaro/upload-release-action@v2
|
||||||
with:
|
with:
|
||||||
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
file: ./action-cli/installer.exe
|
file: ./package/installer.exe
|
||||||
asset_name: ${{ env.fileName }}_${{ github.ref_name }}_${{ matrix.qt_arch }}_Qt${{ matrix.qt_ver }}.exe
|
asset_name: ${{ env.fileName }}_${{ github.ref_name }}_${{ matrix.qt_arch }}_Qt${{ matrix.qt_ver }}.exe
|
||||||
tag: ${{ github.ref }}
|
tag: ${{ github.ref }}
|
||||||
overwrite: true
|
overwrite: true
|
||||||
|
4
.gitignore
vendored
4
.gitignore
vendored
@ -36,10 +36,8 @@ bin
|
|||||||
build
|
build
|
||||||
cmake-build-*
|
cmake-build-*
|
||||||
.idea
|
.idea
|
||||||
|
package
|
||||||
example/Version.h
|
example/Version.h
|
||||||
|
|
||||||
action-cli
|
|
||||||
dist
|
dist
|
||||||
|
|
||||||
*.qm
|
*.qm
|
@ -69,7 +69,7 @@ if (WIN32)
|
|||||||
)
|
)
|
||||||
configure_file(
|
configure_file(
|
||||||
${CMAKE_SOURCE_DIR}/.cmake/InstallerScript.iss.in
|
${CMAKE_SOURCE_DIR}/.cmake/InstallerScript.iss.in
|
||||||
${CMAKE_SOURCE_DIR}/action-cli/InstallerScript.iss
|
${CMAKE_SOURCE_DIR}/package/InstallerScript.iss
|
||||||
)
|
)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
|
@ -2394,22 +2394,22 @@ Some contents...</source>
|
|||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="qml/page/T_TreeView.qml" line="185"/>
|
<location filename="qml/page/T_TreeView.qml" line="183"/>
|
||||||
<source>Title</source>
|
<source>Title</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="qml/page/T_TreeView.qml" line="189"/>
|
<location filename="qml/page/T_TreeView.qml" line="187"/>
|
||||||
<source>Name</source>
|
<source>Name</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="qml/page/T_TreeView.qml" line="193"/>
|
<location filename="qml/page/T_TreeView.qml" line="191"/>
|
||||||
<source>Avatar</source>
|
<source>Avatar</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="qml/page/T_TreeView.qml" line="197"/>
|
<location filename="qml/page/T_TreeView.qml" line="195"/>
|
||||||
<source>Address</source>
|
<source>Address</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -2504,22 +2504,22 @@ Some contents...</source>
|
|||||||
<translation type="obsolete">共计选中%1条数据</translation>
|
<translation type="obsolete">共计选中%1条数据</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="qml/page/T_TreeView.qml" line="185"/>
|
<location filename="qml/page/T_TreeView.qml" line="183"/>
|
||||||
<source>Title</source>
|
<source>Title</source>
|
||||||
<translation type="unfinished">标题</translation>
|
<translation type="unfinished">标题</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="qml/page/T_TreeView.qml" line="197"/>
|
<location filename="qml/page/T_TreeView.qml" line="195"/>
|
||||||
<source>Address</source>
|
<source>Address</source>
|
||||||
<translation type="unfinished">地址</translation>
|
<translation type="unfinished">地址</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="qml/page/T_TreeView.qml" line="193"/>
|
<location filename="qml/page/T_TreeView.qml" line="191"/>
|
||||||
<source>Avatar</source>
|
<source>Avatar</source>
|
||||||
<translation type="unfinished">头像</translation>
|
<translation type="unfinished">头像</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="qml/page/T_TreeView.qml" line="189"/>
|
<location filename="qml/page/T_TreeView.qml" line="187"/>
|
||||||
<source>Name</source>
|
<source>Name</source>
|
||||||
<translation type="unfinished">名称</translation>
|
<translation type="unfinished">名称</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -33,7 +33,7 @@ FluContentPage {
|
|||||||
cellHeight: 110
|
cellHeight: 110
|
||||||
clip: true
|
clip: true
|
||||||
boundsBehavior: GridView.StopAtBounds
|
boundsBehavior: GridView.StopAtBounds
|
||||||
model:FluTheme.awesomeList()
|
model: FluApp.iconDatas()
|
||||||
ScrollBar.vertical: FluScrollBar {}
|
ScrollBar.vertical: FluScrollBar {}
|
||||||
anchors{
|
anchors{
|
||||||
topMargin: 10
|
topMargin: 10
|
||||||
|
@ -162,7 +162,8 @@ FluContentPage {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
FluFrame{
|
FluTreeView{
|
||||||
|
id:tree_view
|
||||||
anchors{
|
anchors{
|
||||||
left: parent.left
|
left: parent.left
|
||||||
top: layout_controls.bottom
|
top: layout_controls.bottom
|
||||||
@ -170,39 +171,35 @@ FluContentPage {
|
|||||||
bottom: parent.bottom
|
bottom: parent.bottom
|
||||||
right: parent.right
|
right: parent.right
|
||||||
}
|
}
|
||||||
FluTreeView{
|
cellHeight: slider_cell_height.value
|
||||||
id:tree_view
|
showLine: switch_showline.checked
|
||||||
anchors.fill: parent
|
checkable:switch_checkable.checked
|
||||||
cellHeight: slider_cell_height.value
|
depthPadding: slider_depth_padding.value
|
||||||
showLine: switch_showline.checked
|
onCurrentChanged: {
|
||||||
checkable:switch_checkable.checked
|
showInfo(current.data.title)
|
||||||
depthPadding: slider_depth_padding.value
|
}
|
||||||
onCurrentChanged: {
|
columnSource:[
|
||||||
showInfo(current.data.title)
|
{
|
||||||
}
|
title: qsTr("Title"),
|
||||||
columnSource:[
|
dataIndex: 'title',
|
||||||
{
|
width: 300
|
||||||
title: qsTr("Title"),
|
},{
|
||||||
dataIndex: 'title',
|
title: qsTr("Name"),
|
||||||
width: 300
|
dataIndex: 'name',
|
||||||
},{
|
width: 100
|
||||||
title: qsTr("Name"),
|
},{
|
||||||
dataIndex: 'name',
|
title: qsTr("Avatar"),
|
||||||
width: 100
|
dataIndex: 'avatar',
|
||||||
},{
|
width: 100
|
||||||
title: qsTr("Avatar"),
|
},{
|
||||||
dataIndex: 'avatar',
|
title: qsTr("Address"),
|
||||||
width: 100
|
dataIndex: 'address',
|
||||||
},{
|
width: 200
|
||||||
title: qsTr("Address"),
|
},
|
||||||
dataIndex: 'address',
|
]
|
||||||
width: 200
|
Component.onCompleted: {
|
||||||
},
|
var data = treeData()
|
||||||
]
|
dataSource = data
|
||||||
Component.onCompleted: {
|
|
||||||
var data = treeData()
|
|
||||||
dataSource = data
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9,6 +9,7 @@
|
|||||||
#include <QClipboard>
|
#include <QClipboard>
|
||||||
#include <QTranslator>
|
#include <QTranslator>
|
||||||
#include <utility>
|
#include <utility>
|
||||||
|
#include "FluentIconDef.h"
|
||||||
|
|
||||||
FluApp::FluApp(QObject *parent) : QObject{parent} {
|
FluApp::FluApp(QObject *parent) : QObject{parent} {
|
||||||
_useSystemAppBar = false;
|
_useSystemAppBar = false;
|
||||||
@ -30,3 +31,19 @@ void FluApp::init(QObject *target, QLocale locale) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[[maybe_unused]] QJsonArray FluApp::iconDatas(const QString &keyword) {
|
||||||
|
QJsonArray arr;
|
||||||
|
QMetaEnum enumType = Fluent_Icons::staticMetaObject.enumerator(Fluent_Icons::staticMetaObject.indexOfEnumerator("Fluent_IconType"));
|
||||||
|
for (int i = 0; i <= enumType.keyCount() - 1; ++i) {
|
||||||
|
QString name = enumType.key(i);
|
||||||
|
int icon = enumType.value(i);
|
||||||
|
if (keyword.isEmpty() || name.contains(keyword)) {
|
||||||
|
QJsonObject obj;
|
||||||
|
obj.insert("name", name);
|
||||||
|
obj.insert("icon", icon);
|
||||||
|
arr.append(obj);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return arr;
|
||||||
|
}
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
#include <QQmlEngine>
|
#include <QQmlEngine>
|
||||||
#include <QTranslator>
|
#include <QTranslator>
|
||||||
#include <QQuickWindow>
|
#include <QQuickWindow>
|
||||||
|
#include <QJsonArray>
|
||||||
#include "stdafx.h"
|
#include "stdafx.h"
|
||||||
#include "singleton.h"
|
#include "singleton.h"
|
||||||
|
|
||||||
@ -35,6 +36,8 @@ SINGLETON(FluApp)
|
|||||||
|
|
||||||
Q_INVOKABLE void init(QObject *target, QLocale locale = QLocale::system());
|
Q_INVOKABLE void init(QObject *target, QLocale locale = QLocale::system());
|
||||||
|
|
||||||
|
[[maybe_unused]] Q_INVOKABLE static QJsonArray iconDatas(const QString &keyword = "");
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QQmlEngine *_engine{};
|
QQmlEngine *_engine{};
|
||||||
QTranslator *_translator = nullptr;
|
QTranslator *_translator = nullptr;
|
||||||
|
@ -47,8 +47,8 @@ void FluTheme::refreshColors() {
|
|||||||
fontSecondaryColor(isDark ? QColor(222, 222, 222, 255) : QColor(102, 102, 102, 255));
|
fontSecondaryColor(isDark ? QColor(222, 222, 222, 255) : QColor(102, 102, 102, 255));
|
||||||
fontTertiaryColor(isDark ? QColor(200, 200, 200, 255) : QColor(153, 153, 153, 255));
|
fontTertiaryColor(isDark ? QColor(200, 200, 200, 255) : QColor(153, 153, 153, 255));
|
||||||
itemNormalColor(isDark ? QColor(255, 255, 255, 0) : QColor(0, 0, 0, 0));
|
itemNormalColor(isDark ? QColor(255, 255, 255, 0) : QColor(0, 0, 0, 0));
|
||||||
frameColor(isDark ? QColor(255, 255, 255, qRound(255 * 0.12)) : QColor(0, 0, 0, qRound(255 * 0.09)));
|
frameColor(isDark ? QColor(56, 56, 56, qRound(255 * 0.8)) : QColor(233, 233, 233, qRound(255 * 0.8)));
|
||||||
frameActiveColor(isDark ? QColor(48, 48, 48, qRound(255 * 0.8)) : QColor(255, 255, 255, qRound(255 * 0.6)));
|
frameActiveColor(isDark ? QColor(48, 48, 48, qRound(255 * 0.8)) : QColor(255, 255, 255, qRound(255 * 0.8)));
|
||||||
itemHoverColor(isDark ? QColor(255, 255, 255, qRound(255 * 0.06)) : QColor(0, 0, 0, qRound(255 * 0.03)));
|
itemHoverColor(isDark ? QColor(255, 255, 255, qRound(255 * 0.06)) : QColor(0, 0, 0, qRound(255 * 0.03)));
|
||||||
itemPressColor(isDark ? QColor(255, 255, 255, qRound(255 * 0.09)) : QColor(0, 0, 0, qRound(255 * 0.06)));
|
itemPressColor(isDark ? QColor(255, 255, 255, qRound(255 * 0.09)) : QColor(0, 0, 0, qRound(255 * 0.06)));
|
||||||
itemCheckColor(isDark ? QColor(255, 255, 255, qRound(255 * 0.12)) : QColor(0, 0, 0, qRound(255 * 0.09)));
|
itemCheckColor(isDark ? QColor(255, 255, 255, qRound(255 * 0.12)) : QColor(0, 0, 0, qRound(255 * 0.09)));
|
||||||
@ -64,22 +64,6 @@ bool FluTheme::eventFilter(QObject *, QEvent *event) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
[[maybe_unused]] QJsonArray FluTheme::awesomeList(const QString &keyword) {
|
|
||||||
QJsonArray arr;
|
|
||||||
QMetaEnum enumType = Fluent_Icons::staticMetaObject.enumerator(Fluent_Icons::staticMetaObject.indexOfEnumerator("Fluent_IconType"));
|
|
||||||
for (int i = 0; i <= enumType.keyCount() - 1; ++i) {
|
|
||||||
QString name = enumType.key(i);
|
|
||||||
int icon = enumType.value(i);
|
|
||||||
if (keyword.isEmpty() || name.contains(keyword)) {
|
|
||||||
QJsonObject obj;
|
|
||||||
obj.insert("name", name);
|
|
||||||
obj.insert("icon", icon);
|
|
||||||
arr.append(obj);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return arr;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool FluTheme::dark() const {
|
bool FluTheme::dark() const {
|
||||||
if (_darkMode == FluThemeType::DarkMode::Dark) {
|
if (_darkMode == FluThemeType::DarkMode::Dark) {
|
||||||
return true;
|
return true;
|
||||||
|
@ -60,8 +60,6 @@ protected:
|
|||||||
public:
|
public:
|
||||||
SINGLETON(FluTheme)
|
SINGLETON(FluTheme)
|
||||||
|
|
||||||
[[maybe_unused]] Q_INVOKABLE static QJsonArray awesomeList(const QString &keyword = "");
|
|
||||||
|
|
||||||
Q_SIGNAL void darkChanged();
|
Q_SIGNAL void darkChanged();
|
||||||
|
|
||||||
static FluTheme *create(QQmlEngine *, QJSEngine *) { return getInstance(); }
|
static FluTheme *create(QQmlEngine *, QJSEngine *) { return getInstance(); }
|
||||||
|
@ -8,7 +8,7 @@ Item {
|
|||||||
property real tintOpacity: 0.65
|
property real tintOpacity: 0.65
|
||||||
property real luminosity: 0.01
|
property real luminosity: 0.01
|
||||||
property real noiseOpacity: 0.02
|
property real noiseOpacity: 0.02
|
||||||
property var target
|
property alias target : effect_source.sourceItem
|
||||||
property int blurRadius: 32
|
property int blurRadius: 32
|
||||||
property rect targetRect: Qt.rect(control.x, control.y, control.width,control.height)
|
property rect targetRect: Qt.rect(control.x, control.y, control.width,control.height)
|
||||||
ShaderEffectSource {
|
ShaderEffectSource {
|
||||||
@ -16,7 +16,6 @@ Item {
|
|||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
visible: false
|
visible: false
|
||||||
sourceRect: control.targetRect
|
sourceRect: control.targetRect
|
||||||
sourceItem: control.target
|
|
||||||
}
|
}
|
||||||
FastBlur {
|
FastBlur {
|
||||||
id: fast_blur
|
id: fast_blur
|
||||||
|
@ -44,8 +44,8 @@ T.Menu {
|
|||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
implicitWidth: 150
|
implicitWidth: 150
|
||||||
implicitHeight: 36
|
implicitHeight: 36
|
||||||
color:FluTheme.dark ? Qt.rgba(45/255,45/255,45/255,1) : Qt.rgba(240/255,240/255,240/255,1)
|
color:FluTheme.dark ? Qt.rgba(45/255,45/255,45/255,1) : Qt.rgba(252/255,252/255,252/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.color: FluTheme.dark ? Qt.rgba(26/255,26/255,26/255,1) : Qt.rgba(191/255,191/255,191/255,1)
|
||||||
border.width: 1
|
border.width: 1
|
||||||
radius: 5
|
radius: 5
|
||||||
FluShadow{}
|
FluShadow{}
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
import QtQuick 2.15
|
import QtQuick 2.15
|
||||||
|
import QtQuick.Window 2.15
|
||||||
import QtQuick.Controls 2.15
|
import QtQuick.Controls 2.15
|
||||||
import QtQuick.Layouts 1.15
|
import QtQuick.Layouts 1.15
|
||||||
import Qt.labs.qmlmodels 1.0
|
import Qt.labs.qmlmodels 1.0
|
||||||
@ -17,7 +18,12 @@ Rectangle {
|
|||||||
property color selectedBorderColor: FluTheme.primaryColor
|
property color selectedBorderColor: FluTheme.primaryColor
|
||||||
property color selectedColor: FluTools.withOpacity(FluTheme.primaryColor,0.3)
|
property color selectedColor: FluTools.withOpacity(FluTheme.primaryColor,0.3)
|
||||||
id:control
|
id:control
|
||||||
color: FluTheme.dark ? Qt.rgba(39/255,39/255,39/255,1) : Qt.rgba(251/255,251/255,253/255,1)
|
color: {
|
||||||
|
if(Window.active){
|
||||||
|
return FluTheme.frameActiveColor
|
||||||
|
}
|
||||||
|
return FluTheme.frameColor
|
||||||
|
}
|
||||||
onColumnSourceChanged: {
|
onColumnSourceChanged: {
|
||||||
if(columnSource.length!==0){
|
if(columnSource.length!==0){
|
||||||
var columns= []
|
var columns= []
|
||||||
|
@ -18,21 +18,28 @@ Rectangle {
|
|||||||
property color selectedColor: FluTools.withOpacity(FluTheme.primaryColor,0.3)
|
property color selectedColor: FluTools.withOpacity(FluTheme.primaryColor,0.3)
|
||||||
readonly property alias current: d.current
|
readonly property alias current: d.current
|
||||||
id:control
|
id:control
|
||||||
color: FluTheme.dark ? Qt.rgba(39/255,39/255,39/255,1) : Qt.rgba(251/255,251/255,253/255,1)
|
color: {
|
||||||
|
if(Window.active){
|
||||||
|
return FluTheme.frameActiveColor
|
||||||
|
}
|
||||||
|
return FluTheme.frameColor
|
||||||
|
}
|
||||||
onDataSourceChanged: {
|
onDataSourceChanged: {
|
||||||
tree_model.setDataSource(dataSource)
|
tree_model.setDataSource(dataSource)
|
||||||
}
|
}
|
||||||
onColumnSourceChanged: {
|
onColumnSourceChanged: {
|
||||||
var columns= []
|
if(columnSource.length !== 0){
|
||||||
var headerRow = {}
|
var columns= []
|
||||||
columnSource.forEach(function(item){
|
var headerRow = {}
|
||||||
var column = Qt.createQmlObject('import Qt.labs.qmlmodels 1.0;TableModelColumn{}',control);
|
columnSource.forEach(function(item){
|
||||||
column.display = item.dataIndex
|
var column = Qt.createQmlObject('import Qt.labs.qmlmodels 1.0;TableModelColumn{}',control);
|
||||||
columns.push(column)
|
column.display = item.dataIndex
|
||||||
headerRow[item.dataIndex] = item.title
|
columns.push(column)
|
||||||
})
|
headerRow[item.dataIndex] = item.title
|
||||||
header_column_model.columns = columns
|
})
|
||||||
header_column_model.rows = [headerRow]
|
header_column_model.columns = columns
|
||||||
|
header_column_model.rows = [headerRow]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
FluTreeModel{
|
FluTreeModel{
|
||||||
id:tree_model
|
id:tree_model
|
||||||
|
@ -38,6 +38,12 @@ Module {
|
|||||||
name: "init"
|
name: "init"
|
||||||
Parameter { name: "target"; type: "QObject"; isPointer: true }
|
Parameter { name: "target"; type: "QObject"; isPointer: true }
|
||||||
}
|
}
|
||||||
|
Method {
|
||||||
|
name: "iconDatas"
|
||||||
|
type: "QJsonArray"
|
||||||
|
Parameter { name: "keyword"; type: "string" }
|
||||||
|
}
|
||||||
|
Method { name: "iconDatas"; type: "QJsonArray" }
|
||||||
}
|
}
|
||||||
Component {
|
Component {
|
||||||
name: "FluCalendarViewType"
|
name: "FluCalendarViewType"
|
||||||
@ -133,10 +139,10 @@ Module {
|
|||||||
exports: ["FluentUI/FluFrameless 1.0"]
|
exports: ["FluentUI/FluFrameless 1.0"]
|
||||||
exportMetaObjectRevisions: [0]
|
exportMetaObjectRevisions: [0]
|
||||||
Property { name: "appbar"; type: "QQuickItem"; isPointer: true }
|
Property { name: "appbar"; type: "QQuickItem"; isPointer: true }
|
||||||
Property { name: "topmost"; type: "bool" }
|
|
||||||
Property { name: "maximizeButton"; type: "QQuickItem"; isPointer: true }
|
Property { name: "maximizeButton"; type: "QQuickItem"; isPointer: true }
|
||||||
Property { name: "minimizedButton"; type: "QQuickItem"; isPointer: true }
|
Property { name: "minimizedButton"; type: "QQuickItem"; isPointer: true }
|
||||||
Property { name: "closeButton"; type: "QQuickItem"; isPointer: true }
|
Property { name: "closeButton"; type: "QQuickItem"; isPointer: true }
|
||||||
|
Property { name: "topmost"; type: "bool" }
|
||||||
Property { name: "disabled"; type: "bool" }
|
Property { name: "disabled"; type: "bool" }
|
||||||
Property { name: "fixSize"; type: "bool" }
|
Property { name: "fixSize"; type: "bool" }
|
||||||
Method { name: "showFullScreen" }
|
Method { name: "showFullScreen" }
|
||||||
@ -318,18 +324,16 @@ Module {
|
|||||||
Property { name: "fontSecondaryColor"; type: "QColor" }
|
Property { name: "fontSecondaryColor"; type: "QColor" }
|
||||||
Property { name: "fontTertiaryColor"; type: "QColor" }
|
Property { name: "fontTertiaryColor"; type: "QColor" }
|
||||||
Property { name: "itemNormalColor"; type: "QColor" }
|
Property { name: "itemNormalColor"; type: "QColor" }
|
||||||
|
Property { name: "frameColor"; type: "QColor" }
|
||||||
|
Property { name: "frameActiveColor"; type: "QColor" }
|
||||||
Property { name: "itemHoverColor"; type: "QColor" }
|
Property { name: "itemHoverColor"; type: "QColor" }
|
||||||
Property { name: "itemPressColor"; type: "QColor" }
|
Property { name: "itemPressColor"; type: "QColor" }
|
||||||
Property { name: "itemCheckColor"; type: "QColor" }
|
Property { name: "itemCheckColor"; type: "QColor" }
|
||||||
|
Property { name: "desktopImagePath"; type: "string" }
|
||||||
Property { name: "darkMode"; type: "int" }
|
Property { name: "darkMode"; type: "int" }
|
||||||
Property { name: "nativeText"; type: "bool" }
|
Property { name: "nativeText"; type: "bool" }
|
||||||
Property { name: "animationEnabled"; type: "bool" }
|
Property { name: "animationEnabled"; type: "bool" }
|
||||||
Method {
|
Property { name: "blurBehindWindowEnabled"; type: "bool" }
|
||||||
name: "awesomeList"
|
|
||||||
type: "QJsonArray"
|
|
||||||
Parameter { name: "keyword"; type: "string" }
|
|
||||||
}
|
|
||||||
Method { name: "awesomeList"; type: "QJsonArray" }
|
|
||||||
}
|
}
|
||||||
Component {
|
Component {
|
||||||
name: "FluThemeType"
|
name: "FluThemeType"
|
||||||
@ -480,6 +484,18 @@ Module {
|
|||||||
type: "QRect"
|
type: "QRect"
|
||||||
Parameter { name: "window"; type: "QQuickWindow"; isPointer: true }
|
Parameter { name: "window"; type: "QQuickWindow"; isPointer: true }
|
||||||
}
|
}
|
||||||
|
Method { name: "getWallpaperFilePath"; type: "string" }
|
||||||
|
Method {
|
||||||
|
name: "imageMainColor"
|
||||||
|
type: "QColor"
|
||||||
|
Parameter { name: "image"; type: "QImage" }
|
||||||
|
Parameter { name: "bright"; type: "double" }
|
||||||
|
}
|
||||||
|
Method {
|
||||||
|
name: "imageMainColor"
|
||||||
|
type: "QColor"
|
||||||
|
Parameter { name: "image"; type: "QImage" }
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Component {
|
Component {
|
||||||
name: "FluTreeModel"
|
name: "FluTreeModel"
|
||||||
@ -487,7 +503,6 @@ Module {
|
|||||||
exports: ["FluentUI/FluTreeModel 1.0"]
|
exports: ["FluentUI/FluTreeModel 1.0"]
|
||||||
exportMetaObjectRevisions: [0]
|
exportMetaObjectRevisions: [0]
|
||||||
Property { name: "dataSourceSize"; type: "int" }
|
Property { name: "dataSourceSize"; type: "int" }
|
||||||
Property { name: "selectionModel"; type: "QList<FluTreeNode*>" }
|
|
||||||
Property { name: "columnSource"; type: "QList<QVariantMap>" }
|
Property { name: "columnSource"; type: "QList<QVariantMap>" }
|
||||||
Method {
|
Method {
|
||||||
name: "removeRows"
|
name: "removeRows"
|
||||||
@ -504,6 +519,11 @@ Module {
|
|||||||
type: "QObject*"
|
type: "QObject*"
|
||||||
Parameter { name: "row"; type: "int" }
|
Parameter { name: "row"; type: "int" }
|
||||||
}
|
}
|
||||||
|
Method {
|
||||||
|
name: "setRow"
|
||||||
|
Parameter { name: "row"; type: "int" }
|
||||||
|
Parameter { name: "data"; type: "QVariantMap" }
|
||||||
|
}
|
||||||
Method {
|
Method {
|
||||||
name: "setData"
|
name: "setData"
|
||||||
Parameter { name: "data"; type: "QList<FluTreeNode*>" }
|
Parameter { name: "data"; type: "QList<FluTreeNode*>" }
|
||||||
@ -541,6 +561,7 @@ Module {
|
|||||||
}
|
}
|
||||||
Method { name: "allExpand" }
|
Method { name: "allExpand" }
|
||||||
Method { name: "allCollapse" }
|
Method { name: "allCollapse" }
|
||||||
|
Method { name: "selectionModel"; type: "QVariant" }
|
||||||
}
|
}
|
||||||
Component {
|
Component {
|
||||||
name: "FluTreeViewType"
|
name: "FluTreeViewType"
|
||||||
@ -584,12 +605,12 @@ Module {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
Component {
|
Component {
|
||||||
name: "Fluent_Awesome"
|
name: "Fluent_Icons"
|
||||||
exports: ["FluentUI/FluentIcons 1.0"]
|
exports: ["FluentUI/FluentIcons 1.0"]
|
||||||
isCreatable: false
|
isCreatable: false
|
||||||
exportMetaObjectRevisions: [0]
|
exportMetaObjectRevisions: [0]
|
||||||
Enum {
|
Enum {
|
||||||
name: "Fluent_AwesomeType"
|
name: "Fluent_IconType"
|
||||||
values: {
|
values: {
|
||||||
"GlobalNavButton": 59136,
|
"GlobalNavButton": 59136,
|
||||||
"Wifi": 59137,
|
"Wifi": 59137,
|
||||||
@ -2421,37 +2442,37 @@ Module {
|
|||||||
Property { name: "darkClickListener"; type: "QVariant" }
|
Property { name: "darkClickListener"; type: "QVariant" }
|
||||||
Property {
|
Property {
|
||||||
name: "buttonStayTop"
|
name: "buttonStayTop"
|
||||||
type: "FluIconButton_QMLTYPE_19"
|
type: "FluIconButton_QMLTYPE_20"
|
||||||
isReadonly: true
|
isReadonly: true
|
||||||
isPointer: true
|
isPointer: true
|
||||||
}
|
}
|
||||||
Property {
|
Property {
|
||||||
name: "buttonMinimize"
|
name: "buttonMinimize"
|
||||||
type: "FluIconButton_QMLTYPE_19"
|
type: "FluIconButton_QMLTYPE_20"
|
||||||
isReadonly: true
|
isReadonly: true
|
||||||
isPointer: true
|
isPointer: true
|
||||||
}
|
}
|
||||||
Property {
|
Property {
|
||||||
name: "buttonMaximize"
|
name: "buttonMaximize"
|
||||||
type: "FluIconButton_QMLTYPE_19"
|
type: "FluIconButton_QMLTYPE_20"
|
||||||
isReadonly: true
|
isReadonly: true
|
||||||
isPointer: true
|
isPointer: true
|
||||||
}
|
}
|
||||||
Property {
|
Property {
|
||||||
name: "buttonClose"
|
name: "buttonClose"
|
||||||
type: "FluIconButton_QMLTYPE_19"
|
type: "FluIconButton_QMLTYPE_20"
|
||||||
isReadonly: true
|
isReadonly: true
|
||||||
isPointer: true
|
isPointer: true
|
||||||
}
|
}
|
||||||
Property {
|
Property {
|
||||||
name: "buttonDark"
|
name: "buttonDark"
|
||||||
type: "FluIconButton_QMLTYPE_19"
|
type: "FluIconButton_QMLTYPE_20"
|
||||||
isReadonly: true
|
isReadonly: true
|
||||||
isPointer: true
|
isPointer: true
|
||||||
}
|
}
|
||||||
Property {
|
Property {
|
||||||
name: "layoutMacosButtons"
|
name: "layoutMacosButtons"
|
||||||
type: "FluLoader_QMLTYPE_12"
|
type: "FluLoader_QMLTYPE_14"
|
||||||
isReadonly: true
|
isReadonly: true
|
||||||
isPointer: true
|
isPointer: true
|
||||||
}
|
}
|
||||||
@ -3148,8 +3169,8 @@ Module {
|
|||||||
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_42"; isPointer: true }
|
Property { name: "navItemRightMenu"; type: "FluMenu_QMLTYPE_33"; isPointer: true }
|
||||||
Property { name: "navItemExpanderRightMenu"; type: "FluMenu_QMLTYPE_42"; isPointer: true }
|
Property { name: "navItemExpanderRightMenu"; type: "FluMenu_QMLTYPE_33"; 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" }
|
||||||
@ -3157,13 +3178,13 @@ Module {
|
|||||||
Property { name: "hideNavAppBar"; type: "bool" }
|
Property { name: "hideNavAppBar"; type: "bool" }
|
||||||
Property {
|
Property {
|
||||||
name: "buttonMenu"
|
name: "buttonMenu"
|
||||||
type: "FluIconButton_QMLTYPE_19"
|
type: "FluIconButton_QMLTYPE_20"
|
||||||
isReadonly: true
|
isReadonly: true
|
||||||
isPointer: true
|
isPointer: true
|
||||||
}
|
}
|
||||||
Property {
|
Property {
|
||||||
name: "buttonBack"
|
name: "buttonBack"
|
||||||
type: "FluIconButton_QMLTYPE_19"
|
type: "FluIconButton_QMLTYPE_20"
|
||||||
isReadonly: true
|
isReadonly: true
|
||||||
isPointer: true
|
isPointer: true
|
||||||
}
|
}
|
||||||
@ -3975,21 +3996,23 @@ Module {
|
|||||||
Property { name: "previousText"; type: "string" }
|
Property { name: "previousText"; type: "string" }
|
||||||
}
|
}
|
||||||
Component {
|
Component {
|
||||||
prototype: "QQuickItem"
|
prototype: "QQuickRectangle"
|
||||||
name: "FluentUI/FluTreeView 1.0"
|
name: "FluentUI/FluTreeView 1.0"
|
||||||
exports: ["FluentUI/FluTreeView 1.0"]
|
exports: ["FluentUI/FluTreeView 1.0"]
|
||||||
exportMetaObjectRevisions: [0]
|
exportMetaObjectRevisions: [0]
|
||||||
isComposite: true
|
isComposite: true
|
||||||
defaultProperty: "data"
|
defaultProperty: "data"
|
||||||
Property { name: "currentIndex"; type: "int" }
|
|
||||||
Property { name: "dataSource"; type: "QVariant" }
|
Property { name: "dataSource"; type: "QVariant" }
|
||||||
|
Property { name: "columnSource"; type: "QVariant" }
|
||||||
Property { name: "showLine"; type: "bool" }
|
Property { name: "showLine"; type: "bool" }
|
||||||
Property { name: "draggable"; type: "bool" }
|
|
||||||
Property { name: "cellHeight"; type: "int" }
|
Property { name: "cellHeight"; type: "int" }
|
||||||
Property { name: "depthPadding"; type: "int" }
|
Property { name: "depthPadding"; type: "int" }
|
||||||
Property { name: "checkable"; type: "bool" }
|
Property { name: "checkable"; type: "bool" }
|
||||||
Property { name: "lineColor"; type: "QColor" }
|
Property { name: "lineColor"; type: "QColor" }
|
||||||
Method { name: "selectionModel"; type: "QVariant" }
|
Property { name: "borderColor"; type: "QColor" }
|
||||||
|
Property { name: "selectedBorderColor"; type: "QColor" }
|
||||||
|
Property { name: "selectedColor"; type: "QColor" }
|
||||||
|
Property { name: "current"; type: "QVariant"; isReadonly: true }
|
||||||
Method { name: "count"; type: "QVariant" }
|
Method { name: "count"; type: "QVariant" }
|
||||||
Method { name: "visibleCount"; type: "QVariant" }
|
Method { name: "visibleCount"; type: "QVariant" }
|
||||||
Method {
|
Method {
|
||||||
@ -4004,6 +4027,14 @@ Module {
|
|||||||
}
|
}
|
||||||
Method { name: "allExpand"; type: "QVariant" }
|
Method { name: "allExpand"; type: "QVariant" }
|
||||||
Method { name: "allCollapse"; type: "QVariant" }
|
Method { name: "allCollapse"; type: "QVariant" }
|
||||||
|
Method {
|
||||||
|
name: "customItem"
|
||||||
|
type: "QVariant"
|
||||||
|
Parameter { name: "comId"; type: "QVariant" }
|
||||||
|
Parameter { name: "options"; type: "QVariant" }
|
||||||
|
}
|
||||||
|
Method { name: "closeEditor"; type: "QVariant" }
|
||||||
|
Method { name: "selectionModel"; type: "QVariant" }
|
||||||
}
|
}
|
||||||
Component {
|
Component {
|
||||||
prototype: "QQuickWindowQmlImpl"
|
prototype: "QQuickWindowQmlImpl"
|
||||||
|
@ -44,8 +44,8 @@ T.Menu {
|
|||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
implicitWidth: 150
|
implicitWidth: 150
|
||||||
implicitHeight: 36
|
implicitHeight: 36
|
||||||
color:FluTheme.dark ? Qt.rgba(45/255,45/255,45/255,1) : Qt.rgba(240/255,240/255,240/255,1)
|
color:FluTheme.dark ? Qt.rgba(45/255,45/255,45/255,1) : Qt.rgba(252/255,252/255,252/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.color: FluTheme.dark ? Qt.rgba(26/255,26/255,26/255,1) : Qt.rgba(191/255,191/255,191/255,1)
|
||||||
border.width: 1
|
border.width: 1
|
||||||
radius: 5
|
radius: 5
|
||||||
FluShadow{}
|
FluShadow{}
|
||||||
|
@ -18,7 +18,12 @@ Rectangle {
|
|||||||
property color selectedBorderColor: FluTheme.primaryColor
|
property color selectedBorderColor: FluTheme.primaryColor
|
||||||
property color selectedColor: FluTools.withOpacity(FluTheme.primaryColor,0.3)
|
property color selectedColor: FluTools.withOpacity(FluTheme.primaryColor,0.3)
|
||||||
id:control
|
id:control
|
||||||
color: FluTheme.dark ? Qt.rgba(39/255,39/255,39/255,1) : Qt.rgba(251/255,251/255,253/255,1)
|
color: {
|
||||||
|
if(Window.active){
|
||||||
|
return FluTheme.frameActiveColor
|
||||||
|
}
|
||||||
|
return FluTheme.frameColor
|
||||||
|
}
|
||||||
onColumnSourceChanged: {
|
onColumnSourceChanged: {
|
||||||
if(columnSource.length!==0){
|
if(columnSource.length!==0){
|
||||||
var columns= []
|
var columns= []
|
||||||
|
@ -18,7 +18,12 @@ Rectangle {
|
|||||||
property color selectedColor: FluTools.withOpacity(FluTheme.primaryColor,0.3)
|
property color selectedColor: FluTools.withOpacity(FluTheme.primaryColor,0.3)
|
||||||
readonly property alias current: d.current
|
readonly property alias current: d.current
|
||||||
id:control
|
id:control
|
||||||
color: FluTheme.dark ? Qt.rgba(39/255,39/255,39/255,1) : Qt.rgba(251/255,251/255,253/255,1)
|
color: {
|
||||||
|
if(Window.active){
|
||||||
|
return FluTheme.frameActiveColor
|
||||||
|
}
|
||||||
|
return FluTheme.frameColor
|
||||||
|
}
|
||||||
onDataSourceChanged: {
|
onDataSourceChanged: {
|
||||||
tree_model.setDataSource(dataSource)
|
tree_model.setDataSource(dataSource)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user