private void ckb_CheckedChanged(object sender, EventArgs e) { if (!loaded) { return; } try { this.Enabled = false; Application.UseWaitCursor = true; Application.DoEvents(); ddsFile.HSVShift = hsvShift; image = ddsFile.GetImage(ckbR.Checked, ckbG.Checked, ckbB.Checked, ckbA.Checked, ckbI.Checked); pictureBox1.Image = doResize(); } finally { this.Enabled = true; Application.UseWaitCursor = false; Application.DoEvents(); } if (sender != null) { if (sender == ckbR) { Channel1 = ckbR.Checked; } if (sender == ckbG) { Channel2 = ckbG.Checked; } if (sender == ckbB) { Channel3 = ckbB.Checked; } if (sender == ckbA) { Channel4 = ckbA.Checked; } if (sender == ckbI) { InvertCh4 = ckbI.Checked; } } }
private void TransformGo_button_Click(object sender, EventArgs e) { Wait_label.Visible = true; Wait_label.Refresh(); dds.SetPixels(TatTransform); if (Black2Red_radioButton.Checked) { ChannelG_checkBox.Checked = false; ChannelB_checkBox.Checked = false; ChannelA_checkBox.Checked = false; } if (Black2Alpha_radioButton.Checked) { for (int i = 0; i < 3; i++) { presets[i].aChannelHue = 0x00000000; Presets_dataGridView.Rows[i].Cells["ChannelA"].Style.BackColor = presets[i].aChannelColor.SystemColor; } } else if (White2Alpha_radioButton.Checked) { for (int i = 0; i < 3; i++) { presets[i].aChannelHue = 0x00FFFFFF; Presets_dataGridView.Rows[i].Cells["ChannelA"].Style.BackColor = presets[i].aChannelColor.SystemColor; } } if (Resize_checkBox.Checked & !dds.Size.Equals(new Size(512, 512))) { Bitmap bits = dds.GetImage(true, true, true, true, false); int width = bits.Width; int height = bits.Height; float factorH = height / 512f; if (width == height) { dds = dds.Resize(new Size(512, 512)); } else if (width > height) { float factor = 512f / width; resizeSize = new Size(512, (int)(height * factor)); DdsFile tmp = new DdsFile(); tmp.CreateImage(dds, resizeSize.Width, resizeSize.Height, false); resizePixels = tmp.GetImage(true, true, true, true, false).ToARGBData(); dds = dds.Resize(new Size(512, 512)); dds.SetPixels(Resizer); } else if (width < height) { float factor = 512f / height; resizeSize = new Size((int)(width * factor), 512); DdsFile tmp = new DdsFile(); tmp.CreateImage(dds, resizeSize.Width, resizeSize.Height, false); resizePixels = tmp.GetImage(true, true, true, true, false).ToARGBData(); dds = dds.Resize(new Size(512, 512)); dds.SetPixels(Resizer); } } Update_DDSdisplay(); }