36 lines
895 B
C++
36 lines
895 B
C++
//
|
|
// Created by selim on 17.05.2022.
|
|
//
|
|
|
|
#include "AddNumberDialog.h"
|
|
#include "../services/Api.h"
|
|
#include "../services/Storage.h"
|
|
|
|
#include <iostream>
|
|
#include <algorithm>
|
|
#include <cctype>
|
|
|
|
AddNumberDialog::AddNumberDialog(gtkpp::Window* parent): gtkpp::Dialog(parent) {
|
|
auto content = contentWidget();
|
|
_entry.setMargins(16);
|
|
_entry.setPlaceholder("Plate number");
|
|
content.append(_entry);
|
|
content.append(_spinner);
|
|
_spinner.setMargins(16);
|
|
_spinner.hide();
|
|
}
|
|
|
|
std::string AddNumberDialog::text() const {
|
|
return _entry.text();
|
|
}
|
|
|
|
cc::result<void> AddNumberDialog::checkNumber() {
|
|
_spinner.show();
|
|
_spinner.start();
|
|
std::string text = _entry.text();
|
|
std::transform(text.begin(), text.end(), text.begin(), [](unsigned char c){ return std::toupper(c); });
|
|
auto vehicle = co_await Api::check(text);
|
|
Storage::instance().insert(&vehicle);
|
|
}
|
|
|