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.Grid Class Reference

Grid is a class that represents a grid type container. Each element is in a specific grid cell. Cells size based on items margins, sizes and size policies. Grid cannot receive any events, so Grid is always in the SpaceVIL.Core.ItemStateType.Base state. More...

Inherits SpaceVIL.Prototype, and SpaceVIL.Core.IFreeLayout.

Public Member Functions

 Grid (int rows, int columns)
 Constructs a Grid with the given number of rows and number of columns. More...
 
void SetFormat (int rows, int columns)
 Setting a new grid format with the given number of rows and number of columns. More...
 
void SetRowCount (int value)
 Setting a new count of the rows. More...
 
int GetRowCount ()
 Getting current rows count in grid. More...
 
void SetColumnCount (int value)
 Setting a new count of the columns. More...
 
int GetColumnCount ()
 Getting current columns count in grid. More...
 
Cell GetCell (int row, int column)
 Returns the cell by row and column number. More...
 
List< CellGetAllCells ()
 Getting all cells as list. More...
 
override bool RemoveItem (IBaseItem item)
 Removing item from the Grid. if the removal was successful Cell becomes free. More...
 
bool RemoveItem (int row, int column)
 Removing item from the Grid by number of row and number of column. if the removal was successful Cell becomes free. More...
 
override void Clear ()
 Remove all items in the Grid. More...
 
override void AddItem (IBaseItem item)
 Adding item to the Grid. More...
 
void InsertItem (IBaseItem item, int row, int column)
 Inserting item into the Cell by row and column index. More...
 
override void InsertItem (IBaseItem item, int index)
 Inserting item into the Cell by cell index. More...
 
override void SetWidth (int width)
 Setting Grid 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...
 
override void SetHeight (int height)
 Setting Grid 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 SetX (int x)
 Setting X coordinate of the left-top corner of the Grid. More...
 
override void SetY (int y)
 Setting Y coordinate of the left-top corner of the Grid. More...
 
void UpdateLayout ()
 Updating all children positions (implementation of SpaceVIL.Core.IFreeLayout). 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 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 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...
 
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

Grid is a class that represents a grid type container. Each element is in a specific grid cell.

Cells size based on items margins, sizes and size policies.

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

Constructor & Destructor Documentation

◆ Grid()

SpaceVIL.Grid.Grid ( int  rows,
int  columns 
)

Constructs a Grid with the given number of rows and number of columns.

Parameters
rowsNumber of rows.
columnsNumber of columns.

Member Function Documentation

◆ AddItem()

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

Adding item to the Grid.

Parameters
itemItem as SpaceVIL.Core.IBaseItem.

Reimplemented from SpaceVIL.Prototype.

◆ Clear()

override void SpaceVIL.Grid.Clear ( )
virtual

Remove all items in the Grid.

Reimplemented from SpaceVIL.Prototype.

◆ GetAllCells()

List<Cell> SpaceVIL.Grid.GetAllCells ( )

Getting all cells as list.

Returns
Cells as List<SpaceVIL.Cell>

◆ GetCell()

Cell SpaceVIL.Grid.GetCell ( int  row,
int  column 
)

Returns the cell by row and column number.

Parameters
rowNumber of cell row.
columnNumber of cell column.
Returns
Cell of the Grid as SpaceVIL.Cell.

◆ GetColumnCount()

int SpaceVIL.Grid.GetColumnCount ( )

Getting current columns count in grid.

Returns
Current columns count.

◆ GetRowCount()

int SpaceVIL.Grid.GetRowCount ( )

Getting current rows count in grid.

Returns
Current rows count.

◆ InsertItem() [1/2]

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

Inserting item into the Cell by cell index.

Parameters
itemItem as SpaceVIL.Core.IBaseItem.
indexCell index.

◆ InsertItem() [2/2]

void SpaceVIL.Grid.InsertItem ( IBaseItem  item,
int  row,
int  column 
)

Inserting item into the Cell by row and column index.

Parameters
itemItem as SpaceVIL.Core.IBaseItem.
rowRow index.
columnColumn index.

◆ RemoveItem() [1/2]

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

Removing item from the Grid. if the removal was successful Cell becomes free.

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

Reimplemented from SpaceVIL.Prototype.

◆ RemoveItem() [2/2]

bool SpaceVIL.Grid.RemoveItem ( int  row,
int  column 
)

Removing item from the Grid by number of row and number of column. if the removal was successful Cell becomes free.

Parameters
rowIndex of row.
columnIndex of column.

◆ SetColumnCount()

void SpaceVIL.Grid.SetColumnCount ( int  value)

Setting a new count of the columns.

Parameters
valueNumber of columns.

◆ SetFormat()

void SpaceVIL.Grid.SetFormat ( int  rows,
int  columns 
)

Setting a new grid format with the given number of rows and number of columns.

Parameters
rowsNumber of rows.
columnsNumber of columns.

◆ SetHeight()

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

Setting Grid 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
heightHeight of the Grid.

Reimplemented from SpaceVIL.Prototype.

◆ SetRowCount()

void SpaceVIL.Grid.SetRowCount ( int  value)

Setting a new count of the rows.

Parameters
valueNumber of rows.

◆ SetWidth()

override void SpaceVIL.Grid.SetWidth ( int  width)
virtual

Setting Grid 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.

Parameters
widthWidth of the Grid.

Reimplemented from SpaceVIL.Prototype.

◆ SetX()

override void SpaceVIL.Grid.SetX ( int  x)
virtual

Setting X coordinate of the left-top corner of the Grid.

Parameters
xX position of the left-top corner.

Reimplemented from SpaceVIL.Prototype.

◆ SetY()

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

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

Parameters
yY position of the left-top corner.

Reimplemented from SpaceVIL.Prototype.

◆ UpdateLayout()

void SpaceVIL.Grid.UpdateLayout ( )

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

Implements SpaceVIL.Core.IFreeLayout.


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