ShareX/ShareX.ScreenCaptureLib/Enums.cs

191 lines
4.6 KiB
C#
Raw Normal View History

2013-11-03 23:53:49 +13:00
#region License Information (GPL v3)
/*
ShareX - A program that allows you to take screenshots and share any file type
2016-01-04 04:16:01 +13:00
Copyright (c) 2007-2016 ShareX Team
2013-11-03 23:53:49 +13:00
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 2
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, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Optionally you can also view the license at <http://www.gnu.org/licenses/>.
*/
#endregion License Information (GPL v3)
2014-05-09 15:14:53 +12:00
using System.ComponentModel;
2014-12-11 09:25:20 +13:00
namespace ShareX.ScreenCaptureLib
2013-11-03 23:53:49 +13:00
{
public enum ScreenRecordOutput
{
[Description("FFmpeg")]
FFmpeg,
[Description("Animated GIF")]
GIF
}
2015-06-05 19:48:02 +12:00
public enum ScreenRecordGIFEncoding // Localized
{
[Description("FFmpeg")]
FFmpeg,
[Description(".NET")]
NET,
[Description("Octree quantizer")]
OctreeQuantizer
}
2013-11-03 23:53:49 +13:00
public enum SurfaceResult
{
None,
Close,
Region,
Fullscreen,
Monitor,
ActiveMonitor
2013-11-03 23:53:49 +13:00
}
internal enum NodePosition
2013-11-03 23:53:49 +13:00
{
TopLeft,
Top,
TopRight,
Right,
BottomRight,
Bottom,
BottomLeft,
Left
}
2014-05-09 01:28:46 +12:00
internal enum NodeShape
{
Square, Circle, Diamond
}
2014-05-09 15:14:53 +12:00
public enum FFmpegVideoCodec
{
[Description("x264 (mp4)")]
2014-05-09 15:14:53 +12:00
libx264,
[Description("VP8 (webm)")]
2014-05-09 15:14:53 +12:00
libvpx,
[Description("Xvid (avi)")]
2015-06-02 00:05:46 +12:00
libxvid,
[Description("Animated GIF (gif)")]
2015-06-09 10:55:45 +12:00
gif,
[Description("x265 (mp4)")]
2015-06-02 00:05:46 +12:00
libx265
2014-05-09 15:14:53 +12:00
}
public enum FFmpegPreset
{
[Description("Ultra fast")]
ultrafast,
[Description("Super fast")]
superfast,
[Description("Very fast")]
veryfast,
[Description("Faster")]
faster,
[Description("Fast")]
fast,
[Description("Medium")]
medium,
[Description("Slow")]
slow,
[Description("Slower")]
slower,
[Description("Very slow")]
2014-05-21 04:12:52 +12:00
veryslow
2014-05-09 15:14:53 +12:00
}
2015-06-09 10:55:45 +12:00
public enum FFmpegTune
{
film, animation, grain, stillimage, psnr, ssim, fastdecode, zerolatency
}
public enum FFmpegAudioCodec
{
[Description("AAC")]
libvoaacenc,
[Description("Vorbis")]
libvorbis,
[Description("MP3")]
libmp3lame
}
public enum FFmpegPaletteGenStatsMode
{
2015-06-09 10:55:45 +12:00
full, diff
}
public enum FFmpegPaletteUseDither
{
none,
bayer,
heckbert,
floyd_steinberg,
sierra2,
sierra2_4a
}
2015-07-17 03:21:02 +12:00
public enum ShapeType
2015-07-17 03:21:02 +12:00
{
[Description("Region: Rectangle")]
RegionRectangle,
[Description("Region: Rounded rectangle")]
RegionRoundedRectangle,
[Description("Region: Ellipse")]
RegionEllipse,
2016-05-04 05:58:18 +12:00
[Description("Drawing: Rectangle")]
DrawingRectangle,
[Description("Drawing: Rounded rectangle")]
DrawingRoundedRectangle,
2016-05-06 05:42:56 +12:00
[Description("Drawing: Ellipse")]
DrawingEllipse,
2016-05-06 05:03:57 +12:00
[Description("Drawing: Line")]
DrawingLine,
[Description("Drawing: Arrow")]
DrawingArrow
2015-07-17 03:21:02 +12:00
}
public enum RegionAnnotateMode
{
Capture,
Rectangle,
Pen
}
public enum ScrollingCaptureScrollMethod
{
[Description("Automatically try all methods until one works")]
Automatic,
[Description("Send scroll message to window or control")]
SendMessageScroll,
[Description("Simulate pressing \"Page down\" key")]
KeyPressPageDown,
[Description("Simulate mouse wheel scrolling")]
MouseWheel
}
public enum ScrollingCaptureScrollTopMethod
{
[Description("First simulate pressing \"Home\" key then send scroll top message")]
All,
[Description("Send scroll top message")]
SendMessageTop,
[Description("Simulate pressing \"Home\" key")]
KeyPressHome,
[Description("Disable scrolling to top")]
None
}
2013-11-03 23:53:49 +13:00
}