Package org.apache.myfaces.trinidadinternal.renderkit.core.pages

Source Code of org.apache.myfaces.trinidadinternal.renderkit.core.pages.ColorPickerJSP

/*
* 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.myfaces.trinidadinternal.renderkit.core.pages;

import java.io.IOException;

import java.util.Map;

import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;

import org.apache.myfaces.trinidad.component.core.CoreDocument;
import org.apache.myfaces.trinidad.component.core.CoreForm;
import org.apache.myfaces.trinidad.component.core.input.CoreChooseColor;
import org.apache.myfaces.trinidad.component.core.input.CoreInputColor;
import org.apache.myfaces.trinidad.component.core.layout.CorePanelButtonBar;
import org.apache.myfaces.trinidad.component.core.nav.CoreGoButton;
import org.apache.myfaces.trinidad.component.core.output.CoreSpacer;
import org.apache.myfaces.trinidad.component.html.HtmlCellFormat;
import org.apache.myfaces.trinidad.component.html.HtmlRowLayout;
import org.apache.myfaces.trinidad.component.html.HtmlScript;
import org.apache.myfaces.trinidad.component.html.HtmlTableLayout;

import org.apache.myfaces.trinidadinternal.convert.ColorConverter;
import org.apache.myfaces.trinidad.context.RenderingContext;

/**
* Entry point for the "colorPicker" JSP.
* <p>
* Parameters:
* <ul>
* <li>Java locale to use
* <li>value: current color value
* </ul>
* <p>
* @version $Name:  $ ($Revision: adfrt/faces/adf-faces-impl/src/main/java/oracle/adfinternal/view/faces/renderkit/core/pages/ColorPickerJSP.java#0 $) $Date: 10-nov-2005.19:03:33 $
*/
class ColorPickerJSP
{
  @SuppressWarnings("unchecked")
  static public void service(FacesContext context)
    throws IOException
  {
    Map<String, String> requestParams =
      context.getExternalContext().getRequestParameterMap();
   
    RenderingContext arc = RenderingContext.getCurrentInstance();
    CoreDocument doc = new CoreDocument();
    context.getViewRoot().getChildren().add(doc);

    doc.setTitle(arc.getTranslatedString("af_inputColor.PICKER_TITLE"));
   
    CoreForm form = new CoreForm();
    form.setId("d");
    doc.getChildren().add(form);
   
    HtmlTableLayout tl = new HtmlTableLayout();
    form.getChildren().add(tl);
   
    HtmlRowLayout rl1 = new HtmlRowLayout();
    tl.getChildren().add(rl1);
    HtmlCellFormat cf1 = new HtmlCellFormat();
    rl1.getChildren().add(cf1);
    cf1.setHalign("center");
   
    CoreInputColor sic = new CoreInputColor();
    cf1.getChildren().add(sic);
    sic.setId("c");
    sic.setOnkeypress("if(_getKC(event)==13){selectColor();return false}");
    Converter converter = _getConverter(requestParams);
    Object value =
      converter.getAsObject(context, sic, requestParams.get("value"));
    sic.setConverter(converter);
    sic.setValue(value);
    sic.setChooseId("choose");
    sic.setLabel(arc.getTranslatedString("af_inputColor.PICKER_PROMPT"));

    HtmlRowLayout rl2 = new HtmlRowLayout();
    tl.getChildren().add(rl2);
    CoreSpacer spacer = new CoreSpacer();
    rl2.getChildren().add(spacer);
    spacer.setHeight("8");
   
    HtmlRowLayout rl3 = new HtmlRowLayout();
    tl.getChildren().add(rl3);
    HtmlCellFormat cf3 = new HtmlCellFormat();
    rl3.getChildren().add(cf3);
    cf3.setHalign("center");
   
    CoreChooseColor choose = new CoreChooseColor();
    cf3.getChildren().add(choose);
    choose.setId("choose");
    choose.setWidth(7);
   
    HtmlRowLayout rl4 = new HtmlRowLayout();
    tl.getChildren().add(rl4);
    CoreSpacer spacer2 = new CoreSpacer();
    rl4.getChildren().add(spacer2);
    spacer2.setHeight("8");
   
    HtmlRowLayout rl5 = new HtmlRowLayout();
    tl.getChildren().add(rl5);
    HtmlCellFormat cf5 = new HtmlCellFormat();
    rl5.getChildren().add(cf5);
    cf5.setHalign("end");
    CorePanelButtonBar bar = new CorePanelButtonBar();
    cf5.getChildren().add(bar);


    CoreGoButton cancel =
       JspUtils.createGoButton(arc, "af_inputColor.CANCEL");
    bar.getChildren().add(cancel);
    cancel.setOnclick("doCancel()");

    CoreGoButton select =
       JspUtils.createGoButton(arc, "af_inputColor.APPLY");
    bar.getChildren().add(select);
    select.setOnclick("return selectColor()");

    HtmlScript script = new HtmlScript();
    script.setText(_SCRIPT);
    doc.getChildren().add(script);
  }

  static private Converter _getConverter(Map<String, String> requestParams)
  {
    String pattern = requestParams.get("pattern");
    boolean allowsTransparent =
      "true".equals(requestParams.get("allowsTransparent"));
    ColorConverter converter = new ColorConverter();
    converter.setPatterns(pattern.split(" "));
    if (allowsTransparent)
      converter.setTransparentAllowed(true);
    return converter;
  }

  static private final String _SCRIPT =

  "function doCancel()"+
  "{" +
    "top.returnValue = (void 0);"+
    "top.close();"+
    "return false;"+
  "}"+

  "function selectColor()"+
  "{"+
    "var colorField = document.forms.d.c;" +
    "var format = _getColorFieldFormat(colorField);" +
    "top.returnValue = format.getAsObject(colorField.value);" +
    "top.isApplicable = true;" +
    "top._unloadADFDialog(window.event);" +
    "top.close();"
    "return false;"+
  "}";
}
TOP

Related Classes of org.apache.myfaces.trinidadinternal.renderkit.core.pages.ColorPickerJSP

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.