QAbstractItemView

Alles rund um die Programmierung mit Qt
Antworten
stonecold
Beiträge: 147
Registriert: 19. Oktober 2005 10:48

QAbstractItemView

Beitrag von stonecold »

Hallo upsala,
hallo alle anderen, die sich für dieses Thema interessieren.

Ich möchte kurz die Ergebnisse meiner bisherigen Einträge hier im Forum zusammenfassen und noch ein oder zwei Fragen stellen. Ich hoffe es noch keiner angenervt von meinen ganzen Fragen. :oops:

Also ich möchte ein Prog bauen welches definierte XML-Files einliest, darstellt, bearbeiten und anschl. XML-Konform wieder abspeichern kann.

Ich habe wenig Qt Erfahrung und noch weniger kenne ich das Model/View Konzept, welches in meinem Programm aber Verwendung finden soll.

Mein XML-File sieht folgendermaßen aus:

Code: Alles auswählen

<containerlist> 
  <container> 
      <string name="Name">irgendeinName</string> 
      <enum name="farben"> 
        <enumval number="0">rot</enumval> 
        <enumval number="1">blau</enumval> 
        <enumval number="2">grün</enumval> 
        <currval>blau</currval> 
      </enum> 
  </container> 
  <container> 
    ....... 
  </container> 
</containerlist>
Was habe ich bis jetzt?
Mittels MVC (Code teilweise aus SimpleDomModel) stelle den XML-Code in einer QTreeView da. Allerdings nur die Container bzw. ContainerListen und natürlich alle deren äquivalenten Kinder. Ein clicked() in der View führt zum liefern des entsprechenden Nodes an das mainWindow. Alle Inhalte des Nodes sollen nun separat (aber im MainWindow) dargestellt und editierbar werden. Z.B. Stings nur angezeigt als Label, Enum auswählbar in ComboBox und so weiter. Diese editierten Nodes sollen anschließend wieder zu einen XML-File zusammengebaut und gespeichert werden.

Nun meine Idee
Zum Darstellen der Containerinhalte (String Enum, etc) würde ich als Laie sagen, baue ich mir eine Klasse die, die Nodes zerlegt und in einer GROUPBOX?? editierbar darstellt. Um das MVC am leben zu erhalten müsste diese Klasse am besten von QAbstractItemView erben. Die abgerufenen Nodes stelle ich einen Model zur Verfügung von sich dann wiederum die Klasse die Daten holt.

Nun die Frage/n
Was haltet ihr von der Idde. Kann ich was besser (anders) machen?
Wenn es soweit okay ist, gibt es vielleicht ein Minimalbeispiel einer eigenen View, die meiner ähnelt und nicht unbedingt das "Chart Example" ist?

Schon mal Danke für's Lesen und noch mehr für's beantworten.
Antworten