id: window
width: 800; height: 480
- property int currentJournalIndex: 0
- property int currentCategoryIndex: -1
- property int currentNewsIndex: -1
+ property int currentSourceIndex: 0
- property list<JournalModel> listJournalModel: [
- LeMondeJournalModel{},
- FavoriteFeedsJournalModel{},
- YahooJournalModel{}
+ property list<SourceModel> listSourceModel: [
+ LeMondeSourceModel{},
+ FavoriteFeedsSourceModel{},
+ YahooSourceModel{}
]
ListModel {
- id: journalList
+ id: viewsModel
- ListElement {
- journalName: 'Le Monde'
- journalHierarchy: [
- // list of journals
- ListElement { component: "content/view/Journals.qml"; componentId: "journalsRect" },
- // list of categories for a given journal
- ListElement { component: "content/view/Categories.qml"; componentId: "categoriesRect" },
- // list of news for a given category
- ListElement { component: "content/view/News.qml"; componentId: "newsRect" },
- // Details for a given news
- ListElement { component: "content/view/NewsDetail.qml"; componentId: "newsDetailRect" }
- ]
- }
- ListElement {
- journalName: 'Favorite RSS'
- journalHierarchy: [
- // list of journals
- ListElement { component: "content/view/Journals.qml"; componentId: "journalsRect" },
- // list of categories for a given journal
- ListElement { component: "content/view/Categories.qml"; componentId: "categoriesRect" },
- // list of news for a given category
- ListElement { component: "content/view/News.qml"; componentId: "newsRect" }
- ]
- }
- ListElement {
- journalName: 'Yahoo! News'
- journalHierarchy: [
- // list of journals
- ListElement { component: "content/view/Journals.qml"; componentId: "journalsRect" },
- // list of categories for a given journal
- ListElement { component: "content/view/Categories.qml"; componentId: "categoriesRect" },
- // list of news for a given category
- ListElement { component: "content/view/News.qml"; componentId: "newsRect" }
- ]
- }
+ ListElement { component: "content/view/Sources.qml"; componentId: "sourcesRect"; componentDepth: 0 }
}
- property variant currentJournal: listJournalModel[currentJournalIndex]
- property bool loading: currentJournal.loading
+ property variant currentSource: listSourceModel[currentSourceIndex]
+ property bool loading: currentSource.loading
+ property ListModel windowViewsModel: viewsModel
+ property ListView windowViewsList: viewsList
ListView {
id: viewsList
snapMode: ListView.SnapOneItem
flickDeceleration: 500
- model: journalList.get(currentJournalIndex).journalHierarchy
+ model: viewsModel
delegate: Loader {
id: componentId
source: component
}
}
+ function showConfigDialog(settingsComponent) {
+ configDialog.configViewComponent = settingsComponent
+ configDialog.state = "showSourceConfig"
+ }
+
+ SourceConfigDialog {
+ id:configDialog
+ }
+
+/*
+*/
+
Component {
id: quitButtonDelegate
Item {