Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(170)

Side by Side Diff: polymer_0.5.0/bower_components/paper-dropdown-menu/paper-dropdown-menu.html

Issue 786953007: npm_modules: Fork bower_components into Polymer 0.4.0 and 0.5.0 versions (Closed) Base URL: https://chromium.googlesource.com/infra/third_party/npm_modules.git@master
Patch Set: Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 <!--
2 Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
3 This code may only be used under the BSD style license found at http://polymer.g ithub.io/LICENSE.txt
4 The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
5 The complete set of contributors may be found at http://polymer.github.io/CONTRI BUTORS.txt
6 Code distributed by Google as part of the polymer project is also
7 subject to an additional IP rights grant found at http://polymer.github.io/PATEN TS.txt
8 -->
9
10 <!--
11
12 `paper-dropdown-menu` works together with `paper-dropdown` and `core-menu` to
13 implement a drop-down menu. The currently selected item is displayed in the
14 control. If no item is selected, the `label` is displayed instead.
15
16 The child element with the class `dropdown` will be used as the drop-down
17 menu. It should be a `paper-dropdown` or other overlay element. You should
18 also provide a `core-selector` or other selector element, such as `core-menu`,
19 in the drop-down. You should apply the class `menu` to the selector element.
20
21 Example:
22
23 <paper-dropdown-menu label="Your favorite pastry">
24 <paper-dropdown class="dropdown">
25 <core-menu class="menu">
26 <paper-item>Croissant</paper-item>
27 <paper-item>Donut</paper-item>
28 <paper-item>Financier</paper-item>
29 <paper-item>Madeleine</paper-item>
30 </core-menu>
31 </paper-dropdown>
32 </paper-dropdown-menu>
33
34 This example renders a drop-down menu with 4 options.
35
36 @group Paper Elements
37 @element paper-dropdown-menu
38 @extends core-dropdown-base
39 @status unstable
40 @homepage github.io
41 -->
42
43 <!--
44 Fired when an item's selection state is changed. This event is fired both
45 when an item is selected or deselected. The `isSelected` detail property
46 contains the selection state.
47
48 @event core-select
49 @param {Object} detail
50 @param {boolean} detail.isSelected true for selection and false for deselectio n
51 @param {Object} detail.item the item element
52 -->
53 <link href="../polymer/polymer.html" rel="import">
54
55 <link href="../core-a11y-keys/core-a11y-keys.html" rel="import">
56 <link href="../core-dropdown/core-dropdown-base.html" rel="import">
57 <link href="../core-focusable/core-focusable.html" rel="import">
58 <link href="../core-icon/core-icon.html" rel="import">
59 <link href="../core-icons/core-icons.html" rel="import">
60 <link href="../paper-shadow/paper-shadow.html" rel="import">
61
62 <style shim-shadowdom>
63 html /deep/ #paper-dropdown-menu-dropdown {
64 margin: 12px;
65 overflow: visible;
66 }
67
68 html /deep/ #paper-dropdown-menu-dropdown #menu {
69 padding: 8px 0;
70 margin: 0;
71 }
72
73 html /deep/ #paper-dropdown-menu-dropdown .menu-container {
74 overflow: auto;
75 max-height: 100%;
76 max-width: 100%;
77 }
78 </style>
79
80 <polymer-element name="paper-dropdown-menu" extends="core-dropdown-base" relativ e layout inline horizontal center tabindex="0">
81 <template>
82
83 <style>
84 :host {
85 -moz-user-select: none;
86 -ms-user-select: none;
87 -webkit-user-select: none;
88 user-select: none;
89 cursor: pointer;
90 padding: 0.5em 0 0.25em;
91 margin: 0.75em 0;
92 border-bottom: 1px solid #757575;
93 outline: none;
94 }
95
96 #label, #arrow {
97 color: #757575;
98 }
99
100 #label {
101 overflow: hidden;
102 white-space: nowrap;
103 text-overflow: ellipsis;
104 }
105 </style>
106
107 <core-a11y-keys target="{{}}" keys="enter space" on-keys-pressed="{{toggleOver lay}}"></core-a11y-keys>
108
109 <div flex auto id="label">{{selectedItemLabel || label}}</div>
110 <core-icon id="arrow" icon="{{opened ? openedIcon : closedIcon}}"></core-icon>
111
112 <content></content>
113
114 </template>
115 <script>
116
117 (function() {
118
119 var p = {
120
121 publish: {
122
123 /**
124 * A label for the control. The label is displayed if no item is selected.
125 *
126 * @attribute label
127 * @type string
128 * @default 'Select an item'
129 */
130 label: 'Select an item',
131
132 /**
133 * The icon to display when the drop-down is opened.
134 *
135 * @attribute openedIcon
136 * @type string
137 * @default 'arrow-drop-up'
138 */
139 openedIcon: 'arrow-drop-up',
140
141 /**
142 * The icon to display when the drop-down is closed.
143 *
144 * @attribute closedIcon
145 * @type string
146 * @default 'arrow-drop-down'
147 */
148 closedIcon: 'arrow-drop-down'
149
150 },
151
152 selectedItemLabel: '',
153
154 overlayListeners: {
155 'core-overlay-open': 'openAction',
156 'core-activate': 'activateAction',
157 'core-select': 'selectAction'
158 },
159
160 activateAction: function(e) {
161 this.opened = false;
162 },
163
164 selectAction: function(e) {
165 var detail = e.detail;
166 if (detail.isSelected) {
167 this.selectedItemLabel = detail.item.label || detail.item.textContent;
168 } else {
169 this.selectedItemLabel = '';
170 }
171 }
172
173 };
174
175 Polymer.mixin2(p, Polymer.CoreFocusable);
176 Polymer(p);
177
178 })();
179
180 </script>
181 </polymer-element>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698