blob: a9904ae2c3399e2d8a208f8900505862973d16b7 [file] [log] [blame]
/*******************************************************************************
* You may amend and distribute as you like, but don't remove this header!
*
* EPPlus provides server-side generation of Excel 2007/2010 spreadsheets.
* See http://www.codeplex.com/EPPlus for details.
*
* Copyright (C) 2011 Jan Källman
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
* This library 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 Lesser General Public License for more details.
*
* The GNU Lesser General Public License can be viewed at http://www.opensource.org/licenses/lgpl-license.php
* If you unfamiliar with this license or have questions about it, here is an http://www.gnu.org/licenses/gpl-faq.html
*
* All code and executables are provided "as is" with no warranty either express or implied.
* The author accepts no liability for any damage or loss of business that this product may cause.
*
* Code change notes:
*
* Author Change Date
* ******************************************************************************
* Jan Källman Initial Release 2009-10-01
* Jan Källman License changed GPL-->LGPL 2011-12-16
*******************************************************************************/
namespace AppsheetEpplus;
/// <summary>
/// Border line style
/// </summary>
public enum ExcelBorderStyle {
None,
Hair,
Dotted,
DashDot,
Thin,
DashDotDot,
Dashed,
MediumDashDotDot,
MediumDashed,
MediumDashDot,
Thick,
Medium,
Double,
}
/// <summary>
/// Horizontal text alignment
/// </summary>
public enum ExcelHorizontalAlignment {
General,
Left,
Center,
CenterContinuous,
Right,
Fill,
Distributed,
Justify,
}
/// <summary>
/// Vertical text alignment
/// </summary>
public enum ExcelVerticalAlignment {
Top,
Center,
Bottom,
Distributed,
Justify,
}
/// <summary>
/// Font-Vertical Align
/// </summary>
public enum ExcelVerticalAlignmentFont {
None,
Subscript,
Superscript,
}
/// <summary>
/// Font-Underlinestyle for
/// </summary>
public enum ExcelUnderLineType {
None,
Single,
Double,
SingleAccounting,
DoubleAccounting,
}
/// <summary>
/// Fill pattern
/// </summary>
public enum ExcelFillStyle {
None,
Solid,
DarkGray,
MediumGray,
LightGray,
Gray125,
Gray0625,
DarkVertical,
DarkHorizontal,
DarkDown,
DarkUp,
DarkGrid,
DarkTrellis,
LightVertical,
LightHorizontal,
LightDown,
LightUp,
LightGrid,
LightTrellis,
}
/// <summary>
/// Type of gradient fill
/// </summary>
public enum ExcelFillGradientType {
/// <summary>
/// No gradient fill.
/// </summary>
None,
/// <summary>
/// This gradient fill is of linear gradient type. Linear gradient type means that the transition from one color to the next is along a line (e.g., horizontal, vertical,diagonal, etc.)
/// </summary>
Linear,
/// <summary>
/// This gradient fill is of path gradient type. Path gradient type means the that the boundary of transition from one color to the next is a rectangle, defined by top,bottom, left, and right attributes on the gradientFill element.
/// </summary>
Path,
}
/// <summary>
/// The reading order
/// </summary>
public enum ExcelReadingOrder {
/// <summary>
/// Reading order is determined by scanning the text for the first non-whitespace character: if it is a strong right-to-left character, the reading order is right-to-left; otherwise, the reading order left-to-right.
/// </summary>
ContextDependent = 0,
/// <summary>
/// Left to Right
/// </summary>
LeftToRight = 1,
/// <summary>
/// Right to Left
/// </summary>
RightToLeft = 2,
}
public abstract class StyleBase {
protected ExcelStyles _styles;
internal XmlHelper.ChangedEventHandler _ChangedEvent;
protected int _positionID;
protected string _address;
internal StyleBase(
ExcelStyles styles,
XmlHelper.ChangedEventHandler changedEvent,
int positionId,
string address) {
_styles = styles;
_ChangedEvent = changedEvent;
_address = address;
_positionID = positionId;
}
internal int Index { get; set; }
internal abstract string Id { get; }
internal virtual void SetIndex(int index) {
Index = index;
}
}