diff --git a/YACReaderLibrary/qml/GridComicsView.qml b/YACReaderLibrary/qml/GridComicsView.qml
index 262cfcbc..0c1ddb5f 100644
--- a/YACReaderLibrary/qml/GridComicsView.qml
+++ b/YACReaderLibrary/qml/GridComicsView.qml
@@ -21,215 +21,215 @@ Rectangle {
Component {
id: appDelegate
- Rectangle
- {
- id: cell
- width: grid.cellWidth
- height: grid.cellHeight
- color: backgroundColor
- MouseArea {
- id: mouseArea
- drag.target: realCell
- anchors.fill: parent
- onClicked: {
- comicsSelectionHelper.clear();
- comicsSelectionHelper.selectIndex(grid.currentIndex);
- }
- }
-
- Rectangle {
- id: realCell
-
- Drag.active: mouseArea.drag.active
- Drag.hotSpot.x: 32
- Drag.hotSpot.y: 32
- Drag.dragType: Drag.Automatic
- Drag.mimeData: { "text/plain": "comic" }
- Drag.proposedAction: Qt.CopyAction
-
- width: 156; height: 287
- color: ((dummyValue || !dummyValue) && comicsSelectionHelper.isSelectedIndex(index)) || grid.currentIndex === index?selectedColor:cellColor;
-
- anchors.horizontalCenter: parent.horizontalCenter
-
- MouseArea {
- anchors.fill: parent
- acceptedButtons: Qt.LeftButton | Qt.RightButton
- onDoubleClicked: {
-
- comicsSelectionHelper.clear();
-
- comicsSelectionHelper.selectIndex(index);
- grid.currentIndex = index;
- comicsSelectionHelper.selectedItem(index);
- }
-
- onClicked: {
- //grid.currentIndex = index
- //comicsSelection.setCurrentIndex(index,0x0002)
- var ci = grid.currentIndex;
- if(mouse.button == Qt.RightButton || !(mouse.modifiers & Qt.ControlModifier || mouse.modifiers & Qt.ShiftModifier))
- {
- comicsSelectionHelper.clear();
- }
-
- if(mouse.button == Qt.RightButton)
- myContextMenu.popup();
-
- if(mouse.modifiers & Qt.ShiftModifier)
- if(index < ci)
- selectAll(index,ci);
- else if (index > ci)
- selectAll(ci,index);
-
- mouse.accepted = true;
-
- comicsSelectionHelper.selectIndex(index)
- grid.currentIndex = index;
- }
- }
-
- //Menu emits the 'main' signals
- Menu {
- id: myContextMenu
- MenuItem { text: "Open comic"; enabled: true; iconSource:"qrc:///images/openInYACReader.png"; onTriggered: openComicAction.trigger() }
- MenuSeparator{}
- MenuItem { text: "Open containing folder..."; enabled: true; iconSource: "qrc:///images/open.png"; onTriggered: openContainingFolderComicAction.trigger() }
- MenuItem { text: "Update current folder"; enabled: true; iconSource: "qrc:///images/updateLibraryIcon.png"; onTriggered: updateCurrentFolderAction.trigger() }
- MenuSeparator{}
- MenuItem { text: "Reset comic rating"; onTriggered: resetComicRatingAction.trigger() }
- MenuSeparator{}
- MenuItem { text: "Edit"; enabled: true; iconSource:"qrc:///images/editComic.png"; onTriggered: editSelectedComicsAction.trigger() }
- MenuItem { text: "Download tags from Comic Vine"; enabled: true; iconSource:"qrc:///images/getInfo.png"; onTriggered: getInfoAction.trigger() }
- MenuItem { text: "Asign current order to comics"; enabled: true; iconSource:"qrc:///images/asignNumber.png"; onTriggered: asignOrderAction.trigger() }
- MenuSeparator{}
- MenuItem { text: "Select all comics"; enabled: true; iconSource:"qrc:///images/selectAll.png"; onTriggered: selectAllComicsAction.trigger() }
- MenuSeparator{}
- MenuItem { text: "Set as read"; enabled: true; iconSource:"qrc:///images/setReadButton.png"; onTriggered: setAsReadAction.trigger() }
- MenuItem { text: "Set as unread"; enabled: true; iconSource:"qrc:///images/setUnread.png"; onTriggered: setAsNonReadAction.trigger() }
- MenuItem { text: "Show or hide read marks"; enabled: true; iconSource:"qrc:///images/showMarks.png"; onTriggered: showHideMarksAction.trigger() }
- MenuSeparator{}
- MenuItem { text: "Delete selected comics"; enabled: true; iconSource:"qrc:///images/trash.png"; onTriggered: deleteComicsAction.trigger() }
- MenuSeparator{}
- MenuItem { text: "Fullscreen mode on/off"; onTriggered: toggleFullScreenAction.trigger() }
- //MenuItem { text: "Show details"; onTriggered: cell.state = 'Details';
- }
-
-
- }
-
- DropShadow {
- anchors.fill: source
- horizontalOffset: 0
- verticalOffset: 0
- radius: 3
- samples: 24
- color: "#40000000"
- transparentBorder: true;
- source: realCell;
- enabled: dropShadow;
- visible: dropShadow;
- }
-
- /**/
-
- //cover
- Image {
- id: coverElement
- width: 148
- height: 224
- anchors {horizontalCenter: parent.horizontalCenter; top: realCell.top; topMargin: 4}
- source: cover_path
- fillMode: Image.PreserveAspectCrop
- //smooth: true
- mipmap: true
- //antialiasing: true
- asynchronous : true
- cache: false //TODO clear cache only when it is neede
- }
- //mark
- Image {
- id: mark
- width: 23
- height: 23
- source: read_column&&show_marks?"tick.png":has_been_opened&&show_marks?"reading.png":""
- anchors {right: coverElement.right; top: coverElement.top; topMargin: 11; rightMargin: 11}
- asynchronous : true
- }
-
- //title
- Text {
- anchors { top: realCell.top; left: realCell.left; leftMargin: 4; rightMargin: 4; topMargin: 234; }
- width: 148
- maximumLineCount: 2
- wrapMode: Text.WordWrap
- text: title
- elide: Text.ElideRight
- color: titleColor
- clip: true
- font.letterSpacing: 0.5
- }
- //number
- Text {
- anchors {bottom: realCell.bottom; left: realCell.left; margins: 4}
- text: number?"#"+number:""
- color: textColor
- font.letterSpacing: 0.5
- }
- //page icon
- Image {
- id: pageImage
- anchors {bottom: realCell.bottom; right: realCell.right; bottomMargin: 5; rightMargin: 4; leftMargin: 4}
- source: "page.png"
- }
- //numPages
- Text {
- id: pages
- anchors {bottom: realCell.bottom; right: pageImage.left; margins: 4}
- text: has_been_opened?current_page+"/"+num_pages:num_pages
- color: textColor
- font.letterSpacing: 0.5
- }
- //rating icon
- Image {
- id: ratingImage
- anchors {bottom: realCell.bottom; right: pageImage.left; bottomMargin: 5; rightMargin: Math.floor(pages.width)+12}
- source: "star.png"
-
- MouseArea {
- anchors.fill: parent
- onClicked: {
- console.log("rating");
- comicsSelectionHelper.clear();
- comicsSelectionHelper.selectIndex(index);
- grid.currentIndex = index;
- ratingConextMenu.popup();
-
- }
- }
-
- Menu {
- id: ratingConextMenu
- MenuItem { text: "1"; enabled: true; iconSource:"star_menu.png"; onTriggered: comicRatingHelper.rate(index,1) }
- MenuItem { text: "2"; enabled: true; iconSource:"star_menu.png"; onTriggered: comicRatingHelper.rate(index,2) }
- MenuItem { text: "3"; enabled: true; iconSource:"star_menu.png"; onTriggered: comicRatingHelper.rate(index,3) }
- MenuItem { text: "4"; enabled: true; iconSource:"star_menu.png"; onTriggered: comicRatingHelper.rate(index,4) }
- MenuItem { text: "5"; enabled: true; iconSource:"star_menu.png"; onTriggered: comicRatingHelper.rate(index,5) }
-
- }
- }
-
- //comic rating
- Text {
- id: comicRating
- anchors {bottom: realCell.bottom; right: ratingImage.left; margins: 4}
- text: rating>0?rating:"-"
- color: textColor
+ Rectangle
+ {
+ id: cell
+ width: grid.cellWidth
+ height: grid.cellHeight
+ color: backgroundColor
+ MouseArea {
+ anchors.fill: parent
+ onClicked: {
+ comicsSelectionHelper.clear();
+ comicsSelectionHelper.selectIndex(grid.currentIndex);
}
}
+
+ Rectangle {
+ id: realCell
+
+ Drag.active: mouseArea.drag.active
+ Drag.hotSpot.x: 32
+ Drag.hotSpot.y: 32
+ Drag.dragType: Drag.Automatic
+ Drag.mimeData: { "text/plain": "comic" }
+ Drag.proposedAction: Qt.CopyAction
+
+ width: 156; height: 287
+ color: ((dummyValue || !dummyValue) && comicsSelectionHelper.isSelectedIndex(index)) || grid.currentIndex === index?selectedColor:cellColor;
+
+ anchors.horizontalCenter: parent.horizontalCenter
+
+ MouseArea {
+ id: mouseArea
+ drag.target: realCell
+ anchors.fill: parent
+ acceptedButtons: Qt.LeftButton | Qt.RightButton
+ onDoubleClicked: {
+
+ comicsSelectionHelper.clear();
+
+ comicsSelectionHelper.selectIndex(index);
+ grid.currentIndex = index;
+ comicsSelectionHelper.selectedItem(index);
+ }
+
+ onClicked: {
+ //grid.currentIndex = index
+ //comicsSelection.setCurrentIndex(index,0x0002)
+ var ci = grid.currentIndex;
+ if(mouse.button == Qt.RightButton || !(mouse.modifiers & Qt.ControlModifier || mouse.modifiers & Qt.ShiftModifier))
+ {
+ comicsSelectionHelper.clear();
+ }
+
+ if(mouse.button == Qt.RightButton)
+ myContextMenu.popup();
+
+ if(mouse.modifiers & Qt.ShiftModifier)
+ if(index < ci)
+ selectAll(index,ci);
+ else if (index > ci)
+ selectAll(ci,index);
+
+ mouse.accepted = true;
+
+ comicsSelectionHelper.selectIndex(index)
+ grid.currentIndex = index;
+ }
+ }
+
+ //Menu emits the 'main' signals
+ Menu {
+ id: myContextMenu
+ MenuItem { text: "Open comic"; enabled: true; iconSource:"qrc:///images/openInYACReader.png"; onTriggered: openComicAction.trigger() }
+ MenuSeparator{}
+ MenuItem { text: "Open containing folder..."; enabled: true; iconSource: "qrc:///images/open.png"; onTriggered: openContainingFolderComicAction.trigger() }
+ MenuItem { text: "Update current folder"; enabled: true; iconSource: "qrc:///images/updateLibraryIcon.png"; onTriggered: updateCurrentFolderAction.trigger() }
+ MenuSeparator{}
+ MenuItem { text: "Reset comic rating"; onTriggered: resetComicRatingAction.trigger() }
+ MenuSeparator{}
+ MenuItem { text: "Edit"; enabled: true; iconSource:"qrc:///images/editComic.png"; onTriggered: editSelectedComicsAction.trigger() }
+ MenuItem { text: "Download tags from Comic Vine"; enabled: true; iconSource:"qrc:///images/getInfo.png"; onTriggered: getInfoAction.trigger() }
+ MenuItem { text: "Asign current order to comics"; enabled: true; iconSource:"qrc:///images/asignNumber.png"; onTriggered: asignOrderAction.trigger() }
+ MenuSeparator{}
+ MenuItem { text: "Select all comics"; enabled: true; iconSource:"qrc:///images/selectAll.png"; onTriggered: selectAllComicsAction.trigger() }
+ MenuSeparator{}
+ MenuItem { text: "Set as read"; enabled: true; iconSource:"qrc:///images/setReadButton.png"; onTriggered: setAsReadAction.trigger() }
+ MenuItem { text: "Set as unread"; enabled: true; iconSource:"qrc:///images/setUnread.png"; onTriggered: setAsNonReadAction.trigger() }
+ MenuItem { text: "Show or hide read marks"; enabled: true; iconSource:"qrc:///images/showMarks.png"; onTriggered: showHideMarksAction.trigger() }
+ MenuSeparator{}
+ MenuItem { text: "Delete selected comics"; enabled: true; iconSource:"qrc:///images/trash.png"; onTriggered: deleteComicsAction.trigger() }
+ MenuSeparator{}
+ MenuItem { text: "Fullscreen mode on/off"; onTriggered: toggleFullScreenAction.trigger() }
+ //MenuItem { text: "Show details"; onTriggered: cell.state = 'Details';
+ }
+
+
+ }
+
+ DropShadow {
+ anchors.fill: source
+ horizontalOffset: 0
+ verticalOffset: 0
+ radius: 3
+ samples: 24
+ color: "#40000000"
+ transparentBorder: true;
+ source: realCell;
+ enabled: dropShadow;
+ visible: dropShadow;
+ }
+
+ /**/
+
+ //cover
+ Image {
+ id: coverElement
+ width: 148
+ height: 224
+ anchors {horizontalCenter: parent.horizontalCenter; top: realCell.top; topMargin: 4}
+ source: cover_path
+ fillMode: Image.PreserveAspectCrop
+ //smooth: true
+ mipmap: true
+ //antialiasing: true
+ asynchronous : true
+ cache: false //TODO clear cache only when it is neede
+ }
+ //mark
+ Image {
+ id: mark
+ width: 23
+ height: 23
+ source: read_column&&show_marks?"tick.png":has_been_opened&&show_marks?"reading.png":""
+ anchors {right: coverElement.right; top: coverElement.top; topMargin: 11; rightMargin: 11}
+ asynchronous : true
+ }
+
+ //title
+ Text {
+ anchors { top: realCell.top; left: realCell.left; leftMargin: 4; rightMargin: 4; topMargin: 234; }
+ width: 148
+ maximumLineCount: 2
+ wrapMode: Text.WordWrap
+ text: title
+ elide: Text.ElideRight
+ color: titleColor
+ clip: true
+ font.letterSpacing: 0.5
+ }
+ //number
+ Text {
+ anchors {bottom: realCell.bottom; left: realCell.left; margins: 4}
+ text: number?"#"+number:""
+ color: textColor
+ font.letterSpacing: 0.5
+ }
+ //page icon
+ Image {
+ id: pageImage
+ anchors {bottom: realCell.bottom; right: realCell.right; bottomMargin: 5; rightMargin: 4; leftMargin: 4}
+ source: "page.png"
+ }
+ //numPages
+ Text {
+ id: pages
+ anchors {bottom: realCell.bottom; right: pageImage.left; margins: 4}
+ text: has_been_opened?current_page+"/"+num_pages:num_pages
+ color: textColor
+ font.letterSpacing: 0.5
+ }
+ //rating icon
+ Image {
+ id: ratingImage
+ anchors {bottom: realCell.bottom; right: pageImage.left; bottomMargin: 5; rightMargin: Math.floor(pages.width)+12}
+ source: "star.png"
+
+ MouseArea {
+ anchors.fill: parent
+ onClicked: {
+ console.log("rating");
+ comicsSelectionHelper.clear();
+ comicsSelectionHelper.selectIndex(index);
+ grid.currentIndex = index;
+ ratingConextMenu.popup();
+
+ }
+ }
+
+ Menu {
+ id: ratingConextMenu
+ MenuItem { text: "1"; enabled: true; iconSource:"star_menu.png"; onTriggered: comicRatingHelper.rate(index,1) }
+ MenuItem { text: "2"; enabled: true; iconSource:"star_menu.png"; onTriggered: comicRatingHelper.rate(index,2) }
+ MenuItem { text: "3"; enabled: true; iconSource:"star_menu.png"; onTriggered: comicRatingHelper.rate(index,3) }
+ MenuItem { text: "4"; enabled: true; iconSource:"star_menu.png"; onTriggered: comicRatingHelper.rate(index,4) }
+ MenuItem { text: "5"; enabled: true; iconSource:"star_menu.png"; onTriggered: comicRatingHelper.rate(index,5) }
+
+ }
+ }
+
+ //comic rating
+ Text {
+ id: comicRating
+ anchors {bottom: realCell.bottom; right: ratingImage.left; margins: 4}
+ text: rating>0?rating:"-"
+ color: textColor
+ }
+ }
}
- YACReaderScrollView{
+ YACReaderScrollView{
id: scrollView
anchors.fill: parent
anchors.margins: 0
@@ -273,7 +273,7 @@ Rectangle {
Keys.onPressed: {
if (event.modifiers & Qt.ControlModifier || event.modifiers & Qt.ShiftModifier)
return;
- var numCells = grid.numCellsPerRow();
+ var numCells = grid.numCellsPerRow();
var ci
if (event.key === Qt.Key_Right) {
ci = Math.min(grid.currentIndex+1,grid.count);
@@ -295,9 +295,9 @@ Rectangle {
comicsSelectionHelper.selectIndex(ci);
grid.currentIndex = ci;
}
- //}
+ //}
- /*MouseArea {
+ /*MouseArea {
anchors.fill: parent
onClicked: {
clicked.accepted = false;
@@ -310,7 +310,7 @@ Rectangle {
}
}*/
- /*ScrollBar {
+ /*ScrollBar {
flickable: grid;
}
@@ -321,7 +321,7 @@ Rectangle {
height: 64
enabled: (dummyValue || !dummyValue)
}*/
- }
+ }
}