diff --git a/GreenshotCore/Configuration/CoreConfiguration.cs b/GreenshotCore/Configuration/CoreConfiguration.cs
index a4845e475..efe4b6d5c 100644
--- a/GreenshotCore/Configuration/CoreConfiguration.cs
+++ b/GreenshotCore/Configuration/CoreConfiguration.cs
@@ -20,9 +20,11 @@
*/
using System;
using System.Collections.Generic;
+using System.Drawing;
+using System.Drawing.Imaging;
+using System.IO;
namespace Greenshot.Core {
- public enum Destinations {Editor=1, FileDefault=2, FileWithDialog=4, Clipboard=8, Printer=16, EMail=32}
///
/// Description of CoreConfiguration.
///
@@ -35,6 +37,65 @@ namespace Greenshot.Core {
[IniProperty("IsFirstLaunch", Description="Is this the first time launch?", DefaultValue="true")]
public bool IsFirstLaunch;
[IniProperty("Destinations", Description="Which destinations? Options are: Editor, FileDefault, FileWithDialog, Clipboard, Printer, EMail", DefaultValue="Editor")]
- public List OutputDestinations;
+ public List OutputDestinations;
+
+ [IniProperty("CaptureMousepointer", Description="Should the mouse be captured?", DefaultValue="true")]
+ public bool CaptureMousepointer;
+ [IniProperty("CaptureWindowsInteractive", Description="Use interactive window selection to capture? (false=Capture active window)", DefaultValue="false")]
+ public bool CaptureWindowsInteractive;
+ [IniProperty("CaptureDelay", Description="Capture delay in millseconds.", DefaultValue="100")]
+ public int CaptureDelay;
+ [IniProperty("CaptureCompleteWindow", Description="Try capturing the complete window.", DefaultValue="false")]
+ public bool CaptureCompleteWindow;
+ [IniProperty("CaptureWindowContent", Description="Try capturing only the content of the window (IE/Firefox).", DefaultValue="false")]
+ public bool? CaptureWindowContent;
+
+ [IniProperty("ShowFlashlight", Description="Show a flash after taking a capture.", DefaultValue="false")]
+ public bool ShowFlash = false;
+ [IniProperty("PlayCameraSound", Description="Play a camera sound after taking a capture.", DefaultValue="false")]
+ public bool PlayCameraSound = false;
+
+ public string Output_File_Path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
+ [IniProperty("OutputFileFilenamePattern", Description="Filename pattern for screenshot.", DefaultValue="%title%_%YYYY%-%MM%-%DD%_%hh%-%mm%-%ss%")]
+ public string OutputFileFilenamePattern;
+ [IniProperty("OutputFileFormat", Description="Default file type for writing screenshots. (Bmp, Gif, Jepg, Png, Tiff)", DefaultValue="Png")]
+ public ImageFormat OutputFileFormat = ImageFormat.Png;
+ [IniProperty("OutputFileCopyPathToClipboard", Description="When saving a screenshot, copy the path to the clipboard?", DefaultValue="true")]
+ public bool OutputFileCopyPathToClipboard;
+
+ [IniProperty("OutputFileJpegQuality", Description="JPEG file save quality in %.", DefaultValue="80")]
+ public int OutputFileJpegQuality;
+ [IniProperty("OutputFilePromptJpegQuality", Description="Ask for the JPEQ quality before saving?", DefaultValue="false")]
+ public bool OutputFilePromptJpegQuality;
+ [IniProperty("OutputFileIncrementingNumber", Description="The number for the %NUM% in the filename pattern, is increased automatically after each save.", DefaultValue="1")]
+ public uint OutputFileIncrementingNumber;
+
+ public string Output_FileAs_Fullpath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop),"dummy.png");
+
+ [IniProperty("OutputPrintPromptOptions", Description="Ask for print options when printing?", DefaultValue="true")]
+ public bool OutputPrintPromptOptions;
+ [IniProperty("OutputPrintAllowRotate", Description="Allow rotating the picture for fitting on paper?", DefaultValue="true")]
+ public bool OutputPrintAllowRotate;
+ [IniProperty("OutputPrintAllowEnlarge", Description="Allow growing the picture for fitting on paper?", DefaultValue="true")]
+ public bool OutputPrintAllowEnlarge;
+ [IniProperty("OutputPrintAllowShrink", Description="Allow shrinking the picture for fitting on paper?", DefaultValue="true")]
+ public bool OutputPrintAllowShrink;
+ [IniProperty("OutputPrintCenter", Description="Center image when printing?", DefaultValue="true")]
+ public bool OutputPrintCenter;
+ [IniProperty("OutputPrintTimestamp", Description="Print timestamp on print?", DefaultValue="true")]
+ public bool OutputPrintTimestamp;
+
+ [IniProperty("EditorWindowSize", Description="Size of the editor.", DefaultValue="540, 380")]
+ public Size EditorWindowSize;
+ [IniProperty("EditorWindowLocation", Description="Location of the editor.", DefaultValue="100, 100")]
+ public Point EditorWindowLocation;
+ [IniProperty("EditorWindowState", Description="The window state of the editor. (Normal or Maximized)", DefaultValue="Normal")]
+ public String EditorWindowState;
+
+ public Color[] Editor_RecentColors = new Color[12];
+ public Font Editor_Font = null;
+
+ // Not storing, this doesn't make sense to store (or does it?)
+ public Rectangle EditorPreviousScreenbounds = Rectangle.Empty;
}
}