Example usage for com.google.gwt.user.client.ui ClickListener ClickListener

List of usage examples for com.google.gwt.user.client.ui ClickListener ClickListener

Introduction

In this page you can find the example usage for com.google.gwt.user.client.ui ClickListener ClickListener.

Prototype

ClickListener

Source Link

Usage

From source file:asquare.gwt.tk.demo.client.DebugPanel.java

License:Apache License

private Widget createControlPanel(final DebugEventListener eventListener) {
    BasicPanel controls = new BasicPanel();
    DOM.setAttribute(controls.getElement(), "id", "debug-controls");

    // debug output
    BasicPanel debug = new BasicPanel("p", BasicPanel.DISPLAY_INLINE);
    debug.add(new Label("Debug output ", false));
    debug.add(new Button("enable", new ClickListener() {
        public void onClick(Widget sender) {
            Debug.enable();//from  ww w .ja  v  a  2s . c  o m
        }
    }));
    debug.add(new Button("disable", new ClickListener() {
        public void onClick(Widget sender) {
            Debug.disable();
        }
    }));
    controls.add(debug);

    // console
    BasicPanel console = new BasicPanel("p", BasicPanel.DISPLAY_INLINE);
    console.add(new Label("Debug console ", false));
    console.add(new Button("enable", new ClickListener() {
        public void onClick(Widget sender) {
            DebugConsole.getInstance().enable();
        }
    }));
    console.add(new Button("disable", new ClickListener() {
        public void onClick(Widget sender) {
            DebugConsole.getInstance().disable();
        }
    }));
    controls.add(console);

    // event tracing
    BasicPanel tracing = new BasicPanel("p", BasicPanel.DISPLAY_INLINE);
    tracing.add(new Label("Event tracing ", false));
    tracing.add(new Button("enable", new ClickListener() {
        public void onClick(Widget sender) {
            eventListener.enable(true);
            Debug.println("You can trace any event. Some events are ignored by default");
        }
    }));
    tracing.add(new Button("disable", new ClickListener() {
        public void onClick(Widget sender) {
            eventListener.enable(false);
        }
    }));
    controls.add(tracing);

    Widget checkBoxes = createCheckBoxes();
    controls.add(checkBoxes);
    DOM.setStyleAttribute(checkBoxes.getElement(), "display", "block");

    return controls;
}

From source file:asquare.gwt.tk.demo.client.DebugPanel.java

License:Apache License

private Widget createCheckBoxes() {
    // can't use HashMap because it does not preserve order
    final Vector eventToMask = new Vector();
    eventToMask.add(new EventToMask("onfocus", Event.ONFOCUS));
    eventToMask.add(new EventToMask("onblur", Event.ONBLUR));
    eventToMask.add(new EventToMask("onchange", Event.ONCHANGE));
    eventToMask.add(new EventToMask("onkeydown", Event.ONKEYDOWN));
    eventToMask.add(new EventToMask("onkeypress", Event.ONKEYPRESS));
    eventToMask.add(new EventToMask("onkeyup", Event.ONKEYUP));
    eventToMask.add(new EventToMask("onscroll", Event.ONSCROLL));
    eventToMask.add(new EventToMask("onmousemove", Event.ONMOUSEMOVE));
    eventToMask.add(new EventToMask("onmouseover", Event.ONMOUSEOVER));
    eventToMask.add(new EventToMask("onmouseout", Event.ONMOUSEOUT));
    eventToMask.add(new EventToMask("onmousedown", Event.ONMOUSEDOWN));
    eventToMask.add(new EventToMask("onmouseup", Event.ONMOUSEUP));
    eventToMask.add(new EventToMask("onclick", Event.ONCLICK));
    eventToMask.add(new EventToMask("ondblclick", Event.ONDBLCLICK));
    eventToMask.add(new EventToMask("onerror", Event.ONERROR));

    ClickListener checkBoxController = new ClickListener() {
        public void onClick(Widget sender) {
            CheckBox cb = (CheckBox) sender;
            EventToMask mapping = (EventToMask) eventToMask.get(eventToMask.indexOf(cb.getText()));
            int traceEventMask = m_eventListener.getEventMask();
            if (cb.isChecked()) {
                traceEventMask |= mapping.m_mask;
            } else {
                traceEventMask &= ~mapping.m_mask;
            }/*from   w  w  w  .java2s.  c  om*/
            m_eventListener.setEventMask(traceEventMask);
        }
    };

    FlowPanel panel = new FlowPanel();
    for (int i = 0; i < eventToMask.size(); i++) {
        EventToMask mapping = (EventToMask) eventToMask.get(i);
        addCheckBox(panel, mapping.m_event, mapping.m_mask, checkBoxController);
    }
    return panel;
}

