graphics.VmlGraphics Extends goog.graphics.AbstractGraphics
A Graphics implementation for drawing using VML.

Inheritance

Constructor

goog.graphics.VmlGraphics(widthheightopt_coordWidthopt_coordHeightopt_domHelper)

Parameters

width : string | number
The (non-zero) width in pixels. Strings expressing percentages of parent with (e.g. '80%') are also accepted.
height : string | number
The (non-zero) height in pixels. Strings expressing percentages of parent with (e.g. '80%') are also accepted.
opt_coordWidth : ?number=
The coordinate width - if omitted or null, defaults to same as width.
opt_coordHeight : ?number=
The coordinate height - if omitted or null, defaults to same as height.
opt_domHelper : goog.dom.DomHelper=
The DOM helper object for the document we want to render in.

Instance Methods

Public Protected Private
append_(elementopt_group)
Appends an element.
Arguments:
element : goog.graphics.Element
The element wrapper.
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
code »
clear()
Remove all drawing elements from the graphics.
code »
createDom()
Creates the DOM representation of the graphics area.
code »
createFullSizeElement_(type) !Element
Creates an element spanning the surface.
Arguments:
type : string
The type of element to create.
Returns: !Element  The created, positioned, and sized element.
code »
createGroup(opt_group) !goog.graphics.GroupElement
Create an empty group of drawing elements.
Arguments:
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: !goog.graphics.GroupElement  The newly created group.
code »
createVmlElement(tagName) !Element
Creates a VML element. Used internally and by different VML classes.
Arguments:
tagName : string
The type of element to create.
Returns: !Element  The created element.
code »
disposeInternal()
Disposes of the component by removing event handlers, detacing DOM nodes from the document body, and removing references to them.
code »
drawEllipse(cxcyrxrystrokefillopt_group) !goog.graphics.EllipseElement
Draw an ellipse.
Arguments:
cx : number
Center X coordinate.
cy : number
Center Y coordinate.
rx : number
Radius length for the x-axis.
ry : number
Radius length for the y-axis.
stroke : ?goog.graphics.Stroke
Stroke object describing the stroke.
fill : ?goog.graphics.Fill
Fill object describing the fill.
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: !goog.graphics.EllipseElement  The newly created element.
code »
drawImage(xywidthheightsrcopt_group) !goog.graphics.ImageElement
Draw an image.
Arguments:
x : number
X coordinate (left).
y : number
Y coordinate (top).
width : number
Width of image.
height : number
Height of image.
src : string
Source of the image.
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: !goog.graphics.ImageElement  The newly created element.
code »
drawPath(pathstrokefillopt_group) !goog.graphics.PathElement
Draw a path.
Arguments:
path : !goog.graphics.Path
The path object to draw.
stroke : ?goog.graphics.Stroke
Stroke object describing the stroke.
fill : ?goog.graphics.Fill
Fill object describing the fill.
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: !goog.graphics.PathElement  The newly created element.
code »
drawRect(xywidthheightstrokefillopt_group) !goog.graphics.RectElement
Draw a rectangle.
Arguments:
x : number
X coordinate (left).
y : number
Y coordinate (top).
width : number
Width of rectangle.
height : number
Height of rectangle.
stroke : ?goog.graphics.Stroke
Stroke object describing the stroke.
fill : ?goog.graphics.Fill
Fill object describing the fill.
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: !goog.graphics.RectElement  The newly created element.
code »
drawTextOnLine(textx1y1x2y2alignfontstrokefillopt_group) !goog.graphics.TextElement
Draw a text string vertically centered on a given line.
Arguments:
text : string
The text to draw.
x1 : number
X coordinate of start of line.
y1 : number
Y coordinate of start of line.
x2 : number
X coordinate of end of line.
y2 : number
Y coordinate of end of line.
align : ?string
Horizontal alignment: left (default), center, right.
font : goog.graphics.Font
Font describing the font properties.
stroke : ?goog.graphics.Stroke
Stroke object describing the stroke.
fill : ?goog.graphics.Fill
Fill object describing the fill.
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: !goog.graphics.TextElement  The newly created element.
code »
enterDocument()
No description.
code »
getPixelSize() !goog.math.Size
No description.
Returns: !goog.math.Size  Returns the number of pixels spanned by the surface.
code »
getTextWidth(textfont) number
Measure and return the width (in pixels) of a given text string. Text measurement is needed to make sure a text can fit in the allocated area. The way text length is measured is by writing it into a div that is after the visible area, measure the div width, and immediatly erase the written value.
Arguments:
text : string
The text string to measure.
font : goog.graphics.Font
The font object describing the font style.
Returns: number  The width in pixels of the text strings.
code »
getVmlElement(id) Element
Returns the VML element with the given id that is a child of this graphics object. Should be considered package private, and not used externally.
Arguments:
id : string
The element id to find.
Returns: Element  The element with the given id, or null if none is found.
code »
handleContainerResize_()
Changes the canvas element size to match the container element size.
code »
handlePropertyChange_(e)
Handle property changes on hidden ancestors.
Arguments:
e : goog.events.BrowserEvent
The browser event.
code »
removeFill(element)
Removes the fill information from a dom element.
Arguments:
element : Element
DOM element.
code »
setCoordOrigin(lefttop)
Changes the coordinate system position.
Arguments:
left : number
The coordinate system left bound.
top : number
The coordinate system top bound.
code »
setCoordSize(coordWidthcoordHeight)
Changes the coordinate size.
Arguments:
coordWidth : number
The coordinate width.
coordHeight : number
The coordinate height.
code »
setElementFill(elementfill)
Sets the fill for the given element.
Arguments:
element : goog.graphics.StrokeAndFillElement
The element wrapper.
fill : ?goog.graphics.Fill
The fill object.
code »
setElementStroke(elementstroke)
Sets the stroke for the given element.
Arguments:
element : goog.graphics.StrokeAndFillElement
The element wrapper.
stroke : ?goog.graphics.Stroke
The stroke object.
code »
setElementTransform(elementxyanglecenterXcenterY)
Set the transformation of an element.
Arguments:
element : goog.graphics.Element
The element wrapper.
x : number
The x coordinate of the translation transform.
y : number
The y coordinate of the translation transform.
angle : number
The angle of the rotation transform.
centerX : number
The horizontal center of the rotation transform.
centerY : number
The vertical center of the rotation transform.
code »
setSize(pixelWidthpixelHeight)
Change the size of the canvas.
Arguments:
pixelWidth : number
The width in pixels.
pixelHeight : number
The height in pixels.
code »
updateGraphics_()
Resets the graphics so they will display properly on IE8. Noop in older versions.
code »
createGroup(opt_group) goog.graphics.GroupElement
Create an empty group of drawing elements.
Arguments:
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: goog.graphics.GroupElement  The newly created group.
code »
createPath() !goog.graphics.Path
Use new goog.graphics.Path(). Create an empty path.
Returns: !goog.graphics.Path  The path.
code »
drawCircle(cxcyrstrokefillopt_group) goog.graphics.EllipseElement
Draw a circle
Arguments:
cx : number
Center X coordinate.
cy : number
Center Y coordinate.
r : number
Radius length.
stroke : ?goog.graphics.Stroke
Stroke object describing the stroke.
fill : ?goog.graphics.Fill
Fill object describing the fill.
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: goog.graphics.EllipseElement  The newly created element.
code »
drawEllipse(cxcyrxrystrokefillopt_group) goog.graphics.EllipseElement
Draw an ellipse
Arguments:
cx : number
Center X coordinate.
cy : number
Center Y coordinate.
rx : number
Radius length for the x-axis.
ry : number
Radius length for the y-axis.
stroke : ?goog.graphics.Stroke
Stroke object describing the stroke.
fill : ?goog.graphics.Fill
Fill object describing the fill.
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: goog.graphics.EllipseElement  The newly created element.
code »
drawPath(pathstrokefillopt_group) goog.graphics.PathElement
Draw a path.
Arguments:
path : !goog.graphics.Path
The path object to draw.
stroke : ?goog.graphics.Stroke
Stroke object describing the stroke.
fill : ?goog.graphics.Fill
Fill object describing the fill.
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: goog.graphics.PathElement  The newly created element.
code »
drawRect(xywidthheightstrokefillopt_group) goog.graphics.RectElement
Draw a rectangle
Arguments:
x : number
X coordinate (left).
y : number
Y coordinate (top).
width : number
Width of rectangle.
height : number
Height of rectangle.
stroke : ?goog.graphics.Stroke
Stroke object describing the stroke.
fill : ?goog.graphics.Fill
Fill object describing the fill.
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: goog.graphics.RectElement  The newly created element.
code »
drawText(textxywidthheightalignvAlignfontstrokefillopt_group) goog.graphics.TextElement
Draw a text string within a rectangle (drawing is horizontal)
Arguments:
text : string
The text to draw.
x : number
X coordinate (left).
y : number
Y coordinate (top).
width : number
Width of rectangle.
height : number
Height of rectangle.
align : string
Horizontal alignment: left (default), center, right.
vAlign : string
Vertical alignment: top (default), center, bottom.
font : goog.graphics.Font
Font describing the font properties.
stroke : ?goog.graphics.Stroke
Stroke object describing the stroke.
fill : ?goog.graphics.Fill
Fill object describing the fill.
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: goog.graphics.TextElement  The newly created element.
code »
drawTextOnLine(textx1y1x2y2alignfontstrokefillopt_group) goog.graphics.TextElement
Draw a text string vertically centered on a given line.
Arguments:
text : string
The text to draw.
x1 : number
X coordinate of start of line.
y1 : number
Y coordinate of start of line.
x2 : number
X coordinate of end of line.
y2 : number
Y coordinate of end of line.
align : string
Horizontal alingnment: left (default), center, right.
font : goog.graphics.Font
Font describing the font properties.
stroke : ?goog.graphics.Stroke
Stroke object describing the stroke.
fill : ?goog.graphics.Fill
Fill object describing the fill.
opt_group : goog.graphics.GroupElement=
The group wrapper element to append to. If not specified, appends to the main canvas.
Returns: goog.graphics.TextElement  The newly created element.
code »
getCanvasElement() goog.graphics.GroupElement
No description.
Returns: goog.graphics.GroupElement  The root level canvas element.
code »
getCoordOrigin() !goog.math.Coordinate
No description.
Returns: !goog.math.Coordinate  The coordinate system position.
code »
getCoordSize() goog.math.Size
No description.
Returns: goog.math.Size  The coordinate size.
code »
getPixelScaleX() number
No description.
Returns: number  Returns the number of pixels per unit in the x direction.
code »
getPixelScaleY() number
No description.
Returns: number  Returns the number of pixels per unit in the y direction.
code »
getPixelSize() ?goog.math.Size
No description.
Returns: ?goog.math.Size  Returns the number of pixels spanned by the surface, or null if the size could not be computed due to the size being specified in percentage points and the component not being in the document.
code »
getSize() goog.math.Size
Use getPixelSize. No description.
Returns: goog.math.Size  The size of canvas.
code »
getTextWidth(textfont) number
Measure and return the width (in pixels) of a given text string. Text measurement is needed to make sure a text can fit in the allocated area. The way text length is measured is by writing it into a div that is after the visible area, measure the div width, and immediatly erase the written value.
Arguments:
text : string
The text string to measure.
font : goog.graphics.Font
The font object describing the font style.
Returns: number  The width in pixels of the text strings.
code »
isDomClonable() boolean
No description.
Returns: boolean  Whether the underlying element can be cloned resulting in an accurate reproduction of the graphics contents.
code »
removeElement(element)
Remove a single drawing element from the surface. The default implementation assumes a DOM based drawing surface.
Arguments:
element : goog.graphics.Element
The element to remove.
code »
resume()
Stop preventing redraws. If any redraws had been prevented, a redraw will be done now.
code »
setCoordOrigin(lefttop)
Changes the coordinate system position.
Arguments:
left : number
The coordinate system left bound.
top : number
The coordinate system top bound.
code »
setCoordSize(coordWidthcoordHeight)
Changes the coordinate size.
Arguments:
coordWidth : number
The coordinate width.
coordHeight : number
The coordinate height.
code »
setElementFill(elementfill)
Sets the fill for the given element.
Arguments:
element : goog.graphics.StrokeAndFillElement
The element wrapper.
fill : ?goog.graphics.Fill
The fill object.
code »
setElementStroke(elementstroke)
Sets the stroke for the given element.
Arguments:
element : goog.graphics.StrokeAndFillElement
The element wrapper.
stroke : ?goog.graphics.Stroke
The stroke object.
code »
setElementTransform(elementxyanglecenterXcenterY)
Set the transformation of an element.
Arguments:
element : goog.graphics.Element
The element wrapper.
x : number
The x coordinate of the translation transform.
y : number
The y coordinate of the translation transform.
angle : number
The angle of the rotation transform.
centerX : number
The horizontal center of the rotation transform.
centerY : number
The vertical center of the rotation transform.
code »
setSize(pixelWidthpixelHeight)
Change the size of the canvas.
Arguments:
pixelWidth : number
The width in pixels.
pixelHeight : number
The height in pixels.
code »
suspend()
Start preventing redraws - useful for chaining large numbers of changes together. Not guaranteed to do anything - i.e. only use this for optimization of a single code path.
code »
addChild(childopt_render)
Adds the specified component as the last child of this component. See goog.ui.Component#addChildAt for detailed semantics.
Arguments:
child : goog.ui.Component
The new child component.
opt_render : boolean=
If true, the child component will be rendered into the parent.
code »
addChildAt(childindexopt_render) void
Adds the specified component as a child of this component at the given 0-based index. Both addChild and addChildAt assume the following contract between parent and child components:
  • the child component's element must be a descendant of the parent component's element, and
  • the DOM state of the child component must be consistent with the DOM state of the parent component (see isInDocument) in the steady state -- the exception is to addChildAt(child, i, false) and then immediately decorate/render the child.
