top

CAPH.WUI.WIDGET.BOX

Box represents a widget with a rectangular region. It is a subclass of View.
 - This widget often be used as a container. A user can paint widget in this object.
 - The main APIs of Box are 'setSize', 'setHeight', 'setWidth' and 'getSize'.
 - A user can change the size of the widget by its APIs.
 - A customizable rectangular widget could inherit from this widget.


Constructor

Box

Description
The constructor of box component, in order to create box object.
Parameters
options ObjectThe Object is a set of properties for the widget. Widget will be changed when these properties are set with setOptions method, refer to view for more detail
Emulator SupportY
SDK ConstraintNone
Example
var Box  = caph.wui.widget.Box;  
var options = {
 id:'testID',   
 name:'testName', 
 cls:'testCls',  
 frame:{
     width:100,
     height:100
  }
 };
var box = new Box(options);

Methods

clone

Description
Creates and returns clone object from current object, the cloned object will have the same properties and same methods with the current object.
Parameters
■Void
Return■Object
  - The cloned object.
Emulator SupportY
SDK Constraintnone
Example
var Box  = caph.wui.widget.Box;  
var box = new Box(); 
var obj = box.clone();

getSize

Description
Return the width and height of box, if user doesn't set the size of box, it will return {'width':0,'height ':0}.
Parameters
■Void
Return■size
  - Object
  - The size of box with width and height, their units are pixel(px). e.g. (width:100, height:100).
Emulator SupportY
SDK Constraintnone
Example
var Box  = caph.wui.widget.Box;  
var box = new Box(); 
var size = box.getSize();

setOptions

Description
Sets some properties of the widget that are in the constructor method. The widget will be changed when these properties are set. For example, if width property is set, the width of widget will changed.
Parameters
■options (Optional)
  - Object
  - id : (Number) The id of widget.       
  - name : (String) The name of widget
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var Box  = caph.wui.widget.Box;

var widget = new Box();
var options = {
 id:'testID',   
 name:'testName', 
 cls:'testCls',  
 frame:{
     width:100,
     height:100
  }
 };
widget.setOptions(options);

setSize

Description
Set the size of box, the width and height of box will be changed after user invokes the function.
Parameters
■width
  - Number
  - The width of box, the unit is pixel(px), if null or negative, the value will be ignore, e.g. 300.       

■height
  - Number
 - The height of box, the unit is pixel(px), if null or negative, the value will be ignore, e.g
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var Box  = caph.wui.widget.Box;
var box = new Box();  
box.setSize(300, 600);

setHeight

Description
Set the height of box, the height of box will be changed after user invokes the function.
Parameters
■height
  - Number
  - pixel : The height of box, the unit is pixel(px), if null or negative, the value will be ignore, e.g. 100.
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var Box  = caph.wui.widget.Box;
var box = new Box();
box.setHeight(300);

setWidth

Description
Set the width of box, the width of box will be changed after user invokes the function.
Parameters
■width
  - Number
  - The width of box, the unit is pixel(px), if null or negative, the value will be ignore, e.g. 300.
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var Box  = caph.wui.widget.Box;
var box = new Box();
box.setWidth(300);

equals

Description
Compares the contents of two objects using strict equality, objects are considered equal if they both have the same set of properties and the values of those properties are equal.
Parameters
■Object
  - Object
  - The object which wants to compare with current object.
Return■Boolean
  - Indicates whether the two objects are equal 
  -  true : if they are equal, return true. 
  - false : if they aren't equal, return false.
Emulator SupportY
SDK Constraintnone
Example
var Box = caph.wui.widget.Box;
var box =new Box();
var obj = box.clone();
var isequal = obj.equals(box);

setAbsolutePosition

Description
Sets absolute position of widget in the screen, x,y value of the top and left of the screen is (0,1).
Parameters
■x
  -Number
  - The x coordinate, can be a percentage or a number ,like 50% or 500,50% means 50% of the screen, the unit is pixel.      
■y
  - Number
  - The y coordinate, can be a percentage or a number ,like 50% or 500,50% means 50% of the screen, the unit is pixel
■z
  - Number
  - The y coordinate, can be a percentage or a number ,like 50% or 500,50% means 50% of the screen, the unit is pixel
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();


box.setAbsolutePosition(info.x, info.y, info.z);  //call the view setAbsolutePosition method

getDomEl

Description
Returns the DOM element of the widget, note that the dom node to be found actually needs to exist (be rendered and etc).
Parameters
■Void
Return■DOM
  - A document element
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();

var dom = widget.getDomEl();  //call the view getDomEl method

blur

Description
Blurs the view object, to make the view object lose focus. And if the widget has registered blur listeners, it will be invoked.
Parameters
■Void
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();

widget.blur();  //call the view blur method

focus

Description
Focuses the view object, to make the view object receive focus. And if the widget has registered focus listeners, it will be invoked.
Parameters
■Void
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();

widget.focus();  //call the view focus method

