mirror of
https://github.com/greenshot/greenshot
synced 2025-07-16 10:03:44 -07:00
Zoom feature for the editor
This commit is contained in:
parent
38739ce427
commit
8b45489b11
18 changed files with 585 additions and 52 deletions
|
@ -21,6 +21,7 @@
|
|||
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.Drawing.Drawing2D;
|
||||
using System.IO;
|
||||
using System.Windows.Forms;
|
||||
using GreenshotPlugin.Effects;
|
||||
|
@ -147,8 +148,13 @@ namespace GreenshotPlugin.Interfaces
|
|||
/// <param name="container"></param>
|
||||
/// <returns>This returns false if the container is deleted but still in the undo stack</returns>
|
||||
bool IsOnSurface(IDrawableContainer container);
|
||||
void Invalidate(Rectangle rectangleToInvalidate);
|
||||
void Invalidate();
|
||||
/// <summary>
|
||||
/// Invalidates the specified region of the Surface.
|
||||
/// Takes care of the Surface zoom level, accepts rectangle in the coordinate space of the Image.
|
||||
/// </summary>
|
||||
/// <param name="rectangleToInvalidate">Bounding rectangle for updated elements, in the coordinate space of the Image.</param>
|
||||
void InvalidateElements(Rectangle rectangleToInvalidate);
|
||||
bool Modified
|
||||
{
|
||||
get;
|
||||
|
@ -189,6 +195,15 @@ namespace GreenshotPlugin.Interfaces
|
|||
int Width { get; }
|
||||
int Height { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Zoom value applied to the surface. 1.0f for actual size (100%).
|
||||
/// </summary>
|
||||
float ZoomFactor { get; set; }
|
||||
/// <summary>
|
||||
/// Matrix representing zoom applied to the surface.
|
||||
/// </summary>
|
||||
Matrix ZoomMatrix { get; }
|
||||
|
||||
void MakeUndoable(IMemento memento, bool allowMerge);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue