#ifndef CHANGEPACKET_H #define CHANGEPACKET_H #include #include "sequenz.h" namespace Ui { class ChangePacket; } /* * Verwaltet din GUI Dialog, welcher verwendet wird um den Objekten eine ID *zuzuweisen */ class ChangePacket : public QDialog { Q_OBJECT public: // Erstellt den Dialog // p: Das Polygon des Objektes, wessen ID zugewiesen werden soll // s: Die Sequenz, welche momentan annotiert wird // parent: Das Eltern QWidget von Qt explicit ChangePacket(ObjectPolygon p, Sequenz *s, QWidget *parent = 0); ~ChangePacket(); protected: // verarbeitet Tastatur Events (wird automatisch vom Qt Framework // aufgerufen) void keyReleaseEvent(QKeyEvent *e) override; // verarbeitet Tastatur Events (wird automatisch vom Qt Framework // aufgerufen) void mousePressEvent(QMouseEvent *e) override; private slots: // Zeigt das neu ausgewählte Vergleichsobjekt an void on_packetList_currentIndexChanged(const QString& arg1); // Zeigt das Vergleichsobjekt aus einem vorherigen Bild an void on_previousePicture_clicked(); // Zeigt das Vergleichobjekt aus einem nachfolgenden Bild an void on_nextPicture_clicked(); // Bricht das Zuweisen der Objekt-ID ab ohne sie zu speichern void on_abbrechen_clicked(); // Beendet das Zuweisen der Objekt-ID un speichert die neue ID void on_speichern_clicked(); private: // Wählt automatisch das Vergleichsobjekt aus, welches die ID hat, welche im Textfeld eingegeben wurde void updatePreview(); Ui::ChangePacket *ui; // Ein Zeiger auf die in changepacket.ui spezifizierten Objekte Sequenz *seq; // Ein Zeiger auf die annotierte Bildsequenz ObjectPolygon object; // Das ObjektPolygon, dessen Objekt-ID geändert werden soll int count; // Der index des Vergleichsbildes ausgehend von dem aktuellen Bild (z.B. -1:=1 bild vorher) int max; // Die maximale ID eines Objektes static int lastId; // Die zuletzt vergebene ID (wird als startwert für neue Zuweisuzngen verwendet) }; #endif // CHANGEPACKET_H