setCenterPosition

Description
Sets center position of the widget in the parent widget, include x,y,z coordinate. x,y value of the top and left of the parent widget is (0,1).
Parameters
■x
  - Number
  - The x coordinate of 3D object, the unit is pixels.       
■y
  - Number
  - The y coordinate of 3D object, the unit is pixels.       
■z
  - Number
  - The z coordinate defines the order of overlap widgets, if z is too big, the widget will display above.
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();

widget.setCenterPosition (info.x, info.y, info.z);

destroy

Description
Destroys the widget itself, the widget will disappear.
Parameters
■Void
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();

widget.setCenterPosition (info.x, info.y, info.z);
widget.render(uicontext);
widget.destroy();  //call the view destroy method

setPosition

Description
Sets top and left position of widget in the parent widget.
Parameters
■x
  - Number
  - The x coordinate, can be a percentage or a number ,like 50% or 500,50% means 50% of the screen, the unit is pixel.       
■y
  - Number
  - The y coordinate, can be a percentage or a number ,like 50% or 500,50% means 50% of the screen, the unit is pixel   
■z
  - Number
  - The z coordinate, can be a percentage or a number ,like 50% or 500,50% means 50% of the screen, the unit is pixel
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();

widget.setPosition (info.x, info.y, info.z);

addEventListener

Description
Appends an event handler to the widget.
Parameters
■type
  - String
  - Listener type of event, including {'onfocus', 'onblur', 'onkeydown'.
'onfocus'- the type of function will be called when the widget is focused.
'onblur'- the type of function will be called when the widget is blurred.
'onkeydown'  - the type of fun}
■function
  - Function
  - the callback to add
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);

widget.addEventListener('resize', function(){  //listen the resize event
           //console.log(widget.id + ' >>>>>>>>>>>>>>>>>>>>> resized');
});

click

Description
Clicks the view object, to make the view object selected. And if the widget has registered click listeners, it will be invoked.
Parameters
■Void
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);

widget.click();  //call the view click method

removeEventListener

Description
Removes all listeners according the type and event.
Parameters
■type
  - String
  - Listener type of event, including {'onfocus', 'onblur', 'onkeydown'.
'onfocus'- the type of function will be called when the widget is focused.
'onblur'- the type of function will be called when the widget is blurred.
'onkeydown'  - the type of fun}
■func
  - Function
  - The callback to remove
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);

widget.removeEventListener('click', function(){  //listen the remove event
});

getChildNodes

Description
Returns child nodes of current widget, child nodes are those widgets rendered on the current widget.
Parameters
■Void
Return■Array
  - The child nodes list.
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
var childList = widget.getChildNodes();

getCType

Description
Returns the type of the widget, every widget have different ctype, it is identification of widget.
Parameters
■Void
Return■String
  - CType is widget or animation type, including 'BasicObject','view','UIContext','button', 'box','label','radio','spinner',        'navigator','panel','carousel','colortag','image','checkbox','gridwidget',       'popup','progressbar','dropdown','indicator','highlighthelper','coverflow',    'listwidget','book','domcontainer','imagegallery','sidebar','fade','transfer','rotate','scale','bounce','flip','syncanim','advancedbox'."
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
var ctype = widget.getCtype();

getParentNode

Description
Returns parent node of current widget, parent node is the widget which the current widget will render on it.
Parameters
■Void
Return■Array
  - The parent node.
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
var parentList = widget.getParentNodes();

getCenterPosition

Description
Returns center position of the widget in the parent widget, include x,y,z coordinate. x,y value of the top and left of the parent widget is (0,1).
Parameters
■Void
Return■Object
  - Position object, including x, y, z value.                           
   * x : (Number) The x coordinate of 3D object, the unit is pixels.       
   * y : (Number) The y coordinate of 3D object, the unit is pixels.       
   * z : (Number) The z coordinate defines the order of overlap widgets, if z is too big, the widget will display above. e.g. 0, 1, 2 and etc.
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
var pos = widget.getCenterPosition()

getRotation

Description
Returns widget rotation property.
Parameters
■Void
Return■Object
  - Position object, including x, y, z value.                        
  - The x coordinate for rotate position of the view.  
  - The y coordinate for rotate position of the view.       
  - The z coordinate for rotate position of the view.
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
var rot = widget.getRotation();

addCls

Description
Adds specified css class for current widget, when css is added successfully, new style will apply on the widget.
Parameters
■cls
  - String
  - The class name for the current widget.
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.addCls('myview');

removeCls

Description
Removes specific css class from current widget, when css is removed successfully, the specified css style will be removed from the widget.
Parameters
■cls
  - String
  - The class name for the current widget.
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.addCls('myview');
widget.removeCls('myview');

hide

Description
Hides widget to make it invisible on the screen, registered listeners for this are invoked, if duration is greater than 1 , that is there exists a fade animation, registed listeners will be invoked during the animation.
Parameters
■duration (Optional)
  - Number
  - (ms)If duration is greater than 0, view will have a fade animation to hide itself, the unit is milliseconds.
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.hide();

