Reference for .Net version of SpaceVIL  0.3.5.8
SpaceVIL (Space of Visual Items Layout) is a cross-platform and multilingual framework for creating GUI client applications for .NET Standard, .NET Core and JVM. SpaceVIL is based on OpenGL graphic technology and GLFW. Using this framework in conjunction with .Net Core or with a JVM, you can work and create graphical client applications on Linux, Mac OS X and Windows.
SpaceVIL.VerticalStack Class Reference

VerticalStack is a class that represents a line type container (vertical version). VerticalStack groups items one after another using content alignment, margins, paddings, sizes and size policies. VerticalStack implements SpaceVIL.Core.IVLayout. By default ability to get focus is disabled. VerticalStack cannot receive any events, so VerticalStack is always in the SpaceVIL.Core.ItemStateType.Base state. More...

Inherits SpaceVIL.Prototype, and SpaceVIL.Core.IVLayout.

Inherited by SpaceVIL.TabView, and SpaceVIL.VerticalScrollBar.

Public Member Functions

void SetContentAlignment (ItemAlignment alignment)
 Setting content alignment within VerticalStack area. Supports only: ItemAlignment.Top, ItemAlignment.VCenter, ItemAlignment.Bottom. Default: ItemAlignment.Top. More...
 
ItemAlignment GetContentAlignment ()
 Getting current content alignment. Can be: ItemAlignment.Top, ItemAlignment.VCenter, ItemAlignment.Bottom. More...
 
 VerticalStack ()
 Default VerticalStack constructor. More...
 
override void AddItem (IBaseItem item)
 Adding item to the VerticalStack. More...
 
override void InsertItem (IBaseItem item, int index)
 Inserting item to the VerticalStack container. If the number of container elements is less than the index, then the element is added to the end of the list. More...
 
override bool RemoveItem (IBaseItem item)
 Removing the specified item from the VerticalStack container. More...
 
override void SetHeight (int height)
 Setting VerticalStack height. If the value is greater/less than the maximum/minimum value of the height, then the height becomes equal to the maximum/minimum value. More...
 
override void SetY (int y)
 Setting Y coordinate of the left-top corner of the VerticalStack. More...
 
void UpdateLayout ()
 Updating all children positions (implementation of SpaceVIL.Core.IVLayout). More...
 
- Public Member Functions inherited from SpaceVIL.Prototype
 Prototype ()
 Default constructor of Prototype class. More...
 
virtual void Release ()
 Method to describe disposing item's resources if the item was removed. Notice: This method is mainly for overriding only. SpaceVIL calls this method if necessary and no need to call it manually. More...
 
void SetHandler (CoreWindow handler)
 Setting the window to which the item will belong. More...
 
CoreWindow GetHandler ()
 Getting the window to which the item belongs. More...
 
String GetToolTip ()
 Getting tooltip text of the item. Tooltip is hint about an item that appears when you hold the mouse cursor over an item long enough. More...
 
void SetToolTip (String text)
 Setting tooltip text of the item. Tooltip is hint about an item that appears when you hold the mouse cursor over an item long enough. More...
 
Prototype GetParent ()
 Getting the parent of the item. More...
 
void SetParent (Prototype parent)
 Setting the parent of the item. More...
 
Spacing GetSpacing ()
 Getting indents between children of a container type item. More...
 
void SetSpacing (Spacing spacing)
 Setting indents between children of a container type item. More...
 
void SetSpacing (int horizontal=0, int vertical=0)
 Setting indents between children of a container type item. More...
 
Indents GetPadding ()
 Getting indents of an item for offset its children. More...
 
void SetPadding (Indents padding)
 Setting indents of an item to offset its children. More...
 
void SetPadding (int left=0, int top=0, int right=0, int bottom=0)
 Setting indents of an item to offset its children. More...
 
Indents GetMargin ()
 Getting the indents of an item to offset itself relative to its container. More...
 
void SetMargin (Indents margin)
 Setting the indents of an item to offset itself relative to its container. More...
 
void SetMargin (int left=0, int top=0, int right=0, int bottom=0)
 Setting the indents of an item to offset itself relative to its container. More...
 
void SetBorder (Border border)
 Setting border of an item's shape. Border consist of corner radiuses, thickness and color. More...
 
void SetBorderFill (Color fill)
 Setting the border color of an item's shape. More...
 
Color GetBorderFill ()
 Getting the border color oa an item's shape. More...
 
