From 7c327967123040d4e54515ec44e4ad4138338e78 Mon Sep 17 00:00:00 2001 From: darklithium Date: Wed, 3 Jun 2026 00:12:27 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20SettingsPage=20import=20und=20Python-ID-?= =?UTF-8?q?Kollision=20beheben=20-=20Import=20'.'=20hinzugef=C3=BCgt,=20um?= =?UTF-8?q?=20SettingsPage.qml=20in=20Main.qml=20verf=C3=BCgbar=20zu=20mac?= =?UTF-8?q?hen=20-=20Doppelte=20Python-Definition=20aus=20SettingsPage.qml?= =?UTF-8?q?=20entfernt=20(verwendet=20py=20von=20Main.qml)=20-=20Settings.?= =?UTF-8?q?qml=20durch=20SettingsPage.qml=20ersetzt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe --- qml/Main.qml | 14 ++--------- qml/{Settings.qml => SettingsPage.qml} | 32 +++----------------------- 2 files changed, 5 insertions(+), 41 deletions(-) rename qml/{Settings.qml => SettingsPage.qml} (81%) diff --git a/qml/Main.qml b/qml/Main.qml index d36a7d9..b2fb453 100644 --- a/qml/Main.qml +++ b/qml/Main.qml @@ -4,6 +4,7 @@ import QtMultimedia 5.0 import Lomiri.Components 1.3 import Lomiri.Components.Popups 1.3 import io.thp.pyotherside 1.4 +import "." MainView { id: root @@ -20,10 +21,6 @@ MainView { property bool musicPlaying: false property bool appInitialized: false - // Medien-Player als globale Properties für Zugriff aus Settings - property MediaPlayer globalMediaPlayer: mediaPlayer - property MediaPlayer globalCrackPlayer: crackMediaPlayer - Python { id: py Component.onCompleted: { @@ -55,10 +52,6 @@ MainView { anchors.fill: parent currentIndex: 0 - // Medien-Player für Settings zugänglich machen - property MediaPlayer stackMediaPlayer: root.globalMediaPlayer - property MediaPlayer stackCrackPlayer: root.globalCrackPlayer - // ================================================================ // SEITE 0: HAUPTSPIELBILDSCHIRM // ================================================================ @@ -241,11 +234,8 @@ MainView { // ================================================================ // SEITE 1: EINSTELLUNGEN // ================================================================ - Settings { + SettingsPage { id: settingsPage - // Zugriff auf Medien-Player ueber parent - property MediaPlayer settingsMediaPlayer: mainStack.stackMediaPlayer - property MediaPlayer settingsCrackPlayer: mainStack.stackCrackPlayer } } } diff --git a/qml/Settings.qml b/qml/SettingsPage.qml similarity index 81% rename from qml/Settings.qml rename to qml/SettingsPage.qml index 044cf8a..2e44658 100644 --- a/qml/Settings.qml +++ b/qml/SettingsPage.qml @@ -1,6 +1,7 @@ import QtQuick 2.7 import QtQuick.Controls 2.4 import QtQuick.Layouts 1.3 +import QtMultimedia 5.0 import Lomiri.Components 1.3 import Lomiri.Components.Popups 1.3 import io.thp.pyotherside 1.4 @@ -37,13 +38,11 @@ Page { // Spruchlisten ComboBox füllen var lists = py.call_sync("fortunecookie.get_fortune_lists", []); - for (var i = 0; i < lists.length; i++) { - fortuneListCombo.model.append(lists[i]); - } + fortuneListCombo.model = lists; // Aktuelle Liste auswählen for (var i = 0; i < fortuneListCombo.count; i++) { - if (fortuneListCombo.itemAt(i) === currentFortuneList) { + if (fortuneListCombo.textAt(i) === currentFortuneList) { fortuneListCombo.currentIndex = i; break; } @@ -57,16 +56,6 @@ Page { } } - Python { - id: py - Component.onCompleted: { - addImportPath(Qt.resolvedUrl("../src")); - importModule("fortunecookie", function() { - console.log("Python-Modul in Settings geladen"); - }); - } - } - ColumnLayout { anchors.fill: parent anchors.margins: units.gu(2) @@ -86,7 +75,6 @@ Page { id: fortuneListCombo Layout.fillWidth: true Layout.preferredHeight: units.gu(8) - fontSize: "medium" onActivated: { var newList = fortuneListCombo.currentText; @@ -121,13 +109,6 @@ Page { onMoved: { var volume = musicVolumeSlider.value; py.call("fortunecookie.set_music_volume", [volume]); - // Aktualisiere MediaPlayer ueber parent - if (parent && parent.parent && parent.parent.parent) { - var mainView = parent.parent.parent; - if (mainView && mainView.globalMediaPlayer) { - mainView.globalMediaPlayer.volume = volume; - } - } musicVolumeLabel.text = Math.round(volume * 100) + "%"; } } @@ -166,13 +147,6 @@ Page { onMoved: { var volume = crackVolumeSlider.value; py.call("fortunecookie.set_crack_volume", [volume]); - // Aktualisiere MediaPlayer ueber parent - if (parent && parent.parent && parent.parent.parent) { - var mainView = parent.parent.parent; - if (mainView && mainView.globalCrackPlayer) { - mainView.globalCrackPlayer.volume = volume; - } - } crackVolumeLabel.text = Math.round(volume * 100) + "%"; } }