You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by he...@apache.org on 2006/11/29 18:27:48 UTC
svn commit: r480637 - in
/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views:
freemarker/tags/AutocompleterModel.java freemarker/tags/StrutsModels.java
jsp/ui/AutocompleterTag.java
Author: hermanns
Date: Wed Nov 29 09:27:47 2006
New Revision: 480637
URL: http://svn.apache.org/viewvc?view=rev&rev=480637
Log:
Add Autocompleter AJAX tag
o add missing AutocompleterTag from Musachy's patch
o added AutocompleterModel for freemarker
o updated StrutsModels
Issue number: WW-1520
Added:
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/AutocompleterModel.java
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AutocompleterTag.java
Modified:
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java
Added: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/AutocompleterModel.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/AutocompleterModel.java?view=auto&rev=480637
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/AutocompleterModel.java (added)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/AutocompleterModel.java Wed Nov 29 09:27:47 2006
@@ -0,0 +1,43 @@
+/*
+ * $Id: ComboBoxModel.java 471756 2006-11-06 15:01:43Z husted $
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.struts2.views.freemarker.tags;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.struts2.components.Component;
+import org.apache.struts2.components.Autocompleter;
+
+import com.opensymphony.xwork2.util.ValueStack;
+
+/**
+ * @see Autocompleter
+ */
+public class AutocompleterModel extends TagModel {
+
+ public AutocompleterModel(ValueStack stack, HttpServletRequest req, HttpServletResponse res) {
+ super(stack, req, res);
+ }
+
+ protected Component getBean() {
+ return new Autocompleter(stack, req, res);
+ }
+}
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java?view=diff&rev=480637&r1=480636&r2=480637
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/tags/StrutsModels.java Wed Nov 29 09:27:47 2006
@@ -81,6 +81,7 @@
protected ElseModel elseModel;
protected ElseIfModel elseIfModel;
protected TimePickerModel timePickerModel;
+ protected AutocompleterModel autocompleterModel;
public StrutsModels(ValueStack stack, HttpServletRequest req, HttpServletResponse res) {
@@ -111,6 +112,14 @@
}
return comboBox;
+ }
+
+ public AutocompleterModel getAutocompleterModel() {
+ if (autocompleterModel == null) {
+ autocompleterModel = new AutocompleterModel(stack, req, res);
+ }
+
+ return autocompleterModel;
}
public ComponentModel getComponent() {
Added: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AutocompleterTag.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AutocompleterTag.java?view=auto&rev=480637
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AutocompleterTag.java (added)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AutocompleterTag.java Wed Nov 29 09:27:47 2006
@@ -0,0 +1,96 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.struts2.views.jsp.ui;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.struts2.components.Autocompleter;
+import org.apache.struts2.components.Component;
+
+import com.opensymphony.xwork2.util.ValueStack;
+
+/**
+ * @see Autocompleter
+ */
+public class AutocompleterTag extends ComboBoxTag {
+ private static final long serialVersionUID = -1112470447573172581L;
+
+ private String forceValidOption;
+ private String searchType;
+ private String autoComplete;
+ private String searchDelay;
+ private String disabled;
+ private String href;
+ private String dropdownWidth;
+ private String dropdownHeight;
+
+ public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) {
+ return new Autocompleter(stack, req, res);
+ }
+
+ protected void populateParams() {
+ super.populateParams();
+
+ Autocompleter autocompleter = (Autocompleter) component;
+ autocompleter.setAutoComplete(autoComplete);
+ autocompleter.setDisabled(disabled);
+ autocompleter.setForceValidOption(forceValidOption);
+ autocompleter.setHref(href);
+ autocompleter.setSearchDelay(searchDelay);
+ autocompleter.setSearchType(searchType);
+ autocompleter.setDropdownHeight(dropdownHeight);
+ autocompleter.setDropdownWidth(dropdownWidth);
+ }
+
+ public void setAutoComplete(String autoComplete) {
+ this.autoComplete = autoComplete;
+ }
+
+ public void setDisabled(String disabled) {
+ this.disabled = disabled;
+ }
+
+ public void setForceValidOption(String forceValidOption) {
+ this.forceValidOption = forceValidOption;
+ }
+
+ public void setHref(String href) {
+ this.href = href;
+ }
+
+ public void setSearchDelay(String searchDelay) {
+ this.searchDelay = searchDelay;
+ }
+
+ public void setSearchType(String searchType) {
+ this.searchType = searchType;
+ }
+
+ public void setDropdownHeight(String height) {
+ this.dropdownHeight = height;
+ }
+
+ public void setDropdownWidth(String width) {
+ this.dropdownWidth = width;
+ }
+
+}
\ No newline at end of file