adapt to new components API

frameworks
Marco Martin 10 years ago
parent 9b749abbc0
commit 2b4486a00d
  1. 14
      mobile/app/package/contents/ui/Browser.qml
  2. 32
      mobile/app/package/contents/ui/Documents.qml
  3. 2
      mobile/app/package/contents/ui/ThumbnailsBase.qml
  4. 2
      mobile/app/package/contents/ui/TreeDelegate.qml
  5. 100
      mobile/app/package/contents/ui/main.qml
  6. 6
      mobile/components/DocumentView.qml

@ -31,8 +31,10 @@ MobileComponents.SplitDrawer {
anchors.fill: parent anchors.fill: parent
visible: true visible: true
property alias splitDrawerOpen: splitDrawer.open property alias splitDrawerOpen: splitDrawer.opened
property alias overlayDrawerOpen: resourceBrowser.open property alias overlayDrawerOpen: resourceBrowser.opened
property Item globalDrawer: splitDrawer
property Item contextDrawer: resourceDrawer
//An alias doesn't work //An alias doesn't work
property bool bookmarked: false property bool bookmarked: false
@ -40,14 +42,14 @@ MobileComponents.SplitDrawer {
pageArea.page.bookmarked = bookmarked pageArea.page.bookmarked = bookmarked
} }
drawer: Documents { contentItem: Documents {
implicitWidth: splitDrawer.width/4 * 3 implicitWidth: units.gridUnit * 25
} }
MobileComponents.OverlayDrawer { MobileComponents.OverlayDrawer {
id: resourceBrowser id: resourceBrowser
anchors.fill: parent anchors.fill: parent
visible: true edge: Qt.RightEdge
Okular.DocumentView { Okular.DocumentView {
id: pageArea id: pageArea
@ -66,7 +68,7 @@ MobileComponents.SplitDrawer {
onBookmarkedChanged: splitDrawer.bookmarked = pageArea.page.bookmarked onBookmarkedChanged: splitDrawer.bookmarked = pageArea.page.bookmarked
} }
drawer: Item { contentItem: Item {
id: browserFrame id: browserFrame
anchors.fill: parent anchors.fill: parent
state: "Hidden" state: "Hidden"

@ -24,9 +24,10 @@ import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.mobilecomponents 0.2 as MobileComponents import org.kde.plasma.mobilecomponents 0.2 as MobileComponents
import Qt.labs.folderlistmodel 2.1 import Qt.labs.folderlistmodel 2.1
PlasmaComponents.Page { MobileComponents.Page {
id: root id: root
anchors.fill: parent anchors.fill: parent
color: theme.viewBackgroundColor
visible: true visible: true
property Item view: filesView property Item view: filesView
property alias contentY: filesView.contentY property alias contentY: filesView.contentY
@ -52,11 +53,10 @@ PlasmaComponents.Page {
PlasmaExtras.ScrollArea { PlasmaExtras.ScrollArea {
anchors.fill: parent anchors.fill: parent
GridView { ListView {
id: filesView id: filesView
anchors.fill: parent anchors.fill: parent
cellWidth: units.gridUnit * 5
cellHeight: units.gridUnit * 5
model: PlasmaCore.SortFilterModel { model: PlasmaCore.SortFilterModel {
id: filterModel id: filterModel
filterRole: "fileName" filterRole: "fileName"
@ -68,27 +68,9 @@ PlasmaComponents.Page {
} }
} }
delegate: MouseArea { delegate: MobileComponents.ListItem {
width: filesView.cellWidth enabled: true
height: filesView.cellHeight
PlasmaCore.IconItem {
id: icon
width: units.gridUnit * 3
height: width
anchors {
top: parent.top
horizontalCenter: parent.horizontalCenter
}
//TODO: proper icons
source: "application-epub+zip"
}
PlasmaComponents.Label { PlasmaComponents.Label {
anchors {
left: parent.left
right: parent.right
top: icon.bottom
bottom: parent.bottom
}
text: model.fileName text: model.fileName
horizontalAlignment: Text.AlignHCenter horizontalAlignment: Text.AlignHCenter
wrapMode: Text.WordWrap wrapMode: Text.WordWrap
@ -96,7 +78,7 @@ PlasmaComponents.Page {
} }
onClicked: { onClicked: {
documentItem.path = model.filePath; documentItem.path = model.filePath;
splitDrawer.open = false; globalDrawer.opened = false;
mainTabBar.currentTab = thumbnailsButton; mainTabBar.currentTab = thumbnailsButton;
} }
} }

@ -91,7 +91,7 @@ PlasmaComponents.Page {
resultsGrid.currentIndex = index resultsGrid.currentIndex = index
documentItem.currentPage = modelData documentItem.currentPage = modelData
resourceBrowser.open = false contextDrawer.opened = false
root.pageClicked(modelData) root.pageClicked(modelData)
} }
} }

@ -46,7 +46,7 @@ Column {
onClicked: { onClicked: {
documentItem.currentPage = page-1 documentItem.currentPage = page-1
resourceBrowser.open = false contextDrawer.opened = false
} }
QIconItem { QIconItem {

@ -22,78 +22,39 @@ import org.kde.okular 2.0 as Okular
import QtQuick.Controls 1.3 import QtQuick.Controls 1.3
import org.kde.plasma.extras 2.0 as PlasmaExtras import org.kde.plasma.extras 2.0 as PlasmaExtras
import org.kde.plasma.components 2.0 as PlasmaComponents import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.plasma.mobilecomponents 0.2 as MobileComponents
ApplicationWindow { MobileComponents.ApplicationWindow {
id: fileBrowserRoot id: fileBrowserRoot
objectName: "fileBrowserRoot" objectName: "fileBrowserRoot"
visible: true visible: true
width: 360
height: 360
/*TODO: port ResourceInstance /*TODO: port ResourceInstance
PlasmaExtras.ResourceInstance { PlasmaExtras.ResourceInstance {
id: resourceInstance id: resourceInstance
uri: documentItem.path uri: documentItem.path
}*/ }*/
statusBar: PlasmaComponents.ToolBar { globalDrawer: MobileComponents.OverlayDrawer {
id: toolbar edge: Qt.LeftEdge
tools: PlasmaComponents.ToolBarLayout { contentItem: Documents {
//TODO: those buttons should support drag to open the menus as well implicitWidth: units.gridUnit * 20
PlasmaComponents.ToolButton {
id: openButton
iconSource: "document-open"
checkable: true
onCheckedChanged: {
mainStack.currentPage.splitDrawerOpen = checked
if (checked) {
mainStack.currentPage.overlayDrawerOpen = false;
}
}
}
PlasmaComponents.ToolButton {
id: bookmarkButton
iconSource: "bookmarks-organize"
checkable: true
onCheckedChanged: {
mainStack.currentPage.bookmarked = checked
}
}
PlasmaComponents.ToolButton {
id: exploreButton
iconSource: "view-list-icons"
checkable: true
onCheckedChanged: {
mainStack.currentPage.overlayDrawerOpen = checked
if (checked) {
mainStack.currentPage.splitDrawerOpen = false;
}
}
}
} }
Connections { }
target: mainStack.currentPage contextDrawer: OkularDrawer {}
onSplitDrawerOpenChanged: { actionButton.iconSource: "bookmarks-organize"
openButton.checked = mainStack.currentPage.splitDrawerOpen; actionButton.checkable: true
} actionButton.onCheckedChanged: pageArea.page.bookmarked = actionButton.checked;
onOverlayDrawerOpenChanged: { PlasmaComponents.ProgressBar {
exploreButton.checked = mainStack.currentPage.overlayDrawerOpen; id: bar
} z: 99
onBookmarkedChanged: { anchors {
bookmarkButton.checked = mainStack.currentPage.bookmarked left: parent.left
} right: parent.right
} bottom: parent.bottom
PlasmaComponents.ProgressBar {
id: bar
anchors {
left: parent.left
right: parent.right
bottom: parent.top
}
height: units.smallSpacing
value: documentItem.pageCount != 0 ? (documentItem.currentPage / documentItem.pageCount) : 0
} }
height: units.smallSpacing
value: documentItem.pageCount != 0 ? (documentItem.currentPage / documentItem.pageCount) : 0
} }
Okular.DocumentItem { Okular.DocumentItem {
@ -103,9 +64,21 @@ ApplicationWindow {
} }
} }
PlasmaComponents.PageStack { Okular.DocumentView {
id: mainStack id: pageArea
clip: false document: documentItem
anchors.fill: parent
onPageChanged: {
bookmarkConnection.target = page
actionButton.checked = page.bookmarked
}
onClicked: actionButton.toggleVisibility();
}
Connections {
id: bookmarkConnection
target: pageArea.page
onBookmarkedChanged: actionButton.checked = page.bookmarked
} }
//FIXME: this is due to global vars being binded after the parse is done, do the 2 steps parsing //FIXME: this is due to global vars being binded after the parse is done, do the 2 steps parsing
@ -117,9 +90,8 @@ ApplicationWindow {
documentItem.path = commandlineArguments[0] documentItem.path = commandlineArguments[0]
} }
var browser = mainStack.push(Qt.createComponent("Browser.qml"))
if (commandlineArguments.length == 0) { if (commandlineArguments.length == 0) {
browser.open = true; globalDrawer.opened = true;
} }
} }
} }

@ -32,6 +32,7 @@ QtControls.ScrollView {
id: root id: root
property DocumentItem document property DocumentItem document
property PageItem page: mouseArea.currPageDelegate.pageItem property PageItem page: mouseArea.currPageDelegate.pageItem
signal clicked
onWidthChanged: resizeTimer.restart() onWidthChanged: resizeTimer.restart()
onHeightChanged: resizeTimer.restart() onHeightChanged: resizeTimer.restart()
@ -138,6 +139,11 @@ QtControls.ScrollView {
flick.contentWidth = flick.width flick.contentWidth = flick.width
flick.contentHeight = flick.width / mouseArea.currPageDelegate.pageRatio flick.contentHeight = flick.width / mouseArea.currPageDelegate.pageRatio
} }
onClicked: {
if (Math.abs(currPageDelegate.x) < 20) {
root.clicked();
}
}
PageView { PageView {
id: page1 id: page1

Loading…
Cancel
Save