void SetBorderFill (int r, int g, int b, int a=255)
 Setting the border color of an item's shape in byte RGBA format. More...
 
void SetBorderFill (float r, float g, float b, float a=1.0f)
 Setting the border color of an item's shape in float RGBA format. More...
 
void SetBorderRadius (CornerRadius radius)
 Setting radius of the border's corners. More...
 
void SetBorderRadius (int radius)
 Setting border radius with the same values for each corner of the rectangle object. More...
 
CornerRadius GetBorderRadius ()
 Getting border radiuses. More...
 
void SetBorderThickness (int thickness)
 Setting border thickness of an item's shape. More...
 
int GetBorderThickness ()
 Getting border thickness of an item's shape. More...
 
virtual void InitElements ()
 Initializing children and their attributes. Notice: This method is mainly for overriding only. SpaceVIL calls this method if necessary and no need to call it manually. More...
 
List< float[]> GetTriangles ()
 Getting triangles of item's shape. More...
 
virtual void SetTriangles (List< float[]> triangles)
 Setting triangles as item's shape. More...
 
virtual void MakeShape ()
 Making default item's shape. Use in conjunction with GetTriangles() and SetTriangles() methods. Notice: This method is mainly for overriding only. SpaceVIL calls this method if necessary and no need to call it manually. More...
 
virtual void SetBackground (Color color)
 Setting background color of an item's shape. More...
 
virtual void SetBackground (int r, int g, int b)
 Setting background color of an item's shape in byte RGB format. More...
 
virtual void SetBackground (int r, int g, int b, int a)
 Setting background color of an item in byte RGBA format. More...
 
virtual void SetBackground (float r, float g, float b)
 Setting background color of an item in float RGB format. More...
 
virtual void SetBackground (float r, float g, float b, float a)
 Setting background color of an item in float RGBA format. More...
 
virtual Color GetBackground ()
 Getting background color of an item. More...
 
void SetItemName (string name)
 Setting the name of the item. More...
 
string GetItemName ()
 Getting the name of the item. More...
 
void SetMinWidth (int width)
 Setting the minimum width limit. Actual width cannot be less than this limit. More...
 
int GetMinWidth ()
 Getting the minimum width limit. More...
 
virtual void SetWidth (int width)
 Setting item width. If the value is greater/less than the maximum/minimum value of the width, then the width becomes equal to the maximum/minimum value. More...
 
virtual int GetWidth ()
 Getting item width. More...
 
void SetMaxWidth (int width)
 Setting the maximum width limit. Actual width cannot be greater than this limit. More...
 
int GetMaxWidth ()
 Getting the maximum width limit. More...
 
void SetMinHeight (int height)
 Setting the minimum height limit. Actual height cannot be less than this limit. More...
 
int GetMinHeight ()
 Getting the minimum height limit. More...
 
virtual int GetHeight ()
 Getting item height. More...
 
void SetMaxHeight (int height)
 Setting the maximum height limit. Actual height cannot be greater than this limit. More...
 
int GetMaxHeight ()
 Getting the maximum height limit. More...
 
virtual void SetSize (int width, int height)
 Setting item size (width and height). More...
 
Core.Size GetSize ()
 Getting current item size. More...
 
void SetMinSize (int width, int height)
 Setting minimum item size limit (width and height limits). More...
 
Core.Size GetMinSize ()
 Getting current item minimum size limit. More...
 
void SetMaxSize (int width, int height)
 Setting maximum item size limit (width and height limits). More...
 
Core.Size GetMaxSize ()
 Getting current item maximum size limit. More...
 
void SetAlignment (ItemAlignment alignment)
 Setting an alignment of an item's shape relative to its container. Combines with alignment by vertically (Top, VCenter, Bottom) and horizontally (Left, HCenter, Right). More...
 
void SetAlignment (params ItemAlignment[] alignment)
 Setting an alignment of an item's shape relative to its container. Combines with alignment by vertically (Top, VCenter, Bottom) and horizontally (Left, HCenter, Right). More...
 
ItemAlignment GetAlignment ()
 Getting an alignment of an item's shape relative to its container. More...
 
void SetSizePolicy (SizePolicy width, SizePolicy height)
 Setting the size policy of an item's shape. Can be Fixed (shape not changes its size) or Expand (shape is stretched to all available space). More...
 
