diff --git a/Mk0.Software.ImageSorter/Main.Designer.cs b/Mk0.Software.ImageSorter/Main.Designer.cs index 58ece84..9ca8799 100644 --- a/Mk0.Software.ImageSorter/Main.Designer.cs +++ b/Mk0.Software.ImageSorter/Main.Designer.cs @@ -30,7 +30,7 @@ { this.components = new System.ComponentModel.Container(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Main)); - this.pictureBox = new System.Windows.Forms.PictureBox(); + this.pictureBoxImage = new System.Windows.Forms.PictureBox(); this.contextMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components); this.toolStripMenuItemCropImage = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripMenuItemEditImage = new System.Windows.Forms.ToolStripMenuItem(); @@ -38,15 +38,15 @@ this.toolStripMenuItemImageDetails = new System.Windows.Forms.ToolStripMenuItem(); this.buttonSettings = new System.Windows.Forms.Button(); this.labelQuellPath = new System.Windows.Forms.Label(); - this.groupBox1 = new System.Windows.Forms.GroupBox(); + this.groupBoxInformationen = new System.Windows.Forms.GroupBox(); this.labelCounter = new System.Windows.Forms.Label(); this.labelZielPath = new System.Windows.Forms.Label(); this.buttonQuellPfad = new System.Windows.Forms.Button(); - this.groupBox2 = new System.Windows.Forms.GroupBox(); + this.groupBoxZiele = new System.Windows.Forms.GroupBox(); this.buttonLastImage = new System.Windows.Forms.Button(); this.buttonInfo = new System.Windows.Forms.Button(); this.buttonJumpBack = new System.Windows.Forms.Button(); - this.panel2 = new System.Windows.Forms.Panel(); + this.panelButtons = new System.Windows.Forms.Panel(); this.labelNoTargets = new System.Windows.Forms.Label(); this.buttonJumpForward = new System.Windows.Forms.Button(); this.buttonUndo = new System.Windows.Forms.Button(); @@ -56,49 +56,63 @@ this.buttonRotate270 = new System.Windows.Forms.Button(); this.buttonMirrorHorizontal = new System.Windows.Forms.Button(); this.buttonMirrorVertikal = new System.Windows.Forms.Button(); - this.panel1 = new System.Windows.Forms.Panel(); + this.panelImageBackground = new System.Windows.Forms.Panel(); this.labelNoImages = new System.Windows.Forms.Label(); - this.labelZoom = new System.Windows.Forms.Label(); - this.panel3 = new System.Windows.Forms.Panel(); - this.pictureBox2 = new System.Windows.Forms.PictureBox(); - this.label2 = new System.Windows.Forms.Label(); - this.label1 = new System.Windows.Forms.Label(); - this.pictureBox1 = new System.Windows.Forms.PictureBox(); + this.groupBoxRander = new System.Windows.Forms.GroupBox(); + this.labelRander = new System.Windows.Forms.Label(); + this.numericUpDownRander = new System.Windows.Forms.NumericUpDown(); + this.buttonRandLinks = new System.Windows.Forms.Button(); + this.buttonRandRechts = new System.Windows.Forms.Button(); + this.buttonRandUnten = new System.Windows.Forms.Button(); + this.buttonRandOben = new System.Windows.Forms.Button(); + this.labelZoom2 = new System.Windows.Forms.Label(); + this.panelBanner = new System.Windows.Forms.Panel(); + this.pictureBoxBanner2 = new System.Windows.Forms.PictureBox(); + this.labelBanner2 = new System.Windows.Forms.Label(); + this.labelBanner1 = new System.Windows.Forms.Label(); + this.pictureBoxBanner1 = new System.Windows.Forms.PictureBox(); this.folderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog(); this.comboBoxZoom = new System.Windows.Forms.ComboBox(); - this.label3 = new System.Windows.Forms.Label(); + this.labelZoom1 = new System.Windows.Forms.Label(); this.buttonDuplicate = new System.Windows.Forms.Button(); - ((System.ComponentModel.ISupportInitialize)(this.pictureBox)).BeginInit(); + this.groupBoxTransformation = new System.Windows.Forms.GroupBox(); + this.buttonTransformation = new System.Windows.Forms.Button(); + this.buttonHintergrund = new System.Windows.Forms.Button(); + this.buttonRander = new System.Windows.Forms.Button(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBoxImage)).BeginInit(); this.contextMenuStrip.SuspendLayout(); - this.groupBox1.SuspendLayout(); - this.groupBox2.SuspendLayout(); - this.panel2.SuspendLayout(); - this.panel1.SuspendLayout(); - this.panel3.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); + this.groupBoxInformationen.SuspendLayout(); + this.groupBoxZiele.SuspendLayout(); + this.panelButtons.SuspendLayout(); + this.panelImageBackground.SuspendLayout(); + this.groupBoxRander.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDownRander)).BeginInit(); + this.panelBanner.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBoxBanner2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBoxBanner1)).BeginInit(); + this.groupBoxTransformation.SuspendLayout(); this.SuspendLayout(); // - // pictureBox + // pictureBoxImage // - this.pictureBox.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + this.pictureBoxImage.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.pictureBox.BackColor = System.Drawing.SystemColors.Control; - this.pictureBox.ContextMenuStrip = this.contextMenuStrip; - this.pictureBox.ImageLocation = ""; - this.pictureBox.Location = new System.Drawing.Point(0, 0); - this.pictureBox.Name = "pictureBox"; - this.pictureBox.Size = new System.Drawing.Size(682, 526); - this.pictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; - this.pictureBox.TabIndex = 0; - this.pictureBox.TabStop = false; - this.pictureBox.LoadCompleted += new System.ComponentModel.AsyncCompletedEventHandler(this.PictureBox_LoadCompleted); - this.pictureBox.MouseDown += new System.Windows.Forms.MouseEventHandler(this.PictureBox_MouseDown); - this.pictureBox.MouseEnter += new System.EventHandler(this.PictureBox_MouseEnter); - this.pictureBox.MouseLeave += new System.EventHandler(this.PictureBox_MouseLeave); - this.pictureBox.MouseMove += new System.Windows.Forms.MouseEventHandler(this.PictureBox_MouseMove); - this.pictureBox.MouseUp += new System.Windows.Forms.MouseEventHandler(this.PictureBox_MouseUp); + this.pictureBoxImage.BackColor = System.Drawing.SystemColors.Control; + this.pictureBoxImage.ContextMenuStrip = this.contextMenuStrip; + this.pictureBoxImage.ImageLocation = ""; + this.pictureBoxImage.Location = new System.Drawing.Point(0, 0); + this.pictureBoxImage.Name = "pictureBoxImage"; + this.pictureBoxImage.Size = new System.Drawing.Size(682, 526); + this.pictureBoxImage.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; + this.pictureBoxImage.TabIndex = 0; + this.pictureBoxImage.TabStop = false; + this.pictureBoxImage.LoadCompleted += new System.ComponentModel.AsyncCompletedEventHandler(this.PictureBox_LoadCompleted); + this.pictureBoxImage.MouseDown += new System.Windows.Forms.MouseEventHandler(this.PictureBox_MouseDown); + this.pictureBoxImage.MouseEnter += new System.EventHandler(this.PictureBox_MouseEnter); + this.pictureBoxImage.MouseLeave += new System.EventHandler(this.PictureBox_MouseLeave); + this.pictureBoxImage.MouseMove += new System.Windows.Forms.MouseEventHandler(this.PictureBox_MouseMove); + this.pictureBoxImage.MouseUp += new System.Windows.Forms.MouseEventHandler(this.PictureBox_MouseUp); // // contextMenuStrip // @@ -160,18 +174,18 @@ this.labelQuellPath.TabIndex = 2; this.labelQuellPath.Text = "C:/dummypfad"; // - // groupBox1 + // groupBoxInformationen // - this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.groupBox1.Controls.Add(this.labelCounter); - this.groupBox1.Controls.Add(this.labelQuellPath); - this.groupBox1.Controls.Add(this.labelZielPath); - this.groupBox1.Location = new System.Drawing.Point(694, 12); - this.groupBox1.Name = "groupBox1"; - this.groupBox1.Size = new System.Drawing.Size(262, 81); - this.groupBox1.TabIndex = 3; - this.groupBox1.TabStop = false; - this.groupBox1.Text = "Informationen"; + this.groupBoxInformationen.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.groupBoxInformationen.Controls.Add(this.labelCounter); + this.groupBoxInformationen.Controls.Add(this.labelQuellPath); + this.groupBoxInformationen.Controls.Add(this.labelZielPath); + this.groupBoxInformationen.Location = new System.Drawing.Point(694, 12); + this.groupBoxInformationen.Name = "groupBoxInformationen"; + this.groupBoxInformationen.Size = new System.Drawing.Size(262, 81); + this.groupBoxInformationen.TabIndex = 3; + this.groupBoxInformationen.TabStop = false; + this.groupBoxInformationen.Text = "Informationen"; // // labelCounter // @@ -204,24 +218,24 @@ this.buttonQuellPfad.UseVisualStyleBackColor = true; this.buttonQuellPfad.Click += new System.EventHandler(this.ButtonQuellPfad_Click); // - // groupBox2 + // groupBoxZiele // - this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + this.groupBoxZiele.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Right))); - this.groupBox2.Controls.Add(this.buttonLastImage); - this.groupBox2.Controls.Add(this.buttonInfo); - this.groupBox2.Controls.Add(this.buttonQuellPfad); - this.groupBox2.Controls.Add(this.buttonSettings); - this.groupBox2.Controls.Add(this.buttonJumpBack); - this.groupBox2.Controls.Add(this.panel2); - this.groupBox2.Controls.Add(this.buttonJumpForward); - this.groupBox2.Controls.Add(this.buttonUndo); - this.groupBox2.Location = new System.Drawing.Point(694, 99); - this.groupBox2.Name = "groupBox2"; - this.groupBox2.Size = new System.Drawing.Size(262, 433); - this.groupBox2.TabIndex = 4; - this.groupBox2.TabStop = false; - this.groupBox2.Text = "Ziele"; + this.groupBoxZiele.Controls.Add(this.buttonLastImage); + this.groupBoxZiele.Controls.Add(this.buttonInfo); + this.groupBoxZiele.Controls.Add(this.buttonQuellPfad); + this.groupBoxZiele.Controls.Add(this.buttonSettings); + this.groupBoxZiele.Controls.Add(this.buttonJumpBack); + this.groupBoxZiele.Controls.Add(this.panelButtons); + this.groupBoxZiele.Controls.Add(this.buttonJumpForward); + this.groupBoxZiele.Controls.Add(this.buttonUndo); + this.groupBoxZiele.Location = new System.Drawing.Point(694, 99); + this.groupBoxZiele.Name = "groupBoxZiele"; + this.groupBoxZiele.Size = new System.Drawing.Size(262, 433); + this.groupBoxZiele.TabIndex = 4; + this.groupBoxZiele.TabStop = false; + this.groupBoxZiele.Text = "Ziele"; // // buttonLastImage // @@ -258,18 +272,18 @@ this.buttonJumpBack.UseVisualStyleBackColor = true; this.buttonJumpBack.MouseUp += new System.Windows.Forms.MouseEventHandler(this.ButtonJumpBack_Click); // - // panel2 + // panelButtons // - this.panel2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + this.panelButtons.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left))); - this.panel2.AutoScroll = true; - this.panel2.Controls.Add(this.labelNoTargets); - this.panel2.Location = new System.Drawing.Point(3, 45); - this.panel2.Name = "panel2"; - this.panel2.Size = new System.Drawing.Size(258, 382); - this.panel2.TabIndex = 5; - this.panel2.MouseEnter += new System.EventHandler(this.Panel2_MouseEnter); - this.panel2.MouseLeave += new System.EventHandler(this.PictureBox_MouseLeave); + this.panelButtons.AutoScroll = true; + this.panelButtons.Controls.Add(this.labelNoTargets); + this.panelButtons.Location = new System.Drawing.Point(3, 45); + this.panelButtons.Name = "panelButtons"; + this.panelButtons.Size = new System.Drawing.Size(258, 382); + this.panelButtons.TabIndex = 5; + this.panelButtons.MouseEnter += new System.EventHandler(this.Panel2_MouseEnter); + this.panelButtons.MouseLeave += new System.EventHandler(this.PictureBox_MouseLeave); // // labelNoTargets // @@ -321,7 +335,7 @@ // buttonRotate90 // this.buttonRotate90.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.buttonRotate90.Location = new System.Drawing.Point(112, 538); + this.buttonRotate90.Location = new System.Drawing.Point(6, 20); this.buttonRotate90.Name = "buttonRotate90"; this.buttonRotate90.Size = new System.Drawing.Size(95, 23); this.buttonRotate90.TabIndex = 6; @@ -333,7 +347,7 @@ // buttonRotate180 // this.buttonRotate180.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.buttonRotate180.Location = new System.Drawing.Point(213, 538); + this.buttonRotate180.Location = new System.Drawing.Point(6, 49); this.buttonRotate180.Name = "buttonRotate180"; this.buttonRotate180.Size = new System.Drawing.Size(95, 23); this.buttonRotate180.TabIndex = 7; @@ -345,7 +359,7 @@ // buttonRotate270 // this.buttonRotate270.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.buttonRotate270.Location = new System.Drawing.Point(314, 538); + this.buttonRotate270.Location = new System.Drawing.Point(6, 78); this.buttonRotate270.Name = "buttonRotate270"; this.buttonRotate270.Size = new System.Drawing.Size(95, 23); this.buttonRotate270.TabIndex = 8; @@ -357,7 +371,7 @@ // buttonMirrorHorizontal // this.buttonMirrorHorizontal.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.buttonMirrorHorizontal.Location = new System.Drawing.Point(420, 538); + this.buttonMirrorHorizontal.Location = new System.Drawing.Point(6, 112); this.buttonMirrorHorizontal.Name = "buttonMirrorHorizontal"; this.buttonMirrorHorizontal.Size = new System.Drawing.Size(95, 23); this.buttonMirrorHorizontal.TabIndex = 9; @@ -369,7 +383,7 @@ // buttonMirrorVertikal // this.buttonMirrorVertikal.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.buttonMirrorVertikal.Location = new System.Drawing.Point(521, 538); + this.buttonMirrorVertikal.Location = new System.Drawing.Point(6, 141); this.buttonMirrorVertikal.Name = "buttonMirrorVertikal"; this.buttonMirrorVertikal.Size = new System.Drawing.Size(95, 23); this.buttonMirrorVertikal.TabIndex = 10; @@ -378,19 +392,19 @@ this.buttonMirrorVertikal.UseVisualStyleBackColor = true; this.buttonMirrorVertikal.Click += new System.EventHandler(this.ImageMirror); // - // panel1 + // panelImageBackground // - this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + this.panelImageBackground.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.panel1.BackColor = System.Drawing.SystemColors.Control; - this.panel1.Controls.Add(this.labelNoImages); - this.panel1.Controls.Add(this.pictureBox); - this.panel1.Location = new System.Drawing.Point(6, 6); - this.panel1.Name = "panel1"; - this.panel1.Size = new System.Drawing.Size(682, 526); - this.panel1.TabIndex = 3; - this.panel1.MouseWheel += new System.Windows.Forms.MouseEventHandler(this.ZoomInOut); + this.panelImageBackground.BackColor = System.Drawing.SystemColors.Control; + this.panelImageBackground.Controls.Add(this.labelNoImages); + this.panelImageBackground.Controls.Add(this.pictureBoxImage); + this.panelImageBackground.Location = new System.Drawing.Point(6, 6); + this.panelImageBackground.Name = "panelImageBackground"; + this.panelImageBackground.Size = new System.Drawing.Size(682, 526); + this.panelImageBackground.TabIndex = 3; + this.panelImageBackground.MouseWheel += new System.Windows.Forms.MouseEventHandler(this.ZoomInOut); // // labelNoImages // @@ -407,68 +421,164 @@ "zu sortieren.\r\nErlaubte Dateiformate sind (JPG, PNG, GIF, BMP, TIF)."; this.labelNoImages.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; // - // labelZoom + // groupBoxRander // - this.labelZoom.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.labelZoom.AutoSize = true; - this.labelZoom.Location = new System.Drawing.Point(924, 543); - this.labelZoom.Name = "labelZoom"; - this.labelZoom.Size = new System.Drawing.Size(18, 13); - this.labelZoom.TabIndex = 13; - this.labelZoom.Text = "x1"; + this.groupBoxRander.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.groupBoxRander.Controls.Add(this.labelRander); + this.groupBoxRander.Controls.Add(this.numericUpDownRander); + this.groupBoxRander.Controls.Add(this.buttonRandLinks); + this.groupBoxRander.Controls.Add(this.buttonRandRechts); + this.groupBoxRander.Controls.Add(this.buttonRandUnten); + this.groupBoxRander.Controls.Add(this.buttonRandOben); + this.groupBoxRander.Location = new System.Drawing.Point(428, 362); + this.groupBoxRander.Name = "groupBoxRander"; + this.groupBoxRander.Size = new System.Drawing.Size(109, 171); + this.groupBoxRander.TabIndex = 18; + this.groupBoxRander.TabStop = false; + this.groupBoxRander.Text = "Ränder schneiden"; + this.groupBoxRander.Visible = false; // - // panel3 + // labelRander // - this.panel3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + this.labelRander.AutoSize = true; + this.labelRander.Location = new System.Drawing.Point(53, 30); + this.labelRander.Name = "labelRander"; + this.labelRander.Size = new System.Drawing.Size(21, 13); + this.labelRander.TabIndex = 12; + this.labelRander.Text = "px."; + // + // numericUpDownRander + // + this.numericUpDownRander.Location = new System.Drawing.Point(6, 28); + this.numericUpDownRander.Maximum = new decimal(new int[] { + 10, + 0, + 0, + 0}); + this.numericUpDownRander.Minimum = new decimal(new int[] { + 1, + 0, + 0, + 0}); + this.numericUpDownRander.Name = "numericUpDownRander"; + this.numericUpDownRander.Size = new System.Drawing.Size(41, 20); + this.numericUpDownRander.TabIndex = 11; + this.numericUpDownRander.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // buttonRandLinks + // + this.buttonRandLinks.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.buttonRandLinks.Location = new System.Drawing.Point(6, 54); + this.buttonRandLinks.Name = "buttonRandLinks"; + this.buttonRandLinks.Size = new System.Drawing.Size(95, 23); + this.buttonRandLinks.TabIndex = 7; + this.buttonRandLinks.Tag = "links"; + this.buttonRandLinks.Text = "links"; + this.buttonRandLinks.UseVisualStyleBackColor = true; + this.buttonRandLinks.Click += new System.EventHandler(this.RandSchneiden_Click); + // + // buttonRandRechts + // + this.buttonRandRechts.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.buttonRandRechts.Location = new System.Drawing.Point(6, 83); + this.buttonRandRechts.Name = "buttonRandRechts"; + this.buttonRandRechts.Size = new System.Drawing.Size(95, 23); + this.buttonRandRechts.TabIndex = 8; + this.buttonRandRechts.Tag = "rechts"; + this.buttonRandRechts.Text = "rechts"; + this.buttonRandRechts.UseVisualStyleBackColor = true; + this.buttonRandRechts.Click += new System.EventHandler(this.RandSchneiden_Click); + // + // buttonRandUnten + // + this.buttonRandUnten.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.buttonRandUnten.Location = new System.Drawing.Point(6, 141); + this.buttonRandUnten.Name = "buttonRandUnten"; + this.buttonRandUnten.Size = new System.Drawing.Size(95, 23); + this.buttonRandUnten.TabIndex = 10; + this.buttonRandUnten.Tag = "unten"; + this.buttonRandUnten.Text = "unten"; + this.buttonRandUnten.UseVisualStyleBackColor = true; + this.buttonRandUnten.Click += new System.EventHandler(this.RandSchneiden_Click); + // + // buttonRandOben + // + this.buttonRandOben.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.buttonRandOben.Location = new System.Drawing.Point(6, 112); + this.buttonRandOben.Name = "buttonRandOben"; + this.buttonRandOben.Size = new System.Drawing.Size(95, 23); + this.buttonRandOben.TabIndex = 9; + this.buttonRandOben.Tag = "oben"; + this.buttonRandOben.Text = "oben"; + this.buttonRandOben.UseVisualStyleBackColor = true; + this.buttonRandOben.Click += new System.EventHandler(this.RandSchneiden_Click); + // + // labelZoom2 + // + this.labelZoom2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.labelZoom2.AutoSize = true; + this.labelZoom2.Location = new System.Drawing.Point(924, 543); + this.labelZoom2.Name = "labelZoom2"; + this.labelZoom2.Size = new System.Drawing.Size(18, 13); + this.labelZoom2.TabIndex = 13; + this.labelZoom2.Text = "x1"; + // + // panelBanner + // + this.panelBanner.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); - this.panel3.BackColor = System.Drawing.SystemColors.Highlight; - this.panel3.Controls.Add(this.pictureBox2); - this.panel3.Controls.Add(this.label2); - this.panel3.Controls.Add(this.label1); - this.panel3.Controls.Add(this.pictureBox1); - this.panel3.Location = new System.Drawing.Point(0, -52); - this.panel3.Name = "panel3"; - this.panel3.Size = new System.Drawing.Size(688, 52); - this.panel3.TabIndex = 2; + this.panelBanner.BackColor = System.Drawing.SystemColors.Highlight; + this.panelBanner.Controls.Add(this.pictureBoxBanner2); + this.panelBanner.Controls.Add(this.labelBanner2); + this.panelBanner.Controls.Add(this.labelBanner1); + this.panelBanner.Controls.Add(this.pictureBoxBanner1); + this.panelBanner.Location = new System.Drawing.Point(0, -52); + this.panelBanner.Name = "panelBanner"; + this.panelBanner.Size = new System.Drawing.Size(688, 52); + this.panelBanner.TabIndex = 2; // - // pictureBox2 + // pictureBoxBanner2 // - this.pictureBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.pictureBox2.Location = new System.Drawing.Point(634, 3); - this.pictureBox2.Name = "pictureBox2"; - this.pictureBox2.Size = new System.Drawing.Size(51, 47); - this.pictureBox2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; - this.pictureBox2.TabIndex = 3; - this.pictureBox2.TabStop = false; + this.pictureBoxBanner2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.pictureBoxBanner2.Location = new System.Drawing.Point(634, 3); + this.pictureBoxBanner2.Name = "pictureBoxBanner2"; + this.pictureBoxBanner2.Size = new System.Drawing.Size(51, 47); + this.pictureBoxBanner2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; + this.pictureBoxBanner2.TabIndex = 3; + this.pictureBoxBanner2.TabStop = false; // - // label2 + // labelBanner2 // - this.label2.AutoSize = true; - this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label2.Location = new System.Drawing.Point(56, 27); - this.label2.Name = "label2"; - this.label2.Size = new System.Drawing.Size(194, 16); - this.label2.TabIndex = 2; - this.label2.Text = "\"Pfadangabe\" verschoben."; + this.labelBanner2.AutoSize = true; + this.labelBanner2.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.labelBanner2.Location = new System.Drawing.Point(56, 27); + this.labelBanner2.Name = "labelBanner2"; + this.labelBanner2.Size = new System.Drawing.Size(194, 16); + this.labelBanner2.TabIndex = 2; + this.labelBanner2.Text = "\"Pfadangabe\" verschoben."; // - // label1 + // labelBanner1 // - this.label1.AutoSize = true; - this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label1.Location = new System.Drawing.Point(57, 7); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(241, 16); - this.label1.TabIndex = 1; - this.label1.Text = "Bild \"Dateiname\" erfolgreich nach"; + this.labelBanner1.AutoSize = true; + this.labelBanner1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.labelBanner1.Location = new System.Drawing.Point(57, 7); + this.labelBanner1.Name = "labelBanner1"; + this.labelBanner1.Size = new System.Drawing.Size(241, 16); + this.labelBanner1.TabIndex = 1; + this.labelBanner1.Text = "Bild \"Dateiname\" erfolgreich nach"; // - // pictureBox1 + // pictureBoxBanner1 // - this.pictureBox1.Location = new System.Drawing.Point(3, 3); - this.pictureBox1.Name = "pictureBox1"; - this.pictureBox1.Size = new System.Drawing.Size(48, 46); - this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; - this.pictureBox1.TabIndex = 0; - this.pictureBox1.TabStop = false; + this.pictureBoxBanner1.Location = new System.Drawing.Point(3, 3); + this.pictureBoxBanner1.Name = "pictureBoxBanner1"; + this.pictureBoxBanner1.Size = new System.Drawing.Size(48, 46); + this.pictureBoxBanner1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; + this.pictureBoxBanner1.TabIndex = 0; + this.pictureBoxBanner1.TabStop = false; // // comboBoxZoom // @@ -485,70 +595,126 @@ this.comboBoxZoom.TabIndex = 14; this.comboBoxZoom.SelectedIndexChanged += new System.EventHandler(this.ComboBoxZoom_SelectedIndexChanged); // - // label3 + // labelZoom1 // - this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); - this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(759, 543); - this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(34, 13); - this.label3.TabIndex = 15; - this.label3.Text = "Zoom"; + this.labelZoom1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.labelZoom1.AutoSize = true; + this.labelZoom1.Location = new System.Drawing.Point(759, 543); + this.labelZoom1.Name = "labelZoom1"; + this.labelZoom1.Size = new System.Drawing.Size(34, 13); + this.labelZoom1.TabIndex = 15; + this.labelZoom1.Text = "Zoom"; // // buttonDuplicate // this.buttonDuplicate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); - this.buttonDuplicate.Location = new System.Drawing.Point(627, 538); + this.buttonDuplicate.Location = new System.Drawing.Point(220, 538); this.buttonDuplicate.Name = "buttonDuplicate"; this.buttonDuplicate.Size = new System.Drawing.Size(95, 23); this.buttonDuplicate.TabIndex = 16; - this.buttonDuplicate.Tag = "x"; + this.buttonDuplicate.Tag = ""; this.buttonDuplicate.Text = "Duplizieren"; this.buttonDuplicate.UseVisualStyleBackColor = true; this.buttonDuplicate.Click += new System.EventHandler(this.ButtonDuplicate_Click); // + // groupBoxTransformation + // + this.groupBoxTransformation.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.groupBoxTransformation.Controls.Add(this.buttonRotate90); + this.groupBoxTransformation.Controls.Add(this.buttonRotate180); + this.groupBoxTransformation.Controls.Add(this.buttonRotate270); + this.groupBoxTransformation.Controls.Add(this.buttonMirrorVertikal); + this.groupBoxTransformation.Controls.Add(this.buttonMirrorHorizontal); + this.groupBoxTransformation.Location = new System.Drawing.Point(108, 362); + this.groupBoxTransformation.Name = "groupBoxTransformation"; + this.groupBoxTransformation.Size = new System.Drawing.Size(109, 171); + this.groupBoxTransformation.TabIndex = 17; + this.groupBoxTransformation.TabStop = false; + this.groupBoxTransformation.Text = "Transformation"; + this.groupBoxTransformation.Visible = false; + // + // buttonTransformation + // + this.buttonTransformation.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.buttonTransformation.Location = new System.Drawing.Point(113, 538); + this.buttonTransformation.Name = "buttonTransformation"; + this.buttonTransformation.Size = new System.Drawing.Size(95, 23); + this.buttonTransformation.TabIndex = 18; + this.buttonTransformation.Tag = ""; + this.buttonTransformation.Text = "Transformation"; + this.buttonTransformation.UseVisualStyleBackColor = true; + this.buttonTransformation.Click += new System.EventHandler(this.ButtonTransformation_Click); + // + // buttonHintergrund + // + this.buttonHintergrund.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.buttonHintergrund.Location = new System.Drawing.Point(327, 538); + this.buttonHintergrund.Name = "buttonHintergrund"; + this.buttonHintergrund.Size = new System.Drawing.Size(95, 23); + this.buttonHintergrund.TabIndex = 19; + this.buttonHintergrund.Tag = ""; + this.buttonHintergrund.Text = "hell/dunkel"; + this.buttonHintergrund.UseVisualStyleBackColor = true; + this.buttonHintergrund.Click += new System.EventHandler(this.ButtonHintergrund_Click); + // + // buttonRander + // + this.buttonRander.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.buttonRander.Location = new System.Drawing.Point(434, 538); + this.buttonRander.Name = "buttonRander"; + this.buttonRander.Size = new System.Drawing.Size(95, 23); + this.buttonRander.TabIndex = 20; + this.buttonRander.Tag = ""; + this.buttonRander.Text = "Ränder"; + this.buttonRander.UseVisualStyleBackColor = true; + this.buttonRander.Click += new System.EventHandler(this.ButtonRander_Click); + // // Main // this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi; this.ClientSize = new System.Drawing.Size(967, 566); + this.Controls.Add(this.buttonHintergrund); + this.Controls.Add(this.buttonTransformation); + this.Controls.Add(this.groupBoxTransformation); + this.Controls.Add(this.groupBoxRander); this.Controls.Add(this.buttonDuplicate); - this.Controls.Add(this.label3); + this.Controls.Add(this.labelZoom1); this.Controls.Add(this.comboBoxZoom); - this.Controls.Add(this.panel3); - this.Controls.Add(this.labelZoom); - this.Controls.Add(this.panel1); - this.Controls.Add(this.buttonMirrorVertikal); - this.Controls.Add(this.buttonMirrorHorizontal); - this.Controls.Add(this.buttonRotate270); - this.Controls.Add(this.buttonRotate180); - this.Controls.Add(this.buttonRotate90); + this.Controls.Add(this.panelBanner); + this.Controls.Add(this.labelZoom2); + this.Controls.Add(this.panelImageBackground); this.Controls.Add(this.buttonDeleteImage); - this.Controls.Add(this.groupBox2); - this.Controls.Add(this.groupBox1); + this.Controls.Add(this.groupBoxZiele); + this.Controls.Add(this.groupBoxInformationen); + this.Controls.Add(this.buttonRander); this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); this.KeyPreview = true; this.MinimumSize = new System.Drawing.Size(983, 605); this.Name = "Main"; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; - this.Text = "Image Sorter v1.39 | © 2015-2019 by manuelkamper.com"; + this.Text = "Image Sorter v1.40 | © 2015-2019 by manuelkamper.com"; this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Main_FormClosing); this.Load += new System.EventHandler(this.Main_Load); this.Shown += new System.EventHandler(this.Main_Shown); this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Main_KeyDown); this.Resize += new System.EventHandler(this.Main_ResizeEnd); - ((System.ComponentModel.ISupportInitialize)(this.pictureBox)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBoxImage)).EndInit(); this.contextMenuStrip.ResumeLayout(false); - this.groupBox1.ResumeLayout(false); - this.groupBox1.PerformLayout(); - this.groupBox2.ResumeLayout(false); - this.panel2.ResumeLayout(false); - this.panel2.PerformLayout(); - this.panel1.ResumeLayout(false); - this.panel3.ResumeLayout(false); - this.panel3.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); + this.groupBoxInformationen.ResumeLayout(false); + this.groupBoxInformationen.PerformLayout(); + this.groupBoxZiele.ResumeLayout(false); + this.panelButtons.ResumeLayout(false); + this.panelButtons.PerformLayout(); + this.panelImageBackground.ResumeLayout(false); + this.groupBoxRander.ResumeLayout(false); + this.groupBoxRander.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDownRander)).EndInit(); + this.panelBanner.ResumeLayout(false); + this.panelBanner.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBoxBanner2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBoxBanner1)).EndInit(); + this.groupBoxTransformation.ResumeLayout(false); this.ResumeLayout(false); this.PerformLayout(); @@ -556,11 +722,11 @@ #endregion - private System.Windows.Forms.PictureBox pictureBox; + private System.Windows.Forms.PictureBox pictureBoxImage; private System.Windows.Forms.Button buttonSettings; private System.Windows.Forms.Label labelQuellPath; - private System.Windows.Forms.GroupBox groupBox1; - private System.Windows.Forms.GroupBox groupBox2; + private System.Windows.Forms.GroupBox groupBoxInformationen; + private System.Windows.Forms.GroupBox groupBoxZiele; private System.Windows.Forms.Label labelNoTargets; private System.Windows.Forms.Button buttonJumpForward; private System.Windows.Forms.Label labelCounter; @@ -571,28 +737,39 @@ private System.Windows.Forms.Button buttonRotate270; private System.Windows.Forms.Button buttonMirrorHorizontal; private System.Windows.Forms.Button buttonMirrorVertikal; - private System.Windows.Forms.Panel panel1; - private System.Windows.Forms.Label labelZoom; + private System.Windows.Forms.Panel panelImageBackground; + private System.Windows.Forms.Label labelZoom2; private System.Windows.Forms.ContextMenuStrip contextMenuStrip; private System.Windows.Forms.ToolStripMenuItem toolStripMenuItemEditImage; private System.Windows.Forms.ToolStripMenuItem toolStripMenuItemOpenExplorer; private System.Windows.Forms.ToolStripMenuItem toolStripMenuItemImageDetails; - private System.Windows.Forms.Panel panel2; + private System.Windows.Forms.Panel panelButtons; private System.Windows.Forms.Label labelNoImages; - private System.Windows.Forms.Panel panel3; - private System.Windows.Forms.Label label2; - private System.Windows.Forms.Label label1; - private System.Windows.Forms.PictureBox pictureBox1; - private System.Windows.Forms.PictureBox pictureBox2; + private System.Windows.Forms.Panel panelBanner; + private System.Windows.Forms.Label labelBanner2; + private System.Windows.Forms.Label labelBanner1; + private System.Windows.Forms.PictureBox pictureBoxBanner1; + private System.Windows.Forms.PictureBox pictureBoxBanner2; private System.Windows.Forms.ToolStripMenuItem toolStripMenuItemCropImage; private System.Windows.Forms.Button buttonQuellPfad; private System.Windows.Forms.FolderBrowserDialog folderBrowserDialog; private System.Windows.Forms.Label labelZielPath; private System.Windows.Forms.ComboBox comboBoxZoom; - private System.Windows.Forms.Label label3; + private System.Windows.Forms.Label labelZoom1; private System.Windows.Forms.Button buttonJumpBack; private System.Windows.Forms.Button buttonInfo; private System.Windows.Forms.Button buttonLastImage; private System.Windows.Forms.Button buttonDuplicate; + private System.Windows.Forms.GroupBox groupBoxTransformation; + private System.Windows.Forms.Button buttonTransformation; + private System.Windows.Forms.Button buttonHintergrund; + private System.Windows.Forms.Button buttonRander; + private System.Windows.Forms.GroupBox groupBoxRander; + private System.Windows.Forms.Label labelRander; + private System.Windows.Forms.NumericUpDown numericUpDownRander; + private System.Windows.Forms.Button buttonRandLinks; + private System.Windows.Forms.Button buttonRandRechts; + private System.Windows.Forms.Button buttonRandUnten; + private System.Windows.Forms.Button buttonRandOben; } } diff --git a/Mk0.Software.ImageSorter/Main.cs b/Mk0.Software.ImageSorter/Main.cs index be5552c..42f8504 100644 --- a/Mk0.Software.ImageSorter/Main.cs +++ b/Mk0.Software.ImageSorter/Main.cs @@ -47,8 +47,8 @@ namespace Mk0.Software.ImageSorter public Main() { InitializeComponent(); - banner = new Banner(components, panel3, pictureBox1, pictureBox2, label1, label2); - pictureBox.Cursor = grabCursor; + banner = new Banner(components, panelBanner, pictureBoxBanner1, pictureBoxBanner2, labelBanner1, labelBanner2); + pictureBoxImage.Cursor = grabCursor; DoubleBuffered = true; SetDefaultPath(); comboBoxZoom.SelectedIndex = Properties.Settings.Default.zoom; @@ -138,11 +138,11 @@ namespace Mk0.Software.ImageSorter { Left = Properties.Settings.Default.lastLeft; } - groupBox1.Visible = Properties.Settings.Default.showInfo; - if (!groupBox1.Visible) + groupBoxInformationen.Visible = Properties.Settings.Default.showInfo; + if (!groupBoxInformationen.Visible) { - groupBox2.Location = new Point(groupBox2.Location.X, 12); - groupBox2.Height = groupBox2.Height + 87; + groupBoxZiele.Location = new Point(groupBoxZiele.Location.X, 12); + groupBoxZiele.Height = groupBoxZiele.Height + 87; } CheckSubfolders(); SearchImages(); @@ -317,7 +317,7 @@ namespace Mk0.Software.ImageSorter Array.Sort(folders); foreach (string folder in folders) { - if (Path.GetFileNameWithoutExtension(folder).ToString() != "$RECYCLE" && Path.GetFileNameWithoutExtension(folder).ToString() != "System Volume Information" && Path.GetFileNameWithoutExtension(folder).ToString() != "ImageSorter" && Path.GetFileNameWithoutExtension(folder).ToString() != "Image Sorter") + if (Path.GetFileNameWithoutExtension(folder).ToString() != "$RECYCLE" && Path.GetFileNameWithoutExtension(folder).ToString() != "System Volume Information" && Path.GetFileNameWithoutExtension(folder).ToString() != "ImageSorter" && Path.GetFileNameWithoutExtension(folder).ToString() != "Image Sorter" && Path.GetFileNameWithoutExtension(folder).ToString() != "AssocIcons") { Button button = new Button { @@ -348,7 +348,7 @@ namespace Mk0.Software.ImageSorter foreach (Button button in this.buttons) { - panel2.Controls.Add(button); + panelButtons.Controls.Add(button); } } @@ -360,7 +360,7 @@ namespace Mk0.Software.ImageSorter { foreach (Button button in list) { - panel2.Controls.Remove(button); + panelButtons.Controls.Remove(button); } } @@ -536,11 +536,11 @@ namespace Mk0.Software.ImageSorter { imageIndex = 0; } - pictureBox.ImageLocation = CropImageBorders(images.ElementAt(imageIndex)); + pictureBoxImage.ImageLocation = CropImageBorders(images.ElementAt(imageIndex)); } else { - pictureBox.Image = null; + pictureBoxImage.Image = null; } } @@ -606,22 +606,22 @@ namespace Mk0.Software.ImageSorter try { - string fullTargetPath = Path.Combine(targetPath, Path.GetFileName(pictureBox.ImageLocation)); - Image myImg = CopyImage.GetCopyImage(pictureBox.ImageLocation); + string fullTargetPath = Path.Combine(targetPath, Path.GetFileName(pictureBoxImage.ImageLocation)); + Image myImg = CopyImage.GetCopyImage(pictureBoxImage.ImageLocation); if (File.Exists(fullTargetPath)) { - using (var form = new Vergleicher("Das zu verschiebende Bild \"" + Path.GetFileName(pictureBox.ImageLocation) + "\"" + "existiert im Zielverzeichnis \"" + btn.Text + "\" bereits." + Environment.NewLine + Environment.NewLine + "Soll eine Kopie angelegt werden? Nein überschreibt die Datei, Abbrechen bricht den Vorgang ab.", pictureBox.ImageLocation, fullTargetPath)) + using (var form = new Vergleicher("Das zu verschiebende Bild \"" + Path.GetFileName(pictureBoxImage.ImageLocation) + "\"" + "existiert im Zielverzeichnis \"" + btn.Text + "\" bereits." + Environment.NewLine + Environment.NewLine + "Soll eine Kopie angelegt werden? Nein überschreibt die Datei, Abbrechen bricht den Vorgang ab.", pictureBoxImage.ImageLocation, fullTargetPath)) { var result = form.ShowDialog(); if (result == DialogResult.Yes) { - fullTargetPath = Path.Combine(targetPath, Path.GetFileNameWithoutExtension(pictureBox.ImageLocation) + Randomize.NumberAndDigits(5, "_") + Path.GetExtension(pictureBox.ImageLocation)); + fullTargetPath = Path.Combine(targetPath, Path.GetFileNameWithoutExtension(pictureBoxImage.ImageLocation) + Randomize.NumberAndDigits(5, "_") + Path.GetExtension(pictureBoxImage.ImageLocation)); } else if (result == DialogResult.No) { - File.Copy(pictureBox.ImageLocation, fullTargetPath, true); - File.Delete(pictureBox.ImageLocation); - images.Remove(pictureBox.ImageLocation); + File.Copy(pictureBoxImage.ImageLocation, fullTargetPath, true); + File.Delete(pictureBoxImage.ImageLocation); + images.Remove(pictureBoxImage.ImageLocation); history.Add(fullTargetPath); moved++; ShowMovedMessage(myImg, fullTargetPath, btn.Text); @@ -637,8 +637,8 @@ namespace Mk0.Software.ImageSorter } } } - File.Move(pictureBox.ImageLocation, fullTargetPath); - images.Remove(pictureBox.ImageLocation); + File.Move(pictureBoxImage.ImageLocation, fullTargetPath); + images.Remove(pictureBoxImage.ImageLocation); history.Add(fullTargetPath); moved++; ShowMovedMessage(myImg, fullTargetPath, btn.Text); @@ -721,7 +721,7 @@ namespace Mk0.Software.ImageSorter string targetPath = Path.Combine(this.quellPath, Path.GetFileName(history.ElementAt(history.Count() - 1))); if (Path.GetFullPath(history.ElementAt(history.Count() - 1)).StartsWith("C:\\img-tmp")) { - targetPath = pictureBox.ImageLocation; + targetPath = pictureBoxImage.ImageLocation; } try @@ -786,6 +786,7 @@ namespace Mk0.Software.ImageSorter } LoadPicture(imageIndex); + groupBoxTransformation.Visible = false; } /// @@ -824,6 +825,7 @@ namespace Mk0.Software.ImageSorter } LoadPicture(imageIndex); + groupBoxTransformation.Visible = false; } /// @@ -833,10 +835,10 @@ namespace Mk0.Software.ImageSorter /// private void ImageDelete(object sender, EventArgs e) { - Image myImg = CopyImage.GetCopyImage(pictureBox.ImageLocation); - string pfad = Path.GetFileName(pictureBox.ImageLocation); - FileSystem.DeleteFile(pictureBox.ImageLocation, UIOption.OnlyErrorDialogs, RecycleOption.SendToRecycleBin, UICancelOption.DoNothing); - images.Remove(pictureBox.ImageLocation); + Image myImg = CopyImage.GetCopyImage(pictureBoxImage.ImageLocation); + string pfad = Path.GetFileName(pictureBoxImage.ImageLocation); + FileSystem.DeleteFile(pictureBoxImage.ImageLocation, UIOption.OnlyErrorDialogs, RecycleOption.SendToRecycleBin, UICancelOption.DoNothing); + images.Remove(pictureBoxImage.ImageLocation); CheckSubfolders(); CountPicsInPath(); @@ -855,35 +857,35 @@ namespace Mk0.Software.ImageSorter if (zoom == "Original") { - pictureBox.SizeMode = PictureBoxSizeMode.Zoom; - pictureBox.Size = new Size(pictureBox.Image.Width, pictureBox.Image.Height); - if (pictureBox.Image.Width > panel1.Width) { pictureBox.Left = (panel1.Width / 2) - (pictureBox.Width / 2); } else { pictureBox.Left = (panel1.Width / 2) - (pictureBox.Image.Width / 2); } - if (pictureBox.Image.Height > panel1.Height) { pictureBox.Top = (panel1.Height / 2) - (pictureBox.Height / 2); } else { pictureBox.Top = (panel1.Height / 2) - (pictureBox.Image.Height / 2); } + pictureBoxImage.SizeMode = PictureBoxSizeMode.Zoom; + pictureBoxImage.Size = new Size(pictureBoxImage.Image.Width, pictureBoxImage.Image.Height); + if (pictureBoxImage.Image.Width > panelImageBackground.Width) { pictureBoxImage.Left = (panelImageBackground.Width / 2) - (pictureBoxImage.Width / 2); } else { pictureBoxImage.Left = (panelImageBackground.Width / 2) - (pictureBoxImage.Image.Width / 2); } + if (pictureBoxImage.Image.Height > panelImageBackground.Height) { pictureBoxImage.Top = (panelImageBackground.Height / 2) - (pictureBoxImage.Height / 2); } else { pictureBoxImage.Top = (panelImageBackground.Height / 2) - (pictureBoxImage.Image.Height / 2); } moveable = true; } else if (zoom == "Vollbild") { - pictureBox.SizeMode = PictureBoxSizeMode.Zoom; - pictureBox.Size = new Size(panel1.Width, panel1.Height); - pictureBox.Top = 0; - pictureBox.Left = 0; + pictureBoxImage.SizeMode = PictureBoxSizeMode.Zoom; + pictureBoxImage.Size = new Size(panelImageBackground.Width, panelImageBackground.Height); + pictureBoxImage.Top = 0; + pictureBoxImage.Left = 0; moveable = false; } else if (zoom == "Auto") { - pictureBox.SizeMode = PictureBoxSizeMode.Zoom; - if(pictureBox.Image.Width>panel1.Width || pictureBox.Image.Height>panel1.Height) + pictureBoxImage.SizeMode = PictureBoxSizeMode.Zoom; + if(pictureBoxImage.Image.Width>panelImageBackground.Width || pictureBoxImage.Image.Height>panelImageBackground.Height) { - pictureBox.Size = new Size(panel1.Width, panel1.Height); - pictureBox.Top = 0; - pictureBox.Left = 0; + pictureBoxImage.Size = new Size(panelImageBackground.Width, panelImageBackground.Height); + pictureBoxImage.Top = 0; + pictureBoxImage.Left = 0; moveable = false; } else { - pictureBox.Size = new Size(pictureBox.Image.Width, pictureBox.Image.Height); - if (pictureBox.Image.Width > panel1.Width) { pictureBox.Left = (panel1.Width / 2) - (pictureBox.Width / 2); } else { pictureBox.Left = (panel1.Width / 2) - (pictureBox.Image.Width / 2); } - if (pictureBox.Image.Height > panel1.Height) { pictureBox.Top = (panel1.Height / 2) - (pictureBox.Height / 2); } else { pictureBox.Top = (panel1.Height / 2) - (pictureBox.Image.Height / 2); } + pictureBoxImage.Size = new Size(pictureBoxImage.Image.Width, pictureBoxImage.Image.Height); + if (pictureBoxImage.Image.Width > panelImageBackground.Width) { pictureBoxImage.Left = (panelImageBackground.Width / 2) - (pictureBoxImage.Width / 2); } else { pictureBoxImage.Left = (panelImageBackground.Width / 2) - (pictureBoxImage.Image.Width / 2); } + if (pictureBoxImage.Image.Height > panelImageBackground.Height) { pictureBoxImage.Top = (panelImageBackground.Height / 2) - (pictureBoxImage.Height / 2); } else { pictureBoxImage.Top = (panelImageBackground.Height / 2) - (pictureBoxImage.Image.Height / 2); } moveable = true; } } @@ -892,9 +894,9 @@ namespace Mk0.Software.ImageSorter return; } - xFaktor = pictureBox.Width / (double)pictureBox.Image.Width; - yFaktor = pictureBox.Height / (double)pictureBox.Image.Height; - labelZoom.Text = "x" + Math.Round(yFaktor, 1); + xFaktor = pictureBoxImage.Width / (double)pictureBoxImage.Image.Width; + yFaktor = pictureBoxImage.Height / (double)pictureBoxImage.Image.Height; + labelZoom2.Text = "x" + Math.Round(yFaktor, 1); } /// @@ -910,23 +912,23 @@ namespace Mk0.Software.ImageSorter { moving = true; startLocation = e.Location; - pictureBox.Cursor = grabbingCursor; + pictureBoxImage.Cursor = grabbingCursor; } else { - pictureBox.Cursor = Cursors.No; + pictureBoxImage.Cursor = Cursors.No; } } if (e.Button == MouseButtons.Middle) { if (moveable) { - pictureBox.Top = (panel1.Height / 2) - (pictureBox.Height / 2); - pictureBox.Left = (panel1.Width / 2) - (pictureBox.Width / 2); + pictureBoxImage.Top = (panelImageBackground.Height / 2) - (pictureBoxImage.Height / 2); + pictureBoxImage.Left = (panelImageBackground.Width / 2) - (pictureBoxImage.Width / 2); } else { - pictureBox.Cursor = Cursors.No; + pictureBoxImage.Cursor = Cursors.No; } } } @@ -941,12 +943,12 @@ namespace Mk0.Software.ImageSorter if (moveable && moving) { moving = false; - if (pictureBox.Top > 0) { pictureBox.Top = 0; } - if (pictureBox.Top < -pictureBox.Height + panel1.Height) { pictureBox.Top = -pictureBox.Height + panel1.Height; } - if (pictureBox.Left > 0) { pictureBox.Left = 0; } - if (pictureBox.Left < -pictureBox.Width + panel1.Width) { pictureBox.Left = -pictureBox.Width + panel1.Width; } + if (pictureBoxImage.Top > 0) { pictureBoxImage.Top = 0; } + if (pictureBoxImage.Top < -pictureBoxImage.Height + panelImageBackground.Height) { pictureBoxImage.Top = -pictureBoxImage.Height + panelImageBackground.Height; } + if (pictureBoxImage.Left > 0) { pictureBoxImage.Left = 0; } + if (pictureBoxImage.Left < -pictureBoxImage.Width + panelImageBackground.Width) { pictureBoxImage.Left = -pictureBoxImage.Width + panelImageBackground.Width; } } - pictureBox.Cursor = grabCursor; + pictureBoxImage.Cursor = grabCursor; } /// @@ -958,12 +960,12 @@ namespace Mk0.Software.ImageSorter { if (moving) { - if (pictureBox.Top > 0) { pictureBox.Top = 0; } - if (pictureBox.Top < -pictureBox.Height + panel1.Height) { pictureBox.Top = -pictureBox.Height + panel1.Height; } - if (pictureBox.Left > 0) { pictureBox.Left = 0; } - if (pictureBox.Left < -pictureBox.Width + panel1.Width) { pictureBox.Left = -pictureBox.Width + panel1.Width; } - pictureBox.Top += e.Location.Y - startLocation.Y; - pictureBox.Left += e.Location.X - startLocation.X; + if (pictureBoxImage.Top > 0) { pictureBoxImage.Top = 0; } + if (pictureBoxImage.Top < -pictureBoxImage.Height + panelImageBackground.Height) { pictureBoxImage.Top = -pictureBoxImage.Height + panelImageBackground.Height; } + if (pictureBoxImage.Left > 0) { pictureBoxImage.Left = 0; } + if (pictureBoxImage.Left < -pictureBoxImage.Width + panelImageBackground.Width) { pictureBoxImage.Left = -pictureBoxImage.Width + panelImageBackground.Width; } + pictureBoxImage.Top += e.Location.Y - startLocation.Y; + pictureBoxImage.Left += e.Location.X - startLocation.X; } } @@ -974,41 +976,41 @@ namespace Mk0.Software.ImageSorter /// private void ZoomInOut(object sender, MouseEventArgs e) { - if (e.Delta != 0 && pictureBox.Image != null) + if (e.Delta != 0 && pictureBoxImage.Image != null) { - double xstep = pictureBox.Width * 0.01; - double ystep = pictureBox.Height * 0.01; + double xstep = pictureBoxImage.Width * 0.01; + double ystep = pictureBoxImage.Height * 0.01; if (xstep < 1.0) { xstep = 1.0; } if (ystep < 1.0) { ystep = 1.0; } - int maxWidth = pictureBox.Image.Width * 8; - int minWidth = pictureBox.Image.Width / 8; + int maxWidth = pictureBoxImage.Image.Width * 8; + int minWidth = pictureBoxImage.Image.Width / 8; - int newWidth = pictureBox.Width - (pictureBox.Width / (int)xstep * (e.Delta / 120)); - int newHeight = pictureBox.Height - (pictureBox.Height / (int)xstep * (e.Delta / 120)); + int newWidth = pictureBoxImage.Width - (pictureBoxImage.Width / (int)xstep * (e.Delta / 120)); + int newHeight = pictureBoxImage.Height - (pictureBoxImage.Height / (int)xstep * (e.Delta / 120)); if (newWidth <= maxWidth && newWidth >= minWidth) { - pictureBox.Width = newWidth; - pictureBox.Height = newHeight; + pictureBoxImage.Width = newWidth; + pictureBoxImage.Height = newHeight; } - if (pictureBox.Width > panel1.Width || pictureBox.Height > panel1.Height) + if (pictureBoxImage.Width > panelImageBackground.Width || pictureBoxImage.Height > panelImageBackground.Height) { moveable = true; - if (pictureBox.Right < panel1.Width) { pictureBox.Left += -pictureBox.Right + panel1.Width; } - if (pictureBox.Bottom < panel1.Height) { pictureBox.Top += -pictureBox.Bottom + panel1.Height; } + if (pictureBoxImage.Right < panelImageBackground.Width) { pictureBoxImage.Left += -pictureBoxImage.Right + panelImageBackground.Width; } + if (pictureBoxImage.Bottom < panelImageBackground.Height) { pictureBoxImage.Top += -pictureBoxImage.Bottom + panelImageBackground.Height; } } else { moveable = false; - pictureBox.Top = (panel1.Height / 2) - (pictureBox.Height / 2); - pictureBox.Left = (panel1.Width / 2) - (pictureBox.Width / 2); + pictureBoxImage.Top = (panelImageBackground.Height / 2) - (pictureBoxImage.Height / 2); + pictureBoxImage.Left = (panelImageBackground.Width / 2) - (pictureBoxImage.Width / 2); } - xFaktor = pictureBox.Width / (double)pictureBox.Image.Width; - yFaktor = pictureBox.Height / (double)pictureBox.Image.Height; - labelZoom.Text = "x" + Math.Round(yFaktor, 1); + xFaktor = pictureBoxImage.Width / (double)pictureBoxImage.Image.Width; + yFaktor = pictureBoxImage.Height / (double)pictureBoxImage.Image.Height; + labelZoom2.Text = "x" + Math.Round(yFaktor, 1); } } @@ -1019,7 +1021,7 @@ namespace Mk0.Software.ImageSorter /// private void PictureBox_MouseEnter(object sender, EventArgs e) { - panel1.Focus(); + panelImageBackground.Focus(); } /// @@ -1029,7 +1031,7 @@ namespace Mk0.Software.ImageSorter /// private void PictureBox_MouseLeave(object sender, EventArgs e) { - groupBox1.Focus(); + groupBoxInformationen.Focus(); } /// @@ -1049,7 +1051,7 @@ namespace Mk0.Software.ImageSorter /// private void Panel2_MouseEnter(object sender, EventArgs e) { - panel2.Focus(); + panelButtons.Focus(); } /// @@ -1059,14 +1061,14 @@ namespace Mk0.Software.ImageSorter /// private void ToolStripMenuItemOpenExplorer_Click(object sender, EventArgs e) { - if (File.Exists(pictureBox.ImageLocation)) + if (File.Exists(pictureBoxImage.ImageLocation)) { - Process.Start("explorer.exe", @"/select, " + pictureBox.ImageLocation); + Process.Start("explorer.exe", @"/select, " + pictureBoxImage.ImageLocation); } - else if (Directory.Exists(Path.GetDirectoryName(pictureBox.ImageLocation))) + else if (Directory.Exists(Path.GetDirectoryName(pictureBoxImage.ImageLocation))) { - Process.Start("explorer.exe", Path.GetDirectoryName(pictureBox.ImageLocation)); + Process.Start("explorer.exe", Path.GetDirectoryName(pictureBoxImage.ImageLocation)); } } @@ -1077,9 +1079,9 @@ namespace Mk0.Software.ImageSorter /// private void ToolStripMenuItemImageDetails_Click(object sender, EventArgs e) { - using (Image img = Image.FromFile(pictureBox.ImageLocation)) + using (Image img = Image.FromFile(pictureBoxImage.ImageLocation)) { - FileInfo info = new FileInfo(pictureBox.ImageLocation); + FileInfo info = new FileInfo(pictureBoxImage.ImageLocation); ImageFormat format = img.RawFormat; MessageBox.Show("Dateiname: " + info.Name + Environment.NewLine + "Pfad: " + info.DirectoryName + Environment.NewLine + @@ -1102,7 +1104,7 @@ namespace Mk0.Software.ImageSorter /// private void ToolStripMenuItemEditImage_Click(object sender, EventArgs e) { - FileInfo info = new FileInfo(pictureBox.ImageLocation); + FileInfo info = new FileInfo(pictureBoxImage.ImageLocation); ProcessStartInfo pi = new ProcessStartInfo { FileName = ("mspaint.exe"), @@ -1125,11 +1127,11 @@ namespace Mk0.Software.ImageSorter /// private void BildZuschneidenToolStripMenuItem_Click(object sender, EventArgs e) { - Cropper cropper = new Cropper(pictureBox.ImageLocation); + Cropper cropper = new Cropper(pictureBoxImage.ImageLocation); DialogResult result = cropper.ShowDialog(this); if (result == DialogResult.OK) { - string del = pictureBox.ImageLocation; + string del = pictureBoxImage.ImageLocation; images[imageIndex] = cropper.NewFileLocation; LoadPicture(imageIndex); FileSystem.DeleteFile(del, UIOption.OnlyErrorDialogs, RecycleOption.SendToRecycleBin, UICancelOption.DoNothing); @@ -1152,7 +1154,7 @@ namespace Mk0.Software.ImageSorter Properties.Settings.Default.lastHeight = Height; Properties.Settings.Default.lastTop = Top; Properties.Settings.Default.lastLeft = Left; - Properties.Settings.Default.showInfo = groupBox1.Visible; + Properties.Settings.Default.showInfo = groupBoxInformationen.Visible; Properties.Settings.Default.Save(); } @@ -1205,7 +1207,7 @@ namespace Mk0.Software.ImageSorter /// private void ShowDuplicatedMessage(Image bild, string bildpfad) { - banner.Enqueue("Das Duplikat \"" + Path.GetFileName(bildpfad) + "\" wurde", "erstellt.", bild, Properties.Resources.duplicate); + banner.Enqueue("Das Duplikat \"" + Path.GetFileName(bildpfad) + "\"", "wurde erstellt.", bild, Properties.Resources.duplicate); banner.ShowMessages(); } @@ -1318,7 +1320,7 @@ namespace Mk0.Software.ImageSorter Properties.Settings.Default.zoom = comboBoxZoom.SelectedIndex; Properties.Settings.Default.Save(); - if(pictureBox.Image != null) + if(pictureBoxImage.Image != null) { Zoom(); } @@ -1355,19 +1357,19 @@ namespace Mk0.Software.ImageSorter /// private void ButtonInfo_Click(object sender, EventArgs e) { - if(groupBox1.Visible) + if(groupBoxInformationen.Visible) { //ausblenden - groupBox1.Visible = false; - groupBox2.Location = new Point(groupBox2.Location.X, 12); - groupBox2.Height = groupBox2.Height + 87; + groupBoxInformationen.Visible = false; + groupBoxZiele.Location = new Point(groupBoxZiele.Location.X, 12); + groupBoxZiele.Height = groupBoxZiele.Height + 87; } else { //einblenden - groupBox1.Visible = true; - groupBox2.Location = new Point(groupBox2.Location.X, 99); - groupBox2.Height = groupBox2.Height - 87; + groupBoxInformationen.Visible = true; + groupBoxZiele.Location = new Point(groupBoxZiele.Location.X, 99); + groupBoxZiele.Height = groupBoxZiele.Height - 87; } } @@ -1392,15 +1394,15 @@ namespace Mk0.Software.ImageSorter } /// - /// + /// Duplikat von aktuellem Bild erzeugen /// /// /// private void ButtonDuplicate_Click(object sender, EventArgs e) { //aktuelles bild kopieren - string targetPath = Path.Combine(Path.GetDirectoryName(pictureBox.ImageLocation), Path.GetFileNameWithoutExtension(pictureBox.ImageLocation) + Randomize.NumberAndDigits(5, "_") + Path.GetExtension(pictureBox.ImageLocation)); - File.Copy(pictureBox.ImageLocation, targetPath, true); + string targetPath = Path.Combine(Path.GetDirectoryName(pictureBoxImage.ImageLocation), Path.GetFileNameWithoutExtension(pictureBoxImage.ImageLocation) + Randomize.NumberAndDigits(5, "_") + Path.GetExtension(pictureBoxImage.ImageLocation)); + File.Copy(pictureBoxImage.ImageLocation, targetPath, true); //duplikat als nächstes bild in liste aufnehmen images.Insert(imageIndex + 1, targetPath); @@ -1410,5 +1412,118 @@ namespace Mk0.Software.ImageSorter Image myImg = CopyImage.GetCopyImage(targetPath); ShowDuplicatedMessage(myImg, targetPath); } + + /// + /// Untermenü für Transformation ein-/ausblenden + /// + /// + /// + private void ButtonTransformation_Click(object sender, EventArgs e) + { + groupBoxTransformation.Visible = !groupBoxTransformation.Visible; + } + + /// + /// Hintergrund hell/dunkel schalten + /// + /// + /// + private void ButtonHintergrund_Click(object sender, EventArgs e) + { + if(panelImageBackground.BackColor==Color.Black) + { + panelImageBackground.BackColor = SystemColors.Control; + pictureBoxImage.BackColor = SystemColors.Control; + } + else + { + panelImageBackground.BackColor = Color.Black; + pictureBoxImage.BackColor = Color.Black; + } + } + + /// + /// Ränder schneiden Untermenü ein-/ausblenden + /// + /// + /// + private void ButtonRander_Click(object sender, EventArgs e) + { + groupBoxRander.Visible = !groupBoxRander.Visible; + } + + /// + /// Rand von Bild schneiden + /// + /// + /// + private void RandSchneiden_Click(object sender, EventArgs e) + { + Button btn = (Button)sender; + string cutString = btn.Tag.ToString(); + Image im = pictureBoxImage.Image; + + int move = (int)numericUpDownRander.Value; + int x = 0, y = 0, width = im.Width, height = im.Height; + + if (cutString == "links") + { + x += move; + width -= move; + } + else if (cutString == "rechts") + { + width -= move; + } + else if (cutString == "oben") + { + y += move; + height -= move; + } + else if (cutString == "unten") + { + height -= move; + } + + Rectangle r = new Rectangle(x, y, width, height); + Image res = CropImage(im, r); + + string folder = Path.GetDirectoryName(pictureBoxImage.ImageLocation); + string file = Path.GetFileNameWithoutExtension(pictureBoxImage.ImageLocation) + "_cut"; + string ext = Path.GetExtension(pictureBoxImage.ImageLocation); + string newFileLocation = Path.Combine(folder, file + ext); + string del = pictureBoxImage.ImageLocation; + if (ext == ".png") + { + res.Save(newFileLocation, ImageFormat.Png); + } + else if (ext == ".gif") + { + res.Save(newFileLocation, ImageFormat.Gif); + } + else + { + res.Save(newFileLocation, ImageFormat.Jpeg); + } + images[imageIndex] = newFileLocation; + LoadPicture(imageIndex); + FileSystem.DeleteFile(del, UIOption.OnlyErrorDialogs, RecycleOption.SendToRecycleBin, UICancelOption.DoNothing); + + groupBoxRander.Visible = false; + } + + /// + /// schneidet Bilder aus + /// + /// + /// + /// + private static Image CropImage(Image img, Rectangle cropArea) + { + Bitmap bmpImage = new Bitmap(img); + Bitmap bmpCrop = bmpImage.Clone(cropArea, + bmpImage.PixelFormat); + return (Image)(bmpCrop); + } } } \ No newline at end of file diff --git a/Mk0.Software.ImageSorter/Mk0.Software.ImageSorter.csproj b/Mk0.Software.ImageSorter/Mk0.Software.ImageSorter.csproj index 5360955..17bf7e8 100644 --- a/Mk0.Software.ImageSorter/Mk0.Software.ImageSorter.csproj +++ b/Mk0.Software.ImageSorter/Mk0.Software.ImageSorter.csproj @@ -33,7 +33,7 @@ manuelkamper.com false 0 - 1.39.0.0 + 1.40.0.0 true true true diff --git a/Mk0.Software.ImageSorter/Properties/AssemblyInfo.cs b/Mk0.Software.ImageSorter/Properties/AssemblyInfo.cs index 67c68fb..2068f44 100644 --- a/Mk0.Software.ImageSorter/Properties/AssemblyInfo.cs +++ b/Mk0.Software.ImageSorter/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern // übernehmen, indem Sie "*" eingeben: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.39.*")] +[assembly: AssemblyVersion("1.40.*")] //[assembly: AssemblyFileVersion("1.6.0.0")]