When region capture opened show current region shape type

This commit is contained in:
Jaex 2016-08-04 14:18:21 +03:00
parent 697c9b4f93
commit d33b19e3c7
2 changed files with 37 additions and 36 deletions

View file

@ -72,6 +72,43 @@ public RectangleRegionForm(RectangleRegionMode mode)
MouseDown += RectangleRegion_MouseDown;
}
public override void Prepare(Screenshot screenshot)
{
base.Prepare(screenshot);
if (Config != null)
{
ShapeManager = new ShapeManager(this);
ShapeManager.WindowCaptureMode = Config.DetectWindows;
ShapeManager.IncludeControls = Config.DetectControls;
if (Mode == RectangleRegionMode.Annotation)
{
ShapeManager.CurrentShapeTypeChanged += ShapeManager_CurrentShapeTypeChanged;
ShapeManager_CurrentShapeTypeChanged(ShapeManager.CurrentShapeType);
}
if (Mode == RectangleRegionMode.OneClick || ShapeManager.WindowCaptureMode)
{
IntPtr handle = Handle;
TaskEx.Run(() =>
{
WindowsRectangleList wla = new WindowsRectangleList();
wla.IgnoreHandle = handle;
wla.IncludeChildWindows = ShapeManager.IncludeControls;
ShapeManager.Windows = wla.GetWindowInfoListAsync(5000);
});
}
if (Config.UseCustomInfoText || Mode == RectangleRegionMode.ScreenColorPicker)
{
bmpBackgroundImage = new Bitmap(backgroundImage);
}
}
}
private void ShapeManager_CurrentShapeTypeChanged(ShapeType shapeType)
{
shapeTypeTextAnimation.Start(shapeType.GetLocalizedDescription());
@ -122,41 +159,6 @@ private void CopyAreaInfo()
ClipboardHelpers.CopyText(clipboardText);
}
public override void Prepare(Screenshot screenshot)
{
base.Prepare(screenshot);
if (Config != null)
{
ShapeManager = new ShapeManager(this);
ShapeManager.WindowCaptureMode = Config.DetectWindows;
ShapeManager.IncludeControls = Config.DetectControls;
if (Mode == RectangleRegionMode.Annotation)
{
ShapeManager.CurrentShapeTypeChanged += ShapeManager_CurrentShapeTypeChanged;
}
if (Mode == RectangleRegionMode.OneClick || ShapeManager.WindowCaptureMode)
{
IntPtr handle = Handle;
TaskEx.Run(() =>
{
WindowsRectangleList wla = new WindowsRectangleList();
wla.IgnoreHandle = handle;
wla.IncludeChildWindows = ShapeManager.IncludeControls;
ShapeManager.Windows = wla.GetWindowInfoListAsync(5000);
});
}
if (Config.UseCustomInfoText || Mode == RectangleRegionMode.ScreenColorPicker)
{
bmpBackgroundImage = new Bitmap(backgroundImage);
}
}
}
public override WindowInfo GetWindowInfo()
{
return ShapeManager.FindSelectedWindowInfo(CurrentPosition);

View file

@ -27,7 +27,6 @@ You should have received a copy of the GNU General Public License
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Linq;
namespace ShareX.ScreenCaptureLib
{