void SetWidthPolicy (SizePolicy policy)
 Setting width policy of an item's shape. Can be Fixed (shape not changes its size) or Expand (shape is stretched to all available space). More...
 
SizePolicy GetWidthPolicy ()
 Getting width policy of an item's shape.Can be Fixed (shape not changes its size) or Expand (shape is stretched to all available space). More...
 
void SetHeightPolicy (SizePolicy policy)
 Setting height policy of an item's shape. Can be Fixed (shape not changes its size) or Expand (shape is stretched to all available space). More...
 
SizePolicy GetHeightPolicy ()
 Getting height policy of an item's shape.Can be Fixed (shape not changes its size) or Expand (shape is stretched to all available space). More...
 
virtual void SetPosition (int x, int y)
 Setting item position. More...
 
virtual void SetX (int x)
 Setting X coordinate of the left-top corner of a shape. More...
 
virtual int GetX ()
 Getting X coordinate of the left-top corner of a shape. More...
 
virtual int GetY ()
 Getting Y coordinate of the left-top corner of a shape. More...
 
virtual void SetConfines ()
 Setting the confines of the item relative to its parent's size and position. Example: items can be partially (or completely) outside the container (example: ListBox), in which case the part that is outside the container should not be visible and should not interact with the user. More...
 
virtual void SetConfines (int x0, int x1, int y0, int y1)
 Setting the confines of the item relative to specified bounds. Example: items can be partially (or completely) outside the container (example: ListBox), in which case the part that is outside the container should not be visible and should not interact with the user. More...
 
virtual void SetStyle (Style style)
 Setting a style that describes the appearance of an item. More...
 
virtual Style GetCoreStyle ()
 Getting the core (only appearance properties without inner styles) style of an item. More...
 
bool IsShadowDrop ()
 Getting the shadow visibility status of an item. More...
 
void SetShadowDrop (bool value)
 Setting the shadow visibility status of an item. More...
 
void SetShadowRadius (int radius)
 Setting the specified blur radius of the shadow. Default: 0. More...
 
int GetShadowRadius ()
 Getting the shadow blur raduis. More...
 
Color GetShadowColor ()
 Getting shadow color. More...
 
void SetShadowColor (Color color)
 Setting shadow color. More...
 
Position GetShadowPos ()
 Getting the offset of the shadow relative to the position of the item. More...
 
int[] GetShadowExtension ()
 Getting the values of shadow extensions in pixels. More...
 
void SetShadowExtension (int wExtension, int hExtension)
 Setting the values of shadow extensions in pixels. More...
 
void SetShadow (int radius, int x, int y, Color color)
 Setting the shadow with specified blur radius, axis shifts, shadow color. More...
 
void AddItemState (ItemStateType type, ItemState state)
 Adding visual state for an item. Type can be Base, Hovered, Pressed, Toggled, Focused, Disabled. More...
 
void RemoveItemState (ItemStateType type)
 Removing visual state of an item by type. Type can be Base, Hovered, Pressed, Toggled, Focused, Disabled. More...
 
void RemoveAllItemStates ()
 Removing all item visual states. More...
 
ItemState GetState (ItemStateType type)
 Getting item visual state by its type. Type can be Base, Hovered, Pressed, Toggled, Focused, Disabled. More...
 
virtual void InsertItem (IBaseItem item, Int32 index)
 Inserting item to the container (this). If the count of container elements is less than the index, then the element is added to the end of the list. More...
 
virtual void AddItems (params IBaseItem[] items)
 Adding sequence of items into the container (this). More...
 
void Update (GeometryEventType type, int value=0)
 Updating an item size or/and position. More...
 
virtual bool IsDrawable ()
 Getting the drawable (visibility) status of an item. This property used in conjunction with the IsVisible() property. Explanation: an item can be visible and invisible, in some cases the item can be located outside the container (example: SpaceVIL.ListBox), and it must be invisible so as not to waste CPU / GPU resources, but in some cases you must control the visibility of elements that are inside container and should be invisible (example: SpaceVIL.TreeView). More...
 
void SetDrawable (bool value)
 Setting the drawable (visibility) status of an item. This property used in conjunction with the IsVisible() property. Explanation: an item can be visible and invisible, in some cases the item can be located outside the container (example: SpaceVIL.ListBox), and it must be invisible so as not to waste CPU / GPU resources, but in some cases you must control the visibility of elements that are inside container and should be invisible (example: SpaceVIL.TreeView). More...
 