From source file:asquare.gwt.tk.demo.client.DropDownPanelPanel.java

License:Apache License

public DropDownPanelPanel() {
    HorizontalPanel outer = new HorizontalPanel();
    outer.setSize("100%", "100%");

    setWidget(outer);/*from   w w  w . j ava 2 s  . c om*/

    BasicPanel left = new BasicPanel();
    DOM.setAttribute(left.getElement(), "id", "dropDown-left");

    DropDownPanel dropDown1 = new DropDownPanel();
    DOM.setAttribute(dropDown1.getElement(), "id", "dropDown-1");
    dropDown1.setHeaderText("Drop Down 1", false);
    Image image = new Image("icecube.jpg");
    image.setSize("100px", "100px");
    dropDown1.add(image);
    dropDown1.setOpen(true);
    left.add(dropDown1);

    DropDownPanel dropDown2 = new DropDownPanel();
    DOM.setAttribute(dropDown2.getElement(), "id", "dropDown-2");
    dropDown2.setHeaderText("Drop Down 2", true);
    image = new Image("icecube.jpg");
    image.setSize("100px", "250px");
    dropDown2.add(image);
    left.add(dropDown2);

    outer.add(left);
    outer.setCellWidth(left, "1px");

    String content = "<H2>Drop Down Panel</H2>"
            + "<p>This widget consists of a hideable content DIV and an optional header DIV.</p>"
            + "<p>The content can be <span id='open'></span>&nbsp;&amp; <span id='close'></span>&nbsp;programatically.</p>"
            + "<p>The headers prevent selection of the text within them. In IE this is done in a special implementation using an <code>onselectstart</code> listener which returns <code>false</code>. In other browsers, <code>DOM.eventPreventDefault(Event)</code> for <code>Event.ONMOUSEDOWN</code> suffices. </p>"
            + "<p>You can add a listener to the DropDownPanel and make layout changes when the it opens/closes (e.g. maximize its parent element when it opens). </p>"
            + "<p>The tip-down arrows on the left are background images applied through CSS rules. <em>Note: we cannot put a border around the header itself because in IE the background image would be obscured by the border.</em></p>"
            + "<h4>Known problems</h4>"
            + "<ul><li>In IE, the cursor reverts to the system arrow after opening the headers on the left. This is a result of changing the tipdown arrow background image. (Alternative: insert the image with <code>DropDownPanel.setHeaderText()</code> and then change it via a DropDownListener.)</li></ul>"
            + "<p>Tested in IE 6 (Win), Firefox 1.5 (Win), Opera 8 (win) and Safari 2.0.4 (Mac) in Strict and Quirks modes.</p>";
    DropDownPanel dropDown3 = new DropDownPanel();
    DOM.setAttribute(dropDown3.getElement(), "id", "dropDown-3");
    dropDown3.setHeaderText("Drop&nbsp;Down&nbsp;3", true);
    HTMLPanel center = new HTMLPanel(content);
    SimpleHyperLink close = new SimpleHyperLink("hidden");
    SimpleHyperLink open = new SimpleHyperLink("shown");
    center.add(close, "close");
    center.add(open, "open");
    dropDown3.add(center);
    dropDown3.setOpen(true);
    outer.add(dropDown3);

    final DropDownPanel dropDown4 = new DropDownPanel();
    DOM.setAttribute(dropDown4.getElement(), "id", "dropDown-4");
    image = new Image("icecube.jpg");
    image.setSize("200px", "250px");
    dropDown4.add(image);
    outer.add(dropDown4);
    outer.setCellWidth(dropDown4, "1px");

    open.addClickListener(new ClickListener() {
        public void onClick(Widget sender) {
            dropDown4.setOpen(true);
        }
    });
    close.addClickListener(new ClickListener() {
        public void onClick(Widget sender) {
            dropDown4.setOpen(false);
        }
    });
}

From source file:asquare.gwt.tk.demo.client.MiscPanel.java

License:Apache License

