001 // This file is part of AceWiki. 002 // Copyright 2008-2012, AceWiki developers. 003 // 004 // AceWiki is free software: you can redistribute it and/or modify it under the terms of the GNU 005 // Lesser General Public License as published by the Free Software Foundation, either version 3 of 006 // the License, or (at your option) any later version. 007 // 008 // AceWiki is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without 009 // even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 010 // Lesser General Public License for more details. 011 // 012 // You should have received a copy of the GNU Lesser General Public License along with AceWiki. If 013 // not, see http://www.gnu.org/licenses/. 014 015 package ch.uzh.ifi.attempto.echocomp; 016 017 import nextapp.echo.app.Component; 018 import nextapp.echo.app.util.Context; 019 020 import nextapp.echo.webcontainer.ServerMessage; 021 import nextapp.echo.webcontainer.WebContainerServlet; 022 import nextapp.echo.webcontainer.service.JavaScriptService; 023 024 import nextapp.echo.webcontainer.sync.component.TextFieldPeer; 025 026 /** 027 * This is the peer component for the class {@link TabSensitiveTextField}. 028 * 029 * @author Tobias Kuhn 030 */ 031 public class TabSensitiveTextFieldPeer extends TextFieldPeer { 032 033 private static final String REGISTRY_KEY = "Attempto.TabSensitiveTextField"; 034 private static final String JAVASCRIPT_PATH = "ch/uzh/ifi/attempto/echocomp/TabSensitiveTextField.js"; 035 036 static { 037 WebContainerServlet.getServiceRegistry().add( 038 JavaScriptService.forResource(REGISTRY_KEY, JAVASCRIPT_PATH) 039 ); 040 } 041 042 public void init(Context context, Component component) { 043 super.init(context, component); 044 045 ServerMessage serverMessage = (ServerMessage) context.get(ServerMessage.class); 046 serverMessage.addLibrary(REGISTRY_KEY); 047 } 048 049 @SuppressWarnings("rawtypes") 050 public Class getComponentClass() { 051 return TabSensitiveTextField.class; 052 } 053 054 public String getClientComponentType(boolean shortType) { 055 return REGISTRY_KEY; 056 } 057 058 }