> Ведь еслибы написал неправильное название кнопки то программа вообще не скомпилировалась бы.
А вот и нет, все равно скомпилируется, так как эти enum - числа в int.
keybd_event для клавиатуры, а mouse_event для мышей
Без правки исходников не получится. У QWebEngine скудный функционал для таких целей, в отличии от QtWebKit ( https://habr.com/ru/post/191476 ).
Можно еще запустить свой прокси сервер и будете получать все данные с возможностью модификации на лету.
А вы QMap<QString,Drawable*> _objectByName; замените на QMap<Drawable*, QString> _objectByName;
Тогда имя может быть пустым, а достать объект по имени можно через метод key(..)
QTcpSocket при вызове деструктора делает все что нужно.
Главное чтобы конструктор и деструктор, чтение и запись вызывали в том же потоке.
А если чего не хватает, можете получить дескриптор методом socketDescriptor() и использовать найтивное АРІ поверх него.
Если запросы однотипные то лучше сделать буфер накопления запросов и объединить их в один запрос. А по результату уже распределять кто что просил.
Меньше запросов - всегда лучше.
Да и надо уточнить, как вы подключаетесь к самой БД? И поддерживает ли библиотека подключения одновременные запросы в пределах инстанса, поддерживает ли параллельную одновременную обработку запросов с разных тредов или же все запросы идут по одному подключению или блокируются мьютексами.
Модель возвращает только значения, вам нужно создать QItemDelegate и прикрутить его в View
Читайте Qt Assistant. Примеры из исходников Qt SDK в папках:
../examples/widgets/itemviews/spinboxdelegate
../examples/widgets/itemviews/stardelegate
Для каждой целевой ОС нужен свой компилятор, который в свою очередь скомпилирован под вашу рабочую ОС для создания бинарников под целевую ОС.
Можете почитать о crosstool-ng либо достать скомпилированный компилятор gcc под свои нужды.