90 lines
2.7 KiB
QML
90 lines
2.7 KiB
QML
|
/*
|
||
|
* WallaRead - A Wallabag 2+ client for SailfishOS
|
||
|
* © 2017 Grégory Oestreicher <greg@kamago.net>
|
||
|
*
|
||
|
* This file is part of WallaRead.
|
||
|
*
|
||
|
* WallaRead 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.
|
||
|
*
|
||
|
* WallaRead 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 WallaRead. If not, see <http://www.gnu.org/licenses/>.
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
import QtQuick 2.0
|
||
|
import Sailfish.Silica 1.0
|
||
|
|
||
|
import "../js/WallaBase.js" as WallaBase
|
||
|
|
||
|
Dialog {
|
||
|
id: serverSortDialog
|
||
|
allowedOrientations: Orientation.All
|
||
|
canAccept: true
|
||
|
|
||
|
property variant preferences
|
||
|
|
||
|
Component.onCompleted: {
|
||
|
if ( preferences.sortOrder === WallaBase.ArticlesSort.Created )
|
||
|
sortComboBox.currentIndex = 0
|
||
|
else if ( preferences.sortOrder === WallaBase.ArticlesSort.Updated )
|
||
|
sortComboBox.currentIndex = 1
|
||
|
else if ( preferences.sortOrder === WallaBase.ArticlesSort.Domain )
|
||
|
sortComboBox.currentIndex = 2
|
||
|
}
|
||
|
|
||
|
onDone: {
|
||
|
if ( result === DialogResult.Accepted ) {
|
||
|
if ( sortComboBox.currentItem.text === "Created" )
|
||
|
preferences.sortOrder = WallaBase.ArticlesSort.Created
|
||
|
else if ( sortComboBox.currentItem.text === "Updated" )
|
||
|
preferences.sortOrder = WallaBase.ArticlesSort.Updated
|
||
|
else if ( sortComboBox.currentItem.text === "Domain" )
|
||
|
preferences.sortOrder = WallaBase.ArticlesSort.Domain
|
||
|
|
||
|
preferences.sortAsc = sortAscSwitch.checked
|
||
|
}
|
||
|
}
|
||
|
|
||
|
SilicaFlickable {
|
||
|
anchors.fill: parent
|
||
|
contentHeight: column.height
|
||
|
width: parent.width
|
||
|
|
||
|
Column {
|
||
|
id: column
|
||
|
width: parent.width
|
||
|
|
||
|
DialogHeader {
|
||
|
acceptText: qsTr( "Sort view" )
|
||
|
}
|
||
|
|
||
|
ComboBox {
|
||
|
id: sortComboBox
|
||
|
width: parent.width
|
||
|
label: qsTr( "Sort order" )
|
||
|
|
||
|
menu: ContextMenu {
|
||
|
MenuItem { text: "Created" }
|
||
|
MenuItem { text: "Updated" }
|
||
|
MenuItem { text: "Domain" }
|
||
|
}
|
||
|
}
|
||
|
|
||
|
TextSwitch {
|
||
|
id: sortAscSwitch
|
||
|
width: parent.width
|
||
|
checked: preferences.sortAsc
|
||
|
text: qsTr( "Sort Ascending" )
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|