]> git.sesse.net Git - nageru/blobdiff - main.cpp
Remove -Werror; great for development, not so much for users.
[nageru] / main.cpp
index 34a1c497a48497c39580ae8cb24b5bd910eb78fc..f28b859fd842bdc501d238eccc743bf6667b5545 100644 (file)
--- a/main.cpp
+++ b/main.cpp
@@ -1,13 +1,28 @@
+extern "C" {
+#include <libavformat/avformat.h>
+}
+#include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <epoxy/gl.h>
+
 #include <QApplication>
-#include <QDesktopWidget>
+#include <QCoreApplication>
+#include <QGL>
+#include <QSize>
 #include <QSurfaceFormat>
-#include <QtGui/QOpenGLContext>
 
+#include "context.h"
+#include "flags.h"
 #include "mainwindow.h"
+#include "mixer.h"
 
 int main(int argc, char *argv[])
 {
        setenv("QT_XCB_GL_INTEGRATION", "xcb_egl", 0);
+       setlinebuf(stdout);
+       av_register_all();
+       parse_flags(argc, argv);
 
        QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts, true);
        QApplication app(argc, argv);
@@ -20,9 +35,19 @@ int main(int argc, char *argv[])
        fmt.setMinorVersion(1);
        QSurfaceFormat::setDefaultFormat(fmt);
 
+       QGLFormat::setDefaultFormat(QGLFormat::fromSurfaceFormat(fmt));
+
+       global_share_widget = new QGLWidget();
+
        MainWindow mainWindow;
-       mainWindow.resize(mainWindow.sizeHint());
+       mainWindow.resize(QSize(1500, 810));
        mainWindow.show();
 
-       return app.exec();
+       app.installEventFilter(&mainWindow);  // For white balance color picking.
+
+       int rc = app.exec();
+       global_mixer->quit();
+       mainWindow.mixer_shutting_down();
+       delete global_mixer;
+       return rc;
 }