NDEVR
API Documentation
InvolvedPartiesEditor.h
1#pragma once
2#include "TransitIncidentManager/Headers/TransitIncidentEntityTable.h"
3#include "TransitIncidentManager/Headers/TransitIncidentManager.h"
4#include <NDEVR/InterfaceOrientationController.h>
5#include "Base/Headers/Translator.h"
6#include <QBoxLayout>
7namespace NDEVR
8{
10 class TransitIncidentPedestrianEditor : public QWidget
11 {
12 Q_OBJECT
13 public:
17 TransitIncidentPedestrianEditor(TransitIncidentManager* manager, QWidget* parent = nullptr)
18 : QWidget(parent)
19 , m_manager(manager)
20 {
21
22 QBoxLayout* layout = new QHBoxLayout();
24 person_table->showSearch(false);
26 layout->addWidget(person_table);
28 setLayout(layout);
29 setWindowTitle(_tqs("Pedestrians"));
30 }
31 protected:
33 };
34
35 class TransitIncidentVehiclesEditor : public QWidget
36 {
37 Q_OBJECT
38 public:
42 TransitIncidentVehiclesEditor(TransitIncidentManager* manager, QWidget* parent = nullptr)
43 : QWidget(parent)
44 , m_manager(manager)
45 {
46
47 QBoxLayout* layout = new QHBoxLayout();
48 TransitIncidentVehicleTable* vehicle_table = new TransitIncidentVehicleTable(manager->vehicleRoot(), false);
49 vehicle_table->showSearch(false);
50 vehicle_table->addNewButton([vehicle_table](Button* b)
51 {
52 vehicle_table->createModel(b);
53 }, _t("Add Vehicle"));
54 layout->addWidget(vehicle_table);
56 setLayout(layout);
57 setWindowTitle(_tqs("Vehicles"));
58 }
59 protected:
61 };
62}
A core widget that allows the user to click one of many button types.
Definition Button.h:68
void showSearch(bool show_search)
Shows or hides the search bar.
Button * addNewButton(std::function< void(Button *)> callback, const TranslatedString &new_title=_t("Add New"), const StringView &add_icon="plus")
Adds an "Add New" button to the bottom button bar.
static InterfaceOrientationController & Default()
Returns the default global InterfaceOrientationController instance.
void run(QWidget *object, const std::function< void(bool is_horizontal)> &function)
Registers a widget with a custom callback for orientation changes.
Central manager for transit incident data, including buses, drivers, witnesses, officers,...
DynamicPointer< QTDesignObject > vehicleRoot()
Returns the root design object for involved vehicles.
DynamicPointer< QTDesignObject > pedestrianRoot()
Returns the root design object for pedestrians.
TransitIncidentPedestrianEditor(TransitIncidentManager *manager, QWidget *parent=nullptr)
Constructs the pedestrian editor and populates it with the pedestrian list.
TransitIncidentManager * m_manager
The owning transit incident manager.
Table widget for displaying and managing persons in a transit incident.
void createAddButton(TransitIncidentPersonType person_type)
Adds an "Add" button to the table that creates a person of the given type.
Table widget for displaying and managing vehicles in a transit incident.
void createModel(PopupInfo info)
Creates a new vehicle model and shows it in a popup editor.
TransitIncidentManager * m_manager
The owning transit incident manager.
TransitIncidentVehiclesEditor(TransitIncidentManager *manager, QWidget *parent=nullptr)
Constructs the vehicles editor and populates it with the vehicle list.
The primary namespace for the NDEVR SDK.
@ e_pedestrian
A pedestrian involved in the incident.