blob: 03fa000f4a6c1fb22f569592f297fd7898f4804f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
|
import QtQuick 2.0
import Sailfish.Silica 1.0
import io.thp.pyotherside 1.2
Page {
width: Screen.width; height: Screen.height;
anchors.fill: parent
Column {
id: column
anchors.fill: parent;
spacing: 25
Row {
id: row
width: parent.width;
IconButton {
width: (parent.width - parent.height) / 2;
icon.source: "image://theme/icon-m-back"
onClicked: console.log("Previous!")
}
Image {
width: parent.height;
source: "../content/gfx/" + (goban.currentPlayer ? "white":"black") + ".png"
height: parent.height;
scale: 0.5
}
IconButton {
width: (parent.width - parent.height) / 2;
icon.source: "image://theme/icon-m-refresh"
onClicked: goban.start()
}
}
Goban {
id: goban;
width: parent.width;
height: column.height - (row.height + view.height);
}
SlideshowView {
id: view
width: parent.width
height: 100
itemWidth: width / 2
onCurrentIndexChanged: {py.call('board.getGame', [view.currentIndex], goban.setGoban)}
model: 5
delegate: Text {
horizontalAlignment: Text.AlignHCenter
color: Theme.primaryColor
font.family: Theme.fontFamily
font.pixelSize: Theme.fontSizeMedium
width: view.itemWidth
height: view.height
text: "Problem " + (index + 1);
}
}
}
Python {
id:py
Component.onCompleted: {
var pythonpath = Qt.resolvedUrl('../python').substr('file://'.length);
addImportPath(pythonpath);
console.log(pythonpath);
importModule('board', function() {
console.log('module loaded');
console.log('Python version: ' + pythonVersion());
})
setHandler('log', function (content) {
console.log(content);
});
call('board.setPath', [pythonpath]);
call('board.loadBoard', ["easy.sgf"], function (result) {
console.log(result + " problems found in the file")
view.model = result
call('board.getGame', [0], goban.setGoban);
});
}
}
}
|