ShareX/ShareX/Enums.cs

425 lines
12 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
2024-01-03 12:57:14 +13:00
Copyright (c) 2007-2024 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)
2023-05-10 20:00:00 +12:00
using ShareX.HelpersLib;
2013-11-03 23:53:49 +13:00
using System;
using System.ComponentModel;
2018-10-31 06:58:35 +13:00
#if MicrosoftStore
using Windows.ApplicationModel;
#endif
2013-11-03 23:53:49 +13:00
namespace ShareX
{
2015-09-12 12:09:05 +12:00
public enum ShareXBuild
{
Debug,
Release,
Steam,
MicrosoftStore,
Unknown
2015-09-12 12:09:05 +12:00
}
2024-04-02 18:29:07 +13:00
public enum UpdateChannel // Localized
{
Release,
PreRelease,
Dev
}
public enum SupportedLanguage
{
2014-10-19 06:38:34 +13:00
Automatic, // Localized
2015-05-04 04:24:21 +12:00
[Description("Nederlands (Dutch)")]
Dutch,
2014-10-04 02:54:41 +13:00
[Description("English")]
English,
2015-01-05 05:30:12 +13:00
[Description("Français (French)")]
2015-01-15 19:17:18 +13:00
French,
2015-05-04 04:24:21 +12:00
[Description("Deutsch (German)")]
German,
2023-03-27 18:37:57 +13:00
[Description("עִברִית (Hebrew)")]
Hebrew,
2015-01-18 13:53:32 +13:00
[Description("Magyar (Hungarian)")]
Hungarian,
2018-04-20 09:54:50 +12:00
[Description("Bahasa Indonesia (Indonesian)")]
Indonesian,
2017-07-24 06:57:10 +12:00
[Description("Italiano (Italian)")]
Italian,
2020-10-14 00:42:24 +13:00
[Description("日本語 (Japanese)")]
Japanese,
2015-04-02 03:24:36 +13:00
[Description("한국어 (Korean)")]
Korean,
2018-08-07 22:32:09 +12:00
[Description("Español mexicano (Mexican Spanish)")]
MexicanSpanish,
[Description("فارسی (Persian)")]
Persian,
2022-07-04 08:17:03 +12:00
[Description("Polski (Polish)")]
Polish,
2020-05-08 23:23:38 +12:00
[Description("Português (Portuguese)")]
Portuguese,
2015-08-12 07:23:48 +12:00
[Description("Português-Brasil (Portuguese-Brazil)")]
PortugueseBrazil,
2022-06-28 22:48:00 +12:00
[Description("Română (Romanian)")]
Romanian,
2015-10-16 09:06:58 +13:00
[Description("Русский (Russian)")]
Russian,
2015-01-15 19:17:18 +13:00
[Description("简体中文 (Simplified Chinese)")]
2015-01-18 08:28:30 +13:00
SimplifiedChinese,
2015-04-09 07:15:40 +12:00
[Description("Español (Spanish)")]
Spanish,
[Description("繁體中文 (Traditional Chinese)")]
TraditionalChinese,
[Description("Türkçe (Turkish)")]
Turkish,
2018-04-20 08:49:26 +12:00
[Description("Українська (Ukrainian)")]
Ukrainian,
2015-10-16 20:39:35 +13:00
[Description("Tiếng Việt (Vietnamese)")]
Vietnamese
}
2013-11-03 23:53:49 +13:00
public enum TaskJob
{
Job,
2013-11-03 23:53:49 +13:00
DataUpload,
FileUpload,
TextUpload,
ShortenURL,
ShareURL,
Download,
DownloadUpload
2013-11-03 23:53:49 +13:00
}
2015-08-04 19:31:43 +12:00
public enum TaskStatus
{
InQueue,
Preparing,
Working,
Stopping,
2018-06-11 05:39:48 +12:00
Stopped,
Failed,
Completed,
History
2015-08-04 19:31:43 +12:00
}
2013-11-03 23:53:49 +13:00
[Flags]
2014-10-19 06:38:34 +13:00
public enum AfterCaptureTasks // Localized
2013-11-03 23:53:49 +13:00
{
None = 0,
2016-02-07 05:41:05 +13:00
ShowQuickTaskMenu = 1,
ShowAfterCaptureWindow = 1 << 1,
BeautifyImage = 1 << 2,
AddImageEffects = 1 << 3,
AnnotateImage = 1 << 4,
CopyImageToClipboard = 1 << 5,
PinToScreen = 1 << 6,
SendImageToPrinter = 1 << 7,
SaveImageToFile = 1 << 8,
SaveImageToFileWithDialog = 1 << 9,
SaveThumbnailImageToFile = 1 << 10,
PerformActions = 1 << 11,
CopyFileToClipboard = 1 << 12,
CopyFilePathToClipboard = 1 << 13,
ShowInExplorer = 1 << 14,
ScanQRCode = 1 << 15,
DoOCR = 1 << 16,
ShowBeforeUploadWindow = 1 << 17,
UploadImageToHost = 1 << 18,
DeleteFile = 1 << 19
2013-11-03 23:53:49 +13:00
}
[Flags]
2014-10-19 06:38:34 +13:00
public enum AfterUploadTasks // Localized
2013-11-03 23:53:49 +13:00
{
None = 0,
ShowAfterUploadWindow = 1,
UseURLShortener = 1 << 1,
ShareURL = 1 << 2,
CopyURLToClipboard = 1 << 3,
OpenURL = 1 << 4,
ShowQRCode = 1 << 5
2013-11-03 23:53:49 +13:00
}
public enum CaptureType
{
Fullscreen,
2013-11-03 23:53:49 +13:00
Monitor,
ActiveMonitor,
Window,
ActiveWindow,
Region,
2015-04-27 07:52:01 +12:00
CustomRegion,
2013-11-03 23:53:49 +13:00
LastRegion
}
public enum ScreenRecordStartMethod
{
Region,
ActiveWindow,
CustomRegion,
LastRegion
}
2023-05-10 20:00:00 +12:00
public enum HotkeyType // Localized
2013-11-03 23:53:49 +13:00
{
None,
// Upload
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Upload)]
2014-07-05 02:23:53 +12:00
FileUpload,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Upload)]
2014-08-14 00:33:14 +12:00
FolderUpload,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Upload)]
2013-11-03 23:53:49 +13:00
ClipboardUpload,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Upload)]
2013-11-03 23:53:49 +13:00
ClipboardUploadWithContentViewer,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Upload)]
UploadText,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Upload)]
2014-07-05 02:23:53 +12:00
UploadURL,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Upload)]
DragDropUpload,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Upload)]
ShortenURL,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Upload)]
TweetMessage,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Upload)]
2014-07-05 02:23:53 +12:00
StopUploads,
// Screen capture
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenCapture)]
2013-11-03 23:53:49 +13:00
PrintScreen,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenCapture)]
2013-11-03 23:53:49 +13:00
ActiveWindow,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenCapture)]
CustomWindow,
[Category(EnumExtensions.HotkeyType_Category_ScreenCapture)]
2013-11-03 23:53:49 +13:00
ActiveMonitor,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenCapture)]
2013-11-03 23:53:49 +13:00
RectangleRegion,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenCapture)]
RectangleLight,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenCapture)]
RectangleTransparent,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenCapture)]
2015-04-27 07:52:01 +12:00
CustomRegion,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenCapture)]
2013-11-03 23:53:49 +13:00
LastRegion,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenCapture)]
2015-09-27 20:55:42 +13:00
ScrollingCapture,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenCapture)]
2015-06-28 01:03:15 +12:00
AutoCapture,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenCapture)]
2015-06-28 01:03:15 +12:00
StartAutoCapture,
// Screen record
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenRecord)]
2013-11-03 23:53:49 +13:00
ScreenRecorder,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenRecord)]
ScreenRecorderActiveWindow,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenRecord)]
ScreenRecorderCustomRegion,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenRecord)]
StartScreenRecorder,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenRecord)]
ScreenRecorderGIF,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenRecord)]
ScreenRecorderGIFActiveWindow,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenRecord)]
ScreenRecorderGIFCustomRegion,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenRecord)]
StartScreenRecorderGIF,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenRecord)]
2021-09-28 00:09:04 +13:00
StopScreenRecording,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenRecord)]
2022-09-04 06:57:05 +12:00
PauseScreenRecording,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_ScreenRecord)]
AbortScreenRecording,
// Tools
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
ColorPicker,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
2013-11-03 23:53:49 +13:00
ScreenColorPicker,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
Ruler,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
2022-07-27 15:34:32 +12:00
PinToScreen,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
PinToScreenFromScreen,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
PinToScreenFromClipboard,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
PinToScreenFromFile,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
ImageEditor,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
2023-05-10 22:06:42 +12:00
ImageBeautifier,
[Category(EnumExtensions.HotkeyType_Category_Tools)]
2014-05-21 10:46:06 +12:00
ImageEffects,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
2022-03-24 21:57:13 +13:00
ImageViewer,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
2015-10-01 12:48:33 +13:00
ImageCombiner,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
ImageSplitter,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
ImageThumbnailer,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
VideoConverter,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
2015-10-01 12:48:33 +13:00
VideoThumbnailer,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
OCR,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
QRCode,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
QRCodeDecodeFromScreen,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
HashCheck,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
IndexFolder,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
ClipboardViewer,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
BorderlessWindow,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
InspectWindow,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
MonitorTest,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Tools)]
DNSChanger,
// Other
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Other)]
DisableHotkeys,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Other)]
2016-04-07 04:15:25 +12:00
OpenMainWindow,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Other)]
2016-02-22 08:50:49 +13:00
OpenScreenshotsFolder,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Other)]
2016-03-03 23:05:59 +13:00
OpenHistory,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Other)]
2017-01-23 00:15:47 +13:00
OpenImageHistory,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Other)]
2017-01-23 01:41:20 +13:00
ToggleActionsToolbar,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Other)]
2021-10-03 10:05:43 +13:00
ToggleTrayMenu,
2023-05-10 20:00:00 +12:00
[Category(EnumExtensions.HotkeyType_Category_Other)]
2017-01-23 01:41:20 +13:00
ExitShareX
2013-11-03 23:53:49 +13:00
}
2021-10-15 03:47:04 +13:00
public enum ToastClickAction // Localized
{
CloseNotification,
AnnotateImage,
CopyImageToClipboard,
CopyFile,
CopyFilePath,
CopyUrl,
OpenFile,
OpenFolder,
OpenUrl,
Upload,
PinToScreen
}
2021-10-15 03:47:04 +13:00
public enum ThumbnailViewClickAction // Localized
{
Default,
Select,
2021-10-15 03:47:04 +13:00
OpenImageViewer,
OpenFile,
OpenFolder,
OpenURL,
EditImage
}
2014-10-19 06:38:34 +13:00
public enum FileExistAction // Localized
2014-03-13 22:13:02 +13:00
{
Ask,
Overwrite,
UniqueName,
2014-03-13 22:13:02 +13:00
Cancel
}
2014-06-19 07:17:22 +12:00
2021-10-17 09:45:04 +13:00
public enum ImagePreviewVisibility // Localized
2014-06-19 07:17:22 +12:00
{
Show, Hide, Automatic
}
2021-10-17 09:45:04 +13:00
public enum ImagePreviewLocation // Localized
{
Side, Bottom
}
2021-10-17 09:45:04 +13:00
public enum ThumbnailTitleLocation // Localized
{
Top, Bottom
}
public enum RegionCaptureType
{
Default, Light, Transparent
}
#if !MicrosoftStore
public enum StartupState
{
Disabled,
DisabledByUser,
Enabled,
DisabledByPolicy,
EnabledByPolicy
}
#else
public enum StartupState
{
Disabled = StartupTaskState.Disabled,
DisabledByUser = StartupTaskState.DisabledByUser,
Enabled = StartupTaskState.Enabled,
DisabledByPolicy = StartupTaskState.DisabledByPolicy,
EnabledByPolicy = StartupTaskState.EnabledByPolicy
}
2018-03-22 13:25:18 +13:00
#endif
public enum BalloonTipClickAction
{
None,
OpenURL,
OpenDebugLog
}
2019-05-13 10:21:37 +12:00
2021-10-17 09:45:04 +13:00
public enum TaskViewMode // Localized
2019-05-13 10:21:37 +12:00
{
ListView,
ThumbnailView
}
2023-10-27 02:46:01 +13:00
public enum NativeMessagingAction
{
None,
2023-10-27 02:46:01 +13:00
UploadImage,
UploadVideo,
UploadAudio,
UploadText,
ShortenURL
}
2022-06-29 02:39:07 +12:00
}