AutoCatGnome/gui/AddNumberDialog.cpp

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);
}