解决了ContentPage不显示视频播放器的问题
parent
9ced807900
commit
9c5d8115cb
|
@ -4,7 +4,6 @@ import QtQuick.Controls
|
||||||
import QtQuick.Window
|
import QtQuick.Window
|
||||||
import QtQuick.Layouts
|
import QtQuick.Layouts
|
||||||
import org.wangwenx190.FramelessHelper
|
import org.wangwenx190.FramelessHelper
|
||||||
import AicsKB.HttpClient
|
|
||||||
import "qrc:///AicsKnowledgeBase/qml/global"
|
import "qrc:///AicsKnowledgeBase/qml/global"
|
||||||
|
|
||||||
AppFluWindow {
|
AppFluWindow {
|
||||||
|
@ -109,8 +108,8 @@ AppFluWindow {
|
||||||
}, function (p1, p2) {
|
}, function (p1, p2) {
|
||||||
console.log(p1)
|
console.log(p1)
|
||||||
console.log(p2)
|
console.log(p2)
|
||||||
//FluApp.navigate("/");
|
FluApp.navigate("/")
|
||||||
//window.close();
|
window.close()
|
||||||
btn_login.disabled = false
|
btn_login.disabled = false
|
||||||
btn_login.text = "登录"
|
btn_login.text = "登录"
|
||||||
})
|
})
|
||||||
|
|
|
@ -5,6 +5,7 @@ import QtQuick.Layouts
|
||||||
import FluentUI
|
import FluentUI
|
||||||
|
|
||||||
Rectangle {
|
Rectangle {
|
||||||
|
property string username: "用户名"
|
||||||
property string title: ""
|
property string title: ""
|
||||||
property string darkText: "夜间模式"
|
property string darkText: "夜间模式"
|
||||||
property string minimizeText: "最小化"
|
property string minimizeText: "最小化"
|
||||||
|
@ -113,16 +114,25 @@ Rectangle {
|
||||||
Layout.margins: {
|
Layout.margins: {
|
||||||
right: 10
|
right: 10
|
||||||
}
|
}
|
||||||
text: "用户名"
|
text: username
|
||||||
}
|
}
|
||||||
|
|
||||||
Rectangle {
|
Item {
|
||||||
Layout.rightMargin: 10
|
Layout.rightMargin: 10
|
||||||
color: FluColors.White
|
|
||||||
radius: 50
|
|
||||||
width: 32
|
width: 32
|
||||||
height: 32
|
height: 32
|
||||||
|
Rectangle {
|
||||||
|
anchors.fill: parent
|
||||||
|
color: "#d2d2d2"
|
||||||
|
radius: 50
|
||||||
|
}
|
||||||
|
Text {
|
||||||
|
anchors.centerIn: parent
|
||||||
|
text: username[0]
|
||||||
|
color: "#8a8a8a"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
RowLayout {
|
RowLayout {
|
||||||
Layout.alignment: Qt.AlignVCenter
|
Layout.alignment: Qt.AlignVCenter
|
||||||
Layout.rightMargin: 5
|
Layout.rightMargin: 5
|
||||||
|
|
|
@ -23,6 +23,7 @@ Popup {
|
||||||
{
|
{
|
||||||
id: itemModel
|
id: itemModel
|
||||||
ListElement {
|
ListElement {
|
||||||
|
|
||||||
name: "Apple"
|
name: "Apple"
|
||||||
progressValue: 0.1
|
progressValue: 0.1
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,7 +5,7 @@ import QtQuick
|
||||||
QtObject {
|
QtObject {
|
||||||
id: request
|
id: request
|
||||||
|
|
||||||
property string baseUrl: "http://127.0.0.1:4523/m1/2914957-0-default/"
|
property string baseUrl: "http://127.0.0.1:4523/m1/2914957-0-5604d062/"
|
||||||
//property string baseUrl: "http://192.168.156.74:8080/"
|
//property string baseUrl: "http://192.168.156.74:8080/"
|
||||||
|
|
||||||
// GET
|
// GET
|
||||||
|
|
|
@ -10,7 +10,7 @@ FluArea {
|
||||||
id: content_area
|
id: content_area
|
||||||
paddings: 0
|
paddings: 0
|
||||||
backgroundColor: "#f9f9f9"
|
backgroundColor: "#f9f9f9"
|
||||||
property string type: null
|
property string type: ""
|
||||||
property int knowledgeFileId
|
property int knowledgeFileId
|
||||||
signal download(string knowledgeFileId)
|
signal download(string knowledgeFileId)
|
||||||
signal clickTags(string tagName)
|
signal clickTags(string tagName)
|
||||||
|
@ -42,14 +42,14 @@ FluArea {
|
||||||
property string brief: "这是一个简介"
|
property string brief: "这是一个简介"
|
||||||
|
|
||||||
Component.onCompleted: {
|
Component.onCompleted: {
|
||||||
if(content_area.type == "video") {
|
console.log(content_area.type)
|
||||||
|
if (content_area.type == "video") {
|
||||||
content_view.sourceComponent = video_view
|
content_view.sourceComponent = video_view
|
||||||
} else if(content_area.type == "md") {
|
} else if (content_area.type == "md") {
|
||||||
content_view.sourceComponent = text_view
|
content_view.sourceComponent = text_view
|
||||||
} else {
|
} else {
|
||||||
content_view.sourceComponent = other_view
|
content_view.sourceComponent = other_view
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Item {
|
Item {
|
||||||
|
@ -133,7 +133,7 @@ FluArea {
|
||||||
rightMargin: 20
|
rightMargin: 20
|
||||||
}
|
}
|
||||||
onClicked: {
|
onClicked: {
|
||||||
emit: content_area.download(content_area.knowledgeFileId);
|
emit: content_area.download(content_area.knowledgeFileId)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,6 +148,7 @@ FluArea {
|
||||||
id: video_view
|
id: video_view
|
||||||
FluMediaPlayer {
|
FluMediaPlayer {
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
|
implicitHeight: 270
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Component {
|
Component {
|
||||||
|
@ -224,7 +225,7 @@ FluArea {
|
||||||
id: text_note
|
id: text_note
|
||||||
text: "笔记"
|
text: "笔记"
|
||||||
padding: 10
|
padding: 10
|
||||||
font{
|
font {
|
||||||
pointSize: 15
|
pointSize: 15
|
||||||
bold: true
|
bold: true
|
||||||
}
|
}
|
||||||
|
@ -234,14 +235,11 @@ FluArea {
|
||||||
text: "发布笔记"
|
text: "发布笔记"
|
||||||
hoverColor: "blue"
|
hoverColor: "blue"
|
||||||
normalColor: "black"
|
normalColor: "black"
|
||||||
anchors{
|
anchors {
|
||||||
verticalCenter: text_note.verticalCenter
|
verticalCenter: text_note.verticalCenter
|
||||||
right: parent.right
|
right: parent.right
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,9 @@ import QtQuick.Layouts
|
||||||
import QtQuick.Window
|
import QtQuick.Window
|
||||||
import QtQuick.Controls
|
import QtQuick.Controls
|
||||||
import QtQuick.Controls.Basic
|
import QtQuick.Controls.Basic
|
||||||
|
import QtQuick.Dialogs
|
||||||
import FluentUI
|
import FluentUI
|
||||||
|
import AicsKB.FileTransferManager
|
||||||
import "qrc:///AicsKnowledgeBase/qml/component"
|
import "qrc:///AicsKnowledgeBase/qml/component"
|
||||||
|
|
||||||
FluArea {
|
FluArea {
|
||||||
|
@ -22,6 +24,17 @@ FluArea {
|
||||||
|
|
||||||
FluButton {
|
FluButton {
|
||||||
text: "上传"
|
text: "上传"
|
||||||
|
onClicked: function () {
|
||||||
|
console.log("click")
|
||||||
|
fileDialog.open()
|
||||||
|
}
|
||||||
|
|
||||||
|
FileDialog {
|
||||||
|
id: fileDialog
|
||||||
|
onAccepted: function () {
|
||||||
|
FileTransferManager.upload(selectedFile)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
FileList {}
|
FileList {}
|
||||||
|
|
|
@ -3,8 +3,49 @@
|
||||||
//
|
//
|
||||||
|
|
||||||
#include "FileTransferManager.h"
|
#include "FileTransferManager.h"
|
||||||
|
#include <QDebug>
|
||||||
|
#include <curl/curl.h>
|
||||||
|
|
||||||
FileTransferManager::FileTransferManager(QObject *parent) : QObject(parent)
|
FileTransferManager::FileTransferManager(QObject *parent) : QObject(parent)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void FileTransferManager::upload(QUrl fileUrl)
|
||||||
|
{
|
||||||
|
qDebug() << fileUrl.fileName();
|
||||||
|
|
||||||
|
|
||||||
|
CURL *curl;
|
||||||
|
CURLcode res;
|
||||||
|
curl = curl_easy_init();
|
||||||
|
if(curl) {
|
||||||
|
curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST");
|
||||||
|
curl_easy_setopt(curl, CURLOPT_URL, "http://127.0.0.1:4523/m1/2914957-0-default/");
|
||||||
|
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
|
||||||
|
curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https");
|
||||||
|
struct curl_slist *headers = NULL;
|
||||||
|
headers = curl_slist_append(headers, "User-Agent: Apifox/1.0.0 (https://apifox.com)");
|
||||||
|
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
|
||||||
|
curl_mime *mime;
|
||||||
|
curl_mimepart *part;
|
||||||
|
mime = curl_mime_init(curl);
|
||||||
|
part = curl_mime_addpart(mime);
|
||||||
|
curl_mime_name(part, "ticket");
|
||||||
|
curl_mime_data(part, "<ticket>", CURL_ZERO_TERMINATED);
|
||||||
|
part = curl_mime_addpart(mime);
|
||||||
|
curl_mime_name(part, "rangeStart");
|
||||||
|
curl_mime_data(part, "<rangeStart>", CURL_ZERO_TERMINATED);
|
||||||
|
part = curl_mime_addpart(mime);
|
||||||
|
curl_mime_name(part, "rangeEnd");
|
||||||
|
curl_mime_data(part, "<rangeEnd>", CURL_ZERO_TERMINATED);
|
||||||
|
part = curl_mime_addpart(mime);
|
||||||
|
curl_mime_name(part, "data");
|
||||||
|
curl_mime_filedata(part, "<data>");
|
||||||
|
curl_easy_setopt(curl, CURLOPT_MIMEPOST, mime);
|
||||||
|
res = curl_easy_perform(curl);
|
||||||
|
curl_mime_free(mime);
|
||||||
|
}
|
||||||
|
curl_easy_cleanup(curl);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -7,12 +7,14 @@
|
||||||
|
|
||||||
|
|
||||||
#include <QObject>
|
#include <QObject>
|
||||||
|
#include <QUrl>
|
||||||
|
|
||||||
class FileTransferManager: public QObject
|
class FileTransferManager: public QObject
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
explicit FileTransferManager(QObject *parent = nullptr);
|
explicit FileTransferManager(QObject *parent = nullptr);
|
||||||
|
Q_INVOKABLE void upload(QUrl fileUrl);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue