b88ef745f9558cd5cc6345a09973ed804b9edf3a
[mussorgsky] / src / qml / mussorgsky-qml.py
1 #!/usr/bin/python
2 # -*- coding: utf-8 -*-
3  
4 import sys
5 from PySide.QtCore import *
6 from PySide.QtGui import *
7 from PySide.QtDeclarative import QDeclarativeView
8
9 from albumModel import AlbumModel
10 from controller import MussorgskyController
11 from coverModel import CoversModel
12
13 # Create Qt application and the QDeclarative view
14 app = QApplication(sys.argv)
15 view = QDeclarativeView()
16
17
18 #MOCK_DATA = [
19 #     AlbumItem ("Are you experienced?", "Jimy Hendrix", None),
20 #     AlbumItem ("Bring them all back home", "Bob dylan", None),
21 #     AlbumItem ("OK computer", "Radiohead", None),
22 #     AlbumItem ("Absolution", "Muse", None),
23 #     AlbumItem ("Come with us", "Chemical brothers", None)
24 #    ]
25
26
27 controller = MussorgskyController ()
28 albumModel = AlbumModel (controller.get_all_albums())
29 print "Model with", albumModel.rowCount(), "rows"
30
31 coverModel = CoversModel ()
32
33 rc = view.rootContext ()
34 rc.setContextProperty ('albumModel', albumModel)
35 rc.setContextProperty ('missionControl', controller)
36 rc.setContextProperty ('coversModel', coverModel)
37 # Create an URL to the QML file
38 #url = QUrl('view.qml')
39 url = QUrl ("../../ui/main.qml")
40 # Set the QML file and show
41 view.setSource(url)
42 view.engine().quit.connect (app.quit)
43
44 view.show()
45
46
47 # Enter Qt main loop
48 sys.exit(app.exec_())