Update main app and ui.

This commit is contained in:
= 2025-04-04 20:38:57 -04:00
parent 14aff8ce2e
commit 099dbe4a80
2 changed files with 35 additions and 20 deletions

View File

@ -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;
}

View File

@ -136,7 +136,7 @@
<widget class="QStatusBar" name="statusBar"/>
<action name="actionNew_File_2">
<property name="icon">
<iconset resource="data/data.qrc">
<iconset resource="../data/data.qrc">
<normaloff>:/icons/icons/Icon_NewFile.png</normaloff>:/icons/icons/Icon_NewFile.png</iconset>
</property>
<property name="text">
@ -145,7 +145,7 @@
</action>
<action name="actionNew_Fast_File">
<property name="icon">
<iconset resource="data/data.qrc">
<iconset resource="../data/data.qrc">
<normaloff>:/icons/icons/Icon_NewFile.png</normaloff>:/icons/icons/Icon_NewFile.png</iconset>
</property>
<property name="text">
@ -154,7 +154,7 @@
</action>
<action name="actionNew_Zone_File">
<property name="icon">
<iconset resource="data/data.qrc">
<iconset resource="../data/data.qrc">
<normaloff>:/icons/icons/Icon_NewFile.png</normaloff>:/icons/icons/Icon_NewFile.png</iconset>
</property>
<property name="text">
@ -163,7 +163,7 @@
</action>
<action name="actionOpen_Fast_File">
<property name="icon">
<iconset resource="data/data.qrc">
<iconset resource="../data/data.qrc">
<normaloff>:/icons/icons/Icon_OpenFile.png</normaloff>:/icons/icons/Icon_OpenFile.png</iconset>
</property>
<property name="text">
@ -172,7 +172,7 @@
</action>
<action name="actionOpen_Zone_File">
<property name="icon">
<iconset resource="data/data.qrc">
<iconset resource="../data/data.qrc">
<normaloff>:/icons/icons/Icon_OpenFile.png</normaloff>:/icons/icons/Icon_OpenFile.png</iconset>
</property>
<property name="text">
@ -181,7 +181,7 @@
</action>
<action name="actionOpen_Folder">
<property name="icon">
<iconset resource="data/data.qrc">
<iconset resource="../data/data.qrc">
<normaloff>:/icons/icons/Icon_OpenFile.png</normaloff>:/icons/icons/Icon_OpenFile.png</iconset>
</property>
<property name="text">
@ -190,7 +190,7 @@
</action>
<action name="actionSave">
<property name="icon">
<iconset resource="data/data.qrc">
<iconset resource="../data/data.qrc">
<normaloff>:/icons/icons/Icon_Save.png</normaloff>:/icons/icons/Icon_Save.png</iconset>
</property>
<property name="text">
@ -259,7 +259,7 @@
</action>
<action name="actionCut">
<property name="icon">
<iconset resource="data/data.qrc">
<iconset resource="../data/data.qrc">
<normaloff>:/icons/icons/Icon_Cut.png</normaloff>:/icons/icons/Icon_Cut.png</iconset>
</property>
<property name="text">
@ -268,7 +268,7 @@
</action>
<action name="actionCopy">
<property name="icon">
<iconset resource="data/data.qrc">
<iconset resource="../data/data.qrc">
<normaloff>:/icons/icons/Icon_Copy.png</normaloff>:/icons/icons/Icon_Copy.png</iconset>
</property>
<property name="text">
@ -277,7 +277,7 @@
</action>
<action name="actionPaste">
<property name="icon">
<iconset resource="data/data.qrc">
<iconset resource="../data/data.qrc">
<normaloff>:/icons/icons/Icon_Paste.png</normaloff>:/icons/icons/Icon_Paste.png</iconset>
</property>
<property name="text">
@ -341,7 +341,7 @@
</action>
<action name="actionFind_2">
<property name="icon">
<iconset resource="data/data.qrc">
<iconset resource="../data/data.qrc">
<normaloff>:/icons/icons/Icon_Find.png</normaloff>:/icons/icons/Icon_Find.png</iconset>
</property>
<property name="text">
@ -355,7 +355,7 @@
</action>
</widget>
<resources>
<include location="data/data.qrc"/>
<include location="../data/data.qrc"/>
</resources>
<connections/>
</ui>