Advertisement
Guest User

Untitled

a guest
Sep 5th, 2019
212
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
QML 2.49 KB | None | 0 0
  1.  
  2.     Component {
  3.         id: labelCell
  4.         Label {
  5.             text: myModel.name
  6.         }
  7.     }
  8.  
  9.     Component {
  10.         id: listCell
  11.         Column {
  12.             id: content
  13.             ItemDelegate {
  14.                 id: headerDelegate
  15.                 checkable: true
  16.                 text: myModel.name
  17.             }
  18.             Column {
  19.                 visible: headerDelegate.checked
  20.                 Repeater {
  21.                     delegate: treeCell
  22.                     model: myModel.items
  23.                 }
  24.             }
  25.         }
  26.  
  27.     }
  28.  
  29.     Component {
  30.         id: treeCell
  31.         Loader {
  32.             property var myModel: model
  33.             sourceComponent: myModel.items ? listCell : labelCell
  34.         }
  35.     }
  36.  
  37.     ListView {
  38.         anchors.fill: parent
  39.  
  40.         delegate: treeCell
  41.  
  42.         model: ListModel {
  43.             ListElement {
  44.                 name: "test 0"
  45.                 items: [
  46.                     ListElement {
  47.                         name: "first"
  48.                         items: [
  49.                             ListElement {
  50.                                 name: "first"
  51.  
  52.                             },
  53.                             ListElement {
  54.                                 name: "second"
  55.                             },
  56.                             ListElement {
  57.                                 name: "last"
  58.                             }
  59.                         ]
  60.                     },
  61.                     ListElement {
  62.                         name: "second"
  63.                     },
  64.                     ListElement {
  65.                         name: "last"
  66.                     }
  67.                 ]
  68.             }
  69.             ListElement {
  70.                 name: "test 0"
  71.                 items: [
  72.                     ListElement {
  73.                         name: "first"
  74.                     },
  75.                     ListElement {
  76.                         name: "second"
  77.                     },
  78.                     ListElement {
  79.                         name: "last"
  80.                     }
  81.                 ]
  82.             }
  83.             ListElement {
  84.                 name: "test 0"
  85.                 items: [
  86.                     ListElement {
  87.                         name: "first"
  88.                     },
  89.                     ListElement {
  90.                         name: "second"
  91.                     },
  92.                     ListElement {
  93.                         name: "last"
  94.                     }
  95.                 ]
  96.             }
  97.         }
  98.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement