mirror of
https://github.com/ShareX/ShareX.git
synced 2024-10-02 18:26:27 +13:00
Added capture last region button to region capture menu
This commit is contained in:
parent
fadddf7ade
commit
316e9a4388
7 changed files with 48 additions and 10 deletions
|
@ -46,6 +46,7 @@ public enum RegionResult
|
||||||
{
|
{
|
||||||
Close,
|
Close,
|
||||||
Region,
|
Region,
|
||||||
|
LastRegion,
|
||||||
Fullscreen,
|
Fullscreen,
|
||||||
Monitor,
|
Monitor,
|
||||||
ActiveMonitor,
|
ActiveMonitor,
|
||||||
|
|
|
@ -1072,11 +1072,22 @@ public Image GetResultImage()
|
||||||
|
|
||||||
return img;
|
return img;
|
||||||
}
|
}
|
||||||
else if (Result == RegionResult.Region)
|
else if (Result == RegionResult.Region || Result == RegionResult.LastRegion)
|
||||||
{
|
{
|
||||||
|
GraphicsPath gp;
|
||||||
|
|
||||||
|
if (Result == RegionResult.LastRegion)
|
||||||
|
{
|
||||||
|
gp = LastRegionFillPath;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
gp = regionFillPath;
|
||||||
|
}
|
||||||
|
|
||||||
using (Image img = GetOutputImage())
|
using (Image img = GetOutputImage())
|
||||||
{
|
{
|
||||||
return RegionCaptureTasks.ApplyRegionPathToImage(img, regionFillPath);
|
return RegionCaptureTasks.ApplyRegionPathToImage(img, gp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (Result == RegionResult.Fullscreen)
|
else if (Result == RegionResult.Fullscreen)
|
||||||
|
@ -1147,16 +1158,20 @@ protected override void Dispose(bool disposing)
|
||||||
if (markerPen != null) markerPen.Dispose();
|
if (markerPen != null) markerPen.Dispose();
|
||||||
|
|
||||||
if (regionFillPath != null)
|
if (regionFillPath != null)
|
||||||
|
{
|
||||||
|
if (Result == RegionResult.Region)
|
||||||
{
|
{
|
||||||
if (LastRegionFillPath != null) LastRegionFillPath.Dispose();
|
if (LastRegionFillPath != null) LastRegionFillPath.Dispose();
|
||||||
|
|
||||||
LastRegionFillPath = regionFillPath;
|
LastRegionFillPath = regionFillPath;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (regionFillPath != null) regionFillPath.Dispose();
|
regionFillPath.Dispose();
|
||||||
if (regionDrawPath != null) regionDrawPath.Dispose();
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (regionDrawPath != null) regionDrawPath.Dispose();
|
||||||
if (Image != null) Image.Dispose();
|
if (Image != null) Image.Dispose();
|
||||||
|
|
||||||
base.Dispose(disposing);
|
base.Dispose(disposing);
|
||||||
|
|
|
@ -364,6 +364,16 @@ internal static System.Drawing.Bitmap image {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap layer {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("layer", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -480,4 +480,7 @@ Distance: {6:0.00} px / Angle: {7:0.00}°</value>
|
||||||
<data name="test_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
<data name="test_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
<value>..\Resources\test_32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
<value>..\Resources\test_32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="layer" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\layer.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
BIN
ShareX.ScreenCaptureLib/Resources/layer.png
Normal file
BIN
ShareX.ScreenCaptureLib/Resources/layer.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 460 B |
|
@ -474,7 +474,7 @@ private void CreateToolbar()
|
||||||
tsMain.Items.Add(tsddbCapture);
|
tsMain.Items.Add(tsddbCapture);
|
||||||
|
|
||||||
tsmiRegionCapture = new ToolStripMenuItem("Capture regions");
|
tsmiRegionCapture = new ToolStripMenuItem("Capture regions");
|
||||||
tsmiRegionCapture.Image = Resources.layers;
|
tsmiRegionCapture.Image = Resources.layer;
|
||||||
tsmiRegionCapture.MouseDown += (sender, e) =>
|
tsmiRegionCapture.MouseDown += (sender, e) =>
|
||||||
{
|
{
|
||||||
form.UpdateRegionPath();
|
form.UpdateRegionPath();
|
||||||
|
@ -482,6 +482,14 @@ private void CreateToolbar()
|
||||||
};
|
};
|
||||||
tsddbCapture.DropDownItems.Add(tsmiRegionCapture);
|
tsddbCapture.DropDownItems.Add(tsmiRegionCapture);
|
||||||
|
|
||||||
|
if (RegionCaptureForm.LastRegionFillPath != null)
|
||||||
|
{
|
||||||
|
ToolStripMenuItem tsmiLastRegionCapture = new ToolStripMenuItem("Capture last region");
|
||||||
|
tsmiLastRegionCapture.Image = Resources.layers;
|
||||||
|
tsmiLastRegionCapture.MouseDown += (sender, e) => form.Close(RegionResult.LastRegion);
|
||||||
|
tsddbCapture.DropDownItems.Add(tsmiLastRegionCapture);
|
||||||
|
}
|
||||||
|
|
||||||
ToolStripMenuItem tsmiFullscreenCapture = new ToolStripMenuItem(Resources.ShapeManager_CreateContextMenu_Capture_fullscreen);
|
ToolStripMenuItem tsmiFullscreenCapture = new ToolStripMenuItem(Resources.ShapeManager_CreateContextMenu_Capture_fullscreen);
|
||||||
tsmiFullscreenCapture.Image = Resources.layer_fullscreen;
|
tsmiFullscreenCapture.Image = Resources.layer_fullscreen;
|
||||||
tsmiFullscreenCapture.MouseDown += (sender, e) => form.Close(RegionResult.Fullscreen);
|
tsmiFullscreenCapture.MouseDown += (sender, e) => form.Close(RegionResult.Fullscreen);
|
||||||
|
|
|
@ -165,6 +165,7 @@
|
||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<None Include="Resources\layer.png" />
|
||||||
<None Include="Resources\test_32.png" />
|
<None Include="Resources\test_32.png" />
|
||||||
<None Include="Resources\layers.png" />
|
<None Include="Resources\layers.png" />
|
||||||
<None Include="Resources\eraser.png" />
|
<None Include="Resources\eraser.png" />
|
||||||
|
|
Loading…
Reference in a new issue