private Widget createSimpleHyperLinkPanel() {
    BasicPanel panel = new BasicPanel("div");
    panel.setStyleName("division");

    String content = "<H2>SimpleHyperLink</H2>"
            + "A hyperlink based on an anchor. No pesky DIV messing up your text flow. No history tokens in the location bar.";
    HTML header = new HTML(content);
    header.addStyleName("header");
    panel.add(header);/*from www  .ja v  a  2 s.co m*/

    BasicPanel example = new BasicPanel();
    example.addStyleName("example");

    example.add(new SimpleHyperLink("SpongeBob says...", new ClickListener() {
        public void onClick(Widget sender) {
            Window.alert("I'm a goofy goober!");
        }
    }));

    panel.add(example);
    return panel;
}

From source file:binarymillenium.tiles.client.Tiles.java

License:GNU General Public License

public void onModuleLoad() {

    populateMap();/*from  w  w  w  .ja v  a2 s . co  m*/

    Button forward = new Button("forward", new ClickListener() {
        public void onClick(Widget sender) {
            viewx += viewdirx;
            viewy += viewdiry;
            checkBounds();
            draw();
        }
    });
    RootPanel.get().add(forward);

    Button back = new Button("back", new ClickListener() {
        public void onClick(Widget sender) {
            viewx -= viewdirx;
            viewy -= viewdiry;
            checkBounds();
            draw();
        }
    });
    RootPanel.get().add(back);

    Button left = new Button("left", new ClickListener() {
        public void onClick(Widget sender) {
            viewx -= viewdiry;
            viewy -= viewdirx;
            checkBounds();
            draw();
        }
    });
    RootPanel.get().add(left);

    Button right = new Button("right", new ClickListener() {
        public void onClick(Widget sender) {
            viewx += viewdiry;
            viewy += viewdirx;
            checkBounds();
            draw();
        }
    });
    RootPanel.get().add(right);

    Button turnright = new Button("turn right", new ClickListener() {
        public void onClick(Widget sender) {

            if (viewdirx == 1) {
                viewdirx = 0;
                viewdiry = -1;
            } else if (viewdirx == -1) {
                viewdirx = 0;
                viewdiry = 1;
            } else if (viewdiry == 1) {
                viewdirx = 1;
                viewdiry = 0;
            } else if (viewdiry == -1) {
                viewdirx = -1;
                viewdiry = 0;
            }

            draw();
        }
    });
    RootPanel.get().add(turnright);

    Button turnleft = new Button("turn left", new ClickListener() {
        public void onClick(Widget sender) {

            if (viewdirx == 1) {
                viewdirx = 0;
                viewdiry = 1;
            } else if (viewdirx == -1) {
                viewdirx = 0;
                viewdiry = -1;
            } else if (viewdiry == 1) {
                viewdirx = -1;
                viewdiry = 0;
            } else if (viewdiry == -1) {
                viewdirx = 1;
                viewdiry = 0;
            }

            draw();
        }
    });

    RootPanel.get().add(turnleft);

    focPan = new FocusPanel();
    panel = new AbsolutePanel();
    focPan.add(panel);
    RootPanel.get().add(focPan);

    mappanel = new AbsolutePanel();
    panel.add(mappanel);
    panel.setWidgetPosition(mappanel, 512, 0);
    mappanel.setPixelSize(MAPPANELSIZE, MAPPANELSIZE);
    initmappanel();

    //focPan.addKeyboardListener(new landerHandler());
    //focPan.addMouseListener(new landerHandler2());

    panel.add(sky);
    panel.add(ground);
    panel.setWidgetPosition(ground, 0, 512 / 2);

    initviewobjects();

    panel.setPixelSize(512 + MAPPANELSIZE, 512);
    /// how to specify back to front ordering?
    /// order add and set back to front
    /*for (int i = 0; i < back_wall.length; i++) {
        back_wall[i] = new Image("backwall.png");
        panel.add(back_wall[i]);
        panel.setWidgetPosition(back_wall[i], i*100,512/2-50);
    }*/

    //panel.add(left_wall);
    //panel.setWidgetPosition(left_wall, 0,0);

    draw();
    //new AnimationTimer().scheduleRepeating( (int)(dt*1e3) );
}

From source file:bwbv.rlt.client.ui.HeaderPane.java

License:Apache License

/**
 * Build this conditionally based on isLoggedIn
 * @param isLoggedIn/* w ww . j  a  va  2  s. co  m*/
 * @return
 */
