mirror of
https://github.com/greenshot/greenshot
synced 2025-08-14 02:37:03 -07:00
Fixed most adorner related drawing issues, need to test a few more (freehand)
This commit is contained in:
parent
31db071394
commit
5b2d5b1397
7 changed files with 223 additions and 160 deletions
|
@ -998,13 +998,14 @@ namespace Greenshot.Drawing {
|
|||
/// </summary>
|
||||
/// <param name="mouseEventArgs">MouseEventArgs</param>
|
||||
/// <returns>IAdorner</returns>
|
||||
private IAdorner AdornersHitTest(MouseEventArgs mouseEventArgs)
|
||||
private IAdorner FindActiveAdorner(MouseEventArgs mouseEventArgs)
|
||||
{
|
||||
foreach(IDrawableContainer drawableContainer in selectedElements)
|
||||
{
|
||||
foreach(IAdorner adorner in drawableContainer.Adorners)
|
||||
{
|
||||
if (adorner.HitTest(mouseEventArgs.Location))
|
||||
|
||||
if (adorner.IsActive || adorner.HitTest(mouseEventArgs.Location))
|
||||
{
|
||||
if (adorner.Cursor != null)
|
||||
{
|
||||
|
@ -1025,7 +1026,7 @@ namespace Greenshot.Drawing {
|
|||
void SurfaceMouseDown(object sender, MouseEventArgs e) {
|
||||
|
||||
// Handle Adorners
|
||||
var adorner = AdornersHitTest(e);
|
||||
var adorner = FindActiveAdorner(e);
|
||||
if (adorner != null)
|
||||
{
|
||||
adorner.MouseDown(sender, e);
|
||||
|
@ -1102,7 +1103,7 @@ namespace Greenshot.Drawing {
|
|||
void SurfaceMouseUp(object sender, MouseEventArgs e) {
|
||||
|
||||
// Handle Adorners
|
||||
var adorner = AdornersHitTest(e);
|
||||
var adorner = FindActiveAdorner(e);
|
||||
if (adorner != null)
|
||||
{
|
||||
adorner.MouseUp(sender, e);
|
||||
|
@ -1171,7 +1172,7 @@ namespace Greenshot.Drawing {
|
|||
/// <param name="e"></param>
|
||||
void SurfaceMouseMove(object sender, MouseEventArgs e) {
|
||||
// Handle Adorners
|
||||
var adorner = AdornersHitTest(e);
|
||||
var adorner = FindActiveAdorner(e);
|
||||
if (adorner != null)
|
||||
{
|
||||
adorner.MouseMove(sender, e);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue