From ecd8ea4a1c40b6056381e920dd03add3db52d4dd Mon Sep 17 00:00:00 2001 From: Felix Nagel Date: Fri, 2 Sep 2011 00:21:09 +0200 Subject: Selectmenu: basic implementation --- demos/selectmenu/default.html | 67 ++++++++ demos/selectmenu/index.html | 16 ++ themes/base/jquery.ui.base.css | 1 + themes/base/jquery.ui.selectmenu.css | 16 ++ ui/jquery.ui.selectmenu.js | 300 +++++++++++++++++++++++++++++++++++ 5 files changed, 400 insertions(+) create mode 100644 demos/selectmenu/default.html create mode 100644 demos/selectmenu/index.html create mode 100644 themes/base/jquery.ui.selectmenu.css create mode 100644 ui/jquery.ui.selectmenu.js diff --git a/demos/selectmenu/default.html b/demos/selectmenu/default.html new file mode 100644 index 000000000..e1b4517c3 --- /dev/null +++ b/demos/selectmenu/default.html @@ -0,0 +1,67 @@ + + + + + jQuery UI Selectmenu - Default functionality + + + + + + + + + + + + + + +
+ +
+
+ + +
+
+
+ + +
+
+ +
+ + + +
+

The Autocomplete widgets provides suggestions while you type into the field. Here the suggestions are tags for programming languages, give "ja" (for Java or JavaScript) a try.

+

The datasource is a simple JavaScript array, provided to the widget using the source-option.

+
+ + + diff --git a/demos/selectmenu/index.html b/demos/selectmenu/index.html new file mode 100644 index 000000000..909c3e262 --- /dev/null +++ b/demos/selectmenu/index.html @@ -0,0 +1,16 @@ + + + + + jQuery UI Selectmenu Demos + + + +
+

Examples

+ +
+ + diff --git a/themes/base/jquery.ui.base.css b/themes/base/jquery.ui.base.css index a359c2ba4..6973ff0f0 100644 --- a/themes/base/jquery.ui.base.css +++ b/themes/base/jquery.ui.base.css @@ -19,6 +19,7 @@ @import url("jquery.ui.progressbar.css"); @import url("jquery.ui.resizable.css"); @import url("jquery.ui.selectable.css"); +@import url("jquery.ui.selectmenu.css"); @import url("jquery.ui.slider.css"); @import url("jquery.ui.spinner.css"); @import url("jquery.ui.tabs.css"); diff --git a/themes/base/jquery.ui.selectmenu.css b/themes/base/jquery.ui.selectmenu.css new file mode 100644 index 000000000..d64084d60 --- /dev/null +++ b/themes/base/jquery.ui.selectmenu.css @@ -0,0 +1,16 @@ +/* + * jQuery UI Selectmenu @VERSION + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Selectmenu#theming + */ + +.ui-selectmenu-menu { padding: 0; margin: 0; position:absolute; top: 0; display: none; } +.ui-selectmenu-menu .ui-menu { padding: 0; } +.ui-selectmenu-open { display: block; } + +.ui-button span.ui-icon { right: 0.5em; left: auto; } +.ui-button span.ui-button-text { text-align: left; padding: 0.4em 2.1em 0.4em 1em } \ No newline at end of file diff --git a/ui/jquery.ui.selectmenu.js b/ui/jquery.ui.selectmenu.js new file mode 100644 index 000000000..c8ee50a75 --- /dev/null +++ b/ui/jquery.ui.selectmenu.js @@ -0,0 +1,300 @@ +/* + * jQuery UI Selectmenu @VERSION + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Selectmenu + * + * Depends: + * jquery.ui.core.js + * jquery.ui.widget.js + * jquery.ui.position.js + * jquery.ui.menu.js + */ +(function( $, undefined ) { + +// used to prevent race conditions with remote data sources +var requestIndex = 0; + +$.widget( "ui.selectmenu", { + version: "@VERSION", + defaultElement: "