private HorizontalPanel buildHeaderPanel(boolean isLoggedIn) {
    HorizontalPanel panel = new HorizontalPanel();
    panel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT);
    if (isLoggedIn) {
        panel.setSpacing(10);
        panel.add(new Label("Welcome " + clientState.getUserName()));

        Button logoutButton = new Button("Logout");
        logoutButton.setStyleName("LogoutButton");
        logoutButton.addClickListener(new ClickListener() {
            public void onClick(Widget sender) {
                logout();
            }
        });
        panel.add(logoutButton);
    } else {
        Button loginButon = new Button("Login");
        loginButon.setStyleName("LoginButton");
        loginButon.addClickListener(new ClickListener() {
            public void onClick(Widget sender) {
                showNewUserNameRequestPopupPanel();
            }
        });
        panel.add(loginButon);
    }
    return panel;
}

From source file:bwbv.rlt.client.ui.HeaderPane.java

License:Apache License

private void showNewUserNameRequestPopupPanel() {
    confirmPopup = new PopupPanel(false, true);
    VerticalPanel panel = new VerticalPanel();
    //      panel.add(new Label("What is your login Name?"));
    //      panel.add(textBox);
    Grid grid = new Grid(2, 2);
    grid.setText(0, 0, "Benutzer:");
    final TextBox textBox = new TextBox();
    grid.setWidget(0, 1, textBox);/* ww  w . j  a v a2s  .co  m*/
    grid.setText(1, 0, "Passwort:");
    final PasswordTextBox pwdBox = new PasswordTextBox();
    grid.setWidget(1, 1, pwdBox);
    panel.add(grid);
    Button ok = new Button("OK");
    ok.addClickListener(new ClickListener() {
        public void onClick(Widget w) {
            confirmPopup.hide();
            login(textBox.getText(), pwdBox.getText());
        }
    });

    panel.add(ok);
    confirmPopup.add(panel);
    confirmPopup.center();
    textBox.setFocus(true);
    confirmPopup.show();
}

From source file:ca.nanometrics.gflot.client.example.DecimationExample.java

License:Open Source License

public Widget createExample() {
    PlotWithOverviewModel model = new PlotWithOverviewModel(PlotModelStrategy.downSamplingStrategy(20));
    PlotOptions plotOptions = new PlotOptions();
    plotOptions.setDefaultLineSeriesOptions(new LineSeriesOptions().setLineWidth(1).setShow(true));
    plotOptions.setDefaultPointsOptions(new PointsSeriesOptions().setRadius(2).setShow(true));
    plotOptions.setDefaultShadowSize(0);

    final SeriesHandler series = model.addSeries("Random Series", "#003366");

    // create the plot
    final PlotWithOverview plot = new PlotWithOverview(model, plotOptions);

    // pull the "fake" RPC service for new data
    final Timer updater = new Timer() {
        @Override//from w  ww . ja  v  a  2s .c  o m
        public void run() {
            update(series, plot);
        }
    };

    // put it on a panel
    FlowPanel panel = new FlowPanel();
    panel.add(plot);
    HorizontalPanel buttonsPanel = new HorizontalPanel();
    buttonsPanel.setSpacing(5);
    buttonsPanel.add(new Button("Start", new ClickListener() {
        public void onClick(Widget sender) {
            updater.scheduleRepeating(1000);
        }
    }));
    buttonsPanel.add(new Button("Stop", new ClickListener() {
        public void onClick(Widget sender) {
            updater.cancel();
        }
    }));
    panel.add(buttonsPanel);
    return panel;
}

From source file:ca.nanometrics.gflot.client.example.SlidingWindowExample.java

License:Open Source License

public Widget createExample() {
    PlotWithOverviewModel model = new PlotWithOverviewModel(PlotModelStrategy.slidingWindowStrategy(20));
    PlotOptions plotOptions = new PlotOptions();
    plotOptions.setDefaultLineSeriesOptions(new LineSeriesOptions().setLineWidth(1).setShow(true));
    plotOptions.setDefaultPointsOptions(new PointsSeriesOptions().setRadius(2).setShow(true));
    plotOptions.setDefaultShadowSize(0);
    plotOptions.setXAxisOptions(new TimeSeriesAxisOptions());

    PlotOptions overviewPlotOptions = new PlotOptions().setDefaultShadowSize(0)
            .setLegendOptions(new LegendOptions().setShow(false))
            .setDefaultLineSeriesOptions(new LineSeriesOptions().setLineWidth(1).setFill(true))
            .setSelectionOptions(/*from   w  w  w  .  j a  va2 s. co  m*/
                    new SelectionOptions().setMode(SelectionOptions.X_SELECTION_MODE).setDragging(true))
            .setXAxisOptions(new TimeSeriesAxisOptions());

    final SeriesHandler series = model.addSeries("Random Series", "#FF9900");

    // create the plot
    final PlotWithOverview plot = new PlotWithOverview(model, plotOptions, overviewPlotOptions);

    // pull the "fake" RPC service for new data
    final Timer updater = new Timer() {
        @Override
        public void run() {
            update(series, plot);
        }
    };

    // put it on a panel
    FlowPanel panel = new FlowPanel();
    panel.add(plot);
    HorizontalPanel buttonsPanel = new HorizontalPanel();
    buttonsPanel.setSpacing(5);
    buttonsPanel.add(new Button("Start", new ClickListener() {
        public void onClick(Widget sender) {
            updater.scheduleRepeating(1000);
        }
    }));
    buttonsPanel.add(new Button("Stop", new ClickListener() {
        public void onClick(Widget sender) {
            updater.cancel();
        }
    }));
    panel.add(buttonsPanel);
    return panel;
}

