// This file is part of Friendiqa // https://git.friendi.ca/lubuwest/Friendiqa // Copyright (C) 2020 Marco R. // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // In addition, as a special exception, the copyright holders give // permission to link the code of portions of this program with the // OpenSSL library under certain conditions as described in each // individual source file, and distribute linked combinations including // the two. // // You must obey the GNU General Public License in all respects for all // of the code used other than OpenSSL. If you modify file(s) with this // exception, you may extend this exception to your version of the // file(s), but you are not obligated to do so. If you do not wish to do // so, delete this exception statement from your version. If you delete // this exception statement from all source files in the program, then // also delete it here. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see . import QtQuick 2.11 import QtQuick.Dialogs 1.2 import QtQuick.Controls 2.12 import "qrc:/js/service.js" as Service import "qrc:/qml/configqml" import "qrc:/qml/genericqml" Page{ //anchors.fill: parent width:root.width height:root.height Rectangle{ x: 4*mm; y:13.5*mm; width: parent.width - 14*mm; height: 5*mm; color:"light grey" radius: 0.5*mm Text{ anchors.fill: parent font.pixelSize:3*mm text:qsTr("Sync") } MouseArea{ anchors.fill:parent onClicked:root.push("qrc:qml/configqml/SyncConfig.qml"); } } Text { text: qsTr("News as") font.pixelSize:3*mm x: 4*mm; y: 20*mm } Rectangle{ x: 4*mm; y: 23.5*mm; width: newsTypeField.contentWidth+2*mm; height: 5*mm; color:"light grey" radius: 0.5*mm Text{ id: newsTypeField anchors.fill: parent font.pixelSize:3*mm text:qsTr("Conversations") } MouseArea{ anchors.fill:parent onClicked:newstypemenu.popup() } } Menu { id:newstypemenu MenuItem { font.pixelSize: 3*mm text: qsTr("Timeline") onTriggered: {newsTypeField.text=qsTr("Timeline"); Service.updateglobaloptions(root.db,"newsViewType","Timeline");} } MenuItem { font.pixelSize: 3*mm text: qsTr("Conversations") onTriggered: {newsTypeField.text=qsTr("Conversations"); Service.updateglobaloptions(root.db,"newsViewType","Conversations");} } } Text { text: qsTr("Max. News") font.pixelSize:3*mm x: 4*mm; y:30*mm } Slider{ id: maxNews x:19*mm; y: 33.5*mm;width: root.width/2;height:5*mm from: 0;to:2000; stepSize: 100 value: root.globaloptions.hasOwnProperty("max_news")?root.globaloptions.max_news:1000 } Rectangle{color: "light grey"; x: 4*mm; y: 33.5*mm; width: 9*mm; height: 5*mm; radius: 0.5*mm TextEdit{id:maxNewsText; anchors.fill: parent font.pixelSize:3*mm verticalAlignment:TextEdit.AlignRight text:maxNews.value selectByMouse: true onTextChanged: { Service.updateglobaloptions(root.db,"max_news",text); } } } CheckBox{ id: nsfwCheckbox x: 4*mm y: 43.5*mm font.pixelSize: 3*mm //width:5*mm text: qsTr("Hide #nsfw?") checked:(globaloptions["hide_nsfw"]==1)?true:false onClicked: { toggle(); if(nsfwCheckbox.checked==true){ Service.updateglobaloptions(root.db,"hide_nsfw",0);nsfwCheckbox.checked=false; } else{ Service.updateglobaloptions(root.db,"hide_nsfw",1);nsfwCheckbox.checked=true; } } } MButton { anchors.right: closeButton.left; anchors.rightMargin: mm; anchors.top: parent.top anchors.topMargin: 1*mm width: 8*mm; height: 6*mm; text: "?" font.pixelSize: 3*mm onClicked:{ root.push("qrc:/qml/configqml/InfoBox.qml"); } } MButton{ id:closeButton height: 6*mm width :8*mm anchors.top: parent.top anchors.topMargin: 1*mm anchors.right: parent.right anchors.rightMargin: 1*mm text: "\uf057" font.pixelSize: 3*mm onClicked:{root.pop()} } }