virtual bool IsVisible ()
 Getting the visibility status of an item. This property may used in conjunction with the IsDrawable() property. More...
 
virtual void SetVisible (bool value)
 Setting the visibility status of an item. This property may used in conjunction with the IsDrawable() property. More...
 
virtual bool IsPassEvents ()
 Getting boolean value to know if this item can pass further any input events (mouse, keyboard and etc.). Tip: Need for filtering input events. More...
 
bool IsPassEvents (InputEventType e)
 Getting boolean value to know if this item can pass further the specified type of input events (mouse, keyboard and etc.). More...
 
List< InputEventTypeGetPassEvents ()
 Getting all allowed input events. More...
 
List< InputEventTypeGetBlockedEvents ()
 Getting all blocked input events. More...
 
void SetPassEvents (bool value)
 Setting on or off so that this item can pass further any input events (mouse, keyboard and etc.). More...
 
void SetPassEvents (bool value, InputEventType e)
 Setting on or off so that this item can pass further the specified type of input events (mouse, keyboard and etc.). More...
 
void SetPassEvents (bool value, params InputEventType[] events)
 Setting on or off so that this item can pass further the specified types of input events (mouse, keyboard and etc.). More...
 
virtual bool IsDisabled ()
 Returns True if this item is disabled (non-interactive) otherwise returns False. More...
 
virtual void SetDisabled (bool value)
 Setting this item disabled (become non-interactive) or enabled. More...
 
virtual bool IsMouseHover ()
 Returns True if this item is hovered otherwise returns False. More...
 
