element <Stack>
Namespace: |
http://schema.caplin.com/CaplinTrader/webcentric |
XML Representation Summary |
<Stack
|
|
|
= |
xs:string |
|
= |
xs:integer |
|
= |
xs:integer |
|
= |
xs:integer |
|
= |
xs:boolean |
|
= |
xs:boolean |
|
= |
xs:integer |
|
= |
xs:string |
|
= |
xs:boolean : "false"
|
|
= |
xs:integer |
|
|
> |
|
|
</Stack>
|
Child elements (1):
-
Parent elements (2):
-
Description
The stack is a layout component that arranges child frameItems on top of each other like sheets
or pages. Each child fills the same space as the Stack itself, but only one is visible at a
time. Typically, Stacks are used with Tabstrib decorators that allow the user to switch between
child sheets by clicking on their tabs. Stacks are defined as one of the frameItems in an
application's GUI. Setting the id attribute to the special value of "application-layout" makes
this stack the container for all draggable layout components in the application.
all_content_visible
-
Type: |
xs:boolean, predefined
|
Use: |
optional |
Default: |
"false" |
When this is set to "true", all the contents of the Stack are super-imposed on top of
each other such that the contents of each are visible, rather than just the component
at the selected index.
This is useful for layering, where you want one item to appear above another.
decorators
-
Type: |
xs:string, predefined
|
Use: |
optional |
This value defines the id of the decorator to be applied on the Stack layout element. The
decorator is defined separately in the Declarations section of the configuration.
fixed_size
-
Type: |
xs:integer, predefined
|
Use: |
optional |
This provides a hint to Webcentric that this frameItem should retain its significant size
attribute (width or height, depending upon whether the frameset is a Terrace or Tower),
even when the containing frameset is resized.
If the frameset is a stack, no size attribute is significant, as all dimensions are dictated
by the Stack itself. In an MDI frameset, both width and height are significant.
height
-
Type: |
xs:integer, predefined
|
Use: |
optional |
This value normally determines the height of the element in pixels. However, if this
component is a child of a Tower frameset, its height in pixels is determined by considering
the other children of the Tower.
Specifically, if the heights of all the children have been defined, then for each child the
fraction calculated by dividing its height by the sum total of all the children's heights
is multiplied by the vertical space in pixels to be filled by the Tower. This calculated
value is the height in pixels for that child. If however, the heights of one or more of the
other children have not been defined or, the value of the fixed_size attribute is 'true',
then the height of this element will be the specified height in pixels and the other
children will fill up the remaining space.
maximized
-
Type: |
xs:boolean, predefined
|
Use: |
optional |
Set this value to "true", if the frameItem should be displayed in the maximized state.
minimized
-
Type: |
xs:boolean, predefined
|
Use: |
optional |
Set this value to "true", if the frameItem should be displayed in the minimized state.
padding
-
Type: |
xs:integer, predefined
|
Use: |
optional |
The pixel value for the space left between the interior perimeter of a frameset and its
children.
The same effect can always be achieved with a Border, but padding is more efficient and uses
less markup.
selected_ind
-
Type: |
xs:integer, predefined
|
Use: |
optional |
The index position of the 'active' or 'selected' child frameItem.
All framesets have the concept of a selected child frameItem. For a Stack, it is the
visible frameItem (the 'top' item on the Stack). For other framesets the distinction is not
so obvious, but it is the selected frameItem that is activated when the frameset is
activated. In the case of an MDI frameset, the frameset manages the z-index of the child
frameItems; the selected frameItem will appear in front of other frameItems.
style
-
Type: |
xs:string, predefined
|
Use: |
optional |
This attribute allows for fine-grained control over the visual presentation aspects of
components and decorators. Its value allows the element to be given a custom appearance
or behavior via CSS or JavaScript respectively.
In HTMLView, which is the base object for defining the HTML markup of components in the GUI,
the value of the style attribute will be incorporated into the CSS class name of the rendered
HTML object. In this way, custom visuals can be defined for this element in CSS.
For example, using style="outer" in a Border element, results in the rendered HTML element
having a class attribute of "Border_outer". CSS can then be applied to '.Border_outer', as
opposed to the unmodified '.Border'.
In JavaScript, a custom view implementation can be provided for a component or decorator.
The name of the custom view object is HTML<ElementName>_<style>, where <style> is the value
of this attribute and <ElementName> is the name of the element ('Border' or 'Tabstrip' for
example). Methods on this view object can provide custom HTML construction mechanisms for
the actual HTML components used in the element's display.
width
-
Type: |
xs:integer, predefined
|
Use: |
optional |
This value normally determines the width of the element in pixels. However, if this
component is a child of a Terrace frameset, its width in pixels is determined by considering
the other children of the Terrace.
Specifically, if the widths of all the children have been defined, then for each child the
fraction calculated by dividing its width by the sum total of all the children's widths is
multiplied by the horizontal space in pixels to be filled by the Terrace. This calculated
value is the width in pixels for that child. If however, the widths of one or more of the
other children have not been defined or, the value of the fixed_size attribute is 'true',
then the width of this element will be the specified width in pixels and the other children
will fill up the remaining space.