Closed avan06 closed 1 year ago
Quite a bit of features in one PR but they're mostly related...
(1) Looks and works fine, would maybe suggest making the splitter width a little bigger so it's easier to grab.
(2) It's a little weird that custom formats are only supported on import but not export, but people exporting with UnityPy will find it useful with only asset names for the filename will complain that batch import doesn't work. I can see this being useful for those people, although I think there should be a checkbox rather than asking the user every import for the format. Obviously there are issues with assets that share the same name, but there are some problems with the EndsWith
checking such as two assets ending with the same string:
In this case, all of the cybercorn
images tried to select ecybercorn.png
. I'd say leave this one out of the PR for now.
(3) Decompression works fine for bundles, but when saving a modified assets file, I don't get the mod file name.
(4) and (5) are fine.
New features have been added to the
Assets Info, Batch import, mainWindow, and MessageBox
windows, as follows:In the![AssetsInfo](https://user-images.githubusercontent.com/6281616/226113038-ef56041a-cf6d-4de9-a93c-a3b593117b5b.png)
Assets Info
window, a "Filter by
" field (filterByTextBox) and dropdown selection boxes for "Name, Container, Type, FileID, PathID
" (filterByComboBox) have been added, allowing users to customize the display conditions of assets based on their needs.In the![BatchImport](https://user-images.githubusercontent.com/6281616/226113060-15484e45-ecb7-4101-aca9-000251fdf554.png)
Batch import
window, a "Custom matching syntax
" field (matchByTextBox) has been added, allowing users to input their own matching syntax for greater flexibility in handling file name formats when importing data in batches. Custom matching syntax, default is "-{File}-{PathID}
", {Description}: assetName, {File}: assetFile, {PathID}: pathIdIn the
mainWindow
, features have been added to pre-fill file names when saving modified assets or bundle files with the string "-MOD
", when compressing files with the string "-compressed
", and when decompressing files with the string "-decompressed
". These features make it more convenient and efficient for users to perform these operations.In the
MessageBox
window, the window height will now automatically adjust based on the length of the message, with a height range between 90 and 300, in order to improve the user's experience.Since version 11 of the
Avalonia framework
has marked theFileSystemDialog
asobsolete
and recommends using theWindow.StorageProvider
API instead, all of the following APIs have been modified according to the official recommendations: OpenFileDialog => StorageProvider.OpenFilePickerAsync + FilePickerOpen Options OpenFolderDialog => StorageProvider.OpenFolderPickerAsync + FolderPickerOpenOptions SaveFileDialog => StorageProvider.SaveFilePickerAsync + FilePickerSaveOptions