All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jboss.as.console.client.shared.expr.ExpressionCell Maven / Gradle / Ivy

Go to download

Bundles the core AS7 console as a GWT module. Includes minor customizations to support extensions.

There is a newer version: 0.7.0.Final
Show newest version
package org.jboss.as.console.client.shared.expr;

/**
 * @author Heiko Braun
 * @date 10/4/11
 */

import com.google.gwt.cell.client.AbstractCell;
import com.google.gwt.cell.client.ValueUpdater;
import com.google.gwt.dom.client.Element;
import com.google.gwt.dom.client.NativeEvent;
import com.google.gwt.safehtml.shared.SafeHtml;
import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
import com.google.gwt.user.client.Window;
import org.jboss.as.console.client.Console;
import org.jboss.as.console.client.domain.model.SimpleCallback;

/**
 * @author Heiko Braun
 */
public class ExpressionCell extends AbstractCell {

    private Expression expr;

    public ExpressionCell() {
        super("click", "keydown");
    }

    @Override
    public void onBrowserEvent(Context context, Element parent, String value,
                               NativeEvent event, ValueUpdater valueUpdater) {
        super.onBrowserEvent(context, parent, value, event, valueUpdater);
        if ("click".equals(event.getType())) {
            onEnterKeyDown(context, parent, value, event, valueUpdater);
        }
    }

    @Override
    public void render(Context context, String value, SafeHtmlBuilder sb) {

        expr = Expression.fromString(value);
        SafeHtml html = new SafeHtmlBuilder()
                .appendHtmlConstant( "
"+expr.toString()+"
").toSafeHtml(); sb.append(html); } @Override protected void onEnterKeyDown( Context context, Element parent, String value, NativeEvent event, ValueUpdater valueUpdater) { int rowSelection = context.getIndex(); Console.MODULES.getExpressionManager().resolveValue( expr,new SimpleCallback() { @Override public void onSuccess(String result) { Window.confirm("Resolves to: "+ result); } }); //System.out.println("Clicked "+rowSelection); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy