diff --git a/libxiv b/libxiv index 89ea054..319cc65 160000 --- a/libxiv +++ b/libxiv @@ -1 +1 @@ -Subproject commit 89ea0548ef3ac9d5773cf0037b9e16d772a350c7 +Subproject commit 319cc658d074680561278dc3824ce2dfa36fe29d diff --git a/mdlviewer/src/mainwindow.cpp b/mdlviewer/src/mainwindow.cpp index a12e78c..5f2c071 100644 --- a/mdlviewer/src/mainwindow.cpp +++ b/mdlviewer/src/mainwindow.cpp @@ -18,6 +18,8 @@ #include #include #include +#include +#include #include #include "gamedata.h" @@ -103,6 +105,20 @@ MainWindow::MainWindow(GameData& data) : data(data) { setWindowTitle("mdlviewer"); setMinimumSize(QSize(640, 480)); + auto fileMenu = menuBar()->addMenu("File"); + + auto openMDLFile = fileMenu->addAction("Open MDL..."); + connect(openMDLFile, &QAction::triggered, [=] { + auto fileName = QFileDialog::getOpenFileName(nullptr, + "Open MDL File", + "~", + "FFXIV Model File (*.mdl)"); + + loadedGear.model = parseMDL(read_file_to_buffer(fileName.toStdString())); + + reloadGearAppearance(); + }); + auto dummyWidget = new QWidget(); setCentralWidget(dummyWidget);