virtual void SetMouseHover (bool value)
 Setting this item hovered (mouse cursor located within item's shape). More...
 
virtual bool IsMousePressed ()
 Returns True if mouse is pressed on this item (mouse cursor located within item's shape and any of the mouse button is pressed) otherwise False. More...
 
virtual void SetMousePressed (bool value)
 Setting True if you want that mouse is pressed on this item (mouse cursor located within item's shape and any of the mouse button is pressed) otherwise False. More...
 
virtual bool IsFocused ()
 Returns True if this item gets focus otherwise False. More...
 
virtual void SetFocus ()
 Setting focus on this item if it is focusable. More...
 
virtual List< IBaseItemGetItems ()
 Getting list of the Prototype's inner items (children). More...
 
virtual void Clear ()
 Removing all children. More...
 
void SetContent (List< IBaseItem > content)
 Setting content for this item. Note: this method is only for sorting children i.e. Prototype.GetItems() contains equal set of children as input argument: List<SpaceVIL.Core.IBaseItem> content. If content is different this method do nothing. More...
 
Figure IsCustomFigure ()
 Getting the custom shape if it is set. You can set any shape using Prototype.SetCustomFigure(Figure) and it will replace the default rectangle shape. More...
 
void SetCustomFigure (Figure figure)
 Setting the custom shape to replace the default rectangle shape. More...
 
ItemHoverRule GetHoverRule ()
 Getting the hovering rule of this item. Can be ItemHoverRule.Lazy or ItemHoverRule.Strict (see SpaceVIL.Core.ItemHoverRule). More...
 
void SetHoverRule (ItemHoverRule rule)
 Setting the hovering rule for this item. More...
 
CursorImage GetCursor ()
 Getting the mouse cursor image of this item. More...
 
void SetCursor (EmbeddedCursor type)
 Setting mouse cursor image for this item from embedded cursors. More...
 
void SetCursor (CursorImage cursor)
 Setting mouse cursor image for this item. More...
 
void SetCursor (Bitmap bitmap)
 Creating and setting mouse cursor image for this item from specified bitmap image. More...
 
void SetCursor (Bitmap bitmap, int width, int height)
 Creating and setting mouse cursor image for this item from specified scaled bitmap image. More...
 

Additional Inherited Members

- Public Attributes inherited from SpaceVIL.Prototype
EventCommonMethodState EventResize
 Event that is invoked when an item is resizing. More...
 
EventCommonMethodState EventDestroy
 Event that is invoked when an item is destroyed (removed). More...
 
EventMouseMethodState EventMouseHover
 Event that is invoked when mouse cursor enters inside an item area. More...
 
EventMouseMethodState EventMouseLeave
 Event that is invoked when mouse cursor leaves inside an item area. More...
 
EventMouseMethodState EventMouseClick
 Event that is invoked when mouse click (release) on an item. More...
 
EventMouseMethodState EventMouseDoubleClick
 Event that is invoked when mouse double click on an item. More...
 
EventMouseMethodState EventMousePress
 Event that is invoked when mouse press on an item. More...
 
EventMouseMethodState EventMouseDrag
 Event that is invoked when mouse drag on an item. More...
 
EventMouseMethodState EventMouseDrop
 Event that is invoked when mouse drop on an item. More...
 
EventMouseMethodState EventScrollUp
 Event that is invoked when mouse wheel scrolls up on an item. More...
 
EventMouseMethodState EventScrollDown
 Event that is invoked when mouse wheel scrolls down on an item. More...
 
EventKeyMethodState EventKeyPress
 Event that is invoked when key of keyboard is pressed. More...
 
EventKeyMethodState EventKeyRelease
 Event that is invoked when key of keyboard is released. More...
 
EventInputTextMethodState EventTextInput
 Event that is invoked when typing text on the keyboard. More...
 
bool IsFocusable = true
 Item's focusable property. True: this item can get focus. False: this item cannot get focus. More...
 
- Protected Member Functions inherited from SpaceVIL.Prototype
virtual void UpdateState ()
 Updating Prototype's state according to its ItemStateType. More...
 
void SetState (ItemStateType state)
 

Detailed Description

VerticalStack is a class that represents a line type container (vertical version). VerticalStack groups items one after another using content alignment, margins, paddings, sizes and size policies. VerticalStack implements SpaceVIL.Core.IVLayout. By default ability to get focus is disabled.

VerticalStack cannot receive any events, so VerticalStack is always in the SpaceVIL.Core.ItemStateType.Base state.

Constructor & Destructor Documentation

◆ VerticalStack()

SpaceVIL.VerticalStack.VerticalStack ( )

Default VerticalStack constructor.

Member Function Documentation

◆ AddItem()

override void SpaceVIL.VerticalStack.AddItem ( IBaseItem  item)
virtual

Adding item to the VerticalStack.

Parameters
itemItem as SpaceVIL.Core.IBaseItem.

Reimplemented from SpaceVIL.Prototype.

◆ GetContentAlignment()

ItemAlignment SpaceVIL.VerticalStack.GetContentAlignment ( )

Getting current content alignment. Can be: ItemAlignment.Top, ItemAlignment.VCenter, ItemAlignment.Bottom.

Returns
Content alignment as SpaceVIL.Core.ItemAlignment.

◆ InsertItem()

override void SpaceVIL.VerticalStack.InsertItem ( IBaseItem  item,
int  index 
)

Inserting item to the VerticalStack container. If the number of container elements is less than the index, then the element is added to the end of the list.

Parameters
itemItem as SpaceVIL.Core.IBaseItem.
indexIndex of insertion.

◆ RemoveItem()

override bool SpaceVIL.VerticalStack.RemoveItem ( IBaseItem  item)
virtual

Removing the specified item from the VerticalStack container.

Parameters
itemItem as SpaceVIL.Core.IBaseItem.
Returns
True: if the removal was successful. False: if the removal was unsuccessful.

Reimplemented from SpaceVIL.Prototype.

◆ SetContentAlignment()

void SpaceVIL.VerticalStack.SetContentAlignment ( ItemAlignment  alignment)

Setting content alignment within VerticalStack area. Supports only: ItemAlignment.Top, ItemAlignment.VCenter, ItemAlignment.Bottom. Default: ItemAlignment.Top.

Parameters
alignmentContent alignment as SpaceVIL.Core.ItemAlignment.

◆ SetHeight()

override void SpaceVIL.VerticalStack.SetHeight ( int  height)
virtual

Setting VerticalStack height. If the value is greater/less than the maximum/minimum value of the height, then the height becomes equal to the maximum/minimum value.

Parameters
heightWeight of the VerticalStack.

Reimplemented from SpaceVIL.Prototype.

◆ SetY()

override void SpaceVIL.VerticalStack.SetY ( int  y)
virtual

Setting Y coordinate of the left-top corner of the VerticalStack.

Parameters
yY position of the left-top corner.

Reimplemented from SpaceVIL.Prototype.

◆ UpdateLayout()

void SpaceVIL.VerticalStack.UpdateLayout ( )

Updating all children positions (implementation of SpaceVIL.Core.IVLayout).

Implements SpaceVIL.Core.IVLayout.


The documentation for this class was generated from the following file: