src/main.cpp

changeset 237
10a6298f636f
parent 236
1fa0e1de9f0a
child 240
414d392b9ae6
--- a/src/main.cpp	Mon Jun 20 18:40:22 2022 +0300
+++ b/src/main.cpp	Mon Jun 20 19:49:56 2022 +0300
@@ -2,6 +2,7 @@
 #include <QFileDialog>
 #include <QMessageBox>
 #include <QMdiSubWindow>
+#include <QScrollBar>
 #include <QStackedWidget>
 #include <QCloseEvent>
 #include "mainwindow.h"
@@ -55,6 +56,7 @@
 	QCoreApplication::setApplicationName(::appName);
 	QCoreApplication::setOrganizationName("hecknology.net");
 	QCoreApplication::setOrganizationDomain("hecknology.net");
+	qRegisterMetaType<Message>();
 	qRegisterMetaTypeStreamOperators<Library>("Library");
 	qRegisterMetaTypeStreamOperators<Libraries>("Libraries");
 	qRegisterMetaTypeStreamOperators<gl::RenderStyle>();
@@ -343,7 +345,6 @@
 	return result;
 }
 
-#include <QScrollBar>
 int main(int argc, char *argv[])
 {
 	doQtRegistrations();
@@ -478,6 +479,7 @@
 						}
 					}
 				});
+			QObject::connect(data->canvas.get(), &PartRenderer::message, &messageLog, &MessageLog::addMessage);
 			const QFileInfo fileInfo{*documents.modelPath(modelId)};
 			ModelSubWindow* subWindow = new ModelSubWindow{modelId, ui.mdiArea};
 			subWindow->setWidget(data->canvas.get());
@@ -636,6 +638,7 @@
 		ui.messageLog->setProperty("shouldAutoScroll", bar->value() == bar->maximum());
 	});
 	QObject::connect(&messageLog, &MessageLog::rowsInserted, [&]{
+		ui.messageLog->resizeRowsToContents();
 		if (ui.messageLog->property("shouldAutoScroll").toBool()) {
 			ui.messageLog->scrollToBottom();
 		}

mercurial