using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using PaintDotNet.Base.SettingModel; using PaintDotNet.Camera; namespace PaintDotNet.ImageCollect { public partial class CommonRotateControl : UserControl { private ICamera m_camera => CameraManager.CurrentCamera; private CameraParamModel.ParameterSets _settings => CameraConfigs.Settings; private void InitializeLanguageText() { this.groupBox1.Text = PdnResources.GetString("Menu.Imagerotation.text"); this.ckbHorizontal.Text = PdnResources.GetString("Menu.Imagerotation.Horizontal.text"); this.ckbVertical.Text = PdnResources.GetString("Menu.Imagerotation.Vertical.text"); var rotateArray = new string[] { PdnResources.GetString("Menu.original.text"), PdnResources.GetString("Menu.Edit.Rotate90CW.Text"), PdnResources.GetString("Menu.Rotate270degrees.Text") }; imgRotateComboBox.Items.Clear(); this.imgRotateComboBox.Items.AddRange(rotateArray); } public CommonRotateControl() { InitializeComponent(); } public void Initialize() { InitializeLanguageText(); imgRotateComboBox.MouseWheel += (s, e) => (e as HandledMouseEventArgs).Handled = true; imgRotateComboBox.SelectedIndex = _settings.Rotate; ckbHorizontal.Checked = _settings.Horizontal == 1; ckbVertical.Checked = _settings.Vertical == 1; } private void imgRotateComboBox_SelectedIndexChanged(object sender, EventArgs e) { try { m_camera.Rotate = imgRotateComboBox.SelectedIndex; _settings.Rotate = imgRotateComboBox.SelectedIndex; } catch (Exception ex) { imgRotateComboBox.SelectedIndex = _settings.Rotate; MessageBox.Show("本相机不支持该操作。"); } } private void ckbHorizontal_Click(object sender, EventArgs e) { m_camera.HorizontalMirrored = ckbHorizontal.Checked; m_camera.VerticalMirrored = ckbVertical.Checked; _settings.Horizontal = ckbHorizontal.Checked ? 1 : 0; _settings.Vertical = ckbVertical.Checked ? 1 : 0; } } }