In particular, parent.addChild(child) will throw an error if the child component is already in the document, but the parent isn't. Clients of this API may call addChild and addChildAt with opt_render set to true. If opt_render is true, calling these methods will automatically render the child component's element into the parent component's element. If the parent does not yet have an element, then createDom will automatically be invoked on the parent before rendering the child. Invoking parent.addChild(child, true) will throw an error if the child component is already in the document, regardless of the parent's DOM state. If opt_render is true and the parent component is not already in the document, enterDocument will not be called on this component at this point. Finally, this method also throws an error if the new child already has a different parent, or the given index is out of bounds.
Arguments:
child : goog.ui.Component
The new child component.
index : number
0-based index at which the new child component is to be added; must be between 0 and the current child count (inclusive).
opt_render : boolean=
If true, the child component will be rendered into the parent.
Returns: void  Nada.
code »
canDecorate(element) boolean
Determines if a given element can be decorated by this type of component. This method should be overridden by inheriting objects.
Arguments:
element : Element
Element to decorate.
Returns: boolean  True if the element can be decorated, false otherwise.
code »
createDom()
Creates the initial DOM representation for the component. The default implementation is to set this.element_ = div.
code »
decorate(element)
Decorates the element for the UI component. If the element is in the document, the enterDocument method will be called. If goog.ui.Component.ALLOW_DETACHED_DECORATION is false, the caller must pass an element that is in the document.
Arguments:
element : Element
Element to decorate.
code »
decorateInternal(element)
Actually decorates the element. Should be overridden by inheriting objects. This method can assume there are checks to ensure the component has not already been rendered have occurred and that enter document will be called afterwards. This method is considered protected.
Arguments:
element : Element
Element to decorate.
code »
disposeInternal()
Disposes of the component. Calls exitDocument, which is expected to remove event handlers and clean up the component. Propagates the call to the component's children, if any. Removes the component's DOM from the document unless it was decorated.
code »
enterDocument()
Called when the component's element is known to be in the document. Anything using document.getElementById etc. should be done at this stage. If the component contains child components, this call is propagated to its children.
code »
exitDocument()
Called by dispose to clean up the elements and listeners created by a component, or by a parent component/application who has removed the component from the document but wants to reuse it later. If the component contains child components, this call is propagated to its children. It should be possible for the component to be rendered again once this method has been called.
code »
forEachChild(fopt_obj)
Calls the given function on each of this component's children in order. If opt_obj is provided, it will be used as the 'this' object in the function when called. The function should take two arguments: the child component and its 0-based index. The return value is ignored.
Arguments:
f : function(this:T,?,number):?
The function to call for every child component; should take 2 arguments (the child and its index).
opt_obj : T=
Used as the 'this' object in f when called.
code »
getChild(id) ?goog.ui.Component
Returns the child with the given ID, or null if no such child exists.
Arguments:
id : string
Child component ID.
Returns: ?goog.ui.Component  The child with the given ID; null if none.
code »
getChildAt(index) ?goog.ui.Component
Returns the child at the given index, or null if the index is out of bounds.
Arguments:
index : number
0-based index.
Returns: ?goog.ui.Component  The child at the given index; null if none.
code »
getChildCount() number
Returns the number of children of this component.
Returns: number  The number of children.
code »
getChildIds() !Array.<string>
Returns an array containing the IDs of the children of this component, or an empty array if the component has no children.
Returns: !Array.<string>  Child component IDs.
code »
getContentElement() Element
Returns the DOM element into which child components are to be rendered, or null if the component itself hasn't been rendered yet. This default implementation returns the component's root element. Subclasses with complex DOM structures must override this method.
Returns: Element  Element to contain child elements (null if none).
code »
getDomHelper() !goog.dom.DomHelper
Returns the dom helper that is being used on this component.
Returns: !goog.dom.DomHelper  The dom helper used on this component.
code »
getElement() Element
Gets the component's element.
Returns: Element  The element for the component.
code »
getElementByClass(className) Element
Returns the first element in this component's DOM with the provided className.
Arguments:
className : string
The name of the class to look for.
Returns: Element  The first item with the class name provided.
code »
getElementByFragment(idFragment) Element
Helper function for returning an element in the document with a unique id generated using makeId().
Arguments:
idFragment : string
The partial id.
Returns: Element  The element with the unique id, or null if it cannot be found.
code »
getElementStrict() !Element
Gets the component's element. This differs from getElement in that it assumes that the element exists (i.e. the component has been rendered/decorated) and will cause an assertion error otherwise (if assertion is enabled).
Returns: !Element  The element for the component.
code »
getElementsByClass(className) !goog.array.ArrayLike
Returns an array of all the elements in this component's DOM with the provided className.
Arguments:
className : string
The name of the class to look for.
Returns: !goog.array.ArrayLike  The items found with the class name provided.
code »
getFragmentFromId(id) string
Helper function for returning the fragment portion of an id generated using makeId().
Arguments:
id : string
Id generated with makeId().
Returns: string  Fragment.
code »
getHandler() !goog.events.EventHandler.<T>
Returns the event handler for this component, lazily created the first time this method is called.
Returns: !goog.events.EventHandler.<T>  Event handler for this component.
code »
getId() string
Gets the unique ID for the instance of this component. If the instance doesn't already have an ID, generates one on the fly.
Returns: string  Unique component ID.
code »
getModel() *
Returns the model associated with the UI component.
Returns: *  The model.
code »
getParent() ?goog.ui.Component
Returns the component's parent, if any.
Returns: ?goog.ui.Component  The parent component.
code »
getRequiredElementByClass(className) !Element
Similar to getElementByClass except that it expects the element to be present in the dom thus returning a required value. Otherwise, will assert.
Arguments:
className : string
The name of the class to look for.
Returns: !Element  The first item with the class name provided.
code »
hasChildren() boolean
Returns true if the component has children.
Returns: boolean  True if the component has children.
code »
indexOfChild(child) number
Returns the 0-based index of the given child component, or -1 if no such child is found.
Arguments:
child : ?goog.ui.Component
The child component.
Returns: number  0-based index of the child component; -1 if not found.
code »
isInDocument() boolean
Determines whether the component has been added to the document.
Returns: boolean  TRUE if rendered. Otherwise, FALSE.
code »
isRightToLeft() boolean
Returns true if the component is rendered right-to-left, false otherwise. The first time this function is invoked, the right-to-left rendering property is set if it has not been already.
Returns: boolean  Whether the control is rendered right-to-left.
code »
makeId(idFragment) string
Helper function for subclasses that gets a unique id for a given fragment, this can be used by components to generate unique string ids for DOM elements.
Arguments:
idFragment : string
A partial id.
Returns: string  Unique element id.
code »
makeIds(object) !Object
Makes a collection of ids. This is a convenience method for makeId. The object's values are the id fragments and the new values are the generated ids. The key will remain the same.
Arguments:
object : Object
The object that will be used to create the ids.
Returns: !Object  An object of id keys to generated ids.
code »
removeChild(childopt_unrender) goog.ui.Component
Removes the given child from this component, and returns it. Throws an error if the argument is invalid or if the specified child isn't found in the parent component. The argument can either be a string (interpreted as the ID of the child component to remove) or the child component itself. If opt_unrender is true, calls goog.ui.component#exitDocument on the removed child, and subsequently detaches the child's DOM from the document. Otherwise it is the caller's responsibility to clean up the child component's DOM.
Arguments:
child : string | goog.ui.Component | null
The ID of the child to remove, or the child component itself.
opt_unrender : boolean=
If true, calls exitDocument on the removed child component, and detaches its DOM from the document.
Returns: goog.ui.Component  The removed component, if any.
code »
removeChildAt(indexopt_unrender) goog.ui.Component
Removes the child at the given index from this component, and returns it. Throws an error if the argument is out of bounds, or if the specified child isn't found in the parent. See goog.ui.Component#removeChild for detailed semantics.
Arguments:
index : number
0-based index of the child to remove.
opt_unrender : boolean=
If true, calls exitDocument on the removed child component, and detaches its DOM from the document.
Returns: goog.ui.Component  The removed component, if any.
code »
removeChildren(opt_unrender) !Array.<goog.ui.Component>
Removes every child component attached to this one and returns them.
Arguments:
opt_unrender : boolean=
If true, calls #exitDocument on the removed child components, and detaches their DOM from the document.
Returns: !Array.<goog.ui.Component>  The removed components if any.
code »
render(opt_parentElement)
Renders the component. If a parent element is supplied, the component's element will be appended to it. If there is no optional parent element and the element doesn't have a parentNode then it will be appended to the document body. If this component has a parent component, and the parent component is not in the document already, then this will not call enterDocument on this component. Throws an Error if the component is already rendered.
Arguments:
opt_parentElement : Element=
Optional parent element to render the component into.
code »
renderBefore(sibling)
Renders the component before another element. The other element should be in the document already. Throws an Error if the component is already rendered.
Arguments:
sibling : Node
Node to render the component before.
code »
render_(opt_parentElementopt_beforeNode)
Renders the component. If a parent element is supplied, the component's element will be appended to it. If there is no optional parent element and the element doesn't have a parentNode then it will be appended to the document body. If this component has a parent component, and the parent component is not in the document already, then this will not call enterDocument on this component. Throws an Error if the component is already rendered.
Arguments:
opt_parentElement : Element=
Optional parent element to render the component into.
opt_beforeNode : Node=
Node before which the component is to be rendered. If left out the node is appended to the parent element.
code »
setElementInternal(element)
Sets the component's root element to the given element. Considered protected and final. This should generally only be called during createDom. Setting the element does not actually change which element is rendered, only the element that is associated with this UI component. This should only be used by subclasses and its associated renderers.
Arguments:
element : Element
Root element for the component.
code »
setId(id)
Assigns an ID to this component instance. It is the caller's responsibility to guarantee that the ID is unique. If the component is a child of a parent component, then the parent component's child index is updated to reflect the new ID; this may throw an error if the parent already has a child with an ID that conflicts with the new ID.
Arguments:
id : string
Unique component ID.
code »
setModel(obj)
Sets the model associated with the UI component.
Arguments:
obj : *
The model.
code »
setParent(parent)
Sets the parent of this component to use for event bubbling. Throws an error if the component already has a parent or if an attempt is made to add a component to itself as a child. Callers must use removeChild or removeChildAt to remove components from their containers before calling this method.
Arguments:
parent : goog.ui.Component
The parent component.
code »
setParentEventTarget()
Overrides goog.events.EventTarget#setParentEventTarget to throw an error if the parent component is set, and the argument is not the parent.
code »
setRightToLeft(rightToLeft)
Set is right-to-left. This function should be used if the component needs to know the rendering direction during dom creation (i.e. before #enterDocument is called and is right-to-left is set).
Arguments:
rightToLeft : boolean
Whether the component is rendered right-to-left.
code »
wasDecorated() boolean
No description.
Returns: boolean  Whether the component was decorated.
code »
addEventListener(typeopt_captureopt_handlerScope)
Use #listen instead, when possible. Otherwise, use goog.events.listen if you are passing Object (instead of Function) as handler. Adds an event listener to the event target. The same handler can only be added once per the type. Even if you add the same handler multiple times using the same type then it will only be called once when the event is dispatched.
Arguments:
type : string
The type of the event to listen for.
: ?function():? | ?{handleEvent:function():?
No description.
opt_capture : boolean=
In DOM-compliant browsers, this determines whether the listener is fired during the capture or bubble phase of the event.
opt_handlerScope : Object=
Object in whose scope to call the listener.
code »
assertInitialized_()
Asserts that the event target instance is initialized properly.
code »
dispatchEvent()
No description.
code »
disposeInternal()
Removes listeners from this object. Classes that extend EventTarget may need to override this method in order to remove references to DOM Elements and additional listeners.
code »
fireListeners()
No description.
code »
getListener()
No description.
code »
getListeners()
No description.
code »
getParentEventTarget() goog.events.EventTarget
Returns the parent of this event target to use for bubbling.
Returns: goog.events.EventTarget  The parent EventTarget or null if there is no parent.
code »
hasListener()
No description.
code »
listen()
No description.
code »
listenOnce()
No description.
code »
removeAllListeners()
No description.
code »
removeEventListener(typeopt_captureopt_handlerScope)
Use #unlisten instead, when possible. Otherwise, use goog.events.unlisten if you are passing Object (instead of Function) as handler. Removes an event listener from the event target. The handler must be the same object as the one added. If the handler has not been added then nothing is done.
Arguments:
type : string
The type of the event to listen for.
: ?function():? | ?{handleEvent:function():?
No description.
opt_capture : boolean=
In DOM-compliant browsers, this determines whether the listener is fired during the capture or bubble phase of the event.
opt_handlerScope : Object=
Object in whose scope to call the listener.
code »
setParentEventTarget(parent)
Sets the parent of this event target to use for capture/bubble mechanism.
Arguments:
parent : goog.events.EventTarget
Parent listenable (null if none).
code »
setTargetForTesting(target)
Sets the target to be used for event.target when firing event. Mainly used for testing. For example, see goog.testing.events.mixinListenable.
Arguments:
target : !Object
The target.
code »
unlisten()
No description.
code »
unlistenByKey()
No description.
code »
addOnDisposeCallback(callbackopt_scope)
Invokes a callback function when this object is disposed. Callbacks are invoked in the order in which they were added.
Arguments:
callback : function(this:T):?
The callback function.
opt_scope : T=
An optional scope to call the callback in.
code »
dispose() void
Disposes of the object. If the object hasn't already been disposed of, calls #disposeInternal. Classes that extend goog.Disposable should override #disposeInternal in order to delete references to COM objects, DOM nodes, and other disposable objects. Reentrant.
Returns: void  Nothing.
code »
disposeInternal()
Deletes or nulls out any references to COM objects, DOM nodes, or other disposable objects. Classes that extend goog.Disposable should override this method. Not reentrant. To avoid calling it twice, it must only be called from the subclass' disposeInternal method. Everywhere else the public dispose method must be used. For example:
  mypackage.MyClass = function() {
    mypackage.MyClass.base(this, 'constructor');
    // Constructor logic specific to MyClass.
    ...
  };
  goog.inherits(mypackage.MyClass, goog.Disposable);

  mypackage.MyClass.prototype.disposeInternal = function() {
    // Dispose logic specific to MyClass.
    ...
    // Call superclass's disposeInternal at the end of the subclass's, like
    // in C++, to avoid hard-to-catch issues.
    mypackage.MyClass.base(this, 'disposeInternal');
  };
code »
getDisposed() boolean
Use #isDisposed instead. No description.
Returns: boolean  Whether the object has been disposed of.
code »
isDisposed() boolean
No description.
Returns: boolean  Whether the object has been disposed of.
code »
registerDisposable(disposable)
Associates a disposable object with this object so that they will be disposed together.
Arguments:
disposable : goog.disposable.IDisposable
that will be disposed when this object is disposed.
code »

Instance Properties

constructor :
No description.
Code »
Event handler.
Code »
canvasElement : goog.graphics.GroupElement
The root level group element.
Code »
clear :
Remove all drawing elements from the graphics.
Code »
constructor :
No description.
Code »
coordHeight :
Height of coordinate system in units.
Code »
coordLeft :
Left coordinate of the view box
Code »
coordTop :
Top coordinate of the view box
Code »
coordWidth :
Width of coordinate system in units.
Code »
height :
Height of graphics in pixels or precentage points.
Code »
width :
Width of graphics in pixels or percentage points.
Code »
childIndex_ :
Map of child component IDs to child components. Used for constant-time random access to child components by ID. Lazily initialized on first use. Must be kept in sync with children_. This property is strictly private and must not be accessed directly outside of this class! We use a plain Object, not a goog.structs.Map, for simplicity. This means components can't have children with IDs such as 'constructor' or 'valueOf', but this shouldn't really be an issue in practice, and if it is, we can always fix it later without changing the API.
Code »
children_ :
Array of child components. Lazily initialized on first use. Must be kept in sync with childIndex_. This property is strictly private and must not be accessed directly outside of this class!
Code »
constructor :
No description.
Code »
DomHelper used to interact with the document, allowing components to be created in a different window.
Code »
element_ :
The DOM element for the component.
Code »
googUiComponentHandler_ : goog.events.EventHandler
Event handler. TODO(user): rename it to handler_ after all component subclasses in inside Google have been cleaned up. Code search: http://go/component_code_search
Code »
idGenerator_ : goog.ui.IdGenerator
Generator for unique IDs.
Code »
id_ :
Unique ID of the component, lazily initialized in goog.ui.Component#getId if needed. This property is strictly private and must not be accessed directly outside of this class!
Code »
inDocument_ :
Whether the component is in the document.
Code »
model_ :
Arbitrary data object associated with the component. Such as meta-data.
Code »
parent_ : goog.ui.Component
Parent component to which events will be propagated. This property is strictly private and must not be accessed directly outside of this class!
Code »
rightToLeft_ :
Whether the component is rendered right-to-left. Right-to-left is set lazily when #isRightToLeft is called the first time, unless it has been set by calling #setRightToLeft explicitly.
Code »
wasDecorated_ :
Flag used to keep track of whether a component decorated an already existing element or whether it created the DOM itself. If an element is decorated, dispose will leave the node in the document. It is up to the app to remove the node. If an element was rendered, dispose will remove the node automatically.
Code »
actualEventTarget_ : goog.events.EventTarget
The object to use for event.target. Useful when mixing in an EventTarget to another object.
Code »
constructor :
No description.
Code »
eventTargetListeners_ : goog.events.ListenerMap
Maps of event type to an array of listeners.
Code »
parentEventTarget_ : goog.events.EventTarget
Parent event target, used during event bubbling. TODO(user): Change this to goog.events.Listenable. This currently breaks people who expect getParentEventTarget to return goog.events.EventTarget.
Code »
creationStack :
If monitoring the goog.Disposable instances is enabled, stores the creation stack trace of the Disposable instance.
Code »
disposed_ :
Whether the object has been disposed of.
Code »
onDisposeCallbacks_ :
Callbacks to invoke when this object is disposed.
Code »

Static Methods

goog.graphics.VmlGraphics.getVmlPath(path) string
Returns a string representation of a logical path suitable for use in a VML element.
Arguments:
path : goog.graphics.Path
The logical path.
Returns: string  The VML path representation.
code »
goog.graphics.VmlGraphics.setAttribute(elementnamevalue)
Sets an attribute on the given VML element, in the way best suited to the current version of IE. Should only be used in the goog.graphics package.
Arguments:
element : Element
The element to set an attribute on.
name : string
The name of the attribute to set.
value : string
The value to set it to.
code »
goog.graphics.VmlGraphics.setPositionAndSize(elementlefttopwidthheight)
Set top, left, width and height for an element. This function is internal for the VML supporting classes, and should not be used externally.
Arguments:
element : Element
DOM element.
left : number
Left ccordinate in pixels.
top : number
Top ccordinate in pixels.
width : number
Width in pixels.
height : number
Height in pixels.
code »
goog.graphics.VmlGraphics.toCssSize(size) string
Converts the given size to a css size. If it is a percentage, leaves it alone. Otherwise assumes px.
Arguments:
size : number | string
The size to use.
Returns: string  The position adjusted for COORD_MULTIPLIER.
code »
goog.graphics.VmlGraphics.toPosCoord(number) number
Multiplies positioning coordinates by COORD_MULTIPLIER to allow sub-pixel coordinates. Also adds a half pixel offset to match SVG. This function is internal for the VML supporting classes, and should not be used externally.
Arguments:
number : number | string
A position in pixels.
Returns: number  The position adjusted for COORD_MULTIPLIER.
code »
goog.graphics.VmlGraphics.toPosPx(number) string
Add a "px" suffix to a number of pixels, and multiplies all coordinates by COORD_MULTIPLIER to allow sub-pixel coordinates. This function is internal for the VML supporting classes, and should not be used externally.
Arguments:
number : number | string
A position in pixels.
Returns: string  The position with suffix 'px'.
code »
goog.graphics.VmlGraphics.toSizeCoord(number) number
Multiplies the width or height coordinate by COORD_MULTIPLIER to allow sub-pixel coordinates. This function is internal for the VML supporting classes, and should not be used externally.
Arguments:
number : string | number
A size in units.
Returns: number  The size multiplied by the correct factor.
code »
goog.graphics.VmlGraphics.toSizePx(number) string
Add a "px" suffix to a number of pixels, and multiplies all coordinates by COORD_MULTIPLIER to allow sub-pixel coordinates. This function is internal for the VML supporting classes, and should not be used externally.
Arguments:
number : number | string
A size in pixels.
Returns: string  The size with suffix 'px'.
code »

Static Properties

goog.graphics.VmlGraphics.COORD_MULTIPLIER :
The coordinate multiplier to allow sub-pixel rendering
Code »
goog.graphics.VmlGraphics.IE8_MODE_ :
Whether the document is using IE8 standards mode, and therefore needs hacks.
Code »
goog.graphics.VmlGraphics.VML_IMPORT_ :
The VML behavior URL.
Code »
goog.graphics.VmlGraphics.VML_NS_ :
The VML namespace URN
Code »
goog.graphics.VmlGraphics.VML_PREFIX_ :
The prefix to use for VML elements
Code »
goog.graphics.VmlGraphics.superClass_ :
No description.
Code »

Package graphics

Package Reference