Path: blob/trunk/third_party/closure/goog/ui/toolbarrenderer.js
4078 views
/**1* @license2* Copyright The Closure Library Authors.3* SPDX-License-Identifier: Apache-2.04*/56/**7* @fileoverview Renderer for {@link goog.ui.Toolbar}s.8*/910goog.provide('goog.ui.ToolbarRenderer');1112goog.require('goog.a11y.aria.Role');13goog.require('goog.dom.TagName');14goog.require('goog.ui.Container');15goog.require('goog.ui.ContainerRenderer');16goog.require('goog.ui.Separator');17goog.require('goog.ui.ToolbarSeparatorRenderer');18goog.requireType('goog.ui.Control');19202122/**23* Default renderer for {@link goog.ui.Toolbar}s, based on {@link24* goog.ui.ContainerRenderer}.25* @constructor26* @extends {goog.ui.ContainerRenderer}27*/28goog.ui.ToolbarRenderer = function() {29'use strict';30goog.ui.ContainerRenderer.call(this, goog.a11y.aria.Role.TOOLBAR);31};32goog.inherits(goog.ui.ToolbarRenderer, goog.ui.ContainerRenderer);33goog.addSingletonGetter(goog.ui.ToolbarRenderer);343536/**37* Default CSS class to be applied to the root element of toolbars rendered38* by this renderer.39* @type {string}40*/41goog.ui.ToolbarRenderer.CSS_CLASS = goog.getCssName('goog-toolbar');424344/**45* Inspects the element, and creates an instance of {@link goog.ui.Control} or46* an appropriate subclass best suited to decorate it. Overrides the superclass47* implementation by recognizing HR elements as separators.48* @param {Element} element Element to decorate.49* @return {goog.ui.Control?} A new control suitable to decorate the element50* (null if none).51* @override52*/53goog.ui.ToolbarRenderer.prototype.getDecoratorForChild = function(element) {54'use strict';55return element.tagName == goog.dom.TagName.HR ?56new goog.ui.Separator(goog.ui.ToolbarSeparatorRenderer.getInstance()) :57goog.ui.ToolbarRenderer.superClass_.getDecoratorForChild.call(58this, element);59};606162/**63* Returns the CSS class to be applied to the root element of containers64* rendered using this renderer.65* @return {string} Renderer-specific CSS class.66* @override67*/68goog.ui.ToolbarRenderer.prototype.getCssClass = function() {69'use strict';70return goog.ui.ToolbarRenderer.CSS_CLASS;71};727374/**75* Returns the default orientation of containers rendered or decorated by this76* renderer. This implementation returns `HORIZONTAL`.77* @return {goog.ui.Container.Orientation} Default orientation for containers78* created or decorated by this renderer.79* @override80*/81goog.ui.ToolbarRenderer.prototype.getDefaultOrientation = function() {82'use strict';83return goog.ui.Container.Orientation.HORIZONTAL;84};858687