OmniGSoft template (hereinafter also referred to as "OGTemplate") is Pooka SDK®'s proprietary content template used to describes application content and generates scene graph based content (2D and 3D) once parsed by OGCanvas .
Here are some basic facts about OGTemplate:
.properties
.txt
.plist
Western European
UTF-8
Unicode
Windows (CR LF)
Macintosh (CR)
#
include
type
PropertyName
PropertyValue
//
OGTemplate file is composed by numbers of text line. A text line will be parsed as a property if it complies the property line format rules. The text at left side of the property separator is property name and the text at right side is property vale. See the following picture.
Note
\
{
}
Property parsed as generic property or content property
comListBox5
Tip ALl OGTemplate separator tokens can be customized by application, see the following class members of OGCanvas for more dtails:
Attribute is composed of the attribute name and its value. All attribute names are case-sensitive. For example, if attribute 'GUItype' is written as 'guiType', it will not be recognized properly. Attribute values are assigned by the following segment in the name/value pair. Attribute value can be a single value, a complex value consists of several values, or an array of values.
(
)
;
|
Regardless of the forms of the attribute value, all attribute value must met the specific rules of make them properly parsed, see Attribute Value Rules for more details. Tip All separator tokens can be customized by application, see the following class members of OGCanvas for more details:
The following sample OGTemplate comes from sample project "Space Defender". The asset file "EnterGame.txt" is the OGTemplate that makes the "Enter game" page for the game and the asset file "Common_header.txt" is the common header file defines some shared macros and is included by all other page templates.
In many ways, OGTemplate files work just like web pages (HTML) that consists of a website. In the case of the Pooka SDK® application, one OGTemplate construct one application page, same as one HTML page that constructs a single web page. User can navigate through application pages, just like they navigate through web pages when visiting a web site.
Some applications, particularly a game application, the control flow can be complicated. The application control flow can be established by application pages. Just like the control flow of a role playing game shown in the right side picture. A well prepared story board or diagram can help application designer easily plan the overall control flow and then the application developers can implement the design by OGTemplate.
The user interactivity can be responded by register event listeners. There are numbers of user input event that can be used to implement the page navigation, the most important event are:
Others event may also be very useful when implement application control flow:
Attribute value will be parsed as the corresponding type when the property is parsed by OGCanvas .
text:Input Your Name^c
href:GUI/MainEntryPage.properties
href:txtAboutDifLevel
A primitive type can be a boolean, integer, hexadecimal, float, etc.
TRUE
0
false
1
20
100
240
180
12
#A08020
#FF00FF
3.50f
45.f
(20; 100)
(300; 200)
(255;255;0)
(0;0;128)
dir:(0.5f; -0.5f; 0.2f)
(0.f; 100.f; -300.f)
(0.f; -20.f; 0.f)
(60.f; 200.f; 400.f)
pos:(-200.f; 1000.f; 0.f)
BUTTON
CENTER
LIGHTGRAY
DARKBLUE
In OGTemplate, an application asset is specified by its relative path (relative to the application package root)
../GUI/button.gif
../Images/Fighter.jpg
model:models/Earth.3DS
../Sounds/music.wav
sceneConsole
gameDifficultyLevel
group:gameDifficultyLevel
TEXTURE_BTN
TEXTURE_BTN_BRT
BUTTON(w;h;text)
{TEXTURE_BTN}
{TEXTURE_BTN_BRT}
{BUTTON(50;15;Back)}
{BUTTON(50;15;Start)}
Content properties are parsed and translated into application content. A property is parsed as content property when its attribute type is a reserved type defined by OGTemplate. The following chart show all OGTemplate's reserved types (click the reserved type link for more details):
DEBUG
PropName = type:PageSetting, (more attributes), ...
This reserved type defines default page settings such as text color, text size or bitmap font. They are applied on content element (Sprite, Group3D, etc.) if the corresponding attributes are not specified by the element.
The default Sprite text color under normal state in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant.
defaultTextColor:hexadecimal defaultTextColor:color constant defaultTextColor:(int red; int green; int blue)
defaultTextColor:(255; 128; 0) defaultTextColor:#FF8000 defaultTextColor:DARKBLUE
WHITE
The default Sprite text color under active state in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant.
defaultTextColorBright:hexadecimal defaultTextColorBright:color constant defaultTextColorBright:(int red; int green; int blue)
defaultTextColorBright:(255; 128; 0) defaultTextColorBright:#FF8000 defaultTextColorBright:DARKBLUE
The default Sprite text size in points1, specified by an integer.
defaultTextSize:integer
defaultTextSize:10
14pt
The default BitmapFont used to render Sprite text under normal state , specified by a BitmapFont defined by another property.
defaultBitmapFont:property
defaultSetting = type:PageSetting, ..., defaultBitmapFont:bitmapfontProp, defaultBitmapFontright:bitmapfontPropBold bitmapfontProp = type:BitmapFont, ... bitmapfontPropBold =type:BitmapFont, ...
defaultBitmapFont
defaultBitmapFontright
NULL
The default BitmapFont used to render Sprite text under active state , specified by a BitmapFont defined by another property.
defaultBitmapFontBright:property
The default Sprite background color under normal state in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant.
defaultSpriteColor:hexadecimal defaultSpriteColor:color constant defaultSpriteColor:(int red; int green; int blue)
defaultSpriteColor:(255; 128; 0) defaultSpriteColor:#FF8000 defaultSpriteColor:DARKBLUE
CLEAR
The default Sprite background color under active state in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant.
defaultSpriteColorBright:hexadecimal defaultSpriteColorBright:color constant defaultSpriteColorBright:(int red; int green; int blue)
defaultSpriteColorBright:(255; 128; 0) defaultSpriteColorBright:#FF8000 defaultSpriteColorBright:DARKBLUE
The default Sprite frame color under normal state in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant.
defaultSpriteFrameColor:hexadecimal defaultSpriteFrameColor:color constant defaultSpriteFrameColor:(int red; int green; int blue)
defaultFrameColor:(255; 128; 0) defaultFrameColor:#FF8000 defaultFrameColor:DARKBLUE
The default Sprite frame color under active state in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant.
defaultSpriteFrameColorBright:hexadecimal defaultSpriteFrameColorBright:color constant defaultSpriteFrameColorBright:(int red; int green; int blue)
defaultFrameColorBright:(255; 128; 0) defaultFrameColorBright:#FF8000 defaultFrameColorBright:DARKBLUE
The attribute determines whether the current page uses monospaced font. The attribute is specified by a boolean value and the default value is False. Note By default, the OGCanvas uses proportional font to display content text. If monospaced font is desired for one individual Sprite , sprite's attribute useMonoFont can be used to claim that this sprite uses monospaced font. See BitmapFont See BitmapFont::monospace
useMonoFont
textUseMonofont:boolean
textUseMonofont:TRUE textUseMonofont:false textUseMonofont:1 textUseMonofont:0
False
The default background color of the current OGCanvas in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant.
bkgColor:hexadecimal bkgColor:color constant bkgColor:(int red; int green; int blue)
bkgColor:(255; 128; 0) bkgColor:#FF8000 bkgColor:DARKBLUE
The attribute determines whether the pointing device can pick an interactive Sprite only in the top SceneSprite (according to its Z-order) or all SceneSprite . The attribute is specified by a boolean value.
pickingInTopScene:boolean
pickingInTopScene:TRUE pickingInTopScene:false pickingInTopScene:1 pickingInTopScene:0
PropName = type:SceneSprite, (more attributes), ... PropName = type:Scene3D, (more attributes), ...
PropName = type:SceneSprite, (more attributes), ...
PropName = type:Scene3D, (more attributes), ...
Attributes for both SceneSprite and Scene3D:
The attribute determines the visibility of the target SceneSprite or Scene3D , specified by a boolean value.
visible:boolean
visible:TRUE visible:false visible:1 visible:0
True
The background color of the target SceneSprite or Scene3D in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. Note When both attributes bkgColor and bkgTexture are assigned, attribute bkgTexture has higher priority.
bkgColor
bkgTexture
The background Texture of the target SceneSprite or Scene3D , specified by a texture asset path or a texture object defined by another property. Note When both attributes bkgColor and bkgTexture are assigned, attribute bkgTexture has higher priority.
bkgTexture:asset bkgTexture:property #### Examples: # ..., bkgTexture:level5/texture/sceneBkgTexture.jpg, ... // Apply texture by a texture asset path texture10 = type:Texture, src:themeBkg.png // Define a texture object ..., bkgTexture:texture10, ... // Apply texture by a texture object
The x position of the target SceneSprite or Scene3D , specified by an integer value measured in points1. Note The position is defined in container OGCanvas ' coordinate system. Note The position constant CENTER can be used to make the target centered in the container OGCanvas . Note If x position is also assigned by attribute pos, then the position is determined by attribute pos.
pos
x:integer
x:20 x:CENTER
The y position of the target SceneSprite or Scene3D , specified by an integer value measured in points1. Note The position is defined in container OGCanvas ' coordinate system. Note The position constant CENTER can be used to make the target centered in the container OGCanvas . Note If y position is also assigned by attribute pos, then the position is determined by attribute pos.
y:integer
y:20 y:CENTER
The position (x and y ) of the target SceneSprite or Scene3D , specified by two integer values measured in points1. Note The position is defined in container OGCanvas ' coordinate system. Note The position constant CENTER can be used to make the target centered in the container OGCanvas . Note If position is also assigned by attribute x and y , attribute pos has higher priority.
pos:(int x; int y)
pos:(20; 100) pos:(CENTER; 100) pos:(50; CENTER) pos:(CENTER; CENTER)
0; 0
Sets the relative position of the target SceneSprite or Scene3D by a reference (the container OGCanvas or another Scene ), specified by complex parameter. See Scene::POSITION_AND_SIZE_MODE See Scene::setPositionByRef() Note If position is also assigned by attribute x and y , attribute posByRef has higher priority.
posByRef
posByRef(int xGapOrOffset; int yGapOrOffset; const reference; const positioningMode; [anotherScene])
posByRef:(10; 10; CANVAS; POS_LEFTTOP) posByRef:(5; 5; CANVAS; POS_BOTTOMCENTER) posByRef:(2; 2; SCENE; POS_LEFTBOTTOM; sceneGUI)
N/A
The width of the target SceneSprite or Scene3D , specified by an integer value measured in points1. If the value is suffixed by %, then the value is the percentage of the size of the container OGCanvas . Note The size is defined in container OGCanvas ' coordinate system. Note If width is also assigned by attribute size, then the width is determined by attribute size.
%
size
width:integer width:integer%
width:220 width:75%
The width of the container OGCanvas
The height of the target SceneSprite or Scene3D , specified by an integer value measured in points1. If the value is suffixed by %, then the value is the percentage of the size of the container OGCanvas . Note The size is defined in container OGCanvas ' coordinate system. Note If height is also assigned by attribute size, then the height is determined by attribute size.
height:integer height:integer%
height:220 height:75%
The height of the container OGCanvas
The size (width and height ) of the target SceneSprite or Scene3D , specified by two integer values measured in points1. If the value is suffixed by %, then the value is the percentage of the size of the container OGCanvas . Note The size is defined in container OGCanvas ' coordinate system. Note If size is also assigned by attribute width and height , attribute size has higher priority. Note The scene size constant VIRTUAL_SCREEN_WIDTH, VIRTUAL_SCREEN_HEIGHT, VIRTUAL_SCREEN_SHORT_SIDE and VIRTUAL_SCREEN_LONG_SIDE can be used to specify the scene size by VirtualDevice 's dimension.
VIRTUAL_SCREEN_WIDTH
VIRTUAL_SCREEN_HEIGHT
VIRTUAL_SCREEN_SHORT_SIDE
VIRTUAL_SCREEN_LONG_SIDE
size:(int width; int height) size:(int width%; int height%)
size:(200; 150) size:(200; 80%) size:(100%; 240) size:(75%; 50%) size:(VIRTUAL_SCREEN_WIDTH; VIRTUAL_SCREEN_HEIGHT) size:(VIRTUAL_SCREEN_LONG_SIDE; VIRTUAL_SCREEN_LONG_SIDE)
The size of the container OGCanvas
Sets the relative size of the target SceneSprite or Scene3D by a reference (the container OGCanvas or another Scene ), specified by complex parameter. See Scene::POSITION_AND_SIZE_MODE See Scene::setSizeByRef() Note If size is also assigned by attribute width and height , attribute sizeByRef has higher priority.
sizeByRef
sizeByRef(int xPercentOrExpansion; int yPercentOrExpansion; const reference; const sizingMode; [anotherScene])
sizeByRef:(-40; -30; CANVAS; SIZE_POINT) sizeByRef:(30; 40; CANVAS; SIZE_PERCENT) sizeByRef:(25; 30; SCENE; SIZE_PERCENT; sceneSample1)
Attributes only for SceneSprite:
Sets the keyboard navigation mode of a SceneSprite . See SceneSprite::KEYBOARD_NAVIGATION_MODE
navigationMode:Keyboard Navigation Constants
navigationMode:INDEX_MODE navigationMode:TAB_MODE
DISABLED
Sets the TAB navigation method of a SceneSprite . Note This attribute is only used when the keyboard navigation mode of a SceneSprite is set to SceneSprite::NAVIGATION_TAB . See SceneSprite::TAB_NAVIGATION_METHOD
tabMethod:TAB Navigation Method Constants
tabMethod:TAB_NAVIGATION tabMethod:FOUR_WAY_NAVIGATION
FOUR_WAY_NAVIGATION
Sets the X-offset of index token, specified by an integer value measured in points1. Note This attribute is only used when the keyboard navigation mode of a SceneSprite is set to SceneSprite::NAVIGATION_INDEXENTRY . See SceneSprite::setIndexTokenOffset()
indexOffsetX:integer
indexOffsetX:-10
Sets the Y-offset of index token, specified by an integer value measured in points1. Note This attribute is only used when the keyboard navigation mode of a SceneSprite is set to SceneSprite::NAVIGATION_INDEXENTRY . See SceneSprite::setIndexTokenOffset()
indexOffsetY:integer
indexOffsetY:-10
Sets both X-offset and Y-offset of index token, specified by an integer value measured in points1. Note This attribute is only used when the keyboard navigation mode of a SceneSprite is set to SceneSprite::NAVIGATION_INDEXENTRY . See SceneSprite::setIndexTokenOffset()
indexOffset:(int x-offset; int y-offset)
indexOffset:(-10; -5)
Sets the keyboard navigation indicator color in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. Note The keyboard navigation indicator can be either index token or focus-box, depends on the SceneSprite's property keyboardNavigationMode . See SceneSprite::KEYBOARD_NAVIGATION_MODE See SceneSprite::setNavigationIndicatorColor()
navigationIndicatorColor:hexadecimal navigationIndicatorColor:color constant navigationIndicatorColor:(int red; int green; int blue)
navigationIndicatorColor:(255; 128; 0) navigationIndicatorColor:#FF8000 navigationIndicatorColor:DARKBLUE
YELLOW
Sets whether to highlight a Sprite (make it in active state ) when the Sprite currently possesses the navigation focus. The attribute is specified by a boolean value. See SceneSprite::highlightFocusedItem
highlightFocusedItem:boolean
highlightFocusedItem:TRUE highlightFocusedItem:false highlightFocusedItem:1 highlightFocusedItem:0
Sets whether the content of a Scene will be clipped, the default value is False. See SceneSprite::clippingContent
clippingContent:boolean
clippingContent:TRUE clippingContent:false clippingContent:1 clippingContent:0
Sets whether all Sprite in the content are sorted according to its z value when rendered. This attribute helps determine the rendering order of all sprites when needed. See Sprite::z See SceneSprite::sortSpriteByZOrder
sortSpriteByZOrder:boolean
sortSpriteByZOrder:TRUE sortSpriteByZOrder:false sortSpriteByZOrder:1 sortSpriteByZOrder:0
Attributes only for Scene3D:
Sets the ambient light color of a Scene3D in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. See Scene3D::ambient
ambient:hexadecimal ambient:color constant ambient:(int red; int green; int blue)
ambient:(255; 200; 255) ambient:#FF8000 ambient:WHITE
BLACK
Sets the essential properties of a 3D Camera , including field-of-view, front clipping plane and back clipping plane. See Camera::setLens()
cameraLens:(float fov; float frontClip; float backClip)
cameraLens:(50.f; 0.2f; 1000.f)
(45.f; 0.5f; 5000.f)
Sets a 3D Camera 's position in world coordinate system, tells where this camera is positioned in its containing Scene3D . See Camera::setPos()
cameraPos:(float x; float y; float z)
cameraPos:(100.f; 50.f; -100.f)
(0.f; 0.f; -10.f)
Sets a 3D Camera 's shooting target position in world coordinate system, tells where the camera looks at in its containing Scene3D . See Camera::setLookAt()
cameraLookAt:(float x; float y; float z)
cameraLookAt:(100.f; 50.f; 0.f)
(0.f; 0.f; 0.f)
Sets a 3D Camera 's up-axis in world coordinate system, tells where the camera's Z axis points to in its containing Scene3D . See Camera::setUpAxis()
cameraUpAxis:(float x; float y; float z)
cameraUpAxis:(-0.2f; 0.8f; 0.f)
(0.f; 1.f; 0.f)
PropName = type:Sprite, (more attributes), ... PropName = type:DebugSprite, (more attributes), ...
PropName = type:Sprite, (more attributes), ...
PropName = type:DebugSprite, (more attributes), ...
Essential:
The attribute determines the visibility of the target Sprite , specified by a boolean value.
true
The containing SceneSprite of the target Sprite , specified by another property that defines a SceneSprite . Note If the containing scene is not specified by this attribute, then the target sprite will not be loaded by OGTemplate.
container:property
sceneConsole=type:SceneSprite, bkgColor:(10;30;50), x:10, y:5, navigationMode:INDEX_MODE btnStart=type:Sprite, GUIType:BUTTON, container:sceneConsole, pos:(5; 5), ...
container
Specifies the total number of the Sprite created under the name defined by the property and suffixed by sequential index. In some cases, it will be convenient if a series of sprites with same name can be created by a single property line. For example, in a space invader game, game developer may need to create 50 alien sprites and 10 UFO sprites. Attribute number can help to create numbers of sprite under the same name defined by the property name and suffixed by sequential index. The following example code create alien sprite with name: Alien0, Alien1, ..., Alien99, and UFO sprites with name Ufo0, Ufo1, ..., Ufo9. Note The second type of writing with [] is a convenient form to specify the number of the sprites created. Note If this attribute is not used, then only a single sprite is created and there is no suffix appended to the sprite name. Tip The starting index of the sprite name suffix is by default 0, it can be specified by another attribute startingIndex.
number
[]
startingIndex
number:integer
Alien=type:Sprite, number:100, container:sceneGame, texture:alien.gif Ufo[50]=type:Sprite, container:sceneGame, texture:ufo.gif
[50]
Specifies the starting index when numbers of sprites are created by attribute number. Note This attribute has no effect when only a single sprite is created by a property line. Note If this attribute is not specified, then the starting index of the sprite name is 0.
startingIndex:integer
Alien=type:Sprite, number:100, startingIndex:5, container:sceneGame, texture:alien.gif Ufo[50]=type:Sprite, container:sceneGame, startingIndex:1, texture:ufo.gif
Specifies whether the target Sprite 's state is set to normal state or active state . The sprite's state has numbers of different meaning and usage, depends on the sprite's type. For example, a regular sprite has different appearance under normal state or active state . A check-box sprite is "checked" under active state and is "unchecked" under normal state . See Group::GROUP_STATE See Group::state
state:boolean
state:TRUE state:false state:CHECKED state:UNCHECKED state:ACTIVE state:NORMAL state:1 state:0
Position and size:
The x position of the target Sprite , specified by an integer value measured in points1. Note The position is defined in container SceneSprite 's coordinate system. Note The position constant CENTER can be used to make the target centered in the container SceneSprite . Note If x position is also assigned by attribute pos, then the position is determined by attribute pos.
The y position of the target Sprite , specified by an integer value measured in points1. Note The position is defined in container SceneSprite 's coordinate system. Note The position constant CENTER can be used to make the target centered in the container SceneSprite . Note If y position is also assigned by attribute pos, then the position is determined by attribute pos.
The depth position of the target Sprite , specified by an integer value measured in points1. The depth position is used to determine the Z-order of a sprite, that in turn determines the rendering order of all sprites. See Sprite::z See SceneSprite::sortSpriteByZOrder
z:integer
z:100
The position (x and y ) of the target Sprite , specified by two integer values measured in points1. Note The position is defined in container SceneSprite 's coordinate system. Note The position constant CENTER can be used to make the target centered in the container SceneSprite . Note If position is also assigned by attribute x and y , attribute pos has higher priority.
Sets the relative position of the target Sprite by a reference (the container OGCanvas , the container Scene , or another Sprite ), specified by complex parameter. See Scene::POSITION_AND_SIZE_MODE See Sprite::setPositionByRef() Note If position is also assigned by attribute x and y , attribute posByRef has higher priority.
posByRef(int xGapOrOffset; int yGapOrOffset; const reference; const positioningMode; [anotherSprite])
posByRef:(10; 10; CANVAS; POS_LEFTTOP) posByRef:(0; 0; SCENE; POS_CENTER) posByRef:(2; 2; SPRITE; POS_RIGHT; spriteAnother)
The width of the target Sprite , specified by an integer value measured in points1. If the value is suffixed by %, then the value is the percentage of the size of the container SceneSprite . Note The size is defined in container SceneSprite ' coordinate system. Note If sprite's width is also assigned by attribute size, then the width is determined by attribute size. Note If sprite's width or height is not specified but a texture (see attribute texture) is assigned to the sprite, then the sprite's width and height are determined by the texture size.
texture
The height of the target Sprite , specified by an integer value measured in points1. If the value is suffixed by %, then the value is the percentage of the size of the container SceneSprite . Note The size is defined in container SceneSprite ' coordinate system. Note If sprite's height is also assigned by attribute size, then the height is determined by attribute size. Note If sprite's width or height is not specified but a texture (see attribute texture) is assigned to the sprite, then the sprite's width and height are determined by the texture size.
The size (width and height ) of the target Sprite , specified by two integer values measured in points1. If the value is suffixed by %, then the value is the percentage of the size of the container SceneSprite . Note The size is defined in container SceneSprite ' coordinate system. Note If size is also assigned by attribute width and height , attribute size has higher priority. Note If sprite's width or height is not specified but a texture (see attribute texture) is assigned to the sprite, then the sprite's width and height are determined by the texture size.
size:(200; 150) size:(200; 80%) size:(100%; 240) size:(75%; 50%)
Sets the relative size of the target Sprite by a reference (the container OGCanvas , the container Scene , or another API_LINK_Sprite), specified by complex parameter. See Scene::POSITION_AND_SIZE_MODE See Sprite::setSizeByRef() Note If size is also assigned by attribute width and height , attribute sizeByRef has higher priority.
sizeByRef(int xPercentOrExpansion; int yPercentOrExpansion; const reference; const sizingMode; [anotherSprite])
sizeByRef:(-40; -30; CANVAS; SIZE_POINT) sizeByRef:(25; 30; SCENE; SIZE_PERCENT) sizeByRef:(25; 30; SPRITE; SIZE_PERCENT; spriteAnother)
Sets the anchor point type of the target Sprite , must be one of the anchor point constants. See Sprite::anchorPoint
anchorPoint:anchor point constants
anchorPoint:RIGHT_TOP anchorPoint:CENTER
LEFT_TOP
Background and Frame effect:
The background color of the target Sprite under normal state in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. See Sprite::color
color:hexadecimal color:color constant color:(int red; int green; int blue)
color:(255; 128; 0) color:#FF8000 color:DARKBLUE
The background color of the target Sprite under active state in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. See Sprite::colorBright
colorBright:hexadecimal colorBright:color constant colorBright:(int red; int green; int blue)
colorBright:(255; 128; 0) colorBright:#FF8000 colorBright:YELLOW
The transparency level of the background color of the target Sprite , in range of [0, 255]. See Sprite::colorTransparency
colorTransparency:integer
colorTransparency:128
The frame color of the target Sprite under normal state in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. See Sprite::frameColor
frameColor:hexadecimal frameColor:color constant frameColor:(int red; int green; int blue)
frameColor:(255; 128; 0) frameColor:#FF8000 frameColor:DARKBLUE
The frame color of the target Sprite under active state in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. See Sprite::frameColorBright
frameColorBright:hexadecimal frameColorBright:color constant frameColorBright:(int red; int green; int blue)
frameColorBright:(255; 128; 0) frameColorBright:#FF8000 frameColorBright:YELLOW
The frame thickness of target Sprite in points1, specified by an integer. See Sprite::frameThickness
frameThickness:integer
frameThickness:5
1pt
Indicates whether the target Sprite 's frame should be rendered as underline (when True) or regular frame (when False). See Sprite::frameAsUnderline
frameAsUnderline:boolean
frameAsUnderline:TRUE frameAsUnderline:false frameAsUnderline:1 frameAsUnderline:0
The frame bevel style of the target Sprite under normal state , must be one of the frame bevel constants. See frameBevel
frameBevel:frame bevel constants
frameBevel:RAISED frameBevel:SUNKEN
NONE
The frame bevel style of the target Sprite under active state , must be one of the frame bevel constants. See frameBevel
frameBevelBright:frame bevel constants
frameBevelBright:RAISED frameBevelBright:SUNKEN
The outline color of the target Sprite in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. See Sprite::outlineColor
outlineColor:hexadecimal outlineColor:color constant outlineColor:(int red; int green; int blue)
outlineColor:(255; 128; 0) outlineColor:#FF8000 outlineColor:WHITE
The corner-cut (chamfer) size of target Sprite in points1, specified by an integer. See Sprite::cornerCut
cornerCut:integer
cornerCut:5
0pt
Text related:
Sets the text of the target Sprite , specified by a string. Note For text contains reserved OGTemplate separator tokens (see Template structure and syntax), one of the following solutions can be used:
Escape Token | Decoded Character |Note --------------------------------------------------------- ^c | ':' | colon ^cm | ',' | comma ^sc | ';' | semi-comma ^q | '"' | quotation mark ^op | '(' | opening parentheses ^cp | ')' | closing parentheses ^fs | '/' | forward slash ^bs | '\' | backward slash ^sp | ' ' | one space character ^2sp | ' ' | two space characters | | ^n or \n | \x0A | new-line character ^tab | \x09 | horizontal tab character | | ^- | nothing | dummy escape code translated | | into nothing, used to | | separate two adjacent | | characters to avoid them | | from forming an escape code
See Sprite::setText() See Sprite::getText()
text:string
text:"Hello, How are you?" text:Hello^cm How are you? text:"[Step 1]: In this step, we'll ..." text:[Step 1]^c In this step, we'll ... text:"People make history; unusual people make history interesting." text:People make history^sc unusual people make history interesting. text:the first line...\nthe second line // To make '\n' take effect, attribute 'textFormatted' must be set to True
null
Set the language table ID of the target Sprite , therefore if a language table is set to the application by function Application::setLanguageTable() , then the localized text will be used when the sprite is rendered. In this case, the text specified by attribute text is ignored. The attribute LTID is the template way to support multi-language, the alternative way of display localized text in source code is by function Application::getTextFromLanguageTable() . See languageTable See Application::setLanguageTable() See Application::getTextFromLanguageTable()
text
LTID
LTID:string
txtRules=type:Sprite, container:SceneGUI, ..., \ LTID:HELP_RULES, text:Game Rules: Control the space ship and shoot off ... txtControl=type:Sprite, container:SceneGUI, ..., \ LTID:HELP_CONTROL, text:Game Control: Use direction keys or touch ...
LTID:HELP_RULES
LTID:HELP_CONTROL
The text color of the target Sprite under normal state in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. See Sprite::textColor
textColor:hexadecimal textColor:color constant textColor:(int red; int green; int blue)
textColor:(255; 128; 0) textColor:#FF8000 textColor:YELLOW
The default text color defined by page setting, see attribute defaultTextColor.
defaultTextColor
The text color of the target Sprite under active state in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. See Sprite::textColorBright
textColorBright:hexadecimal textColorBright:color constant textColorBright:(int red; int green; int blue)
textColorBright:(255; 128; 0) textColorBright:#FF8000 textColorBright:YELLOW
The default text color defined by page setting, see attribute defaultTextColorBright.
defaultTextColorBright
The transparency level of the text of the target Sprite , in range of [0, 255]. See Sprite::textTransparency
textTransparency:integer
textTransparency:128
The text shadow color of the target Sprite in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. See Sprite::textShadow
textShadow:hexadecimal textShadow:color constant textShadow:(int red; int green; int blue)
textShadow:(32; 32; 32) textShadow:#202020 textShadow:BLACK
The transparency level of the text shadow of the target Sprite , in range of [0, 255]. See Sprite::textShadowTransparency
textShadowTransparency:integer
textShadowTransparency:128
The text font size of the target Sprite , specified by an integer value measured in points1. See Sprite::textSize
textSize:integer
textSize:18
The default text font size defined by page setting, see attribute defaultTextSize.
defaultTextSize
Sets whether the target Sprite 's text has bold style. See Sprite::textBold
textBold:boolean
textBold:TRUE textBold:false textBold:1 textBold:0
Sets whether the target Sprite 's text has italic style. See Sprite::textItalic
textItalic:boolean
textItalic:TRUE textItalic:false textItalic:1 textItalic:0
Sets whether the target Sprite 's text has underline style. See Sprite::textUnderline
textUnderline:boolean
textUnderline:TRUE textUnderline:false textUnderline:1 textUnderline:0
Sets the x-offset applied to the text position of the target Sprite , specified by an integer value measured in points1. Note If text x-offset is also assigned by attribute textOffset, then the text x-offset is determined by attribute textOffset. See Sprite::textOffsetX
textOffset
textOffsetX:integer
textOffsetX:-5
Sets the y-offset applied to the text position of the target Sprite , specified by an integer value measured in points1. Note If text y-offset is also assigned by attribute textOffset, then the text y-offset is determined by attribute textOffset. See Sprite::textOffsetY
textOffsetY:integer
textOffsetY:-5
Sets both x-offset and y-offset applied to the text position of the target Sprite , specified by an integer value measured in points1. Note If text offset is also assigned by attribute textOffsetX or textOffsetY, then the text offset is determined by attribute textOffset. See Sprite::textOffsetX See Sprite::textOffsetY
textOffsetX
textOffsetY
textOffset:(int x-offset; int y-offset)
textOffset:(-5; 2)
(0; 0)
Sets whether the target Sprite 's text is formatted or not. Formatted text can be rendered with the desired format defined by numbers of sprite properties, such as Sprite::textAlignment and Sprite::textVAlignment . See Sprite::textFormatted Tip When this attribute is set to True, token \n (two characters) can be used to break the line at current position and generate a new line. Note This attribute is automatically set to True when assgining a valid value for attribute textAlignment or textVAlignment.
\n
textAlignment
textVAlignment
textFormatted:boolean
textFormatted:TRUE textFormatted:false textFormatted:1 textFormatted:0
The horizontal text alignment of the target Sprite , must be one of text horizontal alignment type constants. See Sprite::textAlignment See Sprite::textFormatted Note Assigning this attribute will also set the attribute textFormatted to True. Caution This attribute has no effect if the attribute textFormatted is set to false.
textFormatted
textAlignment:text horizontal alignment type constants.
textAlignment:CENTER
LEFT
The vertical text alignment of the target Sprite , must be one of text vertical alignment type constants. See Sprite::textVAlignment See Sprite::textFormatted Note Assigning this attribute will also set the attribute textFormatted to True. Caution This attribute has no effect if the attribute textFormatted is set to false.
textVAlignment:text vertical alignment type constants.
textAlignment:MIDDLE
TOP
Sets the padding space between the target Sprite 's text and its boundary, in points1. See Sprite::textPadding
textPadding:integer
textPadding:10
Sets line space of the target Sprite , in points1. See Sprite::textLineSpacing
textLineSpacing:integer
textLineSpacing:10
Sets whether to use mono-spaced font when render the target Sprite 's text. Every applications has proportional font and mono-spcaed font, which can be set by function Application::setFont . By default, sprite use the current proportional font to render its text. This attribute can be used to display its text by the current mono-spaced font. See Sprite::useMonoFont See Application::setFont() See Application::getFont() See Application::getDefaultFont()
useMonoFont:boolean
useMonoFont:TRUE useMonoFont:false useMonoFont:1 useMonoFont:0
The BitmapFont used to render Sprite 's text under normal state , specified by a BitmapFont defined by another property.
bitmapFont:property
bmpFontConsole = type:BitmapFont, ... bmpFontConsoleBold =type:BitmapFont, ... txtScore = type:Sprite, container:sceneConsole, pos:(5; 220), size:(140; height:20), \ bitmapFont:bmpFontConsole, bitmapFontBright:bmpFontConsoleBold, text:Game Score
bitmapFont:bmpFontConsole
bitmapFontBright:bmpFontConsoleBold
The BitmapFont used to render Sprite 's text under active state , specified by a BitmapFont defined by another property.
bitmapFontBright:property
Texture related:
A Texture assigned to the target Sprite used to render its texture (background picture) under normal state , specified by a texture asset path or a texture object defined by another property. See Sprite::texture
texture:asset texture:property #### Examples: # textureObj = type:Texture, src:themeBkg.png // Define a texture object sptSample1 = type:Sprite, container:sceneMain, ..., texture:level5/texture/smileIcon.png, ... // Apply texture by a texture asset path sptSample2 = type:Sprite, container:sceneMain, ..., texture:textureObj, ... // Apply texture by a texture object
A Texture assigned to the target Sprite used to render its texture (background picture) under active state , specified by a texture asset path or a texture object defined by another property. See Sprite::textureBright
textureBright:asset textureBright:property #### Examples: # textureObj = type:Texture, src:themeBkg.png // Define a texture object sptSample1 = type:Sprite, container:sceneMain, ..., textureBright:level5/texture/smileIcon.png, ... // Apply texture by a texture asset path sptSample2 = type:Sprite, container:sceneMain, ..., textureBright:textureObj, ... // Apply texture by a texture object
textureBright
The transparency level of the target Sprite 's texture, in range of [0, 255]. See Sprite::textureTransparency
textureTransparency:integer
textureTransparency:128
Indicates the target Sprite only uses the first frame of the assigned Texture , even when the assigned texture contains multiple frames (for example, a multi-frame gif or mng image). The default value is False. See Texture
textureSingleFrame:boolean
textureSingleFrame:TRUE textureSingleFrame:false textureSingleFrame:1 textureSingleFrame:0
Sets whether the target Sprite with multi-frame texture render its texture with animation effect when the container OGCanvas is currently animating. By default, sprites with multi-frame texture are rendered as animating sprite when the container OGCanvas is animating. See Texture See Texture::animationEnabled
animationEnabled:boolean
textureAnimationEnabled:TRUE textureAnimationEnabled:false textureAnimationEnabled:1 textureAnimationEnabled:0
Sets whether the Texture of the target Sprite should be rendered as a single picture or repeated as numbers of picture tiles. See Sprite::textureTiling
textureTiling:boolean
textureTiling:TRUE textureTiling:false textureTiling:1 textureTiling:0
The output width when the target Sprite render its texture, specified by an integer value measured in points1. Note By default, sprite's texture is rendered with the sprite's size (Sprite::width , Sprite::height ). See Sprite::textureOutputW See Sprite::width See Sprite::height
textureOutputW:integer
textureOutputW:32
The width of the target Sprite
The output height when the target Sprite render its texture, specified by an integer value measured in points1. Note By default, sprite's texture is rendered with the sprite's size (Sprite::width , Sprite::height ). See Sprite::textureOutputH See Sprite::width See Sprite::height
textureOutputH:integer
textureOutputH:32
The height of the target Sprite
The output size when the target Sprite render its texture, specified by an integer value measured in points1. Note By default, sprite's texture is rendered with the sprite's size (Sprite::width , Sprite::height ). See Sprite::textureOutputW See Sprite::textureOutputH See Sprite::width See Sprite::height
textureOutputSize:(int outputW; int outputH)
textureOutputSize:(56; 32)
The size (width X height ) of the target Sprite
Determines how the target Sprite 's texture is aligned with the sprite when the texture output size is different from the sprite's size, must be one of the anchor point constants. See Sprite::textureAlignment See Sprite::textureOutputW See Sprite::textureOutputH See Sprite::width See Sprite::height
textureAlignment:anchor point constants
textureAlignment:RIGHT_TOP textureAlignment:CENTER
Sets the x-offset applied to the texture position of the target Sprite , specified by an integer value measured in points1. Note If texture x-offset is also assigned by attribute textureOffset, then the texture x-offset is determined by attribute textureOffset. See Sprite::textureOffsetX
textureOffset
textureOffsetX:integer
textureOffsetX:-5
Sets the y-offset applied to the texture position of the target Sprite , specified by an integer value measured in points1. Note If texture y-offset is also assigned by attribute textureOffset, then the texture y-offset is determined by attribute textureOffset. See Sprite::textureOffsetY
textureOffsetY:integer
textureOffsetY:-5
Sets both x-offset and y-offset applied to the texture position of the target Sprite , specified by an integer value measured in points1. Note If texture offset is also assigned by attribute textureOffsetX or textureOffsetY, then the texture offset is determined by attribute textureOffset. See Sprite::textureOffsetX See Sprite::textureOffsetY
textureOffsetX
textureOffsetY
textureOffset:(int x-offset; int y-offset)
textureOffset:(-5; 2)
See Sprite::textureRotationAnchorX See Sprite::textureRotationAnchorY The texture rotation angle that makes texture rotated counterclockwise, measured in degree and specified by a float value. See Sprite::textureRotation
sptButtterfly = type:Sprite, container:SceneGUI, ..., textureRotation:45.f
textureRotation:-45.f
0.f
Defines the position of the target Sprite 's texture rotation anchor (pivot), specified by a float value. The rotation anchor position is normalized by the texture output size (Sprite::textureOutputW and Sprite::textureOutputH ) where 1.0f is equal to sprite's texture output width or height. Tip Value (0.f; 0.f) is mapped to sprite's geometrical center and (-0.5f; -0.5f) is mapped to sprite's left-top corner. See Sprite::textureRotation See Sprite::textureOutputW See Sprite::textureOutputH
textureRotationAnchor:(float anchor-X; float anchor-Y)
textureRotationAnchor:(-0.5f, +0.25f)
(0.f; 0.f)
Attribute textureClipX, textureClipY, textureClipW and textureClipH work together to define a clipping window of the target Sprite 's texture, which means only the content inside that clipping window is used when the texture is rendered. This attribute defines X coordinate of the left-top corner of the clipping window, specified by an integer value measured in pixels2. See Sprite::textureClipX See Sprite::textureClipY See Sprite::textureClipW See Sprite::textureClipH
textureClipX
textureClipY
textureClipW
textureClipH
textureClipX:integer
textureClipX:16
Attribute textureClipX, textureClipY, textureClipW and textureClipH work together to define a clipping window of the target Sprite 's texture, which means only the content inside that clipping window is used when the texture is rendered. This attribute defines Y coordinate of the left-top corner of the clipping window, specified by an integer value measured in pixels2. See Sprite::textureClipX See Sprite::textureClipY See Sprite::textureClipW See Sprite::textureClipH
textureClipY:integer
textureClipY:16
Attribute textureClipX, textureClipY, textureClipW and textureClipH work together to define a clipping window of the target Sprite 's texture, which means only the content inside that clipping window is used when the texture is rendered. This attribute defines the width of the left-top corner of the clipping window, specified by an integer value measured in pixels2. See Sprite::textureClipX See Sprite::textureClipY See Sprite::textureClipW See Sprite::textureClipH
textureClipW:integer
textureClipW:200
texture's width
Attribute textureClipX, textureClipY, textureClipW and textureClipH work together to define a clipping window of the target Sprite 's texture, which means only the content inside that clipping window is used when the texture is rendered. This attribute defines the height of the left-top corner of the clipping window, specified by an integer value measured in pixels2. See Sprite::textureClipX See Sprite::textureClipY See Sprite::textureClipW See Sprite::textureClipH
textureClipH:integer
textureClipH:250
texture's height
Defines the clipping window of the target Sprite 's texture, which means only the content inside that clipping window is used when the texture is rendered. This attribute uses complex value to define the texture clipping window, that is more concise than using attributes textureClipX, textureClipY, textureClipW and textureClipH separately. Note if the texture clipping window is also specified by attributes textureClipX, textureClipY, textureClipW and textureClipH, this attribute has higher priority. See Sprite::textureClipX See Sprite::textureClipY See Sprite::textureClipW See Sprite::textureClipH
textureClip:(int clipX; int clipY; int clipW; int clipH)
textureClip:(10; 20; 200; 200)
(0; 0; texture width ; texture height )
Defines the nine-patch sections of the target Sprite 's texture, which makes the texture rendered in arbitrary aspect ratio without anamorphic effect. See Sprite::textureLeftEdgeInset See Sprite::textureTopEdgeInset See Sprite::textureRightEdgeInset See Sprite::textureBottomEdgeInset
textureEdgeInset:(int leftEdgeInset; int topEdgeInset; int rightEdgeInset; int bottomEdgeInset)
textureClip:(10; 5; 10; 5)
(0; 0; 0; 0)
Token related:
The token type of the target Sprite , must be one of sprite token type constants. Caution If the tokenType is given value TOKEN_NONE, the target Sprite will be created as a regular Sprite instead of a TokenSprite. See TokenSprite::tokenType See TokenSprite::TOKEN_TYPES
tokenType
TOKEN_NONE
tokenType:sprite token types
tokenType:TOKEN_TRIANGLE_LEFT tokenType:TOKEN_V_CURSOR tokenType:TOKEN_HOLLOW_BOX
Sets the x-offset applied to the token of the target Sprite , specified by an integer value measured in points1. Note If token x-offset is also assigned by attribute tokenOffset, then the token x-offset is determined by attribute tokenOffset. Note By default, the token is displayed at the center of the sprite. See TokenSprite::tokenOffsetX
tokenOffset
tokenOffsetX:integer
tokenOffsetX:-5
Sets the y-offset applied to the token of the target Sprite , specified by an integer value measured in points1. Note If token y-offset is also assigned by attribute tokenOffset, then the token y-offset is determined by attribute tokenOffset. Note By default, the token is displayed at the center of the sprite. See TokenSprite::tokenOffsetY
tokenOffsetY:integer
tokenOffsetY:2
Sets both x-offset and y-offset applied to the token of the target Sprite , specified by an integer value measured in points1. Note If token offset is also assigned by attribute tokenOffsetX or tokenOffsetY, then the token offset is determined by attribute tokenOffset. See TokenSprite::tokenOffsetX See TokenSprite::tokenOffsetY
tokenOffsetX
tokenOffsetY
tokenOffset:(int x-offset; int y-offset)
tokenOffset:(-5; +2)
Theme related effect:
Sets the theme type of the target Sprite , specified by one of theme type constants. See Sprite::setThemeType() See Sprite::getThemeType() See SpriteTheme::THEME_GUI_TYPE
GUIType:theme type constants
themeType:THEME_BUTTON themeType:THEME_EDITBOX themeType:THEME_FRAME
THEME_UNTHEMED
User interface general:
The GUI type of the target Sprite , must be one of sprite GUI type constants. See Sprite See Sprite::GUI_SPRITE_TYPE See Sprite::guiType
GUIType:sprite GUI types
GUIType:BUTTON GUIType:EDITBOX GUIType:LWCOMPONENT
STATIC
Sets whether the target interactive Sprite is enabled or disabled. Interactive sprites, are sprites that can respond to user operations and are UI elements involved in user inter-activities. See Sprite See Sprite::GUI_SPRITE_TYPE See Sprite::enabled Caution This attribute has no effect if the target sprite is not an interactive sprite.
enabled:boolean
enabled:TRUE enabled:false enabled:1 enabled:0
Sets whether the target Sprite is draggable, i.e., it can be dragged by pointing device (mouse, touch, etc.). See Sprite::draggable
draggable:boolean
draggable:TRUE draggable:false draggable:1 draggable:0
Sets whether the target interactive Sprite is able to repeatedly generates clicking events when it is pressed and held by a pointing device (mouse, touch). See Sprite::GUI_SPRITE_TYPE See Sprite::repeatMouseClicking
repeatMouseClicking:boolean
repeatMouseClicking:TRUE repeatMouseClicking:false repeatMouseClicking:1 repeatMouseClicking:0
Sets the time interval in milliseconds that works together with attribute repeatMouseClicking to control how fast the clicking events are repeated. Note This attribute only takes effect when the attribute repeatMouseClicking is set to True. See Sprite::GUI_SPRITE_TYPE See Sprite::repeatMouseClicking See Sprite::clickingRepeatInterval
repeatMouseClicking
clickingRepeatInterval:integer
clickingRepeatInterval:100
Sets the time interval in milliseconds that works together with attribute repeatMouseClicking to determine how much delay applied before the first clicking events repeat. Note This attribute only takes effect when the attribute repeatMouseClicking is set to True. See Sprite::GUI_SPRITE_TYPE See Sprite::repeatMouseClicking See Sprite::clickingRepeatFirstTimeInterval
clickingRepeatFirstTimeInterval:integer
clickingRepeatFirstTimeInterval:500
Sets the horizontal picking extension of the target interactive Sprite , specified by an integer value measured in points1. Note If the horizontal picking extension is also assigned by attribute pickingExtension, then the extension is determined by attribute pickingExtension. Note This attribute has no effect if the atrget sprite is not interactive . See TokenSprite::pickingExtensionX
pickingExtension
pickingExtensionX:integer
pickingExtensionX:10
Sets the vertical picking extension of the target interactive Sprite , specified by an integer value measured in points1. Note If the vertical picking extension is also assigned by attribute pickingExtension, then the extension is determined by attribute pickingExtension. Note This attribute has no effect if the atrget sprite is not interactive . See TokenSprite::pickingExtensionY
pickingExtensionY:integer
pickingExtensionY:10
Sets the picking extension of the target interactive Sprite , specified by an integer value measured in points1. Note If the picking extension is also assigned by attribute pickingExtensionX or pickingExtensionY, then the extension is determined by attribute pickingExtension. Note This attribute has no effect if the atrget sprite is not interactive . See TokenSprite::pickingExtensionX See TokenSprite::pickingExtensionY
pickingExtensionX
pickingExtensionY
pickingExtension:(int horizontal extension; int vertical extension)
pickingExtension:(10; 10)
Checkbox dedicated:
This attribute declares that the target checkbox Sprite belongs to a checkbox group, which makes this checkbox sprite behaviors as a radio button sprite. The attribute is specified by a CheckboxGroup defined by another property. Note In Pooka SDK® application, there is no dedicated "radio button" sprite, checkbox sprites belongs to a CheckboxGroup work as radio buttons. Caution This attribute has no effect if the target Sprite is not a checkbox . See Sprite::GUI_CHECKBOX See OGCanvas::setCheckboxGroupSelection() See OGCanvas::getCheckboxGroupSelection() See OGTemplate reserved type CheckboxGroup
CheckboxGroup
group:property
gameDifficultyLevel=type:CheckboxGroup, selected:1 rdoRookie=type:Sprite, GUIType:CHECKBOX, group:gameDifficultyLevel, persistent:true, ... rdoVeteran=type:Sprite, GUIType:CHECKBOX, group:gameDifficultyLevel, persistent:true, ... rdoAce=type:Sprite, GUIType:CHECKBOX, group:gameDifficultyLevel, persistent:true, ...
Hyper-link and Tip-link dedicated:
This attribute defines the destination of the target hyper-link Sprite or tip-link Sprite . When the target sprite is a hyper-link sprite, the destination is the target OGTemplate asset, which will be opened once user clicks the hyper-link. The attribute value is specified by an OGTemplate asset path or the constant REFERRAL. When the target sprite is a tip-link sprite, the destination is another sprite in the same container OGCanvas that will be shown as the tip-box once user clicks the tip-link. The attribute value is specified by a Sprite defined by another property. See Sprite::GUI_HYPERLINK See Sprite::GUI_TIPLINK
href:asset (for HYPERLINK) href:constant REFERRAL (for HYPERLINK) href:property (for TIPLINK)
btnClose=type:Sprite, GUIType:HYPERLINK, href:GUI/MainEntryPage.properties, container:GSettingMenu, ... btnAboutDifLevel=type:Sprite, GUIType:TIPLINK, href:txtAboutDifLevel, ..., text:? txtAboutDifLevel = type:Sprite, ..., visible:FALSE, text:Tip text goes here ...
HYPERLINK
TIPLINK
txtAboutDifLevel
Editbox dedicated:
Sets the readOnly attribute of the target editbox Sprite , specified by a boolean value. Caution This attribute has no effect if the target Sprite is not a editbox sprite. See Sprite::EDITBOX_ATTR_READ_ONLY See Sprite::GUI_EDITBOX See Sprite::setSpriteEditBoxAttribute() See Sprite::getSpriteEditBoxAttribute()
readOnly:boolean
readOnly:TRUE readOnly:false readOnly:1 readOnly:0
Sets the maxLength attribute of the target editbox Sprite , specified by an integer value. Caution This attribute has no effect if the target Sprite is not a editbox sprite. See Sprite::EDITBOX_ATTR_MAX_LENGTH See Sprite::GUI_EDITBOX See Sprite::setSpriteEditBoxAttribute() See Sprite::getSpriteEditBoxAttribute()
maxLength:integer
maxLength:20
20 for single-line editbox; 1024 for multi-line editbox
Sets the allowEmpty attribute of the target editbox Sprite , specified by a boolean value. Caution This attribute has no effect if the target Sprite is not a editbox sprite. See Sprite::EDITBOX_ATTR_ALLOW_EMPTY See Sprite::GUI_EDITBOX See Sprite::setSpriteEditBoxAttribute() See Sprite::getSpriteEditBoxAttribute()
allowEmpty:boolean
allowEmpty:TRUE allowEmpty:false allowEmpty:1 allowEmpty:0
Sets the multiline attribute of the target editbox Sprite , specified by a boolean value. Caution This attribute has no effect if the target Sprite is not a editbox sprite. See Sprite::EDITBOX_ATTR_MULTI_LINE See Sprite::GUI_EDITBOX See Sprite::setSpriteEditBoxAttribute() See Sprite::getSpriteEditBoxAttribute()
multiline:boolean
multiline:TRUE multiline:false multiline:1 multiline:0
Sets the showAsPassword attribute of the target editbox Sprite , specified by a boolean value. Caution This attribute has no effect if the target Sprite is not a editbox sprite. See Sprite::EDITBOX_ATTR_SHOW_AS_PASSWORD See Sprite::GUI_EDITBOX See Sprite::setSpriteEditBoxAttribute() See Sprite::getSpriteEditBoxAttribute()
showAsPassword:boolean
showAsPassword:TRUE multiline:false showAsPassword:1 showAsPassword:0
Sets the inputType attribute of the target inputType Sprite , specified by a input type constants. Caution This attribute has no effect if the target Sprite is not a editbox sprite. See Sprite::EDITBOX_ATTR_INPUT_TYPE See Sprite::GUI_EDITBOX See Sprite::setSpriteEditBoxAttribute() See Sprite::getSpriteEditBoxAttribute()
inputType: input type constants
inputType:20
ANYTHING
LWComponent Dedicated:
Provides the detailed class information of the target LWComponent Sprite . This attribute is dedicated to loading a LWComponent into container OGCanvas . To make this attribute take effect, the other attribute GUIType must have value set to GUI_LWCOMPONENT, which indicated a light-weight component will be created instead of a regular sprite. The detailed class information is provided by complex parameters with all arguments passed in the specific orders, as shown in the sample code. Developer should refer to Reference - LWComponent Class Signature for more details.
GUIType
GUI_LWCOMPONENT
className: (argument1; argument2; argument3; ...)
// Loading a list-box component comListbox = type:Sprite, ..., className:LWListBox(4; VERTICAL; false; UNSORTED; false; false; 0; Mac OS X|iOS|Windows|Blackberry|Android|Windows Phone|Java ME|Flash|HTML 5) // Loading a combo-box component comComboBox = type:Sprite, ..., className:LWComboBox(5; VERTICAL; RIGHT_OR_DOWN; expand_list; ascending; true; 20; Windows|Windows RT|Mac OS X|iOS|BlackBerry 10|Bada|Android|Java ME|Flash) // Loading a slider component comSlider = type:Sprite, ..., className:LWSlider(COMPACT; 0; 90; 1090; 10; true) // Loading a tabbed-pane component comTabbedPane = type:Sprite, ..., className:LWTabbedPane(VERTICAL; 56; 0; CLEAR; ; 0)
className:LWListBox(4; VERTICAL; false; UNSORTED; false; false; 0; Mac OS X|iOS|Windows|Blackberry|Android|Windows Phone|Java ME|Flash|HTML 5)
className:LWComboBox(5; VERTICAL; RIGHT_OR_DOWN; expand_list; ascending; true; 20; Windows|Windows RT|Mac OS X|iOS|BlackBerry 10|Bada|Android|Java ME|Flash)
className:LWSlider(COMPACT; 0; 90; 1090; 10; true)
className:LWTabbedPane(VERTICAL; 56; 0; CLEAR; ; 0)
Keyboard navigation related:
Sets the keyboard navigation index (shortcut) of the target Sprite . The navigation index is used to "virtually click" the target sprite by its keyboard shortcut. The navigation index can be specified by a special navigation index or a combination of one numeric index plus one alphabetic index, see function Sprite::setNavigationIndex() for more details. Note this attribute has not effect unless the container SceneSprite has its navigation mode set to index mode and the sprite is an interactive sprite . Note When the attribute is specified by a combination of one numeric index and an alphabetic index, the first index is numeric shortcut and the second index is the alphabetic shortcut. See Sprite::setNavigationIndex() See interactive sprite See SceneSprite::KEYBOARD_NAVIGATION_MODE
navigationIndex: special navigation index constants navigationIndex:two-characters string
navigationIndex:LEFT navigationIndex:ENTER navigationIndex:UP navigationIndex:0X navigationIndex:1S navigationIndex:6A
Sets the target Sprite as the default focused sprite, which is the sprite who initially possesses the navigation focus. See function SceneSprite::setDefaultFocusedSprite() for more details. Note this attribute is only used when the container SceneSprite has its navigation mode set to TAB mode and the sprite is an interactive sprite . Note If multiple sprites has this attribute set to True, then the last sprite will finally get the initial navigation focus. See SceneSprite::setDefaultFocusedSprite() See interactive sprite See SceneSprite::KEYBOARD_NAVIGATION_MODE
defaultFocus:boolean
defaultFocus:TRUE defaultFocus:false defaultFocus:1 defaultFocus:0
Sets whether the target Sprite is a candidate for keyboard navigation when the container SceneSprite 's navigation mode is set to TAB mode . When the attribute is set to True, the sprite can be reached by the keyboard navigation (tab navigation mode); When set to False, the navigation (tab navigation mode) focus will jump over the sprite and move to the next candidate. Note this attribute is only used when the container SceneSprite has its navigation mode set to TAB mode and the sprite is an interactive sprite . See Sprite::tabStop See interactive sprite See SceneSprite::KEYBOARD_NAVIGATION_MODE
tabStop:boolean
tabStop:TRUE tabStop:false tabStop:1 tabStop:0
Value / State related:
Sets whether the value maintained by the target interactive Sprite will be persistent across application sessions. Caution This attribute has no effect if the target sprite is not an interactive sprite. See Sprite See Sprite::persistent See Sprite::GUI_SPRITE_TYPE
persistent:boolean
persistent:TRUE persistent:false persistent:1 persistent:0
PropName = type:CheckboxGroup, (more attributes), ...
This attribute sets which checkbox Sprite in the checkbox group is currently selected. The attribute is specified by a integer value that is the zero-based index of the current selected checkbox. Note In Pooka SDK® application, there is no dedicated "radio button" sprite, checkbox sprites belongs to a CheckboxGroup work as radio buttons. See Sprite::GUI_CHECKBOX See OGCanvas::setCheckboxGroupSelection() See OGCanvas::getCheckboxGroupSelection() See Attribute group in OGTemplate reserved type Sprite.
group
Sprite
selected:integer
selected:1
-1
PropName = type:Texture, (more attributes), ...
The source of the target Texture to be loaded into the container OGCanvas , specified by an image asset. Note The value must be a valid asset path. If the specified texture source can not be found, the target texture will not be loaded. See Texture
src:image asset
txtureBubble = type:Texture, src:images/env/bubble.png
src:images/env/bubble.png
Sets whether the target Texture 's size must meet the power-of-2 requirement. If does not meet, then the texture will be resized when it is loaded into OGCanvas . Tip The rule of thumb for this attribute is that if the target texture is to used for 2D objects (Sprite ), then its size does not have to be power-of-2; if the target texture is to used for 3D objects (Group3D ), then its size has to be power-of-2. See Texture
powerOf2:boolean
powerOf2:TRUE powerOf2:false powerOf2:1 powerOf2:0
Sets whether to only load the first frame of the target Texture even it is a multi-frame texture. Tip Multi-frame textures are usually loaded by image asset in .gif and .mng format. See Texture
.gif
.mng
PropName = type:BitmapFont, (more attributes), ...
A Texture to be used for the target BitmapFont , specified by a texture asset path or a texture object defined by another property. Note If this attribute is not specified or the specified texture can not be found, the target BitmapFont will not be loaded. See BitmapFont See BitmapFont::createMonospaceBitmapFont() See BitmapFont::createProportionalBitmapFont() See Sprite::texture
bitmap:asset bitmap:property
bitmapfontN = type:BitmapFont, bitmap:monoFont.gif, ... textureFont = type:Texture, src:bmpFont.png // Define a texture object bitmapfontB = type:BitmapFont, bitmap:textureFont, ...
bitmap:monoFont.gif
bitmap:textureFont
Sets whether the target BitmapFont is monospaced font or proportional font, specified by a boolean value. See BitmapFont See BitmapFont::monospace See BitmapFont::createMonospaceBitmapFont() See BitmapFont::createProportionalBitmapFont()
monospace:boolean
monospace:TRUE monospace:false monospace:1 monospace:0
The columns of glyphs in the target monospaced BitmapFont , specified by an integer value. Caution This attribute has no effect if the target bitmap-font is not a monospaced font. See BitmapFont See BitmapFont::monospace See BitmapFont::createMonospaceBitmapFont() See BitmapFont::createProportionalBitmapFont()
columns:integer
monospace:10
The rows of glyphs in the target monospaced BitmapFont , specified by an integer value. Caution This attribute has no effect if the target bitmap-font is not a monospaced font. See BitmapFont See BitmapFont::monospace See BitmapFont::createMonospaceBitmapFont() See BitmapFont::createProportionalBitmapFont()
rows:integer
rows:6
The starting character's ASCII code in the target monospaced BitmapFont , specified by an integer value. See BitmapFont See BitmapFont::monospace See BitmapFont::createMonospaceBitmapFont() See BitmapFont::createProportionalBitmapFont()
startCode:integer
startCode:32
32 (space)
The number of glyphs that the target proportional BitmapFont must contain, specified by an integer value. Caution This attribute has no effect if the target bitmap-font is not a proportional font. See BitmapFont See BitmapFont::monospace See BitmapFont::createMonospaceBitmapFont() See BitmapFont::createProportionalBitmapFont()
glyphNumber:integer
glyphNumber:91
Whether convert all lower case Latin characters into upper case when the text is rendered by the target BitmapFont , specified by a boolean value. See BitmapFont
caseConvertion:boolean
caseConvertion:TRUE caseConvertion:false caseConvertion:1 caseConvertion:0
The glyph condensing factor of the target BitmapFont , defined as 1/1024 of the glyph height. The bigger the condensing factor is, the more condensed the drawn characters appears. See BitmapFont See BitmapFont::setGlyphCondensing()
glyphCondensing:integer
glyphCondensing:64
The background color of glyphs in the target BitmapFont in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. See BitmapFont See BitmapFont::backgroundColor
PropName = type:Sound, (more attributes), ...
The source of the target Sound to be loaded into the container OGCanvas , specified by a sound asset. Note The value must be a valid asset path. If the specified sound source can not be found, the target sound will not be loaded. See Sound
src:sound asset
soundMusic = type:Sound, src:sounds/common/ambientMusic.wav
src:sounds/common/ambientMusic.wav
PropName = type:Group3D, (more attributes), ... PropName = type:Chip3D, (more attributes), ...
PropName = type:Group3D, (more attributes), ...
PropName = type:Chip3D, (more attributes), ...
The attribute determines the visibility of the target Group3D , specified by a boolean value.
The 3D model of the target Group3D , specified by a 3D model asset. Note The value must be a valid asset path. If this attribute is not specified or the specified 3D model can not be found, the target 3D group will not be loaded. See Group3D
model:3D model asset
grp3DEarth = type:Group3D, container:scene3D, model:models/Earth.3DS, ...
Specifies the total number of the Group3D created under the name defined by the property and surfixed by sequential index. In some cases, it will be convenient if a series of 3D groups with same name can be created by a single property line. For example, in a 3D space invader game, game developer may need to create 50 3D alien groups and 10 3D UFO groups. Attribute number can help to create numbers of 3D groups under the same name defined by the property name and surfixed by sequential index. The following example code create alien 3D groups with name: grpAlien0, grpAlien1, ..., grpAlien99, and UFO 3D groups with name grpUfo0, grpUfo1, ..., grpUfo9. Note The second type of writing with [] is a convenient form to specify the number of the 3D groups created. Note If this attribute is not used, then only a single 3D group is created and there is no surfix appended to the 3D group name. Tip The starting index of the 3D group name surfix is by default 0, it can be specified by another attribute startingIndex.
grpAlien=type:Group3D, number:100, container:sceneGame, model:models/alien.3DS grpUfo[50]=type:Group3D, container:sceneGame, model:models/ufo.OBJ
Specifies the starting index when numbers of 3D groups are created by attribute number. Note This attribute has no effect when only a single 3D group is created by a property line. Note If this attribute is not specified, then the starting index of the 3D group name is 0.
grpAlien=type:Group3D, number:100, startingIndex:5, container:sceneGame, model:models/alien.3DS grpUfo[50]=type:Group3D, startingIndex:1, container:sceneGame, model:models/ufo.OBJ
The 3D position of the target Group3D , defined in the world coordinate system and specified by complex value with three float vaues. See Group3D::matrix
pos:(float x; float y; float z)
grpJetFighterF15 = type:Group3D, container:sceneGame, model:models/F_15.3DS, pos:(-200.f; 1000.f; 0.f)
The radius of the bounding sphere of the target Group3D , specified by a float values. This attribute work together with attributes wantedObjectsWhenNormalize or unwantedObjectsWhenNormalize to finally determine the 3D group's size. See Group3D::radius
wantedObjectsWhenNormalize
unwantedObjectsWhenNormalize
radius:float
radius:200.f
1.f
The list of names of all wanted Object3D when the target Group3D is loaded and normalized to the desired size (radius) , specified by a string contains space-separated object names. This attribute work together with attribute radius to finally determine the 3D group's size, see OGAssetWarehouse::getModel() for more details. Caution This attribute should be mutually exclusive with attribute unwantedObjectNames and it has higher priority over the other.
radius
unwantedObjectNames
wantedObjectsWhenNormalize:string
grpHouse = type:Group3D, container:scene3D, model:Model/House.3DS, radius:50.f, wantedObjectsWhenNormalize:MainBuilding FrontYard BackYard
wantedObjectsWhenNormalize:MainBuilding FrontYard BackYard
The list of names of all unwanted Object3D when the target Group3D is loaded and normalized to the desired size (radius) , specified by a string contains space-separated object names. This attribute work together with attribute radius to finally determine the 3D group's size, see OGAssetWarehouse::getModel() for more details. Caution This attribute should be mutually exclusive with attribute wantedObjectNames and it has lower priority over the other.
wantedObjectNames
unwantedObjectsWhenNormalize:string
grpHouse = type:Group3D, container:scene3D, model:Model/House.3DS, radius:50.f, unwantedObjectsWhenNormalize:SwimmingPool Driveway
unwantedObjectsWhenNormalize:SwimmingPool Driveway
The rendering detail level that controls how many rendering features are supported, must be one of 3D material constants. See Material3D::RENDERING_DETAIL_LEVEL See Material3D::detailLevel
detailLevel:3D material constants
grpHouse = type:Group3D, model:Model/House.3DS, detailLevel:HIGH_DETAIL, ...
detailLevel:HIGH_DETAIL
NORMAL_DETAIL
Sets the environmental effect capability of the target Group3D . See Group3D::setEnvEnabled()
environmentEnabled:boolean
environmentEnabled:TRUE environmentEnabled:false environmentEnabled:1 environmentEnabled:0
The billboard behavior of the target API_LINK_Group3D, must be one of 3D group billboard type constants. See Group3D::BILLBOARD_TYPE See Group3D::billboard
billboard:billboard type constants
billboard:BILLBOARD_ON_AXIS
BILLBOARD_OFF
The branch-culling policy of the target API_LINK_Group3D, must be one of 3D group culling policy constants. See Group3D::CLIPPING_POLICY See Group3D::cullingPolicy
cullingPolicy:culling policy constants
cullingPolicy:CULLING_ON_OBJECT
CULLING_ON_GROUP
Chip3D dedicated:
The relative width of the target Chip3D , specified by an integer value and the default value is 1. The final width of the Chip3D is determined by this attribute and attribute radius together with formula width*radius. Caution This attribute has no effect if the 3D group is not a Chip3D . See Chip3D constructor .
width*radius
width:integer
width:200
The relative height of the target Chip3D , specified by an integer value and the default value is 1. The final height of the Chip3D is determined by this attribute and attribute radius together with formula height*radius. Caution This attribute has no effect if the 3D group is not a Chip3D . See Chip3D constructor .
height*radius
height:integer
height:200
The orientation of the target Chip3D , must be one of 3D Chip orientation constants. Caution This attribute has no effect if the 3D group is not a Chip3D . See Chip3D constructor . See Chip3D::CHIP_ORIENTATION
orientation:Chip orientation constants
orientation:CHIP_ORIENTATION_X
CHIP_ORIENTATION_Z
A Texture assigned to the target Chip3D as its texture map, specified by a texture asset path or a texture object defined by another property. Caution The texture size must meet the "power-of-2" requirement. Caution The texture size must be same as the opacity map specified by attribute alpha. See Chip3D constructor .
alpha
texture:asset texture:property
gemstone[10] = type:Chip3D, container:scene3D, radius:0.2f, texture:gem.gif, alpha:gem.gif
texture:gem.gif
A Texture assigned to the target Chip3D as its opacity map, specified by a texture asset path or a texture object defined by another property. Caution The texture size must meet the "power-of-2" requirement. Caution The texture size must be same as the texture map specified by attribute texture. See Chip3D constructor .
alpha:asset alpha:property
alpha:gem.gif
Sets whether to horizontally mirror the texture of the target Chip3D . See Chip3D constructor .
mirror:TRUE mirror:FALSE mirror:1 mirror:0
gemstone[10] = type:Chip3D, ..., mirror:TRUE
mirror:TRUE
Box3D dedicated:
The relative width of the target Box3D , specified by an integer value and the default value is 1. The final width of the Box3D is determined by this attribute and attribute radius together with formula width*radius. Caution This attribute has no effect if the 3D group is not a Box3D . See Box3D constructor .
The relative height of the target Box3D , specified by an integer value and the default value is 1. The final height of the Box3D is determined by this attribute and attribute radius together with formula height*radius. Caution This attribute has no effect if the 3D group is not a Box3D . See Box3D constructor .
The relative depth of the target Box3D , specified by an integer value and the default value is 1. The final depth of the Box3D is determined by this attribute and attribute radius together with formula depth*radius. Caution This attribute has no effect if the 3D group is not a Box3D . See Box3D constructor .
depth*radius
depth:integer
depth:200
A Texture assigned to the target Box3D as its texture map, specified by a texture asset path or a texture object defined by another property. Caution The texture size must meet the "power-of-2" requirement. Caution The texture size must be same as the opacity map specified by attribute alpha. See Box3D constructor .
gemstone[10] = type:Box3D, container:scene3D, radius:0.2f, texture:gem.gif, alpha:gem.gif
A Texture assigned to the target Box3D as its opacity map, specified by a texture asset path or a texture object defined by another property. Caution The texture size must meet the "power-of-2" requirement. Caution The texture size must be same as the texture map specified by attribute texture. See Box3D constructor .
PropName = type:Fog, (more attributes), ...
The front distance of the fog, where the fog effect starts. Specified by a integer value. See Scene3D::Fog See Scene3D::Fog::frontDistance
front:integer
Fog = type:Fog, container:biplane, front:340, back:390, color:(160; 190; 250)
front:340
100.f
The back distance of the fog, where the maximum intensity of fog effect starts. Specified by a integer value. See Scene3D::Fog See Scene3D::Fog::backDistance
back:integer
back:390
200.f
The color of the fog in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. See Scene3D::Fog See Scene3D::Fog::color
Fog = type:Fog, container:biplane, front:340, back:390, color:WHITE
color:WHITE
color:(255; 240; 220) color:LIGHTGRAY
PropName = type:Light, (more attributes), ...
The direction of the target directional light , specified by complex value with three float vaues. See Light See Light::direction
dir:(float x; float y; float z)
dirLight = type:Light, container:scene3D, dir:(0.5f; -0.5f; -0.2f), color:WHITE
dir:(0.5f; -0.5f; -0.2f)
The color of the target directional light in 24-bit R8G8B8 format, specified by complex parameters, hexadecimal value or a color constant. Note In the current version OGTemplate, attribute color set the color value for both Light::diffuse and Light::specular . See Light See Light::diffuse See Light::specular
color
PropName = type:LOD, (more attributes), ...
Sets the container Group3D of the target LOD, specified by another property that defines a Group3D . See Group3D::setLODObject() See Group3D::getLODObject()
grpJupiter = type:Group3D, container:solar, model:models/jupiter.3ds, radius:1.5f LODObjs = type:LOD, container:grpJupiter, levelNum:3, segment:10.f, model:(models/jupiter1.3DS; models/jupiter2.3DS; models/jupiter3.3DS), radius:1.5f
grpJupiter
container:grpJupiter
The number of detail level of the target LOD, should be same as the number of Group3D contained in the target LOD. See Group3D::setLODObject() See Group3D::getLODObject()
levelNum:integer
LODObjs = type:LOD, container:grpJupiter, levelNum:3, segment:10.f, model:(models/jupiter1.3DS; models/jupiter2.3DS; models/jupiter3.3DS), radius:1.5f
levelNum:3
The distance of one LOD detail segment of the target LOD. See Group3D::setLODObject() See Group3D::getLODObject()
segment:float
segment:10.f
An array of 3D models used for the target LOD, specified by a string contains numbers of 3D model asset. Note The asset value must be a valid asset path. Note The string must contain same number of 3D models as the number defined by attribute levelNum. See Group3D::setLODObject() See Group3D::getLODObject()
levelNum
model:array of 3D model asset
model:(models/jupiter1.3DS; models/jupiter2.3DS; models/jupiter3.3DS)
The radius of the bounding sphere of the target LOD objects, specified by a float values. This attribute work together with attributes wantedObjectsWhenNormalize or unwantedObjectsWhenNormalize to finally determine the LOD objects' size. See Group3D::setLODObject() See Group3D::getLODObject()
radius:1.5f
The list of names of all wanted Object3D when the target LOD objects are loaded and normalized to the desired size (radius) , specified by a string contains space-separated object names. This attribute work together with attribute radius to finally determine the LOD objects' size, see OGAssetWarehouse::getModel() for more details. Caution This attribute should be mutually exclusive with attribute unwantedObjectNames and it has higher priority over the other. See Group3D::setLODObject() See Group3D::getLODObject()
LODHouse = type:LOD, container:grpHouse, levelNum:3, segment:10.f, model:(models/house_high.3DS; models/house_medium.3DS; models/house_low.3DS), \ radius:50.f, wantedObjectsWhenNormalize:MainBuilding FrontYard BackYard
The list of names of all unwanted Object3D when the target LOD objects are loaded and normalized to the desired size (radius) , specified by a string contains space-separated object names. This attribute work together with attribute radius to finally determine the LOD objects' size, see OGAssetWarehouse::getModel() for more details. Caution This attribute should be mutually exclusive with attribute wantedObjectNames and it has lower priority over the other. See Group3D::setLODObject() See Group3D::getLODObject()
LODHouse = type:LOD, container:grpHouse, levelNum:3, segment:10.f, model:(models/house_high.3DS; models/house_medium.3DS; models/house_low.3DS), \ radius:50.f, unwantedObjectsWhenNormalize:SwimmingPool Driveway
PropName = type:ComplexParameter, (more attributes), ...
Sets the value of the target complex parameter. The value is assigned by a string and must be in extact format regarding to the usage of the target complex parameter. There are only two usages of Complex Parameter in the current version Pooka SDK®:
value:string Used as tool item definition for loading a LWToolBox: value: (
) Used as menu item definition for loading a LWMenu: value: (
menuItemType
SUBMENU
CHECKBOX
RADIOBUTTON
Used as tool item definition for loading a LWToolBox: ICON_TEXTURE = textureIconSet; textureIconSetBright toolParaNew = type:ComplexParameter, value:(New; {ICON_TEXTURE}; 160; 128; 32; 32; center; 10; 10; 0; 0) toolParaOpen = type:ComplexParameter, value:(Open; {ICON_TEXTURE}; textureIconsBright; 32; 192; 32; 32; center; 10; 10; 0; 0) toolParaSave = type:ComplexParameter, value:(Save; {ICON_TEXTURE}; textureIconsBright; 0; 96; 32; 32; center; 10; 10; 0; 0) toolParaExit = type:ComplexParameter, value:(Exit; {ICON_TEXTURE}; textureIconsBright; 192; 192; 32; 32; center; 10; 10; 0; 0) Used as menu item definition for loading a LWMenu: MENU_TEXTURE = textureIconSet; textureIconSetBright menuFile = type:ComplexParameter, value:(SUBMENU; File; {MENU_TEXTURE}; 32; 0; 32; 32; comSubmenuFile) menuEdit = type:ComplexParameter, value:(SUBMENU; Edit; {MENU_TEXTURE}; 64; 0; 32; 32; comSubmenuEdit) menuTool = type:ComplexParameter, value:(SUBMENU; Tool; {MENU_TEXTURE}; 0; 0; 32; 32; comSubmenuTool) menuNew = type:ComplexParameter, value:(ACTION; New; {MENU_TEXTURE}; 160; 128; 32; 32) menuOpen = type:ComplexParameter, value:(ACTION; Open; {MENU_TEXTURE}; 32; 192; 32; 32) menuSave = type:ComplexParameter, value:(ACTION; Save) menuClose = type:ComplexParameter, value:(ACTION; Close) menuFlatStyle = type:ComplexParameter, value:(CHECKBOX; Flat Style; NULL; NULL; -1; -1; -1; -1; FALSE) menuShineAndShade = type:ComplexParameter, value:(CHECKBOX; Shine & Shade^n; NULL; NULL; -1; -1; -1; -1; TRUE) menuThemePooka = type:ComplexParameter, value:(RADIOBUTTON; Theme Pooka; NULL; NULL; -1; -1; -1; -1; FALSE; grpThemeType) menuThemeAmber = type:ComplexParameter, value:(RADIOBUTTON; Theme Amber; NULL; NULL; -1; -1; -1; -1; FALSE; grpThemeType) menuThemeLime = type:ComplexParameter, value:(RADIOBUTTON; Theme Lime; NULL; NULL; -1; -1; -1; -1; TRUE; grpThemeType) menuThemeMauve = type:ComplexParameter, value:(RADIOBUTTON; Theme Mauve^n; NULL; NULL; -1; -1; -1; -1; FALSE; grpThemeType)
value
To load a Pooka SDK® built-in LWComponent by OGTemplate, detailed class information about the component need to be provided. The class infomration describes how the component should look like and how it behaves. The class signature consist of numbers of arguments passed in specific order, like the list-box component loaded by the following code:
In the above sample code, argument 4, VERTICAL, false, UNSORTED are passed in and each serves one parameter. Note The OGTemplate LWComponent class information consists of unnamed and sequential arguments, passed in the parenthesis ( and ). Note Loading an application-defined LWComponent by OGTemplate requires extra application-side code that overrides the OGCanvas ' virtual function OGCanvas::handleCustomLWComponentLoading() .
4
VERTICAL
UNSORTED
className:LWButton (
className:LWLabel (
className:LWCheckBoxSet (
className:LWRadioButtonGroup (
className:LWTextField (
className:LWTextArea (
className:LWPasswordField (
className:LWTextView (
className:LWImageView (
className:LWSwitch (
On
Off
className:LWSlider (
className:LWTextSlider (
className:LWScrollbar (
className:LWSpinner (
className:LWTextSpinner (
className:LWProgressBar (
className:LWColorSwatch (
className:LWTable (
className:LWTreeView (
className:LWListBox (
);
className:LWComboBox (
className:LWPropertyBox (
className:LWContentPane (
className:LWScrollPane (
className:LWSplitPane (
className:LWTeePane (
className:LWTabbedPane (
className:LWSlidingPane (
className:LWConsole (
className:LWListPane (
className:LWToolBox (
className:LWMenu (
Boolean value constants are used to be the meaningful alternative to indicate a boolean value 1 and 0. Each boolean constant is equivalent to one boolean value 1 or 0, use them properly can improve OGTemplate's readability.
Equivalent to 0 and indicates boolean false.
Equivalent to 1 and indicates boolean true.
Equivalent to 0 and indicates boolean false. Better used for Sprite 's attribute state.
state
sptButtterfly = type:Sprite, ..., state:NORMAL
state:NORMAL
Equivalent to 1 and indicates boolean true. Better used for Sprite 's attribute state.
sptButtterfly = type:Sprite, ..., state:ACTIVE
state:ACTIVE
Equivalent to 0 and indicates boolean false. Better used for editbox Sprite 's attribute state.
detailLevel = type:CheckboxGroup, selected:2 chkDetailLevelLow = type:Sprite, ..., state:UNCHECKED, pos:(5;85), text:^spLow chkDetailLevelParticle = type:Sprite, ..., state:UNCHECKED, pos:(40;85), text:^spParticle chkDetailLevelNormal = type:Sprite, ..., state:CHECKED, pos:(5;95), text:^spNormal chkDetailLevelHigh = type:Sprite, ..., state:UNCHECKED, pos:(40;95), text:^spHigh chkDetailLevelMax = type:Sprite, ..., state:UNCHECKED, pos:(5;105), text:^spMax
state:UNCHECKED
state:CHECKED
Equivalent to 1 and indicates boolean true. Better used for editbox Sprite 's attribute state.
Make the target Scene or Sprite centered in the container OGCanvas or SceneSprite
The width of the VirtualDevice in points1. See Pooka::Core::MiniAWT::VirtualDevice::screenWidth.
The height of the VirtualDevice in points1. See Pooka::Core::MiniAWT::VirtualDevice::screenHeight.
The shorter side's length of the VirtualDevice in points1. See Pooka::Core::MiniAWT::VirtualDevice::screenShortSide.
The longer side's length of the VirtualDevice in points1. See Pooka::Core::MiniAWT::VirtualDevice::screenLongSide.
Constants define the common color values, same as the constants defined in Color class.
clear, used for elements (such as background) that neede complete transparency
Black (#000000)
Black (#FFFFFF)
Light Gray (#C0C0C0)
Gray (#808080)
Dark Gray (#404040)
Red (#FF0000)
Green (#00FF00)
Blue (#0000FF)
Yellow (#FFFF00)
Magenta (#FF00FF)
Cyan (#00FFFF)
Dark Red (#800000)
Dark Green (#008000)
Dark Blue (#000080)
Dark Yellow (#808000)
Dark Magenta (#800080)
Dark Cyan (#008080)
Light Red (#FF8080)
Light Green (#80FF80)
Light Blue (#8080FF)
Light Yellow (#FFFF80)
Light Magenta (#FF80FF)
Light Cyan (#80FFFF)
Constants define the relative positioning mode, used in attributes posByRef.
Indicates the target's (Scene or Sprite ) relative position is centered to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_CENTER and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is horizontally centered to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_H_CENTER and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is vertically centered to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_V_CENTER and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is left-aligned to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_LEFT and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is right-aligned to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_RIGHT and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is top-aligned to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_TOP and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is bottom-aligned to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_BOTTOM and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is left-top-aligned to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_LEFTTOP and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is right-top-aligned to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_RIGHTTOP and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is left-bottom-aligned to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_LEFTBOTTOM and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is right-bottom-aligned to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_RIGHTBOTTOM and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is left-aligned and horizontally centered to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_LEFTCENTER and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is right-aligned and horizontally centered to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_RIGHTCENTER and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is top-aligned and vertically centered to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_TOPCENTER and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Indicates the target's (Scene or Sprite ) relative position is bottom-aligned and vertically centered to the specified reference (OGCanvas , Scene or Sprite ). See Scene::RELATIVE_POS_BOTTOMCENTER and functions Scene::setPositionByRef() / Sprite::setPositionByRef()
Constants define the relative sizing mode, used in attributes sizeByRef.
Indicates the target's (Scene or Sprite ) relative size is measured by the specified reference's (OGCanvas , Scene or Sprite ) size and a margin thickness, all in points1. See Scene::RELATIVE_SIZE_BY_PIXEL and functions Scene::setSizeByRef() / Sprite::setSizeByRef()
Indicates the target's (Scene or Sprite ) relative size is measured by the specified reference's (OGCanvas , Scene or Sprite ) size and a margin thickness, all in percents. See Scene::RELATIVE_SIZE_BY_PERCENTAGE and functions Scene::setSizeByRef() / Sprite::setSizeByRef()
Constants define the reference when doing relative positioning or sizing, used in attributes posByRef or sizeByRef.
Designate an OGCanvas as the reference when assigning relative size or position of a Scene or Sprite . See Scene::RELATIVE_TO_CANVAS and functions Scene::setSizeByRef() / Sprite::setSizeByRef() / Scene::setPositionByRef() / Sprite::setPositionByRef()
Designate an Scene as the reference when assigning relative size or position of a Scene or Sprite . See Scene::RELATIVE_TO_SCENE and functions Scene::setSizeByRef() / Sprite::setSizeByRef() / Scene::setPositionByRef() / Sprite::setPositionByRef()
Designate an Sprite as the reference when assigning relative size or position of a Scene or Sprite . See Scene::RELATIVE_TO_SPRITE and functions Scene::setSizeByRef() / Sprite::setSizeByRef() / Scene::setPositionByRef() / Sprite::setPositionByRef()
Constants define the keyboard navigation mode of SceneSprite , used in attribute navigationMode.
navigationMode
Constant indicates disabled keyboard navigation (keyboard navigation is unavailable). See SceneSprite::NAVIGATION_DISABLED
Constant indicates the index based keyboard navigation mode. See SceneSprite::NAVIGATION_INDEXENTRY
Constant indicates the tab based keyboard navigation mode. See SceneSprite::NAVIGATION_TAB
Constants define the TAB navigation method of SceneSprite , used in attribute tabMethod.
tabMethod
This direction-mode makes Tab navigation performed by clicking Tab key or Shift+Tab. See SceneSprite::TAB_NAVIGATION
Tab
Shift
This direction-mode performs Tab navigation by clicking four-way direction keys (Left, Right, Up, Down) and Enter key. See SceneSprite::FOUR_WAY_NAVIGATION
Left
Right
Up
Down
Enter
This direction-mode performs Tab navigation by clicking horizontal direction keys (Left, Right) and Enter key. See SceneSprite::X_NAVIGATION
This direction-mode performs Tab navigation by clicking vertical direction keys (Up, Down) and Enter key. See SceneSprite::Y_NAVIGATION
Constants define the anchor type or alignment type in Sprite , used in attributes anchorPoint and textureAlignment.
anchorPoint
textureAlignment
Indicates the anchor point is at the left-top corner of the Sprite's bounding box. See Sprite::POSITION_ANCHORPOINT_TYPE
Indicates the anchor point is at the right-top corner of the Sprite's bounding box. See Sprite::POSITION_ANCHORPOINT_TYPE
Indicates the anchor point is at the left-bottom corner of the Sprite's bounding box. See Sprite::POSITION_ANCHORPOINT_TYPE
Indicates the anchor point is at the right-bottom corner of the Sprite's bounding box. See Sprite::POSITION_ANCHORPOINT_TYPE
Indicates the anchor point is at the top-side-center of the Sprite's bounding box. See Sprite::POSITION_ANCHORPOINT_TYPE
Indicates the anchor point is at the bottom-side-center of the Sprite's bounding box. See Sprite::POSITION_ANCHORPOINT_TYPE
Indicates the anchor point is at the left-side-center of the Sprite's bounding box. See Sprite::POSITION_ANCHORPOINT_TYPE
Indicates the anchor point is at the right-side-center of the Sprite's bounding box. See Sprite::POSITION_ANCHORPOINT_TYPE
Indicates the anchor point is at the center of the Sprite's bounding box. See Sprite::POSITION_ANCHORPOINT_TYPE
Constants define the frame bevel of a Sprite , used in attributes frameBevel and `frameBevelBright.
frameBevel
frameBevelBright
No frame bevel. See GraphicsEngine::FRAME_BEVEL_TYPE
The raised frame bevel. See GraphicsEngine::FRAME_BEVEL_TYPE
The sunken frame bevel. See GraphicsEngine::FRAME_BEVEL_TYPE
The ridge frame bevel. See GraphicsEngine::FRAME_BEVEL_TYPE
The groove frame bevel. See GraphicsEngine::FRAME_BEVEL_TYPE
Constants define the horizontal text alignment of a Sprite , used in attribute textAlignment.
Text horizontal left-aligned mode. See Sprite::ALIGN_LEFT
Text horizontal center-aligned mode. See Sprite::ALIGN_CENTER
Text horizontal right-aligned mode. See Sprite::ALIGN_RIGHT
Constants define the vertical text alignment of a Sprite , used in attribute textVAlignment.
Text vertical top-aligned mode. See Sprite::ALIGN_V_TOP
Text vertical middle-aligned mode. See Sprite::ALIGN_V_MIDDLE
Text vertical bottom-aligned mode. See Sprite::ALIGN_V_BOTTOM
Constants define the token type of a Sprite , used in attribute tokenType.
Leftwards triangle token. See TokenSprite::TOKEN_TRIANGLE_LEFT
Rightwards triangle token. See TokenSprite::TOKEN_TRIANGLE_RIGHT
Upwards triangle token. See TokenSprite::TOKEN_TRIANGLE_UP
Downwards triangle token. See TokenSprite::TOKEN_TRIANGLE_DOWN
Leftwards arrow token. See TokenSprite::TOKEN_ARROW_LEFT
Rightwards arrow token. See TokenSprite::TOKEN_ARROW_RIGHT
Upwards arrow token. See TokenSprite::TOKEN_ARROW_UP
Downwards arrow token. See TokenSprite::TOKEN_ARROW_DOWN
Horizontal cursor token. See TokenSprite::TOKEN_H_CURSOR
Vertical cursor token. See TokenSprite::TOKEN_V_CURSOR
Symbol dot token. See TokenSprite::TOKEN_DOT
Symbol box token. See TokenSprite::TOKEN_BOX
Symbol hollow box token. See TokenSprite::TOKEN_HOLLOW_BOX
Symbol "X" token. See TokenSprite::TOKEN_X
Symbol "info" token. See TokenSprite::TOKEN_INFO
Symbol "!" token. See TokenSprite::TOKEN_EXCLAMATION
Check mark token. See TokenSprite::TOKEN_CHECK
Folded (collapsed) node token. See TokenSprite::TOKEN_NODE_FOLDED
Expanded node token. See TokenSprite::TOKEN_NODE_EXPANDED
Check box token. See TokenSprite::TOKEN_CHECKBOX
Radio button token. See TokenSprite::TOKEN_RADIOBUTTON
Simplified check box token. See TokenSprite::TOKEN_CHECKBOX_SIMPLE
Simplified radio button token. See TokenSprite::TOKEN_RADIOBUTTON_SIMPLE
Symbol "..." token. See TokenSprite::TOKEN_ELLIPSIS
Symbol "+" token. See TokenSprite::TOKEN_PLUS
Symbol "-" token. See TokenSprite::TOKEN_MINUS
Constants define the GUI (graphical user interface) type of a Sprite , used in attribute GUIType.
static content such as text, picture, information, etc. See Sprite::GUI_STATIC
static content such as text, picture, information, etc. See Sprite::GUI_BUTTON
static content such as text, picture, information, etc. See Sprite::GUI_CHECKBOX
static content such as text, picture, information, etc. See Sprite::GUI_HYPERLINK
static content such as text, picture, information, etc. See Sprite::GUI_TIPLINK
static content such as text, picture, information, etc. See Sprite::GUI_EDITBOX
static content such as text, picture, information, etc. See Sprite::GUI_LWCOMPONENT
This constant is translated into the loading referral URL, which is the full OGTemplate asset path who is considered the referral to the current OGTemplate. When application user clicks a hyper-link Sprite with attribute href set by constant REFERRAL, the previous OGTemplate who loads the current OGTemplate will be opened. See OGCanvas::loadTemplate
href
REFERRAL
btnBack=type:Sprite, GUIType:HYPERLINK, href:REFERRAL, container:SceneGUI, ...
href:REFERRAL
Constants define the input type of an editbox Sprite , used in attribute inputType.
inputType
Indicates the editbox accepts natural numbers, including number 0. See Sprite::EDITBOX_NATURAL_NUMBER
Indicates the editbox accepts [whole numbers] (positive integer)](https://en.wikipedia.org/wiki/List_of_types_of_numbers). See Sprite::EDITBOX_WHOLE_NUMBER
Indicates the sprite-editbox accepts integer. See Sprite::EDITBOX_INTEGER
Indicates the sprite-editbox accepts real numbers. See Sprite::EDITBOX_REAL_NUMBER
Indicates the sprite-editbox accepts POSIX/C Alphanumeric characters. See Sprite::EDITBOX_ALPHANUMERIC
Indicates the sprite-editbox accepts any characters. See Sprite::EDITBOX_ANYTHING
Constants define the theme type of a Sprite . See "Un-themed Sprite vs Themed Sprite" in class Sprite for more details.
Theme type makes sprite rendered without theme. See SpriteTheme::THEME_GUI_UNTHEMED
Theme type makes sprite rendered like a static UI element. See SpriteTheme::THEME_GUI_STATIC
Theme type makes sprite rendered like a label. See SpriteTheme::THEME_GUI_LABEL
Theme type makes sprite rendered like a button. See SpriteTheme::THEME_GUI_BUTTON
Theme type makes sprite rendered like a push-button. See SpriteTheme::THEME_GUI_PUSHBUTTON
Theme type makes sprite rendered like a hyper-link. See SpriteTheme::THEME_GUI_HYPERLINK
Theme type makes sprite rendered like a edit-box. See SpriteTheme::THEME_GUI_EDITBOX
Theme type makes sprite rendered like a check-box. See SpriteTheme::THEME_GUI_CHECKBOX
Theme type makes sprite rendered like a radio-button. See SpriteTheme::THEME_GUI_RADIOBUTTON
Theme type makes sprite rendered like a static track. See SpriteTheme::THEME_GUI_TRACK
Theme type makes sprite rendered like a static bar. See SpriteTheme::THEME_GUI_BAR
Theme type makes sprite rendered like a table header. See SpriteTheme::THEME_GUI_TABLEHEADER
Theme type makes sprite rendered like a table cell. See SpriteTheme::THEME_GUI_TABLECELL
Theme type makes sprite rendered like a generic list item element. See SpriteTheme::THEME_GUI_LISTITEM
Theme type makes sprite rendered like a generic background element. See SpriteTheme::THEME_GUI_BACKGROUND
Theme type makes sprite rendered like a generic frame element. See SpriteTheme::THEME_GUI_FRAME
Constants define special keyboard navigation index. See SceneSprite::KEYBOARD_NAVIGATION_MODE
One of the special keyboard navigation indices. When application user clicks the key LEFT , the target sprite will be virtually clicked. See Sprite::setNavigationIndex()
One of the special keyboard navigation indices. When application user clicks the key RIGHT , the target sprite will be virtually clicked. See Sprite::setNavigationIndex()
One of the special keyboard navigation indices. When application user clicks the key UP , the target sprite will be virtually clicked. See Sprite::setNavigationIndex()
One of the special keyboard navigation indices. When application user clicks the key DOWN , the target sprite will be virtually clicked. See Sprite::setNavigationIndex()
One of the special keyboard navigation indices. When application user clicks the key ENTER , the target sprite will be virtually clicked. See Sprite::setNavigationIndex()
Constants define 3D material rendering detail level. See Material3D::RENDERING_DETAIL_LEVEL See Material3D::detailLevel
A low detail level. See Material3D::LOW_DETAIL
A particle detail level. See Material3D::PARTICLE_DETAIL
A normal detail level. See Material3D::NORMAL_DETAIL
A high detail level. See Material3D::HIGH_DETAIL
A maximum detail level. See Material3D::MAX_DETAIL
Constants define 3D group billboard types. See Group3D::BILLBOARD_TYPE See Group3D::billboard
No billboard behavior. See Group3D::BILLBOARD_OFF
Billboard behavior is performed along Y axis. This type of billboarding is usually used to create roughly symmetric objects such as trees. See Group3D::BILLBOARD_ON_AXIS
billboard behavior is performed on object's center point. This type of billboarding is usually used to create particle-like objects. See Group3D::BILLBOARD_ON_POINT
Constants define branch-culling policies. See Group3D::CLIPPING_POLICY See Group3D::cullingPolicy
No branch-culling. See Group3D::CULLING_OFF
Branch-culling is applied on every Group3D contained in Scene3D . See Group3D::CULLING_ON_GROUP
Branch-culling is applied on every Object3D contained in Scene3D . See Group3D::CULLING_ON_OBJECT
Constants define 3D Chip orientation types. See Chip3D::CHIP_ORIENTATION
Constant indicates the Chip3D is coplanar with Y-Z plane, i.e., orthogonal to X axis. See Chip3D::CHIP_ORIENT_X
Constant indicates the Chip3D is coplanar with X-Z plane, i.e., orthogonal to Y axis. See Chip3D::CHIP_ORIENT_Y
Constant indicates the Chip3D is coplanar with X-Y plane, i.e., orthogonal to Z axis. See Chip3D::CHIP_ORIENT_Z
Constant indicates the component layout suitable for size with horizontal orientation. See LWComponent::LAYOUT_HORIZONTAL
Constant indicates the component layout suitable for size with vertical orientation. See LWComponent::LAYOUT_VERTICAL
Constant indicates the component layout favorable for tiny size. See LWComponent::LAYOUT_COMPACT
Constant indicates the target LWLabel has clear background. See LWLabel::BACKGROUND_CLEAR
Constant indicates the target LWLabel has solid-color background with raised frame bevel. See LWLabel::BACKGROUND_RAISED
Constant indicates the target LWLabel has solid-color background with sunken frame bevel. See LWLabel::BACKGROUND_SUNKEN
Constant indicates the target LWLabel has clear background. See LWListBox::ITEM_UNSORTED
Constant indicates the target LWLabel has solid-color background with raised frame bevel. See LWListBox::ITEM_ASCENDING_SORT
Constant indicates the target LWLabel has solid-color background with sunken frame bevel. See LWListBox::ITEM_DESCENDING_SORT
Constant indicates the component expands leftward or upward, depends on the component's layout direction. See LWComponent::EXPAND_LEFT_UP
Constant indicates the component expands rightward or downward, depends on the component's layout direction. See LWComponent::EXPAND_RIGHT_DOWN
Indicates the combo-box's text-box is only used for expanding the drop-down list-box. See LWComboBox::TEXTBOX_USAGE_EXPAND_LIST
Indicates the combo-box's text-box can also be used for adding a new list item besides expanding the drop-down list-box. See LWComboBox::TEXTBOX_USAGE_ADD_ITEM
Indicates the combo-box's text-box can also be used for filtering the list items besides expanding the drop-down list-box. See LWComboBox::TEXTBOX_USAGE_FILTER_LIST
Indicates that the LWScrollPane has both horizontal and vertical scroll bars. See LWScrollPane::SCROLLBAR_ALL
Indicates that the LWScrollPane only has vertical scroll bar. See LWScrollPane::SCROLLBAR_VERTICAL_ONLY
Indicates that the LWScrollPane only has horizontal scroll bar. See LWScrollPane::SCROLLBAR_HORIZONTAL_ONLY
Indicates that the LWScrollPane only has no scroll bars. See LWScrollPane::SCROLLBAR_NONE
Each of sub-panes takes the whole component space. When the divider is moved by application user, two sub-panes are moved together, one pane is slided in, while the other is slided out. See LWSplitPane::PANE_FIXEDSIZE_SLIDING
Each of sub-panes takes the whole component space. When the divider is moved by application user, one sub-pane overlap over the other sub-pane. See LWSplitPane::PANE_FIXEDSIZE_OVERLAPPING
Tow sub-panes share the whole component space. The space used by one sub-pane is determined by the divider, when the divider is moved by application user, one sub-pane size is got expanded and the other is got squeezed. See LWSplitPane::PANE_VARIABLESIZE
Generic paging style See LWSlidingPane::PAGING_GENERIC
Home-screen style paging See LWSlidingPane::PAGING_HOMESCREEN
Electronic-book style paging See LWSlidingPane::PAGING_EBOOK
Electronic-document style paging See LWSlidingPane::PAGING_DOCUMENT
Programmatic paging style, which request coding to turn page See LWSlidingPane::PAGING_PROGRAMMATIC
Items are used as command entries, once clicked, the corresponding command will be executed. See LWListPane::ITEM_USED_AS_ENTRY
Items are used for selection. The selection can be either multi-choice selection or single-choice selection, depends on how user selects an item. See LWListPane::ITEM_USED_AS_SELECTION
Items are used for multi-choice selection. See LWListPane::ITEM_USED_AS_MULTIPLE_CHOICE
Items are used for single-choice selection. See LWListPane::ITEM_USED_AS_SINGLE_CHOICE
The main menu of an application. See LWMenu::TYPE_MAIN_MENU
The context menu, usually (but not required) brought out by right-click or long-press pointing device. See LWMenu::TYPE_CONTEXT_MENU
The sub-menu owned by a parent menu and triggered by a menu item in its parent menu. See LWMenu::TYPE_SUB_MENU
The menu item is used to trigger an application-defined action.
The menu item is used to show up a sub-menu.
The menu item is used as a check-box.
The menu item is used as a radio button, which belongs to a radio button group.
1 - When specify measurement related properties (position, size, thickness, font size, etc.) in OGTemplate, the unit is point; When specify these properties directly by class property in source code, the unit is pixel. See pixels and points in Developer Guide for more details. For example, the following property line set the text font size of a sprite at 16 point, see textSize:16 in the code snippet.
textSize:16
The sprite created by the OGTemplate may have its font size set to 16 pixels, 24 pixels, 32 pixels or any other numbers, depends on the real device's display size.
2 - When specify measurement in Bitmap coordinate system, the unit is pixel. See pixels and points in Developer Guide for more details.