123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- #ifndef CLASSOPTIONS_H
- #define CLASSOPTIONS_H
- #include <QDialog>
- #include <QListWidgetItem>
- #include "sequenz.h"
- namespace Ui
- {
- class ClassOptions;
- }
- /*
- * Verwaltet den GUI Dialog, welcher zur Verwaltung der Objekt Klassen verwendet
- *wird
- */
- class ClassOptions : public QDialog
- {
- Q_OBJECT
- /*
- * Ein Eintrag in der Editierbaren Liste mit Klassen
- */
- struct ListItem
- {
- int id; // Die Id der Klasse des Eintrags
- QListWidgetItem *item; // Der Listeneintrag
- };
- public:
- // erstellt den DIalog
- // seq: Die Sequenz, welche momentan annotiert wird
- // parent: Das Eltern QWidget von Qt
- explicit ClassOptions(Sequenz *seq,
- QWidget *parent = 0);
- ~ClassOptions();
- private slots:
- // Erstellt eine neue Klasse von Objekten
- void on_newClass_clicked();
- // Löscht eine Klasse von Objekten
- void on_removeClass_clicked();
- // Erlaubt das Klicken auf Löschen
- void on_classList_itemSelectionChanged();
- // Benennt die ausgewählte Klasse um
- void on_classList_itemChanged(QListWidgetItem *item);
- // Beendet das Verwalten der Klassen
- void on_fertig_clicked();
- private:
- // Gibt den Index einer Klasse aus der Liste zurück
- int getItemId(QListWidgetItem *item);
- Sequenz *seq; // Ein zeiger auf die annotierte Bildsequenz
- QList<ListItem> items; // Eine Liste mit Listeneinträgen
- Ui::ClassOptions *ui; // Ein Zeiger auf alle in classoptions.ui spezifizierten Objekte
- };
- #endif // CLASSOPTIONS_H
|