mirror of
https://mirror.ghproxy.com/https://github.com/dexyfex/CodeWalker
synced 2024-11-22 23:12:59 +08:00
YtdForm improvements
This commit is contained in:
parent
8d30a1ff77
commit
947611765e
144
Forms/YtdForm.Designer.cs
generated
144
Forms/YtdForm.Designer.cs
generated
@ -31,6 +31,7 @@
|
|||||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(YtdForm));
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(YtdForm));
|
||||||
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
||||||
this.FileMenu = new System.Windows.Forms.ToolStripMenuItem();
|
this.FileMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.FileSaveAllMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.EditMenu = new System.Windows.Forms.ToolStripMenuItem();
|
this.EditMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.ViewMenu = new System.Windows.Forms.ToolStripMenuItem();
|
this.ViewMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
|
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
|
||||||
@ -47,13 +48,21 @@
|
|||||||
this.SelTextureNameTextBox = new System.Windows.Forms.TextBox();
|
this.SelTextureNameTextBox = new System.Windows.Forms.TextBox();
|
||||||
this.TextureTabControl = new System.Windows.Forms.TabControl();
|
this.TextureTabControl = new System.Windows.Forms.TabControl();
|
||||||
this.TextureTabPage = new System.Windows.Forms.TabPage();
|
this.TextureTabPage = new System.Windows.Forms.TabPage();
|
||||||
|
this.label1 = new System.Windows.Forms.Label();
|
||||||
|
this.SelTextureZoomCombo = new System.Windows.Forms.ComboBox();
|
||||||
|
this.SelTexturePanel = new System.Windows.Forms.Panel();
|
||||||
|
this.SelTexturePictureBox = new System.Windows.Forms.PictureBox();
|
||||||
this.SelTextureMipLabel = new System.Windows.Forms.Label();
|
this.SelTextureMipLabel = new System.Windows.Forms.Label();
|
||||||
this.SelTextureDimensionsLabel = new System.Windows.Forms.Label();
|
this.SelTextureDimensionsLabel = new System.Windows.Forms.Label();
|
||||||
this.SelTextureMipTrackBar = new System.Windows.Forms.TrackBar();
|
this.SelTextureMipTrackBar = new System.Windows.Forms.TrackBar();
|
||||||
this.label4 = new System.Windows.Forms.Label();
|
this.label4 = new System.Windows.Forms.Label();
|
||||||
this.SelTexturePictureBox = new System.Windows.Forms.PictureBox();
|
|
||||||
this.DetailsTabPage = new System.Windows.Forms.TabPage();
|
this.DetailsTabPage = new System.Windows.Forms.TabPage();
|
||||||
this.DetailsPropertyGrid = new CodeWalker.WinForms.PropertyGridFix();
|
this.DetailsPropertyGrid = new CodeWalker.WinForms.PropertyGridFix();
|
||||||
|
this.SaveFileDialog = new System.Windows.Forms.SaveFileDialog();
|
||||||
|
this.FolderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog();
|
||||||
|
this.FileSaveAsMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.ToolbarSaveAsMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.ToolbarSaveAllMenu = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.menuStrip1.SuspendLayout();
|
this.menuStrip1.SuspendLayout();
|
||||||
this.toolStrip1.SuspendLayout();
|
this.toolStrip1.SuspendLayout();
|
||||||
this.MainToolbar.SuspendLayout();
|
this.MainToolbar.SuspendLayout();
|
||||||
@ -63,8 +72,9 @@
|
|||||||
this.MainSplitContainer.SuspendLayout();
|
this.MainSplitContainer.SuspendLayout();
|
||||||
this.TextureTabControl.SuspendLayout();
|
this.TextureTabControl.SuspendLayout();
|
||||||
this.TextureTabPage.SuspendLayout();
|
this.TextureTabPage.SuspendLayout();
|
||||||
((System.ComponentModel.ISupportInitialize)(this.SelTextureMipTrackBar)).BeginInit();
|
this.SelTexturePanel.SuspendLayout();
|
||||||
((System.ComponentModel.ISupportInitialize)(this.SelTexturePictureBox)).BeginInit();
|
((System.ComponentModel.ISupportInitialize)(this.SelTexturePictureBox)).BeginInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.SelTextureMipTrackBar)).BeginInit();
|
||||||
this.DetailsTabPage.SuspendLayout();
|
this.DetailsTabPage.SuspendLayout();
|
||||||
this.SuspendLayout();
|
this.SuspendLayout();
|
||||||
//
|
//
|
||||||
@ -82,11 +92,23 @@
|
|||||||
//
|
//
|
||||||
// FileMenu
|
// FileMenu
|
||||||
//
|
//
|
||||||
this.FileMenu.Enabled = false;
|
this.FileMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.FileSaveAsMenu,
|
||||||
|
this.FileSaveAllMenu});
|
||||||
this.FileMenu.Name = "FileMenu";
|
this.FileMenu.Name = "FileMenu";
|
||||||
this.FileMenu.Size = new System.Drawing.Size(37, 20);
|
this.FileMenu.Size = new System.Drawing.Size(37, 20);
|
||||||
this.FileMenu.Text = "File";
|
this.FileMenu.Text = "File";
|
||||||
//
|
//
|
||||||
|
// FileSaveAllMenu
|
||||||
|
//
|
||||||
|
this.FileSaveAllMenu.Image = ((System.Drawing.Image)(resources.GetObject("FileSaveAllMenu.Image")));
|
||||||
|
this.FileSaveAllMenu.Name = "FileSaveAllMenu";
|
||||||
|
this.FileSaveAllMenu.ShortcutKeys = ((System.Windows.Forms.Keys)(((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Shift)
|
||||||
|
| System.Windows.Forms.Keys.S)));
|
||||||
|
this.FileSaveAllMenu.Size = new System.Drawing.Size(196, 22);
|
||||||
|
this.FileSaveAllMenu.Text = "Save All...";
|
||||||
|
this.FileSaveAllMenu.Click += new System.EventHandler(this.FileSaveAllMenu_Click);
|
||||||
|
//
|
||||||
// EditMenu
|
// EditMenu
|
||||||
//
|
//
|
||||||
this.EditMenu.Enabled = false;
|
this.EditMenu.Enabled = false;
|
||||||
@ -136,12 +158,15 @@
|
|||||||
// SaveButton
|
// SaveButton
|
||||||
//
|
//
|
||||||
this.SaveButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
this.SaveButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
|
||||||
this.SaveButton.Enabled = false;
|
this.SaveButton.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
|
this.ToolbarSaveAsMenu,
|
||||||
|
this.ToolbarSaveAllMenu});
|
||||||
this.SaveButton.Image = ((System.Drawing.Image)(resources.GetObject("SaveButton.Image")));
|
this.SaveButton.Image = ((System.Drawing.Image)(resources.GetObject("SaveButton.Image")));
|
||||||
this.SaveButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
this.SaveButton.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||||
this.SaveButton.Name = "SaveButton";
|
this.SaveButton.Name = "SaveButton";
|
||||||
this.SaveButton.Size = new System.Drawing.Size(32, 22);
|
this.SaveButton.Size = new System.Drawing.Size(32, 22);
|
||||||
this.SaveButton.Text = "Save YTD...";
|
this.SaveButton.Text = "Save YTD...";
|
||||||
|
this.SaveButton.ButtonClick += new System.EventHandler(this.SaveButton_ButtonClick);
|
||||||
//
|
//
|
||||||
// MainToolbar
|
// MainToolbar
|
||||||
//
|
//
|
||||||
@ -241,11 +266,13 @@
|
|||||||
//
|
//
|
||||||
// TextureTabPage
|
// TextureTabPage
|
||||||
//
|
//
|
||||||
|
this.TextureTabPage.Controls.Add(this.label1);
|
||||||
|
this.TextureTabPage.Controls.Add(this.SelTextureZoomCombo);
|
||||||
|
this.TextureTabPage.Controls.Add(this.SelTexturePanel);
|
||||||
this.TextureTabPage.Controls.Add(this.SelTextureMipLabel);
|
this.TextureTabPage.Controls.Add(this.SelTextureMipLabel);
|
||||||
this.TextureTabPage.Controls.Add(this.SelTextureDimensionsLabel);
|
this.TextureTabPage.Controls.Add(this.SelTextureDimensionsLabel);
|
||||||
this.TextureTabPage.Controls.Add(this.SelTextureMipTrackBar);
|
this.TextureTabPage.Controls.Add(this.SelTextureMipTrackBar);
|
||||||
this.TextureTabPage.Controls.Add(this.label4);
|
this.TextureTabPage.Controls.Add(this.label4);
|
||||||
this.TextureTabPage.Controls.Add(this.SelTexturePictureBox);
|
|
||||||
this.TextureTabPage.Location = new System.Drawing.Point(4, 22);
|
this.TextureTabPage.Location = new System.Drawing.Point(4, 22);
|
||||||
this.TextureTabPage.Name = "TextureTabPage";
|
this.TextureTabPage.Name = "TextureTabPage";
|
||||||
this.TextureTabPage.Padding = new System.Windows.Forms.Padding(3);
|
this.TextureTabPage.Padding = new System.Windows.Forms.Padding(3);
|
||||||
@ -254,6 +281,57 @@
|
|||||||
this.TextureTabPage.Text = "Texture";
|
this.TextureTabPage.Text = "Texture";
|
||||||
this.TextureTabPage.UseVisualStyleBackColor = true;
|
this.TextureTabPage.UseVisualStyleBackColor = true;
|
||||||
//
|
//
|
||||||
|
// label1
|
||||||
|
//
|
||||||
|
this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.label1.AutoSize = true;
|
||||||
|
this.label1.Location = new System.Drawing.Point(452, 426);
|
||||||
|
this.label1.Name = "label1";
|
||||||
|
this.label1.Size = new System.Drawing.Size(37, 13);
|
||||||
|
this.label1.TabIndex = 54;
|
||||||
|
this.label1.Text = "Zoom:";
|
||||||
|
//
|
||||||
|
// SelTextureZoomCombo
|
||||||
|
//
|
||||||
|
this.SelTextureZoomCombo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.SelTextureZoomCombo.FormattingEnabled = true;
|
||||||
|
this.SelTextureZoomCombo.Items.AddRange(new object[] {
|
||||||
|
"Fill",
|
||||||
|
"100%",
|
||||||
|
"200%"});
|
||||||
|
this.SelTextureZoomCombo.Location = new System.Drawing.Point(495, 423);
|
||||||
|
this.SelTextureZoomCombo.Name = "SelTextureZoomCombo";
|
||||||
|
this.SelTextureZoomCombo.Size = new System.Drawing.Size(69, 21);
|
||||||
|
this.SelTextureZoomCombo.TabIndex = 53;
|
||||||
|
this.SelTextureZoomCombo.Text = "Fill";
|
||||||
|
this.SelTextureZoomCombo.TextChanged += new System.EventHandler(this.SelTextureZoomCombo_TextChanged);
|
||||||
|
//
|
||||||
|
// SelTexturePanel
|
||||||
|
//
|
||||||
|
this.SelTexturePanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Left)
|
||||||
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
|
this.SelTexturePanel.AutoScroll = true;
|
||||||
|
this.SelTexturePanel.BackColor = System.Drawing.Color.DarkGray;
|
||||||
|
this.SelTexturePanel.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("SelTexturePanel.BackgroundImage")));
|
||||||
|
this.SelTexturePanel.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
|
||||||
|
this.SelTexturePanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||||
|
this.SelTexturePanel.Controls.Add(this.SelTexturePictureBox);
|
||||||
|
this.SelTexturePanel.Location = new System.Drawing.Point(6, 6);
|
||||||
|
this.SelTexturePanel.Name = "SelTexturePanel";
|
||||||
|
this.SelTexturePanel.Size = new System.Drawing.Size(559, 408);
|
||||||
|
this.SelTexturePanel.TabIndex = 52;
|
||||||
|
//
|
||||||
|
// SelTexturePictureBox
|
||||||
|
//
|
||||||
|
this.SelTexturePictureBox.BackColor = System.Drawing.Color.Transparent;
|
||||||
|
this.SelTexturePictureBox.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.SelTexturePictureBox.Name = "SelTexturePictureBox";
|
||||||
|
this.SelTexturePictureBox.Size = new System.Drawing.Size(133, 96);
|
||||||
|
this.SelTexturePictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
|
||||||
|
this.SelTexturePictureBox.TabIndex = 45;
|
||||||
|
this.SelTexturePictureBox.TabStop = false;
|
||||||
|
//
|
||||||
// SelTextureMipLabel
|
// SelTextureMipLabel
|
||||||
//
|
//
|
||||||
this.SelTextureMipLabel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
this.SelTextureMipLabel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
|
||||||
@ -298,20 +376,6 @@
|
|||||||
this.label4.TabIndex = 47;
|
this.label4.TabIndex = 47;
|
||||||
this.label4.Text = "Mip:";
|
this.label4.Text = "Mip:";
|
||||||
//
|
//
|
||||||
// SelTexturePictureBox
|
|
||||||
//
|
|
||||||
this.SelTexturePictureBox.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
|
||||||
| System.Windows.Forms.AnchorStyles.Left)
|
|
||||||
| System.Windows.Forms.AnchorStyles.Right)));
|
|
||||||
this.SelTexturePictureBox.BackColor = System.Drawing.Color.DarkGray;
|
|
||||||
this.SelTexturePictureBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
|
||||||
this.SelTexturePictureBox.Location = new System.Drawing.Point(6, 6);
|
|
||||||
this.SelTexturePictureBox.Name = "SelTexturePictureBox";
|
|
||||||
this.SelTexturePictureBox.Size = new System.Drawing.Size(558, 408);
|
|
||||||
this.SelTexturePictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
|
|
||||||
this.SelTexturePictureBox.TabIndex = 45;
|
|
||||||
this.SelTexturePictureBox.TabStop = false;
|
|
||||||
//
|
|
||||||
// DetailsTabPage
|
// DetailsTabPage
|
||||||
//
|
//
|
||||||
this.DetailsTabPage.Controls.Add(this.DetailsPropertyGrid);
|
this.DetailsTabPage.Controls.Add(this.DetailsPropertyGrid);
|
||||||
@ -334,6 +398,35 @@
|
|||||||
this.DetailsPropertyGrid.Size = new System.Drawing.Size(558, 445);
|
this.DetailsPropertyGrid.Size = new System.Drawing.Size(558, 445);
|
||||||
this.DetailsPropertyGrid.TabIndex = 0;
|
this.DetailsPropertyGrid.TabIndex = 0;
|
||||||
//
|
//
|
||||||
|
// SaveFileDialog
|
||||||
|
//
|
||||||
|
this.SaveFileDialog.Filter = "DDS files|*.dds|All files|*.*";
|
||||||
|
//
|
||||||
|
// FileSaveAsMenu
|
||||||
|
//
|
||||||
|
this.FileSaveAsMenu.Image = ((System.Drawing.Image)(resources.GetObject("FileSaveAsMenu.Image")));
|
||||||
|
this.FileSaveAsMenu.Name = "FileSaveAsMenu";
|
||||||
|
this.FileSaveAsMenu.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.S)));
|
||||||
|
this.FileSaveAsMenu.Size = new System.Drawing.Size(196, 22);
|
||||||
|
this.FileSaveAsMenu.Text = "Save As...";
|
||||||
|
this.FileSaveAsMenu.Click += new System.EventHandler(this.FileSaveAsMenu_Click);
|
||||||
|
//
|
||||||
|
// ToolbarSaveAsMenu
|
||||||
|
//
|
||||||
|
this.ToolbarSaveAsMenu.Image = ((System.Drawing.Image)(resources.GetObject("ToolbarSaveAsMenu.Image")));
|
||||||
|
this.ToolbarSaveAsMenu.Name = "ToolbarSaveAsMenu";
|
||||||
|
this.ToolbarSaveAsMenu.Size = new System.Drawing.Size(152, 22);
|
||||||
|
this.ToolbarSaveAsMenu.Text = "Save as...";
|
||||||
|
this.ToolbarSaveAsMenu.Click += new System.EventHandler(this.ToolbarSaveAsMenu_Click);
|
||||||
|
//
|
||||||
|
// ToolbarSaveAllMenu
|
||||||
|
//
|
||||||
|
this.ToolbarSaveAllMenu.Image = ((System.Drawing.Image)(resources.GetObject("ToolbarSaveAllMenu.Image")));
|
||||||
|
this.ToolbarSaveAllMenu.Name = "ToolbarSaveAllMenu";
|
||||||
|
this.ToolbarSaveAllMenu.Size = new System.Drawing.Size(152, 22);
|
||||||
|
this.ToolbarSaveAllMenu.Text = "Save All...";
|
||||||
|
this.ToolbarSaveAllMenu.Click += new System.EventHandler(this.ToolbarSaveAllMenu_Click);
|
||||||
|
//
|
||||||
// YtdForm
|
// YtdForm
|
||||||
//
|
//
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
@ -361,8 +454,10 @@
|
|||||||
this.TextureTabControl.ResumeLayout(false);
|
this.TextureTabControl.ResumeLayout(false);
|
||||||
this.TextureTabPage.ResumeLayout(false);
|
this.TextureTabPage.ResumeLayout(false);
|
||||||
this.TextureTabPage.PerformLayout();
|
this.TextureTabPage.PerformLayout();
|
||||||
((System.ComponentModel.ISupportInitialize)(this.SelTextureMipTrackBar)).EndInit();
|
this.SelTexturePanel.ResumeLayout(false);
|
||||||
|
this.SelTexturePanel.PerformLayout();
|
||||||
((System.ComponentModel.ISupportInitialize)(this.SelTexturePictureBox)).EndInit();
|
((System.ComponentModel.ISupportInitialize)(this.SelTexturePictureBox)).EndInit();
|
||||||
|
((System.ComponentModel.ISupportInitialize)(this.SelTextureMipTrackBar)).EndInit();
|
||||||
this.DetailsTabPage.ResumeLayout(false);
|
this.DetailsTabPage.ResumeLayout(false);
|
||||||
this.ResumeLayout(false);
|
this.ResumeLayout(false);
|
||||||
this.PerformLayout();
|
this.PerformLayout();
|
||||||
@ -396,5 +491,14 @@
|
|||||||
private System.Windows.Forms.ListView TexturesListView;
|
private System.Windows.Forms.ListView TexturesListView;
|
||||||
private System.Windows.Forms.ColumnHeader TextureNameColumnHeader;
|
private System.Windows.Forms.ColumnHeader TextureNameColumnHeader;
|
||||||
private System.Windows.Forms.ColumnHeader TextureSizeColumnHeader;
|
private System.Windows.Forms.ColumnHeader TextureSizeColumnHeader;
|
||||||
|
private System.Windows.Forms.Panel SelTexturePanel;
|
||||||
|
private System.Windows.Forms.Label label1;
|
||||||
|
private System.Windows.Forms.ComboBox SelTextureZoomCombo;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem FileSaveAllMenu;
|
||||||
|
private System.Windows.Forms.SaveFileDialog SaveFileDialog;
|
||||||
|
private System.Windows.Forms.FolderBrowserDialog FolderBrowserDialog;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem FileSaveAsMenu;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem ToolbarSaveAsMenu;
|
||||||
|
private System.Windows.Forms.ToolStripMenuItem ToolbarSaveAllMenu;
|
||||||
}
|
}
|
||||||
}
|
}
|
136
Forms/YtdForm.cs
136
Forms/YtdForm.cs
@ -6,6 +6,7 @@ using System.ComponentModel;
|
|||||||
using System.Data;
|
using System.Data;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
using System.Drawing.Imaging;
|
using System.Drawing.Imaging;
|
||||||
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
@ -19,6 +20,9 @@ namespace CodeWalker.Forms
|
|||||||
private string fileName;
|
private string fileName;
|
||||||
private YtdFile Ytd { get; set; }
|
private YtdFile Ytd { get; set; }
|
||||||
private TextureDictionary TexDict { get; set; }
|
private TextureDictionary TexDict { get; set; }
|
||||||
|
private Texture CurrentTexture = null;
|
||||||
|
private float CurrentZoom = 0.0f; //1.0 = 100%, 0.0 = stretch
|
||||||
|
|
||||||
|
|
||||||
public YtdForm()
|
public YtdForm()
|
||||||
{
|
{
|
||||||
@ -90,6 +94,9 @@ namespace CodeWalker.Forms
|
|||||||
|
|
||||||
private void ShowTextureMip(Texture tex, int mip, bool mipchange)
|
private void ShowTextureMip(Texture tex, int mip, bool mipchange)
|
||||||
{
|
{
|
||||||
|
CurrentTexture = tex;
|
||||||
|
UpdateSaveAs();
|
||||||
|
|
||||||
if (tex == null)
|
if (tex == null)
|
||||||
{
|
{
|
||||||
SelTexturePictureBox.Image = null;
|
SelTexturePictureBox.Image = null;
|
||||||
@ -157,6 +164,7 @@ namespace CodeWalker.Forms
|
|||||||
SelTexturePictureBox.Image = null;
|
SelTexturePictureBox.Image = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
UpdateZoom();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -171,6 +179,92 @@ namespace CodeWalker.Forms
|
|||||||
StatusLabel.Text = text;
|
StatusLabel.Text = text;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void UpdateZoom()
|
||||||
|
{
|
||||||
|
//update the image controls for the current zoom level
|
||||||
|
|
||||||
|
var img = SelTexturePictureBox.Image;
|
||||||
|
|
||||||
|
if (CurrentZoom <= 0.0f)
|
||||||
|
{
|
||||||
|
//stretch image to fit the area available.
|
||||||
|
SelTexturePanel.AutoScroll = false;
|
||||||
|
SelTexturePictureBox.SizeMode = PictureBoxSizeMode.Zoom;
|
||||||
|
SelTexturePictureBox.Width = SelTexturePanel.Width - 2;
|
||||||
|
SelTexturePictureBox.Height = SelTexturePanel.Height - 2;
|
||||||
|
SelTexturePictureBox.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
//zoom to the given pixel ratio...
|
||||||
|
var w = (int)(img.Width * CurrentZoom);
|
||||||
|
var h = (int)(img.Height * CurrentZoom);
|
||||||
|
SelTexturePictureBox.Anchor = AnchorStyles.Top | AnchorStyles.Left;
|
||||||
|
SelTexturePictureBox.SizeMode = PictureBoxSizeMode.StretchImage;
|
||||||
|
SelTexturePictureBox.Width = w;
|
||||||
|
SelTexturePictureBox.Height = h;
|
||||||
|
SelTexturePanel.AutoScroll = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
private void UpdateSaveAs()
|
||||||
|
{
|
||||||
|
if (CurrentTexture == null)
|
||||||
|
{
|
||||||
|
FileSaveAsMenu.Text = "Save As...";
|
||||||
|
ToolbarSaveAsMenu.Text = "Save As...";
|
||||||
|
FileSaveAsMenu.Enabled = false;
|
||||||
|
ToolbarSaveAsMenu.Enabled = false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
string fname = CurrentTexture.Name + ".dds";
|
||||||
|
string sas = "Save " + fname + " As...";
|
||||||
|
FileSaveAsMenu.Text = sas;
|
||||||
|
ToolbarSaveAsMenu.Text = sas;
|
||||||
|
FileSaveAsMenu.Enabled = true;
|
||||||
|
ToolbarSaveAsMenu.Enabled = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void SaveAs()
|
||||||
|
{
|
||||||
|
if (CurrentTexture == null) return;
|
||||||
|
string fname = CurrentTexture.Name + ".dds";
|
||||||
|
SaveFileDialog.FileName = fname;
|
||||||
|
if (SaveFileDialog.ShowDialog() != DialogResult.OK) return;
|
||||||
|
string fpath = SaveFileDialog.FileName;
|
||||||
|
byte[] dds = DDSIO.GetDDSFile(CurrentTexture);
|
||||||
|
File.WriteAllBytes(fpath, dds);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SaveAll()
|
||||||
|
{
|
||||||
|
if (TexDict?.Textures?.data_items == null) return;
|
||||||
|
if (FolderBrowserDialog.ShowDialog() != DialogResult.OK) return;
|
||||||
|
var folder = FolderBrowserDialog.SelectedPath;
|
||||||
|
foreach (var tex in TexDict.Textures.data_items)
|
||||||
|
{
|
||||||
|
byte[] dds = DDSIO.GetDDSFile(tex);
|
||||||
|
string bpath = folder + "\\" + tex.Name;
|
||||||
|
string fpath = bpath + ".dds";
|
||||||
|
int c = 1;
|
||||||
|
while (File.Exists(fpath))
|
||||||
|
{
|
||||||
|
fpath = bpath + "_Copy" + c.ToString() + ".dds";
|
||||||
|
c++;
|
||||||
|
}
|
||||||
|
File.WriteAllBytes(fpath, dds);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private void TexturesListView_SelectedIndexChanged(object sender, EventArgs e)
|
private void TexturesListView_SelectedIndexChanged(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
@ -192,5 +286,47 @@ namespace CodeWalker.Forms
|
|||||||
SelTextureMipLabel.Text = SelTextureMipTrackBar.Value.ToString();
|
SelTextureMipLabel.Text = SelTextureMipTrackBar.Value.ToString();
|
||||||
ShowTextureMip(tex, SelTextureMipTrackBar.Value, true);
|
ShowTextureMip(tex, SelTextureMipTrackBar.Value, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void SelTextureZoomCombo_TextChanged(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
string s = SelTextureZoomCombo.Text;
|
||||||
|
if (s.EndsWith("%")) s = s.Substring(0, s.Length - 1);
|
||||||
|
|
||||||
|
float f;
|
||||||
|
if (!float.TryParse(s, out f))
|
||||||
|
{
|
||||||
|
CurrentZoom = 0.0f;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
CurrentZoom = Math.Min(Math.Max(f, 0.0f), 5000.0f) * 0.01f;
|
||||||
|
}
|
||||||
|
UpdateZoom();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void FileSaveAllMenu_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
SaveAll();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void FileSaveAsMenu_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
SaveAs();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SaveButton_ButtonClick(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
SaveAs();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ToolbarSaveAsMenu_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
SaveAs();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ToolbarSaveAllMenu_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
SaveAll();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -120,10 +120,26 @@
|
|||||||
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>17, 17</value>
|
<value>17, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="FileSaveAsMenu.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAABUSURBVDhPY/j//z9FGEx8+/btPwn4PRAbMAABigFOTk5w
|
||||||
|
/OH9RzhGFgPRbW1tcEPIMgCEYYaQbQAIg/QQZQAyRlZDWwOIwaMGDEoDyMFwA8jH/xkAuAOq5KQIy40A
|
||||||
|
AAAASUVORK5CYII=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="FileSaveAllMenu.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||||
|
wwAADsMBx2+oZAAAAHZJREFUOE/tkLENwCAMBBkpMzCcF2IwgmTRJnpiSyhgQ5EyLx128VzhYKXWejlk
|
||||||
|
Zj6kOg+KMcbGmUtDdyJaSzwBpkqkPmYm6EUAHamP6QUW3wjwWKSUph8VdNxj4VCeZCnA9CSmoBdp0WL/
|
||||||
|
WFZ+wSPYQeqvhHADNufwigti+3EAAAAASUVORK5CYII=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>132, 17</value>
|
<value>132, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
|
||||||
<data name="NewButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
<data name="NewButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
<value>
|
<value>
|
||||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
@ -143,6 +159,22 @@
|
|||||||
ajugDypMiBJQluU3f2DiZ+YmT3eANWIyIyKgFsv/AOs2k4wSgIXneRBFEaRpyhew10ZbwNb3fU1oYrPe
|
ajugDypMiBJQluU3f2DiZ+YmT3eANWIyIyKgFsv/AOs2k4wSgIXneRBFEaRpyhew10ZbwNb3fU1oYrPe
|
||||||
qAF5no/CMNSEJsbjiRqAty9JEk1ownEcNaA6BeK6riY2cdgf+SwC2Gf8BEGgCU2slis+iwB2mQZ4Ak3h
|
qAF5no/CMNSEJsbjiRqAty9JEk1ownEcNaA6BeK6riY2cdgf+SwC2Gf8BEGgCU2slis+iwB2mQZ4Ak3h
|
||||||
K0QAIeQTi/cp4B9tCZE2c6oRhQAAAABJRU5ErkJggg==
|
K0QAIeQTi/cp4B9tCZE2c6oRhQAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="ToolbarSaveAsMenu.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAABUSURBVDhPY/j//z9FGEx8+/btPwn4PRAbMAABigFOTk5w
|
||||||
|
/OH9RzhGFgPRbW1tcEPIMgCEYYaQbQAIg/QQZQAyRlZDWwOIwaMGDEoDyMFwA8jH/xkAuAOq5KQIy40A
|
||||||
|
AAAASUVORK5CYII=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="ToolbarSaveAllMenu.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||||
|
wwAADsMBx2+oZAAAAHZJREFUOE/tkLENwCAMBBkpMzCcF2IwgmTRJnpiSyhgQ5EyLx128VzhYKXWejlk
|
||||||
|
Zj6kOg+KMcbGmUtDdyJaSzwBpkqkPmYm6EUAHamP6QUW3wjwWKSUph8VdNxj4VCeZCnA9CSmoBdp0WL/
|
||||||
|
WFZ+wSPYQeqvhHADNufwigti+3EAAAAASUVORK5CYII=
|
||||||
</value>
|
</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="SaveButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
<data name="SaveButton.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
@ -156,6 +188,36 @@
|
|||||||
<metadata name="MainToolbar.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="MainToolbar.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>237, 17</value>
|
<value>237, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
|
<data name="SelTexturePanel.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAAAEAAAQACAIAAACvZKRoAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||||
|
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAQUSURBVFhHlYvZVipJEEXj/xcIoqLgBI6IIyoO4IB4
|
||||||
|
HQAVEdTf6XMiMqsSuui7+mGvvU9klfz+/soPoGN+7PZDrH9ws2+50bjrt7TrH36Lf8x/4dvzLd96g7HZ
|
||||||
|
32zdwU07vE9hNIJHMtL+lhFQ6w3ozazf8XvdCQzjHgYejob6pj0cgrCn8SVf9NeXoe3u8BduhHff0xjQ
|
||||||
|
A8fXQPcATXgbDHAD+uY6iU/6022YW2F/fhp8G7geo+9A9z+lr+5LPwTvfbzx7t8+/JvfH/7+oW903/cH
|
||||||
|
nMD7xztAv5vf39k0thJ2wFvYb/IGv/HmeOMtkZ65BxNu7TfpoXtowpvvXrcnXQd3t9fFrWu3sNUJdMwd
|
||||||
|
uNPpqHnT7nbQvHXkVf0qnVfbnddXu9G8qf+DF/PL64u8vADvRJ7l2ffzs22YhD3GU9hP8JM8wYTNm9/k
|
||||||
|
j/qPswf7z995jPwoj49TaNNtuC1t7Da6PdkBDw7thwfg7w/S5obtHtMirZZ1i7ulO3IS9/dyr7TMLeIa
|
||||||
|
3Pn3u7jv2Hd32A72BLfet8bd7a1repwb+uYGBjfWt/ANb2M0x2k2pancSHNsGw3SoBvSbDR009oB1wGN
|
||||||
|
69DXcn0dcqW+Uq4U2+gr22rHpXIpV5cErR5v2nNxMb4vucHFxYW+mT11dZ2u09ZKfYLzupzD53C9fo4G
|
||||||
|
546wyRl9JmeTnMWcRj6Vs1P2qWs4gRpd866pa9xobr15TgKfnMgJTGo19gTHvo/lGD7m1hs3OA45chzL
|
||||||
|
ETnyHCVySA4PIx+xD9nuTg5iHxwcAPjwINjT2d/fl4P9ce+7e0h1vwpXpVrFrtLW5mT2qnuyt0fQak/F
|
||||||
|
XNmTCtBdialMsluR3couDNTcAHsqO+ad3R1jZwc7bmU7Zht7W3sb7WDzTe3Zku0tY2tr2+GbJptRbzq2
|
||||||
|
NuFN3AG96fZGtDdkc8PtDbR720AbbFBml90tdhku0+VJSlGXSMlchsulku2oY9bXnUvr2uvavHMns0bW
|
||||||
|
1mR9jbY2wgarDvTq2qqsuq2tO2TFWLG9Qit2415Br+AbNVlekWXX9DK2Nr287G7wGEVZLloXHXovFqWI
|
||||||
|
u+GbDigUpVAsSAEu0p6CB++ul7yXvJekgFYX2Ev4Jr55FiMWZWkRt0UYvYheZAN94zdskHeOyJM8Oi95
|
||||||
|
dB6d1zb4xn/8jlgIvLCgLJB80BHzDtvzDu153AP8ppOYm5+T+Tkaew7tbgr2VHIkF9xyksPO4U7zzfe/
|
||||||
|
mDVmCTbJ5WaD+6ySc1b4XbhDsrOSnbhls1nAO53FN+bJjskYmaxkMhlA2z3jv9G7f0vqcWYiZpTMDO5g
|
||||||
|
ZsZa39D/j7Sk02lrOA1z+5va7TS/1e/jb5JJqVNwKoUNtHnndvdU8E0qxXdzmh3ZvXlSqX8AvThRdO5j
|
||||||
|
+6sAAAAASUVORK5CYII=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<metadata name="SaveFileDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>358, 17</value>
|
||||||
|
</metadata>
|
||||||
|
<metadata name="FolderBrowserDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>489, 17</value>
|
||||||
|
</metadata>
|
||||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
<value>
|
<value>
|
||||||
AAABAAMAICAAAAAAGACoDAAANgAAABAQAAAAABgAaAMAAN4MAABAQAAAAAAYACgyAABGEAAAKAAAACAA
|
AAABAAMAICAAAAAAGACoDAAANgAAABAQAAAAABgAaAMAAN4MAABAQAAAAAAYACgyAABGEAAAKAAAACAA
|
||||||
|
Loading…
Reference in New Issue
Block a user