From source file:ca.upei.ic.timetable.client.ApplicationView.java

License:Apache License

public ApplicationView(ApplicationController app) {
    app_ = app;//from ww w.j av a 2  s .  c o m

    // hide the root panel first
    hide();

    // create the application view elements
    // we are using a horizontal split panel to host the left side (course view)
    // and the right side (calendar view)
    DockPanel panel = GWT.create(DockPanel.class);
    panel.setSize("980px", "580px");

    final View findCourseView = app_.getFindCourseController().getView();

    // find course button
    final Button findCourseButton = GWT.create(Button.class);
    findCourseButton.setText("Find Course...");
    findCourseButton.setPixelSize(250, 28);
    findCourseButton.addClickListener(new ClickListener() {

        public void onClick(Widget sender) {
            findCourseView.show();
        }

    });
    // message view
    final View messageView = app_.getMessageController().getView();

    // course view
    final View courseView = app_.getCourseController().getView();
    courseView.getWidget().setWidth("340px");

    // calendar view
    final View calendarView = app_.getCourseCalendarController().getView();

    // top panel
    HorizontalPanel topPanel = GWT.create(HorizontalPanel.class);
    topPanel.add(findCourseButton);
    headerPanel_ = GWT.create(HorizontalPanel.class);
    SimplePanel topleft = PanelUtils.simplePanel(new HTML(""), 61, 28);
    headerPanel_.add(topleft);

    // add headers
    for (int i = 1; i < 6; i++) {
        SimplePanel header = GWT.create(SimplePanel.class);
        header.addStyleName("gridHeaderCell");
        header.setPixelSize(128, 28);
        header.add(new HTML(headerStrings[i]));
        headerPanel_.add(header);
    }

    topPanel.add(headerPanel_);

    // add elements to the dock panel
    // to north (top bar)
    panel.add(PanelUtils.horizontalPanel(findCourseButton, headerPanel_), DockPanel.NORTH);
    // to west (left side bar)
    panel.add(PanelUtils.verticalPanel(
            PanelUtils.decoratorPanel(PanelUtils.scrollPanel(courseView.getWidget(), 240, 555)),
            PanelUtils.horizontalPanel(ButtonUtils.button("Clear", 125, 25, new ClickListener() {
                public void onClick(Widget sender) {
                    app_.getCourseController().clear();
                }
            }, null), ButtonUtils.button("Print...", 125, 25, new ClickListener() {
                public void onClick(Widget sender) {
                    Element wrapper = DOM.createDiv();
                    Element header = (Element) headerPanel_.getElement().cloneNode(true);
                    wrapper.appendChild(header);
                    CalendarPanel calendar = (CalendarPanel) app_.getCourseCalendarController().getView()
                            .getWidget();
                    int height = calendar.getRealHeight();
                    Element calendarElement = (Element) calendar.getElement().cloneNode(true);
                    DOM.setStyleAttribute(calendarElement, "page-break-inside", "avoid");
                    DOM.setStyleAttribute(calendarElement, "height", (height + 50) + "px");
                    wrapper.appendChild(calendarElement);
                    app_.print("Main.css", wrapper.getInnerHTML());
                }
            }, null))), DockPanel.WEST);
    // to center (content)
    panel.add(calendarView.getWidget(), DockPanel.CENTER);

    // to footer (copyright)
    panel.add(new HTML(
            "&copy; 2008 University of Prince Edward Island. This is an <a href=\"http://github.com/upei/\">open-source project</a> licensed under Apache License 2.0."),
            DockPanel.SOUTH);

    // add the horizontal panel
    RootPanel.get().add(panel);
}