using System;
namespace DevComponents.AdvTree
{
///
/// Specifies layout of the items in AdvTree control.
///
public enum eView
{
///
/// Standard TreeView layout.
///
Tree,
///
/// ListView style tile layout.
///
Tile
}
/// Specifies the way background image is displayed on background.
public enum eStyleBackgroundImage:int
{
/// Image is stretched to fill the background
Stretch=0,
/// Image is centered inside the background
Center=1,
/// Image is tiled inside the background
Tile=2,
///
/// Image is drawn in top left corner of container space.
///
TopLeft=3,
///
/// Image is drawn in top right corner of container space.
///
TopRight=4,
///
/// Image is drawn in bottom left corner of container space.
///
BottomLeft=5,
///
/// Image is drawn in bottom right corner of container space.
///
BottomRight=6
}
/// Indicates alignment of a part of the cell like image or check box in relation to the text.
public enum eCellPartAlignment:int
{
///
/// Part is aligned to the left center of the text assuming left-to-right
/// orientation.
///
NearCenter=0,
///
/// Part is aligned to the right center of the text assuming left-to-right
/// orientation.
///
FarCenter=1,
///
/// Part is aligned to the top left of the text assuming left-to-right
/// orientation.
///
NearTop=2,
/// Part is aligned above the text and centered.
CenterTop=3,
///
/// Part is aligned to the top right of the text assuming left-to-right
/// orientation.
///
FarTop=4,
///
/// Part is aligned to the bottom left of the text assuming left-to-right
/// orientation.
///
NearBottom=5,
/// Part is aligned below the text and centered.
CenterBottom=6,
///
/// Part is aligned to the bottom right of the text assuming left-to-right
/// orientation.
///
FarBottom=7,
///
/// Part has default alignment that depends on the parent control view.
///
Default = 8
}
///
/// Specifies how to trim characters from a text that does not completely fit into a element's shape.
///
public enum eStyleTextTrimming
{
///
/// Specifies that the text is trimmed to the nearest character.
///
Character=System.Drawing.StringTrimming.Character,
///
/// Specifies that the text is trimmed to the nearest character, and an ellipsis is inserted at the end of a trimmed line.
///
EllipsisCharacter=System.Drawing.StringTrimming.EllipsisCharacter,
///
/// The center is removed from trimmed lines and replaced by an ellipsis. The algorithm keeps as much of the last slash-delimited segment of the line as possible.
///
EllipsisPath=System.Drawing.StringTrimming.EllipsisPath,
///
/// Specifies that text is trimmed to the nearest word, and an ellipsis is inserted at the end of a trimmed line.
///
EllipsisWord=System.Drawing.StringTrimming.EllipsisWord,
///
/// Specifies no trimming.
///
None=System.Drawing.StringTrimming.None,
///
/// Specifies that text is trimmed to the nearest word.
///
Word=System.Drawing.StringTrimming.Word
}
/////
///// Specifies the border type for style element.
/////
//public enum eStyleBorderType:int
//{
// /// Indicates no border
// None,
// /// Border is a solid line
// Solid,
// /// Border is a solid dash line
// Dash,
// /// Border is solid dash-dot line
// DashDot,
// /// Border is solid dash-dot-dot line
// DashDotDot,
// /// Border consists of dots
// Dot,
// /// Etched Border
// Etched,
// /// Double Border
// Double
//}
///
/// Indicates absolute vertical alignment of the content.
///
public enum eVerticalAlign
{
///
/// Content is aligned to the top
///
Top,
///
/// Content is aligned in the middle
///
Middle,
///
/// Content is aligned at the bottom
///
Bottom
}
///
/// Indicates absolute horizontal alignment
///
public enum eHorizontalAlign
{
///
/// Content is left aligned
///
Left,
///
/// Content is centered
///
Center,
///
/// Content is right aligned
///
Right
}
///
/// Indicates prefered node layout position on Map tree layout when node is the child node of the top-level root node.
///
public enum eMapPosition
{
///
/// Node is positioned based on default algorithm.
///
Default,
///
/// Sub-root node and all nodes after it are positioned to the left of the root.
///
Near,
///
/// Sub-root node and all nodes before it are positioned to the right of the root.
///
Far
}
/////
///// Indicates corner type for the border around visual element.
/////
//public enum eCornerType
//{
// ///
// /// Specifies that corner type is inherited from parent setting.
// ///
// Inherit,
// ///
// /// Specifies square corner.
// ///
// Square,
// ///
// /// Specifies rounded corner.
// ///
// Rounded,
// ///
// /// Specifies diagonal corner.
// ///
// Diagonal
//}
///
/// Specifies the column header visibility for the node.
///
public enum eNodeHeaderVisibility
{
///
/// Column header is automatically shown/hidden based on the node's position in the tree. When
/// Node is first child node i.e. with index=0 the header will be shown, otherwise header will
/// be hidden.
///
Automatic,
///
/// Column header is always displayed regardless of node's position.
///
AlwaysShow,
///
/// Column header is always hidden regardless of node's position.
///
AlwaysHide
}
///
/// Indicates the part of the node.
///
public enum eNodeRectanglePart
{
///
/// Bounds of complete node content except expand button. This also includes the child node bounds if node is expanded.
///
NodeContentBounds,
///
/// Bounds of the expand button which collapses/expands the node.
///
ExpandBounds,
///
/// Hit test bounds of the expand button which collapses/expands the node used by mouse routines to trigger node expansion/collapse.
///
ExpandHitTestBounds,
///
/// Bounds of all child nodes of give node.
///
ChildNodeBounds,
///
/// Bounds for cells inside a node.
///
CellsBounds,
///
/// Complete node bounds including expand button.
///
NodeBounds,
///
/// Bounds of the command button.
///
CommandBounds,
///
/// Bounds of child node columns if node has columns defined.
///
ColumnsBounds
}
///
/// Indicates the part of the cell.
///
internal enum eCellRectanglePart
{
///
/// Bounds of check box or Rectangle.Empty if there is no check-box.
///
CheckBoxBounds,
///
/// Bounds of image inside the cell or Rectangle.Empty if there is no image.
///
ImageBounds,
///
/// Text bounds inside of cell.
///
TextBounds,
///
/// Cell bounds
///
CellBounds
}
///
/// Indicates part of the node mouse is placed over.
///
internal enum eMouseOverNodePart
{
///
/// Mouse is not over any node part.
///
None,
///
/// Mouse is placed over the node.
///
Node,
///
/// Mouse is placed over node expand button.
///
Expand,
///
/// Mouse is placed over the cell.
///
Cell,
///
/// Mouse is placed over the command button.
///
Command
}
/////
///// Indicates white-space part of the style.
/////
//[Flags()]
//public enum eSpacePart
//{
// ///
// /// Represents style padding.
// ///
// Padding=1,
// ///
// /// Represents style border.
// ///
// Border=2,
// ///
// /// Represents style margin.
// ///
// Margin=4
//}
/////
///// Indicates the style side.
/////
//public enum eStyleSide
//{
// ///
// /// Specifies left side of the style.
// ///
// Left,
// ///
// /// Specifies right side of the style.
// ///
// Right,
// ///
// /// Specifies top side of the style.
// ///
// Top,
// ///
// /// Specifies bottom side of the style.
// ///
// Bottom
//}
///
/// Indicates the visibility of node expand part which allows user to expand/collaps node.
///
public enum eNodeExpandVisibility
{
///
/// Default setting which indicates that when node has child nodes expand part is visible otherwise it is hidden.
///
Auto,
///
/// Expand part is always visible regardless of whether child nodes are present or not.
///
Visible,
///
/// Expand part is always hidden regardless of whether child nodes are present or not.
///
Hidden
}
///
/// Specifies the action that raised a AdvTreeEventArgs event
///
public enum eTreeAction
{
///
/// The event was caused by a keystroke.
///
Keyboard,
///
/// The event was caused by a mouse operation.
///
Mouse,
///
/// The event was caused by the Node collapsing.
///
Collapse,
///
/// The event was caused by the Node expanding.
///
Expand,
///
/// The event is caused programmatically from user code.
///
Code
}
///
/// Specifies node connector type. Node connector is the type of the line/connection that is drawn to connect child node to it's parent node.
///
public enum eNodeConnectorType
{
/////
///// Curved line connector type.
/////
//Curve,
///
/// Straight line connector type.
///
Line
}
/////
///// Specifies the cap style with which the connector line will start or end.
/////
//public enum eConnectorCap
//{
// ///
// /// Specifies no cap.
// ///
// None,
// ///
// /// Round cap type.
// ///
// Ellipse,
// ///
// /// Arrow cap type.
// ///
// Arrow
//}
///
/// Specifies the layout type used to position the cells within the nodes.
///
public enum eCellLayout
{
///
/// Specifies that default setting is to be used for cell layout. Default is Horizontal. When set to default on the Node, setting from Tree control is used.
///
Default,
/// Horizontal layout positions the cells horizontally next to each other.
Horizontal,
///
/// Vertical layout positions cell vertically on top of each other.
///
Vertical
}
///
/// Specifies the layout type used to position the parts of the cell like image, checkbox and text.
///
public enum eCellPartLayout
{
///
/// Specifies that default setting is to be used for cell parts layout. Default is Horizontal. When set to default on the Cell, setting from Tree control is used.
///
Default,
/// Horizontal layout positions the parts of the cell horizontally next to each other.
Horizontal,
///
/// Vertical layout positions parts of the cell vertically on top of each other.
///
Vertical
}
///
/// Specifies the color scheme loaded by ColorScheme object.
///
public enum eColorSchemeStyle
{
///
/// Indicates Office 2003 like color scheme.
///
Office2003,
///
/// Indicates VS.NET 2005 like color scheme.
///
VS2005,
///
/// Indicates Office 2007 like color scheme.
///
Office2007
}
///
/// Specifies the currently selected system color scheme if running on Windows XP.
///
internal enum eWinXPColorScheme
{
///
/// Color scheme cannot be determined.
///
Undetermined,
///
/// Blue color scheme.
///
Blue,
///
/// Olive green color scheme.
///
OliveGreen,
///
/// Silver color scheme.
///
Silver
}
///
/// Specifies the flow of diagram layout related to the root node.
///
public enum eDiagramFlow
{
///
/// Nodes are positioned from left to right with root node being the left-most node.
///
LeftToRight,
///
/// Nodes are positioned from right to left with root node being the right-most
/// node.
///
RightToLeft,
///
/// Nodes are positioned from top to bottom with root node being the top node.
///
TopToBottom,
///
/// Nodes are positioned from bottom to top with root node being bottom node.
///
BottomToTop
}
///
/// Specifies the flow of the map layout.
///
public enum eMapFlow
{
///
/// Nodes are arranged around the root node.
///
Spread,
///
/// Nodes are arranged from below the root node.
///
TopToBottom,
///
/// Nodes are arranged above the root node.
///
BottomToTop,
///
/// Nodes are arranged to the right of the root node.
///
LeftToRight,
///
/// Nodes are arranged to the left of the root node.
///
RightToLeft
}
///
/// Specifies the type of the expand button.
///
public enum eExpandButtonType
{
///
/// Indicates elliptical expand button.
///
Ellipse,
///
/// Indicates rectangular expand button.
///
Rectangle,
///
/// Indicates that images are used for expand button.
///
Image,
///
/// Indicates the Windows Vista style expand button.
///
Triangle
}
///
/// Specifies the visual style for the tree control.
///
public enum eVisualStyle
{
///
/// Indicates default visual style.
///
Default
}
///
/// Specifies the layout type for the nodes.
///
public enum eNodeLayout
{
///
/// Nodes are arranged around root node in map format.
///
Map,
///
/// Nodes are arranged from left-to-right in diagram format.
///
Diagram
}
///
/// Specifies renderer type used to render nodes.
///
public enum eNodeRenderMode
{
///
/// Specifies default renderer which allows most customization through AdvTree
/// properties. Default renderer integrates with the Style architecture to provide
/// customization on renderer behavior.
///
Default,
/////
///// Specifies professional renderer. Professional renderer is custom renderer
///// which does not rely on Style architecture for customization of renderer appearance
///// since it provides much richer appearance than Default renderer.
///// Professional renderer colors can be controls through
///// NodeProfessionalColorTable object which is exposed by
///// NodeProfessionalRenderer.ColorTable property.
/////
//Professional,
///
/// Specifies that custom renderer is used. When set you must also set NodeRenderer
/// to renderer you want to use.
///
Custom
}
///
/// Specifies the node selection style.
///
public enum eSelectionStyle
{
///
/// Node selector highlights the complete node row when node is selected.
///
FullRowSelect,
///
/// Node selector draws the rectangle that highlights the node content. Appearance similar to system tree view in Windows Vista.
///
HighlightCells,
///
/// Node selector draws hollow selection rectangle around the node.
///
NodeMarker,
}
///
/// Specifies the rule for multi-node selection.
///
public enum eMultiSelectRule
{
///
/// Allows multiple selection of nodes with same parent node only.
///
SameParent,
///
/// Allows multiple selection of any node.
///
AnyNode
}
///
/// Gets or sets the image alignment inside of column header.
///
public enum eColumnImageAlignment
{
///
/// Image is left aligned.
///
Left,
///
/// Image is right aligned.
///
Right
}
///
/// Specifies the editor type used when cell is edited.
///
public enum eCellEditorType
{
///
/// Indicates default, text based editor.
///
Default,
///
/// Indicates that Integer numeric editor will be used for editing the value of the cell or column.
///
NumericInteger,
///
/// Indicates that Double numeric editor will be used for editing the value of the cell or column.
///
NumericDouble,
///
/// Indicates that Currency numeric editor will be used for editing the value of the cell or column.
///
NumericCurrency,
///
/// Indicates that date editor will be used for editing the value of the cell or column.
///
Date,
///
/// Indicates that time editor will be used for editing the value of the cell or column.
///
Time,
///
/// Indicates that date and time editor will be used for editing the value of the cell or column.
///
DateTime,
///
/// Indicates that cell will use custom editor that you provide by handling AdvTree.ProvideCustomCellEditor event.
///
Custom
}
///
/// Specifies the sort direction for the column header.
///
public enum eSortDirection
{
///
/// No sort is specified.
///
None,
///
/// Ascending sorting is in effect, i.e. A-Z
///
Ascending,
///
/// Descending sorting is in effect, i.e. Z-A
///
Descending
}
}