Files
community/Ink Canvas/Resources/ICCConfiguration.cs
T

64 lines
2.7 KiB
C#
Raw Normal View History

2025-09-07 09:41:42 +08:00
using System.Windows;
2025-08-31 16:17:21 +08:00
using System.Windows.Media;
2025-09-07 13:30:46 +08:00
namespace Ink_Canvas.Resources.ICCConfiguration
{
public enum InitialPositionTypes
{
2025-08-31 16:17:21 +08:00
TopLeft, TopRight, BottomLeft, BottomRight, TopCenter, BottomCenter, Custom
}
2025-09-07 13:30:46 +08:00
public enum ElementCornerRadiusTypes
{
2025-08-31 16:17:21 +08:00
SuperEllipse, Circle, Custom, None
}
2025-09-07 13:30:46 +08:00
public class NearSnapAreaSize
{
public double[] TopLeft { get; set; } = { 24, 24 };
public double[] TopRight { get; set; } = { 24, 24 };
public double[] BottomLeft { get; set; } = { 24, 24 };
public double[] BottomRight { get; set; } = { 24, 24 };
2025-08-31 16:17:21 +08:00
public double TopCenter { get; set; } = 24;
public double BottomCenter { get; set; } = 24;
}
2025-09-07 13:30:46 +08:00
public class ICCFloatingBarConfiguration
{
2025-08-31 16:17:21 +08:00
public bool SemiTransparent { get; set; } = false;
public bool NearSnap { get; set; } = true;
public InitialPositionTypes InitialPosition { get; set; } = InitialPositionTypes.BottomCenter;
public Point InitialPositionPoint { get; set; } = new Point(0, 0);
public double ElementCornerRadiusValue = 0;
public ElementCornerRadiusTypes ElementCornerRadiusType { get; set; } = ElementCornerRadiusTypes.SuperEllipse;
public bool ParallaxEffect { get; set; } = true;
public bool MiniMode { get; set; } = false;
public Color ClearButtonColor { get; set; } = Color.FromRgb(224, 27, 36);
public Color ClearButtonPressColor { get; set; } = Color.FromRgb(254, 226, 226);
public Color ToolButtonSelectedBgColor { get; set; } = Color.FromRgb(37, 99, 235);
public double MovingLimitationNoSnap { get; set; } = 12;
public double MovingLimitationSnapped { get; set; } = 24;
2025-09-07 13:30:46 +08:00
public NearSnapAreaSize NearSnapAreaSize { get; set; } = new NearSnapAreaSize()
{
2025-08-31 16:17:21 +08:00
TopLeft = new double[] { 24, 24 },
TopRight = new double[] { 24, 24 },
BottomLeft = new double[] { 24, 24 },
BottomRight = new double[] { 24, 24 },
};
public string[] ToolBarItemsInCursorMode { get; set; } = new string[] {
"Cursor", "Pen", "Clear", "Separator", "Whiteboard", "Gesture", "Menu", "Fold"
};
public string[] ToolBarItemsInMiniMode { get; set; } = new string[] {
"Cursor", "Pen", "Clear"
};
public string[] ToolBarItemsInAnnotationMode { get; set; } = new string[] {
"Cursor", "Pen", "Clear", "Separator", "Eraser", "ShapeDrawing", "Select", "Separator", "Undo", "Redo", "Separator", "Whiteboard", "Gesture", "Menu", "Fold"
};
}
2025-09-07 13:30:46 +08:00
public class ICCConfiguration
{
2025-08-31 16:17:21 +08:00
public ICCFloatingBarConfiguration FloatingBar { get; set; } = new ICCFloatingBarConfiguration();
}
}