Browse Source

Working RSS news

Signed-off-by: Blagovest Petrov <blagovest@petrovs.info>
qt6
Blagovest Petrov 1 year ago
parent
commit
a153e53584
  1. 1
      CMakeLists.txt
  2. 6
      ui/AudioPlayer.qml
  3. 28
      ui/MenuToolbar.qml
  4. 55
      ui/PgNews.qml
  5. 29
      ui/main.qml

1
CMakeLists.txt

@ -57,6 +57,7 @@ qt_add_qml_module(apptangraplay
ui/MenuToolbar.qml
ui/PgLive.qml
ui/PgNews.qml
ui/NewsDelegate.qml
RESOURCES
${QML_ASSETS}
)

6
ui/AudioPlayer.qml

@ -2,12 +2,6 @@ import QtQuick 2.0
import QtMultimedia
MediaPlayer {
property variant quality: {
"low" : "http://stream-bg-01.radiotangra.com/Tangra-middle.m3u",
"high" : "http://stream-bg-01.radiotangra.com/Tangra-high.m3u"
}
audioOutput: AudioOutput {}
source: "http://stream-bg-01.radiotangra.com:8000/Tangra-high"
}

28
ui/MenuToolbar.qml

@ -17,13 +17,13 @@ Item {
MouseArea {
anchors.fill: parent;
property string clickPos: "1,1"
property variant clickPos: "1,1"
onPressed: {
clickPos = Qt.point(mouse.x,mouse.y)
onPressed: (mouse)=> {
clickPos = Qt.point(mouse.x, mouse.y)
}
onPositionChanged: {
onPositionChanged: (mouse)=> {
var delta = Qt.point(mouse.x-clickPos.x, mouse.y-clickPos.y)
var new_x = mainWindow.x + delta.x
var new_y = mainWindow.y + delta.y
@ -75,9 +75,23 @@ Item {
anchors.fill: parent
hoverEnabled: true
onClicked: {
pgLive1.visible = false;
pgnews1.visible = true;
// contentLoader.sourceComponent = PgNews
mainStack.push(stackLive)
}
}
}
Image {
id: buttonNews
source: "qrc:/bpetrov.tangraplay/imports/TangraPlay/Assets/news.png"
anchors.left: buttonLive.left
anchors.leftMargin: 128
width: 32
height: 32
MouseArea {
anchors.fill: parent
hoverEnabled: true
onClicked: {
mainStack.push(stackNews)
}
}
}

55
ui/PgNews.qml

@ -1,38 +1,35 @@
import QtQuick 2.12
import QtQuick.Window 2.12
import Qt.labs.platform 1.1
import QtMultimedia 5.15
import QtQuick
import QtQuick.Controls
import QtQml.XmlListModel
Item {
x: 190
y: 51
Row {
id: row
x: 8
y: 50
width: 624
height: 400
spacing: 2
Text {
id: text1
x: 61
y: 50
text: qsTr("Гледайте първо видео от новия албум на GOJIRA - той излиза на 3 април")
font.pixelSize: 12
font.family: mainfont.name
}
Text {
id: text2
x: 61
y: 50
text: qsTr("Историята на BLONDIE в предаването 'РОКЕНДРОЛ' на МОНИ ПАНЧЕВ от 16:00")
font.pixelSize: 12
font.family: mainfont.name
}
}
XmlListModel {
id: newsModel
source: "http://www.radiotangra.com/news/rss.html"
query: "/rss/channel/item"
XmlListModelRole { name: "title"; elementName: "title"; attributeName: ""}
XmlListModelRole { name: "link"; elementName: "link"; attributeName: "" }
}
ListView {
id: newsList
anchors.fill: parent
anchors.topMargin: 38
anchors.leftMargin: 39
anchors.rightMargin: 27
anchors.bottomMargin: 17
model: newsModel
delegate: NewsDelegate {}
ScrollBar.vertical: ScrollBar {
policy: ScrollBar.AlwaysOn
}
}
}

29
ui/main.qml

@ -1,10 +1,10 @@
import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Controls
import QtQuick.Layouts
import Qt.labs.platform 1.1
import QtMultimedia 5.15
//import TangraPlay
import QtMultimedia
Window {
ApplicationWindow {
title: qsTr("Tangra Mega Rock")
id: mainWindow
visible: true
@ -14,9 +14,10 @@ Window {
maximumHeight: 480
flags: Qt.FramelessWindowHint
// FontLoader { id: mainfont; source: "../Resources/KellySlab-Regular.ttf" }
FontLoader { id: mainfont; source: "qrc:/bpetrov.tangraplay/imports/TangraPlay/Assets/KellySlab-Regular.ttf" }
header: MenuToolbar {}
Connections {
target: tangraTray
@ -56,11 +57,23 @@ Window {
fillMode: Image.Tile
source: "qrc:/bpetrov.tangraplay/imports/TangraPlay/Assets/dark_leather.png"
MenuToolbar {}
PgLive {
id: pgLive1
StackView {
id: mainStack
initialItem: stackLive
anchors.fill: parent
}
Component {
id: stackLive
PgLive { id: pgLive }
}
Component {
id: stackNews
PgNews { id: pgNews }
}
// PgNews {
// id: pgNews1
// visible: false

Loading…
Cancel
Save