show

Description
Shows the widget to make it visible on the screen, registed listeners for this are invoked, if duration is greater than 0, that is there exists a fade animation, registed listeners will be invoked during the animation.
Parameters
■duration (Optional)
  - Number
  - (ms)  If greater than 0, view will have a fade animation to show itself, the unit is millisconds.
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.hide();
widget.show();

disable

Description
Disables widget, to make widget not be able to be operated by user.
Parameters
■Void
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.hide();
widget.show();
widget.disable();

enable

Description
Enables widget, to make widget be able to be operated by user.
Parameters
■Void
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.hide();
widget.show();
widget.enable();

render

Description
Renders the current widget to parent widget. Specify an existing widget that this widget will be rendered into. Widget will display in the parent widget and become a child node of the parent widget.
Parameters
■object
  - Json object 
  - An existing widget that this widget will be rendered on.
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.render(uicontext);

disableHighLight

Description
Removes the highlight effect on a widget, but still remain the focus effect.
Parameters
■Void
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.render(uicontext);
widget.disableHighLight();

enableHighLight

Description
Recovers the highlight effect on a widget.
Parameters
■Void
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.render(uicontext);
widget.enableHighLight();

isEnable

Description
Returns the current status of widget, return true when the widget is activated.
Parameters
■Void
Return■Boolean
  - true : if enabled
  - false : otherwise
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.render(uicontext);
widget.hide();
widget.show();
widget.disable();
widget.enable();

var rc = widget.isEnable();

isVisible

Description
Indicates whether the widget is visible or not.
Parameters
■Void
Return■Boolean
  - true : if visible
  - false : otherwise
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.render(uicontext);
widget.hide();
widget.show();
widget.disable();
widget.enable();

var rc = widget.isVisible();

getOpacity

Description
Returns opacity of the widget.
Parameters
■Void
Return■Number
  - Opacity value of the widget,range from 0.0 to 1.0. e.g. 0.5.
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.setOpacity(0.5);
var op = widget.getOpacity();

setRotation

Description
Sets rotation of widget , rotation angle of the widget will be changed.
Parameters
■x
  - Number 
  - The x coordinate for rotate position of the view.  
■y
  - Number
  - The y coordinate for rotate position of the view.       
■z
  - Number
  - The z coordinate for rotate position of the view.
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.setRotation(Math.PI/4, 0, 0);

setScale

Description
Sets widget scale value, the display width and height of widget will be changed, but the value of height and width properties will not be modified.
Parameters
■x
  - Number 
  - The x coordinate for scale position of the view.  
■y
  - Number
  - The y coordinate for scale position of the view.       
■z
  - Number
  - The z coordinate for scale position of the view.
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.setScale(0.8, 0.5, 0);

getScale

Description
Returns the scale value of the widget, including x, y, z coordinates.
Parameters
■Void
Return■Object
  - Position object, including x, y, z value.                        
   * The x coordinate for scale position of the view.  
   * The y coordinate for scale position of the view.       
   * The z coordinate for scale position of the view.
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.setScale(0.8, 0.5, 0);
var scalePosValue = widget.getScale();

getPosition

Description
Returns top and left position of widget in the parent widget, include x,y,z coordinate. x,y value of the top and left of the parent widget is (0,1).
Parameters
■Void
Return■Object
  - Position object, including x, y, z value.                        
   * x : (Number) The x coordinate of 3D object, the unit is pixels.       
   * y : (Number) The y coordinate of 3D object, the unit is pixels.       
   * z : (Number) The z coordinate defines the order of overlap widgets, if z is too big, the widget will display above. e.g. 0, 1, 2 and etc.
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget = new Box();
widget.setPosition (info.x, info.y, info.z);
var pos = widget.getPosition();

setOpacity

Description
Sets opacity of the widget.
Parameters
■opacity
  - Number
  - Opacity value of the widget, range from 0.0 to 1.0. e.g. 0.5.
Return■Void
Emulator SupportY
SDK Constraintnone
Example
var UIContext = caph.wui.widget.UIContext;
var Box  = caph.wui.widget.Box;

var info = {'x': 300, 'y': 300 ,'z':0, width:300, height:300};
var uicontext   = new UIContext();
var widget1 = new Box();
widget.setCenterPosition (info.x, info.y, info.z);
widget.setOpacity(0.5);

Box

Description
(Constructor) The constructor of box component, in order to create box object.
Parameters
■options (Optional)
  - Object
  - The Object is a set of properties for the widget. Widget will be changed when these properties are set with setOptions method, refer to  view for more detail
Return■Object
  - instance of Box
Emulator SupportY
SDK Constraintnone
Example
var Box  = caph.wui.widget.Box;  
var options = {
 id:'testID',   
 name:'testName', 
 cls:'testCls',  
 frame:{
     width:100,
     height:100
  }
 };
var box = new Box(options);