Path: blob/trunk/third_party/closure/goog/ui/toolbarseparatorrenderer.js
4062 views
/**1* @license2* Copyright The Closure Library Authors.3* SPDX-License-Identifier: Apache-2.04*/56/**7* @fileoverview Renderer for toolbar separators.8*/910goog.provide('goog.ui.ToolbarSeparatorRenderer');1112goog.require('goog.asserts');13goog.require('goog.dom.TagName');14goog.require('goog.dom.classlist');15goog.require('goog.ui.INLINE_BLOCK_CLASSNAME');16goog.require('goog.ui.MenuSeparatorRenderer');17goog.requireType('goog.ui.Control');18192021/**22* Renderer for toolbar separators.23* @constructor24* @extends {goog.ui.MenuSeparatorRenderer}25*/26goog.ui.ToolbarSeparatorRenderer = function() {27'use strict';28goog.ui.MenuSeparatorRenderer.call(this);29};30goog.inherits(goog.ui.ToolbarSeparatorRenderer, goog.ui.MenuSeparatorRenderer);31goog.addSingletonGetter(goog.ui.ToolbarSeparatorRenderer);323334/**35* Default CSS class to be applied to the root element of components rendered36* by this renderer.37* @type {string}38*/39goog.ui.ToolbarSeparatorRenderer.CSS_CLASS =40goog.getCssName('goog-toolbar-separator');414243/**44* Returns a styled toolbar separator implemented by the following DOM:45*46* <div class="goog-toolbar-separator goog-inline-block"> </div>47*48* Overrides {@link goog.ui.MenuSeparatorRenderer#createDom}.49* @param {goog.ui.Control} separator goog.ui.Separator to render.50* @return {!Element} Root element for the separator.51* @override52*/53goog.ui.ToolbarSeparatorRenderer.prototype.createDom = function(separator) {54'use strict';55// 00A0 is 56return separator.getDomHelper().createDom(57goog.dom.TagName.DIV, this.getClassNames(separator).join(' ') + ' ' +58goog.ui.INLINE_BLOCK_CLASSNAME,59'\u00A0');60};616263/**64* Takes an existing element, and decorates it with the separator. Overrides65* {@link goog.ui.MenuSeparatorRenderer#decorate}.66* @param {goog.ui.Control} separator goog.ui.Separator to decorate the element.67* @param {Element} element Element to decorate.68* @return {!Element} Decorated element.69* @override70*/71goog.ui.ToolbarSeparatorRenderer.prototype.decorate = function(72separator, element) {73'use strict';74element = goog.ui.ToolbarSeparatorRenderer.superClass_.decorate.call(75this, separator, element);76goog.asserts.assert(element);77goog.dom.classlist.add(element, goog.ui.INLINE_BLOCK_CLASSNAME);78return element;79};808182/**83* Returns the CSS class to be applied to the root element of components84* rendered using this renderer.85* @return {string} Renderer-specific CSS class.86* @override87*/88goog.ui.ToolbarSeparatorRenderer.prototype.getCssClass = function() {89'use strict';90return goog.ui.ToolbarSeparatorRenderer.CSS_CLASS;91};929394