/* * Greenshot - a free and open source screenshot tool * Copyright (C) 2007-2021 Thomas Braun, Jens Klingen, Robin Krom * * For more information see: http://getgreenshot.org/ * The Greenshot project is hosted on GitHub https://github.com/greenshot/greenshot * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 1 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ using System; using System.Drawing; namespace GreenshotPlugin.Interfaces { /// /// The interface to the Capture object, so Plugins can use it. /// public interface ICapture : IDisposable { /// /// The Capture Details /// ICaptureDetails CaptureDetails { get; set; } /// /// The captured Image /// Image Image { get; set; } /// /// Null the image /// void NullImage(); /// /// Bounds on the screen from which the capture comes /// Rectangle ScreenBounds { get; set; } /// /// The cursor /// Icon Cursor { get; set; } /// /// Boolean to specify if the cursor is available /// bool CursorVisible { get; set; } /// /// Location of the cursor /// Point CursorLocation { get; set; } /// /// Location of the capture /// Point Location { get; set; } /// /// Crops the capture to the specified rectangle (with Bitmap coordinates!) /// /// Rectangle with bitmap coordinates bool Crop(Rectangle cropRectangle); /// /// Apply a translate to the mouse location. e.g. needed for crop /// /// x coordinates to move the mouse /// y coordinates to move the mouse void MoveMouseLocation(int x, int y); } }