diff --git a/app/mainwindow.cpp b/app/mainwindow.cpp
index e81739c..94d4b79 100644
--- a/app/mainwindow.cpp
+++ b/app/mainwindow.cpp
@@ -7,7 +7,7 @@
#include "stringtableviewer.h"
#include "techsetviewer.h"
#include "ui_mainwindow.h"
-#include "compressor.h"
+#include "compression.h"
#include "iwifile.h"
#include "ddsfile.h"
#include "statusbarmanager.h"
@@ -160,7 +160,10 @@ MainWindow::MainWindow(QWidget *parent)
}
}
- ui->tabWidget->addTab(scriptEditor, fileStem);
+ QScrollArea *scrollArea = new QScrollArea(ui->tabWidget);
+ scrollArea->layout()->addWidget(scriptEditor);
+
+ ui->tabWidget->addTab(scrollArea, fileStem);
ui->tabWidget->setTabIcon(ui->tabWidget->count() - 1, QIcon(":/icons/icons/Icon_GSCFile.png"));
ui->tabWidget->setCurrentIndex(ui->tabWidget->count() - 1);
});
@@ -290,7 +293,19 @@ MainWindow::MainWindow(QWidget *parent)
}
}
- ui->tabWidget->addTab(zoneFileViewer, fileStem);
+ QWidget *containerWidget = new QWidget();
+ QVBoxLayout *layout = new QVBoxLayout(containerWidget);
+ layout->addWidget(zoneFileViewer);
+ containerWidget->setLayout(layout);
+
+ // Create a scroll area and set its properties
+ QScrollArea *scrollArea = new QScrollArea(ui->tabWidget);
+ scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
+ scrollArea->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
+ scrollArea->setWidgetResizable(true); // Important to allow resizing
+ scrollArea->setWidget(containerWidget);
+
+ ui->tabWidget->addTab(scrollArea, fileStem);
ui->tabWidget->setTabIcon(ui->tabWidget->count() - 1, QIcon(":/icons/icons/Icon_ZoneFile.png"));
ui->tabWidget->setCurrentIndex(ui->tabWidget->count() - 1);
});
@@ -740,7 +755,7 @@ int MainWindow::LoadFile_IPAK(const QString aFilePath) {
QString outputFilePath = outputFolder.filePath(QString("%1.iwi").arg(j));
if (command.compressed) {
- data = Compressor::DecompressLZO(data);
+ data = Compression::DecompressLZO(data);
}
QFile outputFile(outputFilePath);
if (!outputFile.open(QIODevice::WriteOnly)) {
@@ -834,9 +849,9 @@ void MainWindow::dropEvent(QDropEvent *event) {
foreach (const QUrl url, mimeData->urls()) {
const QString urlStr = url.toLocalFile();
if (urlStr.contains(".zone")) {
- OpenZoneFile(urlStr);
+ qDebug() << "OpenZoneFile Returned: " << OpenZoneFile(urlStr);
} else if (urlStr.contains(".ff")) {
- OpenFastFile(urlStr);
+ qDebug() << "OpenFastFile Returned: " << OpenFastFile(urlStr);
} else if (urlStr.contains(".ipak")) {
qDebug() << "LoadFile_IPAK Returned: " << LoadFile_IPAK(urlStr);
} else if (urlStr.contains(".xsub")) {
@@ -857,11 +872,11 @@ void MainWindow::dropEvent(QDropEvent *event) {
qDebug() << "LZO: Failed to read file!";
continue;
}
- QByteArray data = Compressor::DecompressLZO(lzoFile.readAll());
+ QByteArray data = Compression::DecompressLZO(lzoFile.readAll());
lzoFile.close();
if (data.isEmpty()) {
- qDebug() << "LZO: Decompressor gave empty result!";
+ qDebug() << "LZO: Decompression gave empty result!";
continue;
}
diff --git a/app/mainwindow.ui b/app/mainwindow.ui
index 184418c..1e1b164 100644
--- a/app/mainwindow.ui
+++ b/app/mainwindow.ui
@@ -136,7 +136,7 @@
-
+
:/icons/icons/Icon_NewFile.png:/icons/icons/Icon_NewFile.png
@@ -145,7 +145,7 @@
-
+
:/icons/icons/Icon_NewFile.png:/icons/icons/Icon_NewFile.png
@@ -154,7 +154,7 @@
-
+
:/icons/icons/Icon_NewFile.png:/icons/icons/Icon_NewFile.png
@@ -163,7 +163,7 @@
-
+
:/icons/icons/Icon_OpenFile.png:/icons/icons/Icon_OpenFile.png
@@ -172,7 +172,7 @@
-
+
:/icons/icons/Icon_OpenFile.png:/icons/icons/Icon_OpenFile.png
@@ -181,7 +181,7 @@
-
+
:/icons/icons/Icon_OpenFile.png:/icons/icons/Icon_OpenFile.png
@@ -190,7 +190,7 @@
-
+
:/icons/icons/Icon_Save.png:/icons/icons/Icon_Save.png
@@ -259,7 +259,7 @@
-
+
:/icons/icons/Icon_Cut.png:/icons/icons/Icon_Cut.png
@@ -268,7 +268,7 @@
-
+
:/icons/icons/Icon_Copy.png:/icons/icons/Icon_Copy.png
@@ -277,7 +277,7 @@
-
+
:/icons/icons/Icon_Paste.png:/icons/icons/Icon_Paste.png
@@ -341,7 +341,7 @@
-
+
:/icons/icons/Icon_Find.png:/icons/icons/Icon_Find.png
@@ -355,7 +